Merge branch 'bug_7368' into 3.14-master
authorJared Camins-Esakov <jcamins@cpbibliography.com>
Thu, 18 Apr 2013 13:48:06 +0000 (09:48 -0400)
committerJared Camins-Esakov <jcamins@cpbibliography.com>
Thu, 18 Apr 2013 13:48:06 +0000 (09:48 -0400)
919 files changed:
C4/Acquisition.pm
C4/Auth.pm
C4/Auth_with_ldap.pm
C4/AuthoritiesMarc.pm
C4/Branch.pm
C4/Breeding.pm
C4/Budgets.pm
C4/Circulation.pm
C4/Context.pm
C4/Creators/Batch.pm
C4/Creators/Lib.pm
C4/HoldsQueue.pm
C4/Installer.pm
C4/Installer/PerlDependencies.pm
C4/ItemType.pm
C4/Items.pm
C4/Koha.pm
C4/Output.pm
C4/Overdues.pm
C4/Record.pm
C4/SIP/t/04patron_status.t
C4/Search.pm
C4/Serials.pm
C4/Suggestions.pm
C4/Templates.pm
C4/XISBN.pm
C4/XSLT.pm
Koha/Plugins.pm
Koha/Plugins/Base.pm
Koha/Plugins/Handler.pm
Koha/Template/Plugin/KohaDates.pm
Makefile.PL
acqui/addorder.pl
acqui/basketgroup.pl
acqui/booksellers.pl
acqui/finishreceive.pl
acqui/histsearch.pl
acqui/neworderempty.pl
acqui/newordersubscription.pl [new file with mode: 0755]
acqui/orderreceive.pl
acqui/pdfformat/layout2pages.pm
acqui/pdfformat/layout3pages.pm
acqui/z3950_search.pl
admin/branches.pl
admin/preferences.pl
admin/smart-rules.pl
admin/z3950servers.pl
authorities/authorities-home.pl
catalogue/search.pl
cataloguing/addbiblio.pl
cataloguing/additem.pl
cataloguing/z3950_search.pl
circ/circulation.pl
circ/overdue.pl
circ/view_holdsqueue.pl
debian/build-git-snapshot
debian/changelog
debian/control
debian/control.in
debian/docs/koha-common.xml
debian/docs/koha-create-dirs.xml
debian/docs/koha-create.xml
debian/docs/koha-disable.xml
debian/docs/koha-dump-defaults.xml
debian/docs/koha-dump.xml
debian/docs/koha-email-disable.xml
debian/docs/koha-email-enable.xml
debian/docs/koha-enable.xml
debian/docs/koha-foreach.xml
debian/docs/koha-list.xml
debian/docs/koha-mysql.xml
debian/docs/koha-rebuild-zebra.xml
debian/docs/koha-remove.xml
debian/docs/koha-reset-passwd.xml
debian/docs/koha-restart-zebra.xml
debian/docs/koha-restore.xml
debian/docs/koha-run-backups.xml
debian/docs/koha-start-zebra.xml
debian/docs/koha-stop-zebra.xml
debian/docs/koha-upgrade-schema.xml
debian/docs/koha-upgrade-to-3.4.xml
debian/rules
debian/scripts/koha-create
debian/scripts/koha-reset-passwd
docs/history.txt
etc/koha-conf.xml
etc/koha-httpd.conf
install_misc/README.fr.install_koha_on_fresh_debian [deleted file]
install_misc/README.install_koha_on_fresh_debian [deleted file]
install_misc/debian.packages
install_misc/install_koha_on_fresh_debian [deleted file]
install_misc/ubuntu.10.04.packages
install_misc/ubuntu.10.10.packages [deleted file]
install_misc/ubuntu.12.04.packages
install_misc/ubuntu.packages
installer/data/mysql/de-DE/mandatory/sample_notices.sql
installer/data/mysql/de-DE/mandatory/subtag_registry.sql
installer/data/mysql/en/mandatory/sample_notices.sql
installer/data/mysql/en/mandatory/subtag_registry.sql
installer/data/mysql/es-ES/mandatory/sample_notices.sql
installer/data/mysql/es-ES/mandatory/subtag_registry.sql
installer/data/mysql/es-ES/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.sql
installer/data/mysql/fr-FR/1-Obligatoire/sample_notices.sql
installer/data/mysql/fr-FR/1-Obligatoire/subtag_registry.sql
installer/data/mysql/it-IT/necessari/notices.sql
installer/data/mysql/it-IT/necessari/subtag_registry.sql
installer/data/mysql/kohastructure.sql
installer/data/mysql/nb-NO/1-Obligatorisk/sample_notices.sql
installer/data/mysql/nb-NO/1-Obligatorisk/subtag_registry.sql
installer/data/mysql/nb-NO/2-Valgfritt/auth_val.sql
installer/data/mysql/nb-NO/2-Valgfritt/z3950servers.sql
installer/data/mysql/pl-PL/mandatory/sample_notices.sql
installer/data/mysql/pl-PL/mandatory/subtag_registry.sql
installer/data/mysql/ru-RU/mandatory/sample_notices.sql
installer/data/mysql/ru-RU/mandatory/subtag_registry.sql
installer/data/mysql/sysprefs.sql
installer/data/mysql/uk-UA/mandatory/sample_notices.sql
installer/data/mysql/uk-UA/mandatory/subtag_registry.sql
installer/data/mysql/updatedatabase.pl
koha-tmpl/intranet-tmpl/lib/jquery/plugins/jquery.validate.min.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/langs/en.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/license.txt [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/css/advhr.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/editor_plugin.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/js/rule.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/langs/en_dlg.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/rule.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/css/advlink.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/editor_plugin.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/js/advlink.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/langs/en_dlg.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/link.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/contextmenu/editor_plugin.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/print/editor_plugin.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/save/editor_plugin.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/css/searchreplace.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/editor_plugin.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/js/searchreplace.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/langs/en_dlg.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/searchreplace.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/cell.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/css/cell.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/css/row.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/css/table.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/editor_plugin.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/cell.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/merge_cells.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/row.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/table.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/langs/en_dlg.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/merge_cells.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/row.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/table.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/about.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/anchor.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/charmap.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/color_picker.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/editor_template.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/image.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/colorpicker.jpg [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/flash.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/icons.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/iframe.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/pagebreak.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/quicktime.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/realmedia.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/shockwave.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/trans.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/video.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/windowsmedia.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/about.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/anchor.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/charmap.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/color_picker.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/image.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/link.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/source_editor.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/langs/en.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/langs/en_dlg.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/link.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/shortcuts.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/content.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/dialog.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/buttons.png [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/items.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/menu_check.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/progress.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/tabs.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/ui.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/highcontrast/content.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/highcontrast/dialog.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/highcontrast/ui.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/content.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/dialog.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/ui.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/ui_black.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/source_editor.htm [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/editor_template.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/img/icons.gif [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/langs/en.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/default/content.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/default/ui.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/o2k7/content.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/o2k7/ui.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce_gzip.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce_gzip.pl [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce_popup.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/editable_selects.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/form_utils.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/mctabs.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/validate.js [new file with mode: 0644]
koha-tmpl/intranet-tmpl/prog/en/css/addbiblio.css
koha-tmpl/intranet-tmpl/prog/en/css/right-to-left.css [new file with mode: 0644]
koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css
koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-add-to-basket.inc
koha-tmpl/intranet-tmpl/prog/en/includes/auth-finder-search.inc
koha-tmpl/intranet-tmpl/prog/en/includes/cat-toolbar.inc
koha-tmpl/intranet-tmpl/prog/en/includes/circ-menu.inc
koha-tmpl/intranet-tmpl/prog/en/includes/circ-menu.tt
koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-close.inc
koha-tmpl/intranet-tmpl/prog/en/includes/header.inc
koha-tmpl/intranet-tmpl/prog/en/includes/help-top.inc
koha-tmpl/intranet-tmpl/prog/en/includes/members-toolbar.inc
koha-tmpl/intranet-tmpl/prog/en/includes/messaging-preference-form.inc
koha-tmpl/intranet-tmpl/prog/en/includes/patroncards-batches-toolbar.inc [deleted file]
koha-tmpl/intranet-tmpl/prog/en/includes/subscriptions-search.inc [new file with mode: 0644]
koha-tmpl/intranet-tmpl/prog/en/includes/validator-strings.inc [new file with mode: 0644]
koha-tmpl/intranet-tmpl/prog/en/js/ajax.js
koha-tmpl/intranet-tmpl/prog/en/js/cataloging.js
koha-tmpl/intranet-tmpl/prog/en/js/datatables.js
koha-tmpl/intranet-tmpl/prog/en/js/members.js
koha-tmpl/intranet-tmpl/prog/en/js/pages/batchMod.js
koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/changelog [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/docs/index.html [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_advanced.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_advanced.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_flash_list.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_full.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_full.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_image_list.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_link_list.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_media_list.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_simple.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_template.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_template_list.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_word.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_word.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/logo.jpg [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/logo_over.jpg [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/count.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/editing_details.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/editors_comment.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/invoice.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/layout1.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/snippet1.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/blank.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/langs/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/license.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/images/advhr.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/jscripts/rule.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/rule.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/images/sample.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/jscripts/functions.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/jscripts/functions.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/cleanup/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/cleanup/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/cleanup/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/css/contextmenu.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/images/spacer.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/css/devkit.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/css/devkit_ui.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/devkit.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/images/flip_down.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/images/flip_up.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/jscripts/devkit.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/jscripts/diff.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/images/ltr.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/images/rtl.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/emotions.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-cool.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-cry.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-embarassed.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-foot-in-mouth.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-frown.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-innocent.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-kiss.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-laughing.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-money-mouth.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-sealed.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-smile.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-surprised.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-tongue-out.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-undecided.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-wink.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-yell.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/jscripts/functions.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/css/content.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/css/flash.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/flash.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/images/flash.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/jscripts/flash.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/blank.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/add.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/fullpage.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/move_down.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/move_up.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/remove.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/jscripts/fullpage.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/css/page.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/images/fullscreen.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/images/iespell.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/css/inlinepopup.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/spacer.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_close.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_maximize.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_minimize.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_resize.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/jscripts/mcwindows.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/images/insertdate.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/images/inserttime.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/absolute.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/backward.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/forward.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/insert_layer.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/insertlayer.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/movebackward.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/moveforward.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/css/content.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/css/media.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/flash.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/media.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/quicktime.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/realmedia.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/shockwave.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/windowsmedia.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/jscripts/embed.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/jscripts/media.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/media.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/images/nonbreaking.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/css/noneditable.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/blank.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/css/blank.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/css/pasteword.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/pastetext.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/pasteword.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/selectall.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/jscripts/pastetext.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/jscripts/pasteword.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/pastetext.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/example.html [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/images/preview.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/embed.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/images/print.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/images/cancel.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/images/save.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace_all_button_bg.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace_button_bg.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/search.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/jscripts/searchreplace.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/css/props.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/apply_button_bg.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/style_info.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/styleprops.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/jscripts/props.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/props.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/cell.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/css/row.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/css/table.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/buttons.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_cell_props.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete_col.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete_row.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_col_after.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_col_before.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_row_after.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_row_before.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_merge_cells.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_row_props.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_split_cells.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/cell.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/merge_cells.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/row.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/table.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/row.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/table.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/blank.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/css/template.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/images/template.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/jscripts/template.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/template.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/images/visualchars.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/xhtmlxtras.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/abbr.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/acronym.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/attribs.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/cite.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/date_time.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/del.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/ins.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/remove_button_bg.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/abbr.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/acronym.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/attributes.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/cite.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/del.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/element_common.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/ins.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/zoom/editor_plugin.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/zoom/editor_plugin_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/zoom/readme.txt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/about.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/colorpicker.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/editor_content.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/editor_popup.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/editor_ui.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/about.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/common_buttons.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/create_accessible_content.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_anchor_window.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_image_window.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_link_window.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_table_window.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/index.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_anchor_button.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_image_button.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_link_button.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_table_button.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/style.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/editor_template_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/image.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/anchor.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/anchor_symbol.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/backcolor.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_de_se.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_es.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_fr.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_ru.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_tw.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/browse.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bullist.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/button_menu.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/buttons.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cancel_button_bg.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/charmap.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cleanup.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/close.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/code.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/color.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/colors.jpg [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/copy.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/custom_1.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cut.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/forecolor.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/help.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/hr.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/image.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/indent.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/insert_button_bg.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_de_se.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_es.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_ru.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_tw.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifycenter.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyfull.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyleft.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyright.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/link.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/menu_check.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/newdocument.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/numlist.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/opacity.png [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/outdent.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/paste.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/redo.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/removeformat.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/separator.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/spacer.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/statusbar_resize.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/strikethrough.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/sub.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/sup.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_es.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_fr.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_ru.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_tw.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/undo.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/unlink.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/visualaid.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_bg.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_end.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_sel_bg.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_sel_end.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tabs_bg.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/about.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/anchor.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/charmap.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/color_picker.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/image.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/link.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/source_editor.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/link.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/source_editor.htm [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/css/editor_content.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/css/editor_popup.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/css/editor_ui.css [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/editor_template.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/editor_template_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_de_se.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_fr.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_ru.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_tw.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bullist.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/buttons.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/cleanup.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_de_se.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_ru.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_tw.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/numlist.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/redo.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/separator.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/spacer.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/strikethrough.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_fr.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_ru.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_tw.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/undo.gif [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/tiny_mce.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/tiny_mce_popup.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/tiny_mce_src.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/editable_selects.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/form_utils.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/mclayer.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/mctabs.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/validate.js [deleted file]
koha-tmpl/intranet-tmpl/prog/en/js/tinymce/readme [deleted file]
koha-tmpl/intranet-tmpl/prog/en/modules/about.tt
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/acqui-home.tt
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basketheader.tt
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/booksellers.tt
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderbiblio.tt
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tt
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/newordersubscription.tt [new file with mode: 0644]
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/orderreceive.tt
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tt
koha-tmpl/intranet-tmpl/prog/en/modules/acqui/z3950_search.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgetperiods.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgets.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqcontract.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/auth_tag_structure.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/biblio_framework.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/branches.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/categorie.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/marc_subfields_structure.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/marctagstructure.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences.tt
koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref
koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt
koha-tmpl/intranet-tmpl/prog/en/modules/authorities/authorities.tt
koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/MARCdetail.tt
koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/advsearch.tt
koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/results.tt
koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt
koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/additem.tt
koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/z3950_search.tt
koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation-home.tt
koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt
koha-tmpl/intranet-tmpl/prog/en/modules/circ/overdue.tt
koha-tmpl/intranet-tmpl/prog/en/modules/circ/pendingreserves.tt
koha-tmpl/intranet-tmpl/prog/en/modules/circ/reserveratios.tt
koha-tmpl/intranet-tmpl/prog/en/modules/circ/view_holdsqueue.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/admin/marc_subfields_structure.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/cataloguing/addbiblio.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/cataloguing/addbooks.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/cataloguing/additem.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/cataloguing/linkitem.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/cataloguing/merge.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/cataloguing/moveitem.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/billing.tt [deleted file]
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/branchoverdues.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/branchtransfers.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/circulation-home.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/circulation.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/overdue.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/pendingreserves.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/reserveratios.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/returns.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/selectbranchprinter.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/transferstoreceive.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/view_holdsqueue.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/waitingreserves.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/edithelp.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/offline_circ/list.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/offline_circ/process_koc.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/plugins/plugins-home.tt [new file with mode: 0644]
koha-tmpl/intranet-tmpl/prog/en/modules/help/plugins/plugins-upload.tt [new file with mode: 0644]
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/acquisitions_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/bor_issues_top.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/borrowers_out.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/borrowers_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/cat_issues_top.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/catalogue_out.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/catalogue_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/dictionary.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/guided_reports.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/issues_avg_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/issues_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/itemslost.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/manager.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/reports-home.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/reserves_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/reports/serials_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/serials/checkexpiration.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/serials/claims.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/serials/routing.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/serials/serials-collection.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/serials/serials-edit.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/serials/serials-home.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/serials/subscription-add.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/serials/subscription-detail.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/suggestion/suggestion.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/batchMod.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/cleanborrowers.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/csv-profiles.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/export.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/holidays.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/import_borrowers.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/inventory.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/koha-news.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/letter.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/manage-marc-import.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/modborrowers.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/overduerules.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/picture-upload.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/quotes-upload.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/quotes.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/scheduler.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/stage-marc-import.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/tools-home.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/upload-cover-image.tt
koha-tmpl/intranet-tmpl/prog/en/modules/help/tools/viewlog.tt
koha-tmpl/intranet-tmpl/prog/en/modules/installer/step3.tt
koha-tmpl/intranet-tmpl/prog/en/modules/labels/label-edit-layout.tt
koha-tmpl/intranet-tmpl/prog/en/modules/labels/label-home.tt
koha-tmpl/intranet-tmpl/prog/en/modules/labels/label-manage.tt
koha-tmpl/intranet-tmpl/prog/en/modules/labels/search.tt
koha-tmpl/intranet-tmpl/prog/en/modules/members/member-flags.tt
koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt
koha-tmpl/intranet-tmpl/prog/en/modules/members/members-update.tt
koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tt
koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt
koha-tmpl/intranet-tmpl/prog/en/modules/members/notices.tt
koha-tmpl/intranet-tmpl/prog/en/modules/offline_circ/enqueue_koc.tt [new file with mode: 0644]
koha-tmpl/intranet-tmpl/prog/en/modules/offline_circ/list.tt
koha-tmpl/intranet-tmpl/prog/en/modules/offline_circ/process_koc.tt
koha-tmpl/intranet-tmpl/prog/en/modules/patroncards/edit-batch.tt
koha-tmpl/intranet-tmpl/prog/en/modules/patroncards/edit-layout.tt
koha-tmpl/intranet-tmpl/prog/en/modules/patroncards/members-search.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/bor_issues_top.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/borrowers_out.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/borrowers_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/cat_issues_top.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/catalogue_out.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/catalogue_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/guided_reports_start.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/issues_avg_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/issues_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/reserves_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-edit.tt
koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-home.tt
koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-search.tt
koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-add.tt
koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-detail.tt
koha-tmpl/intranet-tmpl/prog/en/modules/suggestion/suggestion.tt
koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tt
koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-edit.tt
koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod.tt
koha-tmpl/intranet-tmpl/prog/en/modules/tools/csv-profiles.tt
koha-tmpl/intranet-tmpl/prog/en/modules/tools/holidays.tt
koha-tmpl/intranet-tmpl/prog/en/modules/tools/import_borrowers.tt
koha-tmpl/intranet-tmpl/prog/en/modules/tools/inventory.tt
koha-tmpl/intranet-tmpl/prog/en/modules/tools/koha-news.tt
koha-tmpl/opac-tmpl/ccsr/en/css/opac.css
koha-tmpl/opac-tmpl/ccsr/en/includes/masthead.inc
koha-tmpl/opac-tmpl/ccsr/en/includes/usermenu.inc
koha-tmpl/opac-tmpl/ccsr/en/js/openlibrary.js
koha-tmpl/opac-tmpl/ccsr/en/js/script.js
koha-tmpl/opac-tmpl/ccsr/en/lib/jquery/jquery-ui.css
koha-tmpl/opac-tmpl/ccsr/en/lib/jquery/jquery-ui.js
koha-tmpl/opac-tmpl/ccsr/en/lib/jquery/plugins/jquery.tools.min.js [deleted file]
koha-tmpl/opac-tmpl/ccsr/images/social-sprite.png [new file with mode: 0644]
koha-tmpl/opac-tmpl/prog/en/css/babeltheque.css
koha-tmpl/opac-tmpl/prog/en/css/opac.css
koha-tmpl/opac-tmpl/prog/en/css/right-to-left.css [new file with mode: 0644]
koha-tmpl/opac-tmpl/prog/en/includes/doc-head-close.inc
koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc
koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc
koha-tmpl/opac-tmpl/prog/en/js/openlibrary.js
koha-tmpl/opac-tmpl/prog/en/lib/jquery/jquery-ui.css
koha-tmpl/opac-tmpl/prog/en/lib/jquery/jquery-ui.js
koha-tmpl/opac-tmpl/prog/en/lib/jquery/plugins/jquery.tools.min.js [deleted file]
koha-tmpl/opac-tmpl/prog/en/modules/opac-addbybiblionumber.tt
koha-tmpl/opac-tmpl/prog/en/modules/opac-authorities-home.tt
koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt
koha-tmpl/opac-tmpl/prog/en/modules/opac-memberentry.tt
koha-tmpl/opac-tmpl/prog/en/modules/opac-reserve.tt
koha-tmpl/opac-tmpl/prog/en/modules/opac-results.tt
koha-tmpl/opac-tmpl/prog/en/modules/opac-review.tt
koha-tmpl/opac-tmpl/prog/en/modules/opac-shelves.tt
kohaversion.pl
labels/label-print.pl
members/boraccount.pl
members/deletemem.pl
members/files.pl
members/mancredit.pl
members/maninvoice.pl
members/member-flags.pl
members/member-password.pl
members/member.pl
members/memberentry.pl
members/moremember.pl
members/notices.pl
members/pay.pl
members/paycollect.pl
members/readingrec.pl
members/routing-lists.pl
members/setdebar.pl
members/setstatus.pl
members/statistics.pl
misc/cronjobs/overdue_notices.pl
misc/migration_tools/bulkmarcimport.pl
misc/migration_tools/rebuild_zebra.pl
misc/migration_tools/switch_marc21_series_info.pl [new file with mode: 0755]
misc/release_notes/release_notes_3_12_0.txt
misc/translator/stats.pl [deleted file]
misc/translator/translate
misc/translator/update.pl [deleted file]
offline_circ/enqueue_koc.pl [new file with mode: 0755]
offline_circ/list.pl
opac/maintenance.pl
opac/opac-detail.pl
opac/opac-search.pl
opac/opac-topissues.pl
reports/guided_reports.pl
reserve/renewscript.pl
rotating_collections/addItems.pl
rotating_collections/editCollections.pl
rotating_collections/rotatingCollections.pl
rotating_collections/transferCollection.pl
serials/routing-preview.pl
serials/routing.pl
serials/serials-search.pl
serials/subscription-detail.pl
svc/import_bib
t/DateUtils.t
t/db_dependent/Acquisition.t
t/db_dependent/Acquisition/OrderFromSubscription.t [new file with mode: 0644]
t/db_dependent/Budgets.t
t/db_dependent/Circulation.t
t/db_dependent/Circulation_issuingrules.t [new file with mode: 0644]
t/db_dependent/Koha.t
t/db_dependent/Plugins.t
t/db_dependent/lib/KohaTest/Circulation.pm
t/db_dependent/lib/KohaTest/Overdues.pm
tools/holidays.pl
tools/letter.pl
tools/viewlog.pl

index 4a9eae6..b78a51e 100644 (file)
@@ -58,7 +58,7 @@ BEGIN {
         &SearchOrder &GetHistory &GetRecentAcqui
         &ModReceiveOrder &CancelReceipt &ModOrderBiblioitemNumber
         &GetCancelledOrders
-
+        &GetLastOrderNotReceivedFromSubscriptionid &GetLastOrderReceivedFromSubscriptionid
         &NewOrderItem &ModOrderItem &ModItemOrder
 
         &GetParcels &GetParcel
@@ -643,8 +643,12 @@ $hashref->{'name'} is the 'name' field of the basketgroup in the aqbasketgroups
 
 $hashref->{'basketlist'} is a list reference of the 'id's of the baskets that belong to this group,
 
+$hashref->{'billingplace'} is the 'billingplace' field of the basketgroup in the aqbasketgroups table,
+
 $hashref->{'deliveryplace'} is the 'deliveryplace' field of the basketgroup in the aqbasketgroups table,
 
+$hashref->{'freedeliveryplace'} is the 'freedeliveryplace' field of the basketgroup in the aqbasketgroups table,
+
 $hashref->{'deliverycomment'} is the 'deliverycomment' field of the basketgroup in the aqbasketgroups table,
 
 $hashref->{'closed'} is the 'closed' field of the aqbasketgroups table, it is false if 0, true otherwise.
@@ -656,8 +660,8 @@ sub NewBasketgroup {
     die "booksellerid is required to create a basketgroup" unless $basketgroupinfo->{'booksellerid'};
     my $query = "INSERT INTO aqbasketgroups (";
     my @params;
-    foreach my $field ('name', 'deliveryplace', 'deliverycomment', 'closed') {
-        if ( $basketgroupinfo->{$field} ) {
+    foreach my $field (qw(name billingplace deliveryplace freedeliveryplace deliverycomment closed)) {
+        if ( defined $basketgroupinfo->{$field} ) {
             $query .= "$field, ";
             push(@params, $basketgroupinfo->{$field});
         }
@@ -700,6 +704,8 @@ $hashref->{'billingplace'} is the 'billingplace' field of the basketgroup in the
 
 $hashref->{'deliveryplace'} is the 'deliveryplace' field of the basketgroup in the aqbasketgroups table,
 
+$hashref->{'freedeliveryplace'} is the 'freedeliveryplace' field of the basketgroup in the aqbasketgroups table,
+
 $hashref->{'deliverycomment'} is the 'deliverycomment' field of the basketgroup in the aqbasketgroups table,
 
 $hashref->{'closed'} is the 'closed' field of the aqbasketgroups table, it is false if 0, true otherwise.
@@ -1007,6 +1013,67 @@ sub GetOrder {
     return $data;
 }
 
+=head3 GetLastOrderNotReceivedFromSubscriptionid
+
+  $order = &GetLastOrderNotReceivedFromSubscriptionid($subscriptionid);
+
+Returns a reference-to-hash describing the last order not received for a subscription.
+
+=cut
+
+sub GetLastOrderNotReceivedFromSubscriptionid {
+    my ( $subscriptionid ) = @_;
+    my $dbh                = C4::Context->dbh;
+    my $query              = qq|
+        SELECT * FROM aqorders
+        LEFT JOIN subscription
+            ON ( aqorders.subscriptionid = subscription.subscriptionid )
+        WHERE aqorders.subscriptionid = ?
+            AND aqorders.datereceived IS NULL
+        LIMIT 1
+    |;
+    my $sth = $dbh->prepare( $query );
+    $sth->execute( $subscriptionid );
+    my $order = $sth->fetchrow_hashref;
+    return $order;
+}
+
+=head3 GetLastOrderReceivedFromSubscriptionid
+
+  $order = &GetLastOrderReceivedFromSubscriptionid($subscriptionid);
+
+Returns a reference-to-hash describing the last order received for a subscription.
+
+=cut
+
+sub GetLastOrderReceivedFromSubscriptionid {
+    my ( $subscriptionid ) = @_;
+    my $dbh                = C4::Context->dbh;
+    my $query              = qq|
+        SELECT * FROM aqorders
+        LEFT JOIN subscription
+            ON ( aqorders.subscriptionid = subscription.subscriptionid )
+        WHERE aqorders.subscriptionid = ?
+            AND aqorders.datereceived =
+                (
+                    SELECT MAX( aqorders.datereceived )
+                    FROM aqorders
+                    LEFT JOIN subscription
+                        ON ( aqorders.subscriptionid = subscription.subscriptionid )
+                        WHERE aqorders.subscriptionid = ?
+                            AND aqorders.datereceived IS NOT NULL
+                )
+        ORDER BY ordernumber DESC
+        LIMIT 1
+    |;
+    my $sth = $dbh->prepare( $query );
+    $sth->execute( $subscriptionid, $subscriptionid );
+    my $order = $sth->fetchrow_hashref;
+    return $order;
+
+}
+
+
 #------------------------------------------------------------#
 
 =head3 NewOrder
index 2984570..ca061b5 100644 (file)
@@ -387,6 +387,8 @@ sub get_template_and_user {
         my $opac_name = '';
         if (($opac_search_limit && $opac_search_limit =~ /branch:(\w+)/ && $opac_limit_override) || ($in->{'query'}->param('limit') && $in->{'query'}->param('limit') =~ /branch:(\w+)/)){
             $opac_name = $1;   # opac_search_limit is a branch, so we use it.
+        } elsif ( $in->{'query'}->param('multibranchlimit') ) {
+            $opac_name = $in->{'query'}->param('multibranchlimit');
         } elsif (C4::Context->preference("SearchMyLibraryFirst") && C4::Context->userenv && C4::Context->userenv->{'branch'}) {
             $opac_name = C4::Context->userenv->{'branch'};
         }
@@ -395,13 +397,14 @@ sub get_template_and_user {
             AnonSuggestions           => "" . C4::Context->preference("AnonSuggestions"),
             AuthorisedValueImages     => C4::Context->preference("AuthorisedValueImages"),
             BranchesLoop              => GetBranchesLoop($opac_name),
-            CalendarFirstDayOfWeek      => (C4::Context->preference("CalendarFirstDayOfWeek") eq "Sunday")?0:1,
+            BranchCategoriesLoop      => GetBranchCategories( undef, undef, 1, $opac_name ),
+            CalendarFirstDayOfWeek    => (C4::Context->preference("CalendarFirstDayOfWeek") eq "Sunday")?0:1,
             LibraryName               => "" . C4::Context->preference("LibraryName"),
             LibraryNameTitle          => "" . $LibraryNameTitle,
             LoginBranchname           => C4::Context->userenv?C4::Context->userenv->{"branchname"}:"",
             OPACAmazonCoverImages     => C4::Context->preference("OPACAmazonCoverImages"),
             OPACFRBRizeEditions       => C4::Context->preference("OPACFRBRizeEditions"),
-            OpacHighlightedWords       => C4::Context->preference("OpacHighlightedWords"),
+            OpacHighlightedWords      => C4::Context->preference("OpacHighlightedWords"),
             OPACItemHolds             => C4::Context->preference("OPACItemHolds"),
             OPACShelfBrowser          => "". C4::Context->preference("OPACShelfBrowser"),
             OpacShowRecentComments    => C4::Context->preference("OpacShowRecentComments"),
@@ -412,7 +415,7 @@ sub get_template_and_user {
             OpacAuthorities           => C4::Context->preference("OpacAuthorities"),
             OPACBaseURL               => ($in->{'query'}->https() ? "https://" : "http://") . $ENV{'SERVER_NAME'} .
                    ($ENV{'SERVER_PORT'} eq ($in->{'query'}->https() ? "443" : "80") ? '' : ":$ENV{'SERVER_PORT'}"),
-            opac_css_override           => $ENV{'OPAC_CSS_OVERRIDE'},
+            opac_css_override         => $ENV{'OPAC_CSS_OVERRIDE'},
             opac_search_limit         => $opac_search_limit,
             opac_limit_override       => $opac_limit_override,
             OpacBrowser               => C4::Context->preference("OpacBrowser"),
@@ -426,7 +429,7 @@ sub get_template_and_user {
             OpacNavRight              => "" . C4::Context->preference("OpacNavRight"),
             OpacNavBottom             => "" . C4::Context->preference("OpacNavBottom"),
             OpacPasswordChange        => C4::Context->preference("OpacPasswordChange"),
-            OPACPatronDetails        => C4::Context->preference("OPACPatronDetails"),
+            OPACPatronDetails         => C4::Context->preference("OPACPatronDetails"),
             OPACPrivacy               => C4::Context->preference("OPACPrivacy"),
             OPACFinesTab              => C4::Context->preference("OPACFinesTab"),
             OpacTopissue              => C4::Context->preference("OpacTopissue"),
index f3c1f7f..1f2f617 100644 (file)
@@ -105,30 +105,27 @@ sub checkpw_ldap {
     my $db = Net::LDAP->new(\@hosts);
        #$debug and $db->debug(5);
     my $userldapentry;
-       if ( $ldap->{auth_by_bind} ) {
-        my $principal_name = $ldap->{principal_name};
-        if ($principal_name and $principal_name =~ /\%/) {
-            $principal_name = sprintf($principal_name,$userid);
-        } else {
-            $principal_name = $userid;
-        }
-               my $res = $db->bind( $principal_name, password => $password );
-        if ( $res->code ) {
-            $debug and warn "LDAP bind failed as kohauser $principal_name: ". description($res);
-            return 0;
-        }
 
-       # FIXME dpavlin -- we really need $userldapentry leater on even if using auth_by_bind!
+  if ( $ldap->{auth_by_bind} ) {
+    # Perform an anonymous bind
+    my $res = $db->bind;
+    if ( $res->code ) {
+      $debug and warn "Anonymous LDAP bind failed: ". description($res);
+      return 0;
+    }
+
+    # Perform a LDAP search for the given username
+    my $search = search_method($db, $userid) or return 0;   # warnings are in the sub
+    $userldapentry = $search->shift_entry;
 
-       # BUG #5094
-       # 2010-08-04 JeremyC
-       # a $userldapentry is only needed if either updating or replicating are enabled
-       if($config{update} or $config{replicate}) {
-           my $search = search_method($db, $userid) or return 0;   # warnings are in the sub
-           $userldapentry = $search->shift_entry;
-       }
+    # Perform a LDAP bind for the given username using the matched DN
+    $res = $db->bind( $userldapentry->dn, password => $password );
+    if ( $res->code ) {
+      $debug and warn "LDAP bind failed as kohauser $userid: ". description($res);
+      return 0;
+    }
 
-       } else {
+  } else {
                my $res = ($config{anonymous}) ? $db->bind : $db->bind($ldapname, password=>$ldappassword);
                if ($res->code) {               # connection refused
                        warn "LDAP bind failed as ldapuser " . ($ldapname || '[ANONYMOUS]') . ": " . description($res);
@@ -419,8 +416,6 @@ Example XML stanza for LDAP configuration in KOHA_CONF.
     <update>1</update>             <!-- update existing users in Koha database -->
     <auth_by_bind>0</auth_by_bind> <!-- set to 1 to authenticate by binding instead of
                                         password comparison, e.g., to use Active Directory -->
-    <principal_name>%s@my_domain.com</principal_name>
-                                   <!-- optional, for auth_by_bind: a printf format to make userPrincipalName from koha userid -->
     <mapping>                  <!-- match koha SQL field names to your LDAP record field names -->
       <firstname    is="givenname"      ></firstname>
       <surname      is="sn"             ></surname>
index f316b17..9ea3b2d 100644 (file)
@@ -379,9 +379,9 @@ Get the record and tries to guess the adequate authtypecode from its content.
 =cut
 
 sub GuessAuthTypeCode {
-    my ($record) = @_;
+    my ($record, $heading_fields) = @_;
     return unless defined $record;
-my $heading_fields = {
+    $heading_fields //= {
     "MARC21"=>{
         '100'=>{authtypecode=>'PERSO_NAME'},
         '110'=>{authtypecode=>'CORPO_NAME'},
index fe67e0c..1509c13 100644 (file)
@@ -328,7 +328,7 @@ sub GetBranchCategory {
 
 =head2 GetBranchCategories
 
-  my $categories = GetBranchCategories($branchcode,$categorytype);
+  my $categories = GetBranchCategories($branchcode,$categorytype,$show_in_pulldown,$selected_in_pulldown);
 
 Returns a list ref of anon hashrefs with keys eq columns of branchcategories table,
 i.e. categorycode, categorydescription, categorytype, categoryname.
@@ -338,27 +338,43 @@ $branchcode is a member of , and to $categorytype.
 =cut
 
 sub GetBranchCategories {
-    my ($branchcode,$categorytype) = @_;
-       my $dbh = C4::Context->dbh();
-       my $query = "SELECT c.* FROM branchcategories c";
-       my (@where, @bind);
-       if($branchcode) {
-               $query .= ",branchrelations r, branches b ";
-               push @where, "c.categorycode=r.categorycode and r.branchcode=? ";  
-               push @bind , $branchcode;
-       }
-       if ($categorytype) {
-               push @where, " c.categorytype=? ";
-               push @bind, $categorytype;
-       }
-       $query .= " where " . join(" and ", @where) if(@where);
-       $query .= " order by categorytype,c.categorycode";
-       my $sth=$dbh->prepare( $query);
-       $sth->execute(@bind);
-       
-       my $branchcats = $sth->fetchall_arrayref({});
-       $sth->finish();
-       return( $branchcats );
+    my ( $branchcode, $categorytype, $show_in_pulldown, $selected_in_pulldown ) = @_;
+    my $dbh = C4::Context->dbh();
+
+    my $query = "SELECT c.* FROM branchcategories c";
+    my ( @where, @bind );
+
+    if( $branchcode ) {
+        $query .= ",branchrelations r, branches b ";
+        push @where, "c.categorycode = r.categorycode AND r.branchcode = ? ";
+        push @bind , $branchcode;
+    }
+
+    if ( $categorytype ) {
+        push @where, " c.categorytype = ? ";
+        push @bind, $categorytype;
+    }
+
+    if ( defined( $show_in_pulldown ) ) {
+        push( @where, " c.show_in_pulldown = ? " );
+        push( @bind, $show_in_pulldown );
+    }
+
+    $query .= " WHERE " . join(" AND ", @where) if(@where);
+    $query .= " ORDER BY categorytype,c.categorycode";
+    my $sth=$dbh->prepare( $query);
+    $sth->execute(@bind);
+
+    my $branchcats = $sth->fetchall_arrayref({});
+    $sth->finish();
+
+    if ( $selected_in_pulldown ) {
+        foreach my $bc ( @$branchcats ) {
+            $bc->{'selected'} = 1 if ( $bc->{'categorycode'} eq $selected_in_pulldown );
+        }
+    }
+
+    return( $branchcats );
 }
 
 =head2 GetCategoryTypes
@@ -506,14 +522,14 @@ sub ModBranchCategoryInfo {
     my $dbh    = C4::Context->dbh;
     if ($data->{'add'}){
        # we are doing an insert
-       my $sth   = $dbh->prepare("INSERT INTO branchcategories (categorycode,categoryname,codedescription,categorytype) VALUES (?,?,?,?)");
-       $sth->execute(uc( $data->{'categorycode'} ),$data->{'categoryname'}, $data->{'codedescription'},$data->{'categorytype'} );
+  my $sth   = $dbh->prepare("INSERT INTO branchcategories (categorycode,categoryname,codedescription,categorytype,show_in_pulldown) VALUES (?,?,?,?,?)");
+        $sth->execute(uc( $data->{'categorycode'} ),$data->{'categoryname'}, $data->{'codedescription'},$data->{'categorytype'},$data->{'show_in_pulldown'} );
        $sth->finish();         
     }
     else {
        # modifying
-       my $sth = $dbh->prepare("UPDATE branchcategories SET categoryname=?,codedescription=?,categorytype=? WHERE categorycode=?");
-       $sth->execute($data->{'categoryname'}, $data->{'codedescription'},$data->{'categorytype'},uc( $data->{'categorycode'} ) );
+        my $sth = $dbh->prepare("UPDATE branchcategories SET categoryname=?,codedescription=?,categorytype=?,show_in_pulldown=? WHERE categorycode=?");
+        $sth->execute($data->{'categoryname'}, $data->{'codedescription'},$data->{'categorytype'},$data->{'show_in_pulldown'},uc( $data->{'categorycode'} ) );
        $sth->finish();
     }
 }
index 4d26be6..01aca21 100644 (file)
@@ -243,6 +243,8 @@ sub Z3950Search {
     my $lccn= $pars->{lccn};
     my $lccall= $pars->{lccall};
     my $controlnumber= $pars->{controlnumber};
+    my $srchany= $pars->{srchany};
+    my $stdid= $pars->{stdid};
 
     my $show_next       = 0;
     my $total_pages     = 0;
@@ -280,12 +282,10 @@ sub Z3950Search {
         $nterms++;
     }
     if ($title) {
-        utf8::decode($title);
         $query .= " \@attr 1=4 \"$title\" ";
         $nterms++;
     }
     if ($author) {
-        utf8::decode($author);
         $query .= " \@attr 1=1003 \"$author\" ";
         $nterms++;
     }
@@ -294,7 +294,6 @@ sub Z3950Search {
         $nterms++;
     }
     if ($subject) {
-        utf8::decode($subject);
         $query .= " \@attr 1=21 \"$subject\" ";
         $nterms++;
     }
@@ -310,6 +309,14 @@ sub Z3950Search {
         $query .= " \@attr 1=12 \"$controlnumber\" ";
         $nterms++;
     }
+    if($srchany) {
+        $query .= " \@attr 1=1016 \"$srchany\" ";
+        $nterms++;
+    }
+    if($stdid) {
+        $query .= " \@attr 1=1007 \"$stdid\" ";
+        $nterms++;
+    }
     for my $i (1..$nterms-1) {
         $query = "\@and " . $query;
     }
index 7b553e6..2c78284 100644 (file)
@@ -41,6 +41,7 @@ BEGIN {
         &DelBudget
         &GetBudgetSpent
         &GetBudgetOrdered
+        &GetBudgetName
         &GetPeriodsCount
         &GetChildBudgetsSpent
 
@@ -356,6 +357,28 @@ sub GetBudgetOrdered {
        return $sum;
 }
 
+=head2 GetBudgetName
+
+  my $budget_name = &GetBudgetName($budget_id);
+
+get the budget_name for a given budget_id
+
+=cut
+
+sub GetBudgetName {
+    my ( $budget_id ) = @_;
+    my $dbh         = C4::Context->dbh;
+    my $sth         = $dbh->prepare(
+        qq|
+        SELECT budget_name
+        FROM aqbudgets
+        WHERE budget_id = ?
+    |);
+
+    $sth->execute($budget_id);
+    return $sth->fetchrow_array;
+}
+
 # -------------------------------------------------------------------
 sub GetBudgetAuthCats  {
     my ($budget_period_id) = shift;
index b5a5172..3fc124f 100644 (file)
@@ -1334,15 +1334,20 @@ Get loan length for an itemtype, a borrower type and a branch
 sub GetLoanLength {
     my ( $borrowertype, $itemtype, $branchcode ) = @_;
     my $dbh = C4::Context->dbh;
-    my $sth =
-      $dbh->prepare(
-'select issuelength, lengthunit from issuingrules where categorycode=? and itemtype=? and branchcode=? and issuelength is not null'
-      );
-# warn "in get loan lenght $borrowertype $itemtype $branchcode ";
-# try to find issuelength & return the 1st available.
-# check with borrowertype, itemtype and branchcode, then without one of those parameters
+    my $sth = $dbh->prepare(qq{
+        SELECT issuelength, lengthunit, renewalperiod
+        FROM issuingrules
+        WHERE   categorycode=?
+            AND itemtype=?
+            AND branchcode=?
+            AND issuelength IS NOT NULL
+    });
+
+    # try to find issuelength & return the 1st available.
+    # check with borrowertype, itemtype and branchcode, then without one of those parameters
     $sth->execute( $borrowertype, $itemtype, $branchcode );
     my $loanlength = $sth->fetchrow_hashref;
+
     return $loanlength
       if defined($loanlength) && $loanlength->{issuelength};
 
@@ -1384,6 +1389,7 @@ sub GetLoanLength {
     # if no rule is set => 21 days (hardcoded)
     return {
         issuelength => 21,
+        renewalperiod => 21,
         lengthunit => 'days',
     };
 
@@ -1418,7 +1424,7 @@ sub GetHardDueDate {
 
 FIXME - This is a copy-paste of GetLoanLength
 as a stop-gap.  Do not wish to change API for GetLoanLength 
-this close to release, however, Overdues::GetIssuingRules is broken.
+this close to release.
 
 Get the issuing rule for an itemtype, a borrower type and a branch
 Returns a hashref from the issuingrules table.
@@ -2165,7 +2171,7 @@ sub _FixAccountForLostAndReturned {
             # FIXME: move prepares outside while loop!
             my $usth = $dbh->prepare("UPDATE accountlines SET amountoutstanding= ?
                     WHERE (accountlines_id = ?)");
-            $usth->execute($newamtos,'$thisacct');    # FIXME: '$thisacct' is a string literal!
+            $usth->execute($newamtos,$thisacct);
             $usth = $dbh->prepare("INSERT INTO accountoffsets
                 (borrowernumber, accountno, offsetaccount,  offsetamount)
                 VALUES
@@ -2249,7 +2255,7 @@ sub GetItemIssue {
     my ($itemnumber) = @_;
     return unless $itemnumber;
     my $sth = C4::Context->dbh->prepare(
-        "SELECT *
+        "SELECT items.*, issues.*
         FROM issues
         LEFT JOIN items ON issues.itemnumber=items.itemnumber
         WHERE issues.itemnumber=?");
@@ -2415,8 +2421,6 @@ END_SQL
 
 Find out whether a borrowed item may be renewed.
 
-C<$dbh> is a DBI handle to the Koha database.
-
 C<$borrowernumber> is the borrower number of the patron who currently
 has the item on loan.
 
@@ -2426,7 +2430,7 @@ C<$override_limit>, if supplied with a true value, causes
 the limit on the number of times that the loan can be renewed
 (as controlled by the item type) to be ignored.
 
-C<$CanBookBeRenewed> returns a true value iff the item may be renewed. The
+C<$CanBookBeRenewed> returns a true value if the item may be renewed. The
 item must currently be on loan to the specified borrower; renewals
 must be allowed for the item's type; and the borrower must not have
 already renewed the loan. $error will contain the reason the renewal can not proceed
@@ -2440,63 +2444,29 @@ sub CanBookBeRenewed {
     my $dbh       = C4::Context->dbh;
     my $renews    = 1;
     my $renewokay = 0;
-       my $error;
+    my $error;
 
-    # Look in the issues table for this item, lent to this borrower,
-    # and not yet returned.
+    my $borrower    = C4::Members::GetMemberDetails( $borrowernumber, 0 )   or return;
+    my $item        = GetItem($itemnumber)                                  or return;
+    my $itemissue   = GetItemIssue($itemnumber)                             or return;
 
-    # Look in the issues table for this item, lent to this borrower,
-    # and not yet returned.
-    my %branch = (
-            'ItemHomeLibrary' => 'items.homebranch',
-            'PickupLibrary'   => 'items.holdingbranch',
-            'PatronLibrary'   => 'borrowers.branchcode'
-            );
-    my $controlbranch = $branch{C4::Context->preference('CircControl')};
-    my $itype         = C4::Context->preference('item-level_itypes') ? 'items.itype' : 'biblioitems.itemtype';
-    
-    my $sthcount = $dbh->prepare("
-                   SELECT 
-                    borrowers.categorycode, biblioitems.itemtype, issues.renewals, renewalsallowed, $controlbranch
-                   FROM  issuingrules, 
-                   issues
-                   LEFT JOIN items USING (itemnumber) 
-                   LEFT JOIN borrowers USING (borrowernumber) 
-                   LEFT JOIN biblioitems USING (biblioitemnumber)
-                   
-                   WHERE
-                    (issuingrules.categorycode = borrowers.categorycode OR issuingrules.categorycode = '*')
-                   AND
-                    (issuingrules.itemtype = $itype OR issuingrules.itemtype = '*')
-                   AND
-                    (issuingrules.branchcode = $controlbranch OR issuingrules.branchcode = '*') 
-                   AND 
-                    borrowernumber = ? 
-                   AND
-                    itemnumber = ?
-                   ORDER BY
-                    issuingrules.categorycode desc,
-                    issuingrules.itemtype desc,
-                    issuingrules.branchcode desc
-                   LIMIT 1;
-                  ");
-
-    $sthcount->execute( $borrowernumber, $itemnumber );
-    if ( my $data1 = $sthcount->fetchrow_hashref ) {
-        if ( ( $data1->{renewalsallowed} && $data1->{renewalsallowed} > $data1->{renewals} ) || $override_limit ) {
-            $renewokay = 1;
-        }
-        else {
-            $error = "too_many";
-        }
+    my $branchcode  = _GetCircControlBranch($item, $borrower);
 
-        my $resstatus = C4::Reserves::GetReserveStatus($itemnumber);
-        if ( $resstatus eq "Waiting" or $resstatus eq "Reserved" ) {
-            $renewokay = 0;
-            $error = "on_reserve";
-        }
+    my $issuingrule = GetIssuingRule($borrower->{categorycode}, $item->{itype}, $branchcode);
+
+    if ( ( $issuingrule->{renewalsallowed} > $itemissue->{renewals} ) || $override_limit ) {
+        $renewokay = 1;
+    } else {
+        $error = "too_many";
+    }
+
+    my $resstatus = C4::Reserves::GetReserveStatus($itemnumber);
+    if ( $resstatus eq "Waiting" or $resstatus eq "Reserved" ) {
+        $renewokay = 0;
+        $error = "on_reserve";
     }
-    return ($renewokay,$error);
+
+    return ( $renewokay, $error );
 }
 
 =head2 AddRenewal
@@ -2555,9 +2525,9 @@ sub AddRenewal {
         my $itemtype = (C4::Context->preference('item-level_itypes')) ? $biblio->{'itype'} : $biblio->{'itemtype'};
 
         $datedue = (C4::Context->preference('RenewalPeriodBase') eq 'date_due') ?
-                                        $issuedata->{date_due} :
+                                        dt_from_string( $issuedata->{date_due} ) :
                                         DateTime->now( time_zone => C4::Context->tz());
-        $datedue =  CalcDateDue($datedue,$itemtype,$issuedata->{'branchcode'},$borrower);
+        $datedue =  CalcDateDue($datedue, $itemtype, $issuedata->{'branchcode'}, $borrower, 'is a renewal');
     }
 
     # Update the issues record to have the new due date, and a new count
@@ -3022,62 +2992,60 @@ C<$startdate>   = C4::Dates object representing start date of loan period (assum
 C<$itemtype>  = itemtype code of item in question
 C<$branch>  = location whose calendar to use
 C<$borrower> = Borrower object
+C<$isrenewal> = Boolean: is true if we want to calculate the date due for a renewal. Else is false.
 
 =cut
 
 sub CalcDateDue {
-    my ( $startdate, $itemtype, $branch, $borrower ) = @_;
+    my ( $startdate, $itemtype, $branch, $borrower, $isrenewal ) = @_;
+
+    $isrenewal ||= 0;
 
     # loanlength now a href
     my $loanlength =
-      GetLoanLength( $borrower->{'categorycode'}, $itemtype, $branch );
+            GetLoanLength( $borrower->{'categorycode'}, $itemtype, $branch );
 
-    my $datedue;
+    my $length_key = ( $isrenewal and defined $loanlength->{renewalperiod} )
+            ? qq{renewalperiod}
+            : qq{issuelength};
 
-    # if globalDueDate ON the datedue is set to that date
-    if (C4::Context->preference('globalDueDate')
-        && ( C4::Context->preference('globalDueDate') =~
-            C4::Dates->regexp('syspref') )
-      ) {
-        $datedue = dt_from_string(
-            C4::Context->preference('globalDueDate'),
-            C4::Context->preference('dateformat')
-        );
+    my $datedue;
+    if ( $startdate ) {
+        if (ref $startdate ne 'DateTime' ) {
+            $datedue = dt_from_string($datedue);
+        } else {
+            $datedue = $startdate->clone;
+        }
     } else {
+        $datedue =
+          DateTime->now( time_zone => C4::Context->tz() )
+          ->truncate( to => 'minute' );
+    }
 
-        # otherwise, calculate the datedue as normal
-        if ( C4::Context->preference('useDaysMode') eq 'Days' )
-        {    # ignoring calendar
-            my $dt =
-              DateTime->now( time_zone => C4::Context->tz() )
-              ->truncate( to => 'minute' );
-            if ( $loanlength->{lengthunit} eq 'hours' ) {
-                $dt->add( hours => $loanlength->{issuelength} );
-            } else {    # days
-                $dt->add( days => $loanlength->{issuelength} );
-                $dt->set_hour(23);
-                $dt->set_minute(59);
-            }
-            # break
-            return $dt;
 
-        } else {
-            my $dur;
-            if ($loanlength->{lengthunit} eq 'hours') {
-                $dur = DateTime::Duration->new( hours => $loanlength->{issuelength});
-            }
-            else { # days
-                $dur = DateTime::Duration->new( days => $loanlength->{issuelength});
-            }
-            if (ref $startdate ne 'DateTime' ) {
-                $startdate = dt_from_string($startdate);
-            }
-            my $calendar = Koha::Calendar->new( branchcode => $branch );
-            $datedue = $calendar->addDate( $startdate, $dur, $loanlength->{lengthunit} );
-            if ($loanlength->{lengthunit} eq 'days') {
-                $datedue->set_hour(23);
-                $datedue->set_minute(59);
-            }
+    # calculate the datedue as normal
+    if ( C4::Context->preference('useDaysMode') eq 'Days' )
+    {    # ignoring calendar
+        if ( $loanlength->{lengthunit} eq 'hours' ) {
+            $datedue->add( hours => $loanlength->{$length_key} );
+        } else {    # days
+            $datedue->add( days => $loanlength->{$length_key} );
+            $datedue->set_hour(23);
+            $datedue->set_minute(59);
+        }
+    } else {
+        my $dur;
+        if ($loanlength->{lengthunit} eq 'hours') {
+            $dur = DateTime::Duration->new( hours => $loanlength->{$length_key});
+        }
+        else { # days
+            $dur = DateTime::Duration->new( days => $loanlength->{$length_key});
+        }
+        my $calendar = Koha::Calendar->new( branchcode => $branch );
+        $datedue = $calendar->addDate( $datedue, $dur, $loanlength->{lengthunit} );
+        if ($loanlength->{lengthunit} eq 'days') {
+            $datedue->set_hour(23);
+            $datedue->set_minute(59);
         }
     }
 
@@ -3098,6 +3066,7 @@ sub CalcDateDue {
         }
 
         # in all other cases, keep the date due as it is
+
     }
 
     # if ReturnBeforeExpiry ON the datedue can't be after borrower expirydate
@@ -3336,9 +3305,10 @@ sub GetOfflineOperation {
 }
 
 sub AddOfflineOperation {
+    my ( $userid, $branchcode, $timestamp, $action, $barcode, $cardnumber, $amount ) = @_;
     my $dbh = C4::Context->dbh;
-    my $sth = $dbh->prepare("INSERT INTO pending_offline_operations (userid, branchcode, timestamp, action, barcode, cardnumber) VALUES(?,?,?,?,?,?)");
-    $sth->execute( @_ );
+    my $sth = $dbh->prepare("INSERT INTO pending_offline_operations (userid, branchcode, timestamp, action, barcode, cardnumber, amount) VALUES(?,?,?,?,?,?,?)");
+    $sth->execute( $userid, $branchcode, $timestamp, $action, $barcode, $cardnumber, $amount );
     return "Added.";
 }
 
@@ -3357,6 +3327,8 @@ sub ProcessOfflineOperation {
         $report = ProcessOfflineReturn( $operation );
     } elsif ( $operation->{action} eq 'issue' ) {
         $report = ProcessOfflineIssue( $operation );
+    } elsif ( $operation->{action} eq 'payment' ) {
+        $report = ProcessOfflinePayment( $operation );
     }
 
     DeleteOfflineOperation( $operation->{operationid} ) if $operation->{operationid};
@@ -3426,6 +3398,16 @@ sub ProcessOfflineIssue {
     }
 }
 
+sub ProcessOfflinePayment {
+    my $operation = shift;
+
+    my $borrower = C4::Members::GetMemberDetails( undef, $operation->{cardnumber} ); # Get borrower from operation cardnumber
+    my $amount = $operation->{amount};
+
+    recordpayment( $borrower->{borrowernumber}, $amount );
+
+    return "Success."
+}
 
 
 =head2 TransferSlip
index 7709f7e..fee8752 100644 (file)
@@ -1104,7 +1104,22 @@ set_userenv is called in Auth.pm
 
 #'
 sub set_userenv {
-    my ($usernum, $userid, $usercnum, $userfirstname, $usersurname, $userbranch, $branchname, $userflags, $emailaddress, $branchprinter, $persona)= @_;
+    my (
+        $usernum,      $userid,        $usercnum,   $userfirstname,
+        $usersurname,  $userbranch,    $branchname, $userflags,
+        $emailaddress, $branchprinter, $persona
+    ) = @_;
+    for (
+        $usernum,      $userid,        $usercnum,   $userfirstname,
+        $usersurname,  $userbranch,    $branchname, $userflags,
+        $emailaddress, $branchprinter, $persona
+      )
+    {
+        utf8::decode($_) if $_;
+    }
+
+    # CGI::Session doesn't handle utf-8, so we decode it here
+
     my $var=$context->{"activeuser"} || '';
     my $cell = {
         "number"     => $usernum,
index 9306263..28beeb7 100644 (file)
@@ -199,7 +199,11 @@ sub remove_duplicates {
     my %seen=();
     my $query = "DELETE FROM creator_batches WHERE label_id = ?;"; # ORDER BY timestamp ASC LIMIT ?;";
     my $sth = C4::Context->dbh->prepare($query);
-    my @duplicate_items = grep{$seen{$_->{'item_number'}}++} @{$self->{'items'}};
+    my @duplicate_items = grep{
+        $_->{'item_number'}
+            ? $seen{$_->{'item_number'}}++
+            : $seen{$_->{'borrower_number'}}++
+    } @{$self->{'items'}};
     foreach my $item (@duplicate_items) {
         $sth->execute($item->{'label_id'});
         if ($sth->err) {
index 0a57b59..d052427 100644 (file)
@@ -155,7 +155,8 @@ sub get_all_templates {
     my %params = @_;
     my @templates = ();
     my $query = "SELECT " . ($params{'field_list'} ? $params{'field_list'} : '*') . " FROM creator_templates";
-    $query .= ($params{'filter'} ? " WHERE $params{'filter'};" : ';');
+    $query .= ($params{'filter'} ? " WHERE $params{'filter'} " : '');
+    $query .= ($params{'orderby'} ? " ORDER BY $params{'orderby'} " : '');
     my $sth = C4::Context->dbh->prepare($query);
     $sth->execute();
     if ($sth->err) {
@@ -181,7 +182,8 @@ sub get_all_layouts {
     my %params = @_;
     my @layouts = ();
     my $query = "SELECT " . ($params{'field_list'} ? $params{'field_list'} : '*') . " FROM creator_layouts";
-    $query .= ($params{'filter'} ? " WHERE $params{'filter'};" : ';');
+    $query .= ($params{'filter'} ? " WHERE $params{'filter'} " : '');
+    $query .= ($params{'orderby'} ? " ORDER BY $params{'orderby'} " : '');
     my $sth = C4::Context->dbh->prepare($query);
     $sth->execute();
     if ($sth->err) {
index 7d38963..655269b 100755 (executable)
@@ -400,8 +400,7 @@ sub MapItemsToHoldRequests {
     foreach my $item (@$available_items) {
         next unless $item->{holdallowed};
 
-        push @{ $items_by_branch{  $automatic_return ? $item->{homebranch}
-                                                     : $item->{holdingbranch} } }, $item
+        push @{ $items_by_branch{ $item->{holdingbranch} } }, $item
           unless exists $allocated_items{ $item->{itemnumber} };
     }
     return unless keys %items_by_branch;
index 9c173dc..5bb9662 100644 (file)
@@ -407,10 +407,10 @@ sub load_sql_in_order {
 Set the 'marcflavour' system preference.  The incoming
 C<$marcflavour> references to a subdirectory of
 installer/data/$dbms/$lang/marcflavour, and is
-normalized to MARC21 or UNIMARC.
+normalized to MARC21, UNIMARC or NORMARC.
 
 FIXME: this method assumes that the MARC flavour will be either
-MARC21 or UNIMARC.
+MARC21, UNIMARC or NORMARC.
 
 =cut
 
@@ -422,9 +422,10 @@ sub set_marcflavour_syspref {
     # marc_cleaned finds the marcflavour, without the variant.
     my $marc_cleaned = 'MARC21';
     $marc_cleaned = 'UNIMARC' if $marcflavour =~ /unimarc/i;
+    $marc_cleaned = 'NORMARC' if $marcflavour =~ /normarc/i;
     my $request =
         $self->{'dbh'}->prepare(
-          "INSERT IGNORE INTO `systempreferences` (variable,value,explanation,options,type) VALUES('marcflavour','$marc_cleaned','Define global MARC flavor (MARC21 or UNIMARC) used for character encoding','MARC21|UNIMARC','Choice');"
+          "INSERT IGNORE INTO `systempreferences` (variable,value,explanation,options,type) VALUES('marcflavour','$marc_cleaned','Define global MARC flavor (MARC21, UNIMARC or NORMARC) used for character encoding','MARC21|UNIMARC|NORMARC','Choice');"
         );
     $request->execute;
 }
index 535a377..5671b50 100644 (file)
@@ -674,6 +674,11 @@ our $PERL_DEPS = {
         'required' => '0',
         'min_ver'  => '3.9',
     },
+    'File::Slurp' => {
+        'usage'    => 'Command line scripts',
+        'required' => '0',
+        'min_ver'  => '9999.13',
+    },
 };
 
 1;
index 648cff9..fffa0a2 100644 (file)
@@ -81,7 +81,7 @@ sub all {
     for ( @{$dbh->selectall_arrayref(
         "SELECT * FROM itemtypes ORDER BY description", { Slice => {} })} )
     {
-        utf8::encode($_->{description});
+#        utf8::encode($_->{description});
         push @itypes, $class->new($_);
     }
     return @itypes;
index 6533a68..e173dc2 100644 (file)
@@ -2656,6 +2656,10 @@ sub PrepareItemrecordDisplay {
                     && $defaultvalues
                     && $defaultvalues->{'callnumber'} ) {
                     if( $itemrecord and $defaultvalues and not $itemrecord->field($subfield) ){
+                        # if the item record exists, only use default value if the item has no callnumber
+                        $defaultvalue = $defaultvalues->{callnumber};
+                    } elsif ( !$itemrecord and $defaultvalues ) {
+                        # if the item record *doesn't* exists, always use the default value
                         $defaultvalue = $defaultvalues->{callnumber};
                     }
                 }
@@ -2671,6 +2675,10 @@ sub PrepareItemrecordDisplay {
                     && $defaultvalues->{'location'} ) {
 
                     if ( $itemrecord and $defaultvalues and not $itemrecord->field($subfield) ) {
+                        # if the item record exists, only use default value if the item has no locationr
+                        $defaultvalue = $defaultvalues->{location};
+                    } elsif ( !$itemrecord and $defaultvalues ) {
+                        # if the item record *doesn't* exists, always use the default value
                         $defaultvalue = $defaultvalues->{location};
                     }
                 }
@@ -2701,7 +2709,7 @@ sub PrepareItemrecordDisplay {
                                 $authorised_lib{$branchcode} = $branchname;
                             }
                         }
-                        $defaultvalue = C4::Context->userenv->{branch};
+                        $defaultvalue = $defaultvalues->{branchcode} || C4::Context->userenv->{branch};
 
                         #----- itemtypes
                     } elsif ( $tagslib->{$tag}->{$subfield}->{authorised_value} eq "itemtypes" ) {
@@ -2727,6 +2735,8 @@ sub PrepareItemrecordDisplay {
                             $authorised_lib{$class_source} = $class_sources->{$class_source}->{'description'};
                         }
 
+                        $defaultvalue = $default_source;
+
                         #---- "true" authorised value
                     } else {
                         $authorised_values_sth->execute(
index 4c01309..6869ab0 100644 (file)
@@ -63,6 +63,7 @@ BEGIN {
     &GetAuthorisedValueByCode
     &GetKohaImageurlFromAuthorisedValues
                &GetAuthValCode
+        &AddAuthorisedValue
                &GetNormalizedUPC
                &GetNormalizedISBN
                &GetNormalizedEAN
@@ -1226,6 +1227,26 @@ sub GetKohaAuthorisedValueLib {
   return $value;
 }
 
+=head2 AddAuthorisedValue
+
+    AddAuthorisedValue($category, $authorised_value, $lib, $lib_opac, $imageurl);
+
+Create a new authorised value.
+
+=cut
+
+sub AddAuthorisedValue {
+    my ($category, $authorised_value, $lib, $lib_opac, $imageurl) = @_;
+
+    my $dbh = C4::Context->dbh;
+    my $query = qq{
+        INSERT INTO authorised_values (category, authorised_value, lib, lib_opac, imageurl)
+        VALUES (?,?,?,?,?)
+    };
+    my $sth = $dbh->prepare($query);
+    $sth->execute($category, $authorised_value, $lib, $lib_opac, $imageurl);
+}
+
 =head2 display_marc_indicators
 
   my $display_form = C4::Koha::display_marc_indicators($field);
index 6e2c89a..63acf14 100644 (file)
@@ -298,12 +298,8 @@ sub output_with_http_headers {
         $options->{'Content-Script-Type'} = 'text/javascript';
     }
 
-# We can't encode here, that will double encode our templates, and xslt
-# We need to fix the encoding as it comes out of the database, or when we pass the variables to templates
-#    utf8::encode($data) if utf8::is_utf8($data);
-
     $data =~ s/\&amp\;amp\; /\&amp\; /g;
+    utf8::encode($data);
     print $query->header($options), $data;
 }
 
index 80771ae..bc1c7a7 100644 (file)
@@ -72,10 +72,6 @@ BEGIN {
        push @EXPORT, qw(
         &GetIssuesIteminfo
        );
-    #
-       # &GetIssuingRules - delete.
-       # use C4::Circulation::GetIssuingRule instead.
-       
        # subs to move to Members.pm
        push @EXPORT, qw(
         &CheckBorrowerDebarred
@@ -696,41 +692,6 @@ sub GetFine {
     return 0;
 }
 
-
-=head2 GetIssuingRules
-
-FIXME - This sub should be deprecated and removed.
-It ignores branch and defaults.
-
-    $data = &GetIssuingRules($itemtype,$categorycode);
-
-Looks up for all issuingrules an item info 
-
-C<$itemnumber> is a reference-to-hash whose keys are all of the fields
-from the borrowers and categories tables of the Koha database. Thus,
-
-C<$categorycode> contains  information about borrowers category 
-
-C<$data> contains all information about both the borrower and
-category he or she belongs to.
-=cut 
-
-sub GetIssuingRules {
-       warn "GetIssuingRules is deprecated: use GetIssuingRule from C4::Circulation instead.";
-   my ($itemtype,$categorycode)=@_;
-   my $dbh   = C4::Context->dbh();    
-   my $query=qq|SELECT *
-        FROM issuingrules
-        WHERE issuingrules.itemtype=?
-            AND issuingrules.categorycode=?
-        |;
-    my $sth = $dbh->prepare($query);
-    #  print $query;
-    $sth->execute($itemtype,$categorycode);
-    return $sth->fetchrow_hashref;
-}
-
-
 sub ReplacementCost2 {
     my ( $itemnum, $borrowernumber ) = @_;
     my $dbh   = C4::Context->dbh();
index f75195f..be1912c 100644 (file)
@@ -647,18 +647,40 @@ C<$id> - an id for the BibTex record (might be the biblionumber)
 sub marc2bibtex {
     my ($record, $id) = @_;
     my $tex;
+    my $marcflavour = C4::Context->preference("marcflavour");
 
     # Authors
-    my $marcauthors = GetMarcAuthors($record,C4::Context->preference("marcflavour"));
     my $author;
-    for my $authors ( map { map { @$_ } values %$_  } @$marcauthors  ) {  
-       $author .= " and " if ($author && $$authors{value});
-       $author .= $$authors{value} if ($$authors{value}); 
+    my @texauthors;
+    my ( $mintag, $maxtag, $fields_filter );
+    if ( $marcflavour eq "UNIMARC" ) {
+        $mintag        = "700";
+        $maxtag        = "712";
+        $fields_filter = '7..';
     }
+    else {
+        $mintag        = "700";
+        $maxtag        = "720";
+        $fields_filter = '7..';
+    }
+    foreach my $field ( $record->field($fields_filter) ) {
+        next unless $field->tag() >= $mintag && $field->tag() <= $maxtag;
+        # author formatted surname, firstname
+        my $texauthor = '';
+        if ( $marcflavour eq "UNIMARC" ) {
+            $texauthor = join ', ',
+              ( $field->subfield('a'), $field->subfield('b') );
+        }
+        else {
+            $texauthor = $field->subfield('a');
+        }
+        push @texauthors, $texauthor if $texauthor;
+    }
+    $author = join ' and ', @texauthors;
 
     # Defining the conversion hash according to the marcflavour
     my %bh;
-    if (C4::Context->preference("marcflavour") eq "UNIMARC") {
+    if ( $marcflavour eq "UNIMARC" ) {
        
        # FIXME, TODO : handle repeatable fields
        # TODO : handle more types of documents
index 03ca59b..f0dc71e 100644 (file)
@@ -17,10 +17,10 @@ my $patron_status_test_template = {
               $SIPtest::field_specs{(FID_SCREEN_MSG)},
               $SIPtest::field_specs{(FID_PRINT_LINE)},
               { field    => FID_PATRON_ID,
-                pat      => qr/^23529001000463$/,
+                pat      => qr/^$user_barcode$/,
                 required => 1, },
               { field    => FID_PERSONAL_NAME,
-                pat      => qr/^Edna Acosta$/,
+                pat      => qr/^$user_fullname$/,
                 required => 1, },
               { field    => FID_VALID_PATRON,
                 pat      => qr/^Y$/,
@@ -76,10 +76,10 @@ $test->{fields} = [
                 $SIPtest::field_specs{(FID_SCREEN_MSG)},
                 $SIPtest::field_specs{(FID_PRINT_LINE)},
                 { field    => FID_PATRON_ID,
-                  pat      => qr/^23529001000463$/,
+                  pat      => qr/^$user_barcode$/,
                   required => 1, },
                 { field    => FID_PERSONAL_NAME,
-                  pat      => qr/^Edna Acosta$/,
+                  pat      => qr/^$user_fullname$/,
                   required => 1, },
                 { field    => FID_VALID_PATRON,
                   pat      => qr/^Y$/,
index d3d3ce1..d4ce9fb 100644 (file)
@@ -484,6 +484,7 @@ sub getRecords {
                     # not an index scan
                     else {
                         $record = $results[ $i - 1 ]->record($j)->raw();
+                        utf8::decode( $record );
 
                         # warn "RECORD $j:".$record;
                         $results_hash->{'RECORDS'}[$j] = $record;
@@ -501,6 +502,7 @@ sub getRecords {
                         for ( my $j = 0 ; $j < $jmax ; $j++ ) {
                             my $render_record =
                               $results[ $i - 1 ]->record($j)->render();
+                            utf8::decode($render_record);
                             my @used_datas = ();
                             foreach my $tag ( @{ $facet->{tags} } ) {
 
@@ -714,6 +716,7 @@ sub pazGetRecords {
         for (my $i = 0; $i < $count; $i++) {
             # FIXME -- may need to worry about diacritics here
             my $rec = $paz->record($recid, $i);
+            utf8::decode( $rec );
             push @{ $result_group->{'RECORDS'} }, $rec;
         }
 
@@ -1290,17 +1293,17 @@ sub buildQuery {
         if ( @limits ) {
             $q .= ' and '.join(' and ', @limits);
         }
-        return ( undef, $q, $q, "q=ccl=".uri_escape($q), $q, '', '', '', '', 'ccl' );
+        return ( undef, $q, $q, "q=ccl=".uri_escape_utf8($q), $q, '', '', '', '', 'ccl' );
     }
     if ( $query =~ /^cql=/ ) {
-        return ( undef, $', $', "q=cql=".uri_escape($'), $', '', '', '', '', 'cql' );
+        return ( undef, $', $', "q=cql=".uri_escape_utf8($'), $', '', '', '', '', 'cql' );
     }
     if ( $query =~ /^pqf=/ ) {
         if ($query_desc) {
-            $query_cgi = "q=".uri_escape($query_desc);
+            $query_cgi = "q=".uri_escape_utf8($query_desc);
         } else {
             $query_desc = $';
-            $query_cgi = "q=pqf=".uri_escape($');
+            $query_cgi = "q=pqf=".uri_escape_utf8($');
         }
         return ( undef, $', $', $query_cgi, $query_desc, '', '', '', '', 'pqf' );
     }
@@ -1472,9 +1475,9 @@ sub buildQuery {
                         $query     .= " $operators[$i-1] ";
                         $query     .= " $index_plus " unless $indexes_set;
                         $query     .= " $operand";
-                        $query_cgi .= "&op=".uri_escape($operators[$i-1]);
-                        $query_cgi .= "&idx=".uri_escape($index) if $index;
-                        $query_cgi .= "&q=".uri_escape($operands[$i]) if $operands[$i];
+                        $query_cgi .= "&op=".uri_escape_utf8($operators[$i-1]);
+                        $query_cgi .= "&idx=".uri_escape_utf8($index) if $index;
+                        $query_cgi .= "&q=".uri_escape_utf8($operands[$i]) if $operands[$i];
                         $query_desc .=
                           " $operators[$i-1] $index_plus $operands[$i]";
                     }
@@ -1484,8 +1487,8 @@ sub buildQuery {
                         $query      .= " and ";
                         $query      .= "$index_plus " unless $indexes_set;
                         $query      .= "$operand";
-                        $query_cgi  .= "&op=and&idx=".uri_escape($index) if $index;
-                        $query_cgi  .= "&q=".uri_escape($operands[$i]) if $operands[$i];
+                        $query_cgi  .= "&op=and&idx=".uri_escape_utf8($index) if $index;
+                        $query_cgi  .= "&q=".uri_escape_utf8($operands[$i]) if $operands[$i];
                         $query_desc .= " and $index_plus $operands[$i]";
                     }
                 }
@@ -1497,8 +1500,8 @@ sub buildQuery {
                     $query .= " $index_plus " unless $indexes_set;
                     $query .= $operand;
                     $query_desc .= " $index_plus $operands[$i]";
-                    $query_cgi  .= "&idx=".uri_escape($index) if $index;
-                    $query_cgi  .= "&q=".uri_escape($operands[$i]) if $operands[$i];
+                    $query_cgi  .= "&idx=".uri_escape_utf8($index) if $index;
+                    $query_cgi  .= "&q=".uri_escape_utf8($operands[$i]) if $operands[$i];
                     $previous_operand = 1;
                 }
             }    #/if $operands
index 0b31a2b..b8b53ed 100644 (file)
@@ -55,6 +55,7 @@ BEGIN {
       &CountIssues
       HasItems
       &GetSubscriptionsFromBorrower
+      &subscriptionCurrentlyOnOrder
 
     );
 }
@@ -1441,7 +1442,7 @@ sub ReNewSubscription {
     # renew subscription
     $query = qq|
         UPDATE subscription
-        SET    startdate=?,numberlength=?,weeklength=?,monthlength=?
+        SET    startdate=?,numberlength=?,weeklength=?,monthlength=?,reneweddate=NOW()
         WHERE  subscriptionid=?
     |;
     $sth = $dbh->prepare($query);
@@ -2532,6 +2533,28 @@ sub ReopenSubscription {
     $sth->execute( $subscriptionid );
 }
 
+=head2 subscriptionCurrentlyOnOrder
+
+    $bool = subscriptionCurrentlyOnOrder( $subscriptionid );
+
+Return 1 if subscription is currently on order else 0.
+
+=cut
+
+sub subscriptionCurrentlyOnOrder {
+    my ( $subscriptionid ) = @_;
+    my $dbh = C4::Context->dbh;
+    my $query = qq|
+        SELECT COUNT(*) FROM aqorders
+        WHERE subscriptionid = ?
+            AND datereceived IS NULL
+            AND datecancellationprinted IS NULL
+    |;
+    my $sth = $dbh->prepare( $query );
+    $sth->execute($subscriptionid);
+    return $sth->fetchrow_array;
+}
+
 1;
 __END__
 
index ddd1d6a..131f117 100644 (file)
@@ -143,11 +143,22 @@ sub SearchSuggestion {
                 };
             }
         }
+    } else {
+        if ( defined $suggestion->{branchcode} && $suggestion->{branchcode} ) {
+            unless ( $suggestion->{branchcode} eq '__ANY__' ) {
+                push @sql_params, $suggestion->{branchcode};
+                push @query,      qq{ AND suggestions.branchcode=? };
+            }
+        } else {
+            push @query, qq{
+                AND (suggestions.branchcode='' OR suggestions.branchcode IS NULL)
+            };
+        }
     }
 
     # filter on nillable fields
     foreach my $field (
-        qw( STATUS branchcode itemtype suggestedby managedby acceptedby budgetid biblionumber )
+        qw( STATUS itemtype suggestedby managedby acceptedby budgetid biblionumber )
       )
     {
         if ( exists $suggestion->{$field} ) {
index 88b9b01..7f50143 100644 (file)
@@ -67,6 +67,7 @@ sub new {
             COMPILE_DIR => C4::Context->config('template_cache_dir')?C4::Context->config('template_cache_dir'):'',,
             INCLUDE_PATH => \@includes,
             FILTERS => {},
+            ENCODING => 'utf8', # templates don't have BOM, see Template::FAQ
         }
     ) or die Template->error();
     my $self = {
@@ -114,57 +115,16 @@ sub output {
         C4::Context->preference('opaclayoutstylesheet');
 
     # add variables set via param to $vars for processing
-    # and clean any utf8 mess
     for my $k ( keys %{ $self->{VARS} } ) {
         $vars->{$k} = $self->{VARS}->{$k};
-        if (ref($vars->{$k}) eq 'ARRAY'){
-            utf8_arrayref($vars->{$k});
-        }
-        elsif (ref($vars->{$k}) eq 'HASH'){
-            utf8_hashref($vars->{$k});
-        }
-        else {
-            utf8::encode($vars->{$k}) if utf8::is_utf8($vars->{$k});
-        }
     }
     my $data;
-#    binmode( STDOUT, ":utf8" );
     $template->process( $self->filename, $vars, \$data )
       || die "Template process failed: ", $template->error();
     return $data;
 }
 
-sub utf8_arrayref {
-    my $arrayref = shift;
-    foreach my $element (@$arrayref){
-        if (ref($element) eq 'ARRAY'){
-            utf8_arrayref($element);
-            next;
-        }
-        if (ref($element) eq 'HASH'){
-            utf8_hashref($element);
-            next;
-        }
-        utf8::encode($element) if utf8::is_utf8($element);
-    }        
-}         
-
-sub utf8_hashref {
-    my $hashref = shift;
-    for my $key (keys %{$hashref}){
-        if (ref($hashref->{$key}) eq 'ARRAY'){
-            utf8_arrayref($hashref->{$key});
-            next;
-        }
-        if (ref($hashref->{$key}) eq 'HASH'){
-            utf8_hashref($hashref->{$key});
-            next;
-        }
-        utf8::encode($hashref->{$key}) if utf8::is_utf8($hashref->{$key});
-    }
-}
-        
-        
+
 # FIXME - this is a horrible hack to cache
 # the current known-good language, temporarily
 # put in place to resolve bug 4403.  It is
index 8616c95..12025f8 100644 (file)
@@ -156,12 +156,16 @@ sub _get_url {
 sub _service_throttle {
     my ($service_type,$daily_limit) = @_;
     my $dbh = C4::Context->dbh;
-    my $sth = $dbh->prepare("SELECT service_count FROM services_throttle WHERE service_type=?");
+    my $sth = $dbh->prepare(q{ SELECT service_count FROM services_throttle WHERE service_type=? });
     $sth->execute($service_type);
-    my $count = 1;
+    my $count = 0;
 
-    while (my $counter = $sth->fetchrow_hashref()) {
-        $count = $counter->{service_count} if $counter->{service_count};
+    if ($sth->rows == 0) {
+        # initialize services throttle
+        my $sth2 = $dbh->prepare(q{ INSERT INTO services_throttle (service_type, service_count) VALUES (?, ?) });
+        $sth2->execute($service_type, $count);
+    } else {
+        $count = $sth->fetchrow_array;
     }
 
     # we're over the limit
@@ -169,7 +173,9 @@ sub _service_throttle {
 
     # not over the limit
     $count++;
-    $sth = $dbh->do("UPDATE services_throttle SET service_count=$count WHERE service_type='xisbn'");
+    my $sth3 = $dbh->prepare(q{ UPDATE services_throttle SET service_count=? WHERE service_type=? });
+    $sth3->execute($count, $service_type);
+
     return undef;
 }
 
index 139ddd2..dd1967a 100644 (file)
@@ -221,7 +221,8 @@ sub XSLTParse4Display {
         $stylesheet->{$xslfilename} = $xslt->parse_stylesheet($style_doc);
     }
     my $results      = $stylesheet->{$xslfilename}->transform($source);
-    my $newxmlrecord = $stylesheet->{$xslfilename}->output_string($results);
+    my $newxmlrecord = $stylesheet->{$xslfilename}->output_as_chars($results);
+    #no need to decode with UTF-8 in header of XSLT templates: BZ 6554
     return $newxmlrecord;
 }
 
@@ -279,8 +280,8 @@ sub buildKohaItemsNamespace {
             $status = "available";
         }
         my $homebranch = $item->{homebranch}? xml_escape($branches->{$item->{homebranch}}->{'branchname'}):'';
-        $location = xml_escape($shelflocations->{$item->{location}});
-        $ccode = xml_escape($ccodes->{$item->{ccode}});
+        $location = $item->{location}? xml_escape($shelflocations->{$item->{location}}):'';
+        $ccode = $item->{ccode}? xml_escape($ccodes->{$item->{ccode}}):'';
         my $itemcallnumber = xml_escape($item->{itemcallnumber});
         $xml.= "<item><homebranch>$homebranch</homebranch>".
                 "<location>$location</location>".
index 1360afa..3b31fc5 100644 (file)
@@ -63,7 +63,7 @@ sub GetPlugins {
 
     foreach my $plugin_class (@plugin_classes) {
         if ( can_load( modules => { $plugin_class => undef } ) ) {
-            my $plugin = $plugin_class->new();
+            my $plugin = $plugin_class->new({ enable_plugins => $self->{'enable_plugins'} });
 
             if ($method) {
                 if ( $plugin->can($method) ) {
index 3b0ab15..4e02ae6 100644 (file)
@@ -24,11 +24,6 @@ use Module::Pluggable require => 1;
 use base qw{Module::Bundled::Files};
 
 use C4::Context;
-use C4::Auth;
-
-BEGIN {
-    push @INC, C4::Context->config("pluginsdir");
-}
 
 =head1 NAME
 
@@ -108,12 +103,13 @@ C4:Template, but at the moment, it does not.
 sub get_template {
     my ( $self, $args ) = @_;
 
-    my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
+    require C4::Auth;
+
+    my ( $template, $loggedinuser, $cookie ) = C4::Auth::get_template_and_user(
         {   template_name   => $self->mbf_path( $args->{'file'} ),
             query           => $self->{'cgi'},
             type            => "intranet",
             authnotrequired => 1,
-#           flagsrequired   => { tools => '*' },
             is_plugin       => 1,
         }
     );
index 18ceba1..41c242b 100644 (file)
@@ -58,7 +58,7 @@ sub run {
     my $cgi           = $args->{'cgi'};
 
     if ( can_load( modules => { $plugin_class => undef } ) ) {
-        my $plugin = $plugin_class->new( { cgi => $cgi } );
+        my $plugin = $plugin_class->new( { cgi => $cgi, enable_plugins => $args->{'enable_plugins'} } );
         if ( $plugin->can($plugin_method) ) {
             return $plugin->$plugin_method();
         } else {
index 00656fa..882d51e 100644 (file)
@@ -17,21 +17,20 @@ package Koha::Template::Plugin::KohaDates;
 # 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;
+use Modern::Perl;
 
 use Template::Plugin::Filter;
 use base qw( Template::Plugin::Filter );
-use warnings;
-use strict;
 
-use C4::Dates;
+use Koha::DateUtils;
+our $DYNAMIC = 1;
 
 sub filter {
-    my ($self,$text) = @_;
-    return "" if not $text;
-    my $date = C4::Dates->new( $text, 'iso' );
-    return $date->output("syspref");
+    my ( $self, $text, $args, $config ) = @_;
+    return "" unless $text;
+    $config->{with_hours} //= 0;
+    my $dt = dt_from_string( $text, 'iso' );
+    return output_pref( $dt, undef, undef, !$config->{with_hours} );
 }
 
 1;
index b69dfad..f306e2d 100644 (file)
@@ -293,6 +293,7 @@ my $target_map = {
   './OpenILS'                   => 'PERL_MODULE_DIR',
   './README.txt'                => 'NONE',
   './patroncards'               => 'INTRANET_CGI_DIR',
+  './plugins'                   => 'INTRANET_CGI_DIR',
   './reports'                   => 'INTRANET_CGI_DIR',
   './reserve'                   => 'INTRANET_CGI_DIR',
   './reviews'                   => 'INTRANET_CGI_DIR',
index 3fa7620..077adaf 100755 (executable)
@@ -153,6 +153,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
 my $orderinfo                                  = $input->Vars;
 $orderinfo->{'list_price'}    ||=  0;
 $orderinfo->{'uncertainprice'} ||= 0;
+$orderinfo->{subscriptionid} ||= undef;
 
 my $user = $input->remote_user;
 
index 6b7e5bf..d6bd5d1 100755 (executable)
@@ -53,6 +53,7 @@ use C4::Output;
 use CGI;
 
 use C4::Bookseller qw/GetBookSellerFromId/;
+use C4::Budgets qw/ConvertCurrency/;
 use C4::Acquisition qw/CloseBasketgroup ReOpenBasketgroup GetOrders GetBasketsByBasketgroup GetBasketsByBookseller ModBasketgroup NewBasketgroup DelBasketgroup GetBasketgroups ModBasket GetBasketgroup GetBasket GetBasketGroupAsCSV/;
 use C4::Bookseller qw/GetBookSellerFromId/;
 use C4::Branch qw/GetBranches/;
@@ -210,63 +211,75 @@ sub printbasketgrouppdf{
         my @ba_orders;
         my @ords = &GetOrders($basket->{basketno});
         for my $ord (@ords) {
-            # ba_order is filled with : 
+
+            next unless ( $ord->{biblionumber} or $ord->{quantity}> 0 );
+            eval {
+                require C4::Biblio;
+                import C4::Biblio;
+            };
+            if ($@){
+                croak $@;
+            }
+            eval {
+                require C4::Koha;
+                import C4::Koha;
+            };
+            if ($@){
+                croak $@;
+            }
+
+            $ord->{rrp} = ConvertCurrency( $ord->{'currency'}, $ord->{rrp} );
+            if ( $bookseller->{'listincgst'} ) {
+                $ord->{rrpgsti} = sprintf( "%.2f", $ord->{rrp} );
+                $ord->{gstgsti} = sprintf( "%.2f", $ord->{gstrate} * 100 );
+                $ord->{rrpgste} = sprintf( "%.2f", $ord->{rrp} / ( 1 + ( $ord->{gstgsti} / 100 ) ) );
+                $ord->{gstgste} = sprintf( "%.2f", $ord->{gstgsti} / ( 1 + ( $ord->{gstgsti} / 100 ) ) );
+                $ord->{ecostgsti} = sprintf( "%.2f", $ord->{ecost} );
+                $ord->{ecostgste} = sprintf( "%.2f", $ord->{ecost} / ( 1 + ( $ord->{gstgsti} / 100 ) ) );
+                $ord->{gstvalue} = sprintf( "%.2f", ( $ord->{ecostgsti} - $ord->{ecostgste} ) * $ord->{quantity});
+                $ord->{totalgste} = sprintf( "%.2f", $ord->{quantity} * $ord->{ecostgste} );
+                $ord->{totalgsti} = sprintf( "%.2f", $ord->{quantity} * $ord->{ecostgsti} );
+            } else {
+                $ord->{rrpgsti} = sprintf( "%.2f", $ord->{rrp} * ( 1 + ( $ord->{gstrate} ) ) );
+                $ord->{rrpgste} = sprintf( "%.2f", $ord->{rrp} );
+                $ord->{gstgsti} = sprintf( "%.2f", $ord->{gstrate} * 100 );
+                $ord->{gstgste} = sprintf( "%.2f", $ord->{gstrate} * 100 );
+                $ord->{ecostgsti} = sprintf( "%.2f", $ord->{ecost} * ( 1 + ( $ord->{gstrate} ) ) );
+                $ord->{ecostgste} = sprintf( "%.2f", $ord->{ecost} );
+                $ord->{gstvalue} = sprintf( "%.2f", ( $ord->{ecostgsti} - $ord->{ecostgste} ) * $ord->{quantity});
+                $ord->{totalgste} = sprintf( "%.2f", $ord->{quantity} * $ord->{ecostgste} );
+                $ord->{totalgsti} = sprintf( "%.2f", $ord->{quantity} * $ord->{ecostgsti} );
+            }
+            my $bib = GetBiblioData($ord->{biblionumber});
+            my $itemtypes = GetItemTypes();
+
+            #FIXME DELETE ME
             # 0      1        2        3         4            5         6       7      8        9
             #isbn, itemtype, author, title, publishercode, quantity, listprice ecost discount gstrate
-            my @ba_order;
-            if ( $ord->{biblionumber} && $ord->{quantity}> 0 ) {
-                eval {
-                   require C4::Biblio;
-                   import C4::Biblio;
-               };
-               if ($@){
-                   croak $@;
-               }
-                eval {
-                   require C4::Koha;
-                   import C4::Koha;
-               };
-               if ($@){
-                   croak $@;
-               }
-                my $bib = GetBiblioData($ord->{biblionumber});
-                my $itemtypes = GetItemTypes();
-                if($ord->{isbn}){
-                    push(@ba_order, $ord->{isbn});
-                } else {
-                    push(@ba_order, undef);
-                }
-                if ($ord->{itemtype} and $bib->{itemtype}){
-                    push(@ba_order, $itemtypes->{$bib->{itemtype}}->{description});
-                } else {
-                    push(@ba_order, undef);
-                }
-#             } else {
-#                 push(@ba_order, undef, undef);
-                for my $key (qw/author title publishercode quantity listprice ecost/) {
-                    push(@ba_order, $ord->{$key});                                                  #Order lines
-                }
-                push(@ba_order, $bookseller->{discount});
-                push(@ba_order, $bookseller->{gstrate}*100 // C4::Context->preference("gist") // 0);
-                push(@ba_orders, \@ba_order);
-                # Editor Number
-                my $en;
-                my $marcrecord=eval{MARC::Record::new_from_xml( $ord->{marcxml},'UTF-8' )};
-                if ($marcrecord){
-                    if ( C4::Context->preference("marcflavour") eq 'UNIMARC' ) {
-                        $en = $marcrecord->subfield( '345', "b" );
-                    } elsif ( C4::Context->preference("marcflavour") eq 'MARC21' ) {
-                        $en = $marcrecord->subfield( '037', "a" );
-                    }
-                }
-                if($en){
-                    push(@ba_order, $en);
-                } else {
-                    push(@ba_order, undef);
+
+            # Editor Number
+            my $en;
+            my $marcrecord=eval{MARC::Record::new_from_xml( $ord->{marcxml},'UTF-8' )};
+            if ($marcrecord){
+                if ( C4::Context->preference("marcflavour") eq 'UNIMARC' ) {
+                    $en = $marcrecord->subfield( '345', "b" );
+                } elsif ( C4::Context->preference("marcflavour") eq 'MARC21' ) {
+                    $en = $marcrecord->subfield( '037', "a" );
                 }
             }
+
+            my $ba_order = {
+                isbn => ($ord->{isbn} ? $ord->{isbn} : undef),
+                itemtype => ( $ord->{itemtype} and $bib->{itemtype} ? $itemtypes->{$bib->{itemtype}}->{description} : undef ),
+                en => ( $en ? $en : undef ),
+            };
+            for my $key ( qw/ gstrate author title itemtype publishercode discount quantity rrpgsti rrpgste gstgsti gstgste ecostgsti ecostgste gstvalue totalgste totalgsti / ) {
+                $ba_order->{$key} = $ord->{$key};
+            }
+
+            push(@ba_orders, $ba_order);
         }
-        $orders{$basket->{basketno}}=\@ba_orders;
+        $orders{$basket->{basketno}} = \@ba_orders;
     }
     print $input->header(
         -type       => 'application/pdf',
@@ -453,6 +466,7 @@ if ( $op eq "add" ) {
             name              => $basketgroupname,
             booksellerid      => $booksellerid,
             basketlist        => \@baskets,
+            billingplace      => $billingplace,
             deliveryplace     => $deliveryplace,
             freedeliveryplace => $freedeliveryplace,
             deliverycomment   => $deliverycomment,
index f6c7b2e..394ae92 100755 (executable)
@@ -74,6 +74,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
 
 #parameters
 my $supplier = $query->param('supplier');
+utf8::decode($supplier);
 my $booksellerid = $query->param('booksellerid');
 my @suppliers;
 
index 0ea16ca..5ca2c98 100755 (executable)
@@ -52,7 +52,6 @@ my $invoiceno        = $invoice->{invoicenumber};
 my $datereceived     = $invoice->{shipmentdate};
 my $booksellerid     = $input->param('booksellerid');
 my $cnt              = 0;
-my $error_url_str;
 my $ecost            = $input->param('ecost');
 my $rrp              = $input->param('rrp');
 my $note             = $input->param("note");
index 971fc18..0d4ea1a 100755 (executable)
@@ -60,13 +60,22 @@ use C4::Debug;
 
 my $input = new CGI;
 my $title                   = $input->param( 'title');
+utf8::decode($title);
 my $author                  = $input->param('author');
+utf8::decode($author);
 my $isbn                    = $input->param('isbn');
+utf8::decode($isbn);
 my $name                    = $input->param( 'name' );
+utf8::decode($name);
 my $ean                     = $input->param('ean');
+utf8::decode($ean);
 my $basket                  = $input->param( 'basket' );
+utf8::decode($basket);
 my $basketgroupname             = $input->param('basketgroupname');
+utf8::decode($basketgroupname);
 my $booksellerinvoicenumber = $input->param( 'booksellerinvoicenumber' );
+utf8::decode($booksellerinvoicenumber);
+
 my $do_search               = $input->param('do_search') || 0;
 my $from_placed_on          = C4::Dates->new($input->param('from'));
 my $to_placed_on            = C4::Dates->new($input->param('to'));
index 0a279c0..b1c9afa 100755 (executable)
@@ -97,7 +97,6 @@ my $budget_id       = $input->param('budget_id') || 0;
 my $title           = $input->param('title');
 my $author          = $input->param('author');
 my $publicationyear = $input->param('publicationyear');
-my $bookseller      = GetBookSellerFromId($booksellerid);      # FIXME: else ERROR!
 my $ordernumber          = $input->param('ordernumber') || '';
 our $biblionumber    = $input->param('biblionumber');
 our $basketno        = $input->param('basketno');
@@ -105,6 +104,7 @@ my $suggestionid    = $input->param('suggestionid');
 my $close           = $input->param('close');
 my $uncertainprice  = $input->param('uncertainprice');
 my $import_batch_id = $input->param('import_batch_id'); # if this is filled, we come from a staged file, and we will return here after saving the order !
+my $subscriptionid  = $input->param('subscriptionid');
 my $data;
 my $new = 'no';
 
@@ -129,6 +129,9 @@ if(!$basketno) {
 }
 
 our $basket = GetBasket($basketno);
+$booksellerid = $basket->{booksellerid} unless $booksellerid;
+my $bookseller = GetBookSellerFromId($booksellerid);
+
 my $contract = &GetContract($basket->{contractnumber});
 
 #simple parameters reading (all in one :-)
@@ -186,10 +189,8 @@ else {    #modify order
     $biblionumber = $data->{'biblionumber'};
     $budget_id = $data->{'budget_id'};
 
-    #get basketno and supplierno. too!
-    my $data2 = GetBasket( $data->{'basketno'} );
-    $basketno     = $data2->{'basketno'};
-    $booksellerid = $data2->{'booksellerid'};
+    $basket   = GetBasket( $data->{'basketno'} );
+    $basketno = $basket->{'basketno'};
 }
 
 my $suggestion;
@@ -321,6 +322,26 @@ if (C4::Context->preference('AcqCreateItem') eq 'ordering' && !$ordernumber) {
 my @itemtypes;
 @itemtypes = C4::ItemType->all unless C4::Context->preference('item-level_itypes');
 
+if ( defined $subscriptionid ) {
+    my $lastOrderReceived = GetLastOrderReceivedFromSubscriptionid $subscriptionid;
+    if ( defined $lastOrderReceived ) {
+        $budget_id              = $lastOrderReceived->{budgetid};
+        $data->{listprice}      = $lastOrderReceived->{listprice};
+        $data->{uncertainprice} = $lastOrderReceived->{uncertainprice};
+        $data->{gstrate}        = $lastOrderReceived->{gstrate};
+        $data->{discount}       = $lastOrderReceived->{discount};
+        $data->{rrp}            = $lastOrderReceived->{rrp};
+        $data->{ecost}          = $lastOrderReceived->{ecost};
+        $data->{quantity}       = $lastOrderReceived->{quantity};
+        $data->{unitprice}      = $lastOrderReceived->{unitprice};
+        $data->{notes}          = $lastOrderReceived->{notes};
+        $data->{sort1}          = $lastOrderReceived->{sort1};
+        $data->{sort2}          = $lastOrderReceived->{sort2};
+
+        $basket = GetBasket( $input->param('basketno') );
+    }
+}
+
 # Find the items.barcode subfield for barcode validations
 my (undef, $barcode_subfield) = GetMarcFromKohaField('items.barcode', '');
 
@@ -392,6 +413,7 @@ $template->param(
     publishercode    => $data->{'publishercode'},
     barcode_subfield => $barcode_subfield,
     import_batch_id  => $import_batch_id,
+    subscriptionid   => $subscriptionid,
     (uc(C4::Context->preference("marcflavour"))) => 1
 );
 
diff --git a/acqui/newordersubscription.pl b/acqui/newordersubscription.pl
new file mode 100755 (executable)
index 0000000..c44ff3b
--- /dev/null
@@ -0,0 +1,107 @@
+#!/usr/bin/perl
+
+# Copyright 2012 BibLibre
+#
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# 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.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+use Modern::Perl;
+use CGI;
+use C4::Acquisition;
+use C4::Auth;
+use C4::Bookseller qw/GetBookSellerFromId/;
+use C4::Branch;
+use C4::Context;
+use C4::Output;
+use C4::Serials;
+
+my $query        = new CGI;
+my $title        = $query->param('title_filter');
+my $ISSN         = $query->param('ISSN_filter');
+my $EAN          = $query->param('EAN_filter');
+my $publisher    = $query->param('publisher_filter');
+my $supplier     = $query->param('supplier_filter');
+my $branch       = $query->param('branch_filter');
+my $routing      = $query->param('routing') || C4::Context->preference("RoutingSerials");
+my $searched     = $query->param('searched');
+my $biblionumber = $query->param('biblionumber');
+
+my $basketno     = $query->param('basketno');
+my $booksellerid = $query->param('booksellerid');
+
+my ( $template, $loggedinuser, $cookie, $flags ) = get_template_and_user(
+    {   template_name   => "acqui/newordersubscription.tt",
+        query           => $query,
+        type            => "intranet",
+        authnotrequired => 0,
+        flagsrequired   => { acquisition => 'order_manage' },
+    }
+);
+
+my $basket = GetBasket($basketno);
+$booksellerid = $basket->{booksellerid} unless $booksellerid;
+my ($bookseller) = GetBookSellerFromId($booksellerid);
+
+my @subscriptions;
+if ($searched) {
+    @subscriptions = SearchSubscriptions({
+        title => $title,
+        issn => $ISSN,
+        ean => $EAN,
+        publisher => $publisher,
+        bookseller => $supplier,
+        branch => $branch
+    });
+}
+
+foreach my $sub (@subscriptions) {
+    $sub->{alreadyOnOrder} = subscriptionCurrentlyOnOrder $sub->{subscriptionid};
+
+    # to toggle between create or edit routing list options
+    if ($routing) {
+        $sub->{routingedit} = check_routing( $sub->{subscriptionid} );
+    }
+}
+
+my $branches = GetBranches();
+my @branches_loop;
+foreach (sort keys %$branches){
+    my $selected = 0;
+    $selected = 1 if defined $branch && $branch eq $_;
+    push @branches_loop, {
+        branchcode  => $_,
+        branchname  => $branches->{$_}->{branchname},
+        selected    => $selected,
+    };
+}
+
+$template->param(
+    subs_loop        => \@subscriptions,
+    title_filter     => $title,
+    ISSN_filter      => $ISSN,
+    EAN_filter       => $EAN,
+    publisher_filter => $publisher,
+    supplier_filter  => $supplier,
+    branch_filter    => $branch,
+    branches_loop    => \@branches_loop,
+    done_searched    => $searched,
+    routing          => $routing,
+    booksellerid     => $booksellerid,
+    basketno         => $basket->{basketno},
+    basketname       => $basket->{basketname},
+    booksellername   => $bookseller->{name},
+    dateformat       => C4::Context->preference("dateformat"),
+);
+output_html_with_http_headers $query, $cookie, $template->output;
index f25b5a9..fc79ccb 100755 (executable)
@@ -199,6 +199,7 @@ $template->param(
     biblionumber          => $order->{'biblionumber'},
     ordernumber           => $order->{'ordernumber'},
     biblioitemnumber      => $order->{'biblioitemnumber'},
+    subscriptionid        => $order->{subscriptionid},
     booksellerid          => $order->{'booksellerid'},
     freight               => $freight,
     name                  => $bookseller->{'name'},
@@ -214,7 +215,6 @@ $template->param(
     quantityreceived      => $order->{'quantityreceived'},
     rrp                   => sprintf( "%.2f", $rrp ),
     ecost                 => sprintf( "%.2f", $ecost ),
-    unitprice             => sprintf( "%.2f", $unitprice),
     memberfirstname       => $member->{firstname} || "",
     membersurname         => $member->{surname} || "",
     invoiceid             => $invoice->{invoiceid},
@@ -227,6 +227,15 @@ $template->param(
     firstnamesuggestedby  => $suggestion->{firstnamesuggestedby},
 );
 
+# regardless of the content of $unitprice e.g 0 or '' or any string will return in these cases 0.00
+# and the 'IF' in the .tt will show 0.00 and not 'ecost' (see BZ 7129)
+# So if $unitprice == 0 we don't create unitprice
+if ( $unitprice != 0) {
+    $template->param(
+        unitprice             => sprintf( "%.2f", $unitprice),
+    );
+}
+
 my $op = $input->param('op');
 if ($op and $op eq 'edit'){
     $template->param(edit   =>   1);
index 6d5925e..3bd184a 100644 (file)
@@ -82,24 +82,24 @@ sub printorders {
     
     my $abaskets;
     my $arrbasket;
-    my @keys = ('Basket (N°)','Document','Qty','RRT GST Inc.','Discount','Discount price GST Exc.','GST', 'Total GST Inc.'); 
+    my @keys = ('Basket (N°)', 'Document', 'Qty', 'RRP tax inc.', 'Discount', 'GST', 'Total tax exc.', 'Total tax inc.');
     for my $bkey (@keys) {
         push(@$arrbasket, $bkey);
     }
     push(@$abaskets, $arrbasket);
-    
+
     for my $basket (@$baskets){
         for my $line (@{$orders->{$basket->{basketno}}}) {
             $arrbasket = undef;
-            push( @$arrbasket, 
-                $basket->{basketno}, 
-                @$line[3]." / ".@$line[2].(@$line[0]?" ISBN : ".@$line[0]:'').(@$line[10]?" EN : ".@$line[10]:'').", ".@$line[1].(@$line[4]?' published by '.@$line[4]:''),
-                @$line[5],
-                $num->format_price(@$line[6]),
-                $num->format_price(@$line[8]).'%',
-                $num->format_price(@$line[7]/(1+@$line[9]/100)),
-                $num->format_price(@$line[9]).'%',
-                $num->format_price($num->round(@$line[7])*@$line[5])
+            push( @$arrbasket,
+                $basket->{basketno},
+                $line->{title} . " / " . $line->{author} . ( $line->{isbn} ? " ISBN : " . $line->{isbn} : '' ) . ( $line->{en} ? " EN : " . $line->{en} : '' ) . ", " . $line->{itemtype} . ( $line->{publishercode} ? ' published by '. $line->{publishercode} : ""),
+                $line->{quantity},
+                $num->format_price($line->{rrpgsti}),
+                $num->format_price($line->{discount}).'%',
+                $num->format_price($line->{gstrate} * 100).'%',
+                $num->format_price($line->{totalgste}),
+                $num->format_price($line->{totalgsti}),
             );
             push(@$abaskets, $arrbasket);
         }
index 1c5a68c..b5f5ce3 100644 (file)
@@ -25,6 +25,7 @@ package pdfformat::layout3pages;
 use vars qw($VERSION @ISA @EXPORT);
 use Number::Format qw(format_price);
 use MIME::Base64;
+use List::MoreUtils qw/uniq/;
 use strict;
 use warnings;
 use utf8;
@@ -102,18 +103,27 @@ sub printorders {
         my $pdftable = new PDF::Table();
         my $abaskets;
         my $arrbasket;
-        my @keys = ('Document','Qty','RRT GST Inc.','Discount','Discount price GST Exc.','GST', 'Total GST Inc.'); 
+        my @keys = ('Document', 'Qty', 'RRP tax exc.', 'RRP tax inc.', 'Discount', 'Discount price', 'GST rate', 'Total tax exc.', 'Total tax inc.');
         for my $bkey (@keys) {
             push(@$arrbasket, $bkey);
         }
         push(@$abaskets, $arrbasket);
-#         @{$orders->{$basket->{basketno}}});
         foreach my $line (@{$orders->{$basket->{basketno}}}) {
             $arrbasket = undef;
-            push(@$arrbasket, @$line[3]." / ".@$line[2].(@$line[0]?" ISBN : ".@$line[0]:'').(@$line[10]?" EN : ".@$line[10]:'').", ".@$line[1].(@$line[4]?' published by '.@$line[4]:''), @$line[5],$num->format_price(@$line[6]),$num->format_price(@$line[8]).'%',$num->format_price(@$line[7]/(1+@$line[9]/100)),$num->format_price(@$line[9]).'%',$num->format_price($num->round(@$line[7])*@$line[5]));
+            push( @$arrbasket,
+                $line->{title} . " / " . $line->{author} . ( $line->{isbn} ? " ISBN : " . $line->{isbn} : '' ) . ( $line->{en} ? " EN : " . $line->{en} : '' ) . ", " . $line->{itemtype} . ( $line->{publishercode} ? ' published by '. $line->{publishercode} : ""),
+                $line->{quantity},
+                $num->format_price($line->{rrpgste}),
+                $num->format_price($line->{rrpgsti}),
+                $num->format_price($line->{discount}).'%',
+                $num->format_price($line->{rrpgste} - $line->{ecostgste}),
+                $num->format_price($line->{gstrate} * 100).'%',
+                $num->format_price($line->{totalgste}),
+                $num->format_price($line->{totalgsti}),
+            );
             push(@$abaskets, $arrbasket);
         }
-        
+
         $pdftable->table($pdf, $page, $abaskets,
                                         x => 10/mm,
                                         w => ($width - 20)/mm,
@@ -128,13 +138,19 @@ sub printorders {
                                         font_size => 3/mm,
                                         header_props   =>    {
                                             font       => $pdf->corefont("Times", -encoding => "utf8"),
-                                            font_size  => 10,
+                                            font_size  => 9,
                                             bg_color   => 'gray',
                                             repeat     => 1,
                                         },
                                         column_props => [
                                             {
-                                                min_w => 100/mm,       # Minimum column width.
+                                                min_w => 85/mm,       # Minimum column width.
+                                            },
+                                            {
+                                                justify => 'right', # One of left|right ,
+                                            },
+                                            {
+                                                justify => 'right', # One of left|right ,
                                             },
                                             {
                                                 justify => 'right', # One of left|right ,
@@ -203,34 +219,54 @@ sub printbaskets {
     my $abaskets;
     my $arrbasket;
     # header of the table
-    my @keys = ('Lot',  'Basket (N°)', 'RRT GST Inc.', 'Discount', 'Discount price','GST rate', 'Total GST exc.','GST', 'Total GST Inc.');
+    my @keys = ('Lot',  'Basket (N°)','Total RRP tax exc.', 'Total RRP tax inc.', 'GST rate', 'GST', 'Total discount', 'Total tax exc.', 'Total tax inc.');
     for my $bkey (@keys) {
         push(@$arrbasket, $bkey);
     }
-    my $grandtotal=0;
-    my $grandgst=0;
+    my ($grandtotalrrpgsti, $grandtotalrrpgste, $grandtotalgsti, $grandtotalgste, $grandtotalgstvalue, $grandtotaldiscount);
     # calculate each basket total
     push(@$abaskets, $arrbasket);
     for my $basket (@$hbaskets) {
+        my @gst;
         $arrbasket = undef;
-        my ($total, $gst, $totallist) = (0, 0, 0);
+        my ($totalrrpgste, $totalrrpgsti, $totalgste, $totalgsti, $totalgstvalue, $totaldiscount);
         my $ords = $orders->{$basket->{basketno}};
         my $ordlength = @$ords;
         foreach my $ord (@$ords) {
-            $total += @$ord[5] * @$ord[7];
-            $gst   += (@$ord[5] * @$ord[7]) * $GSTrate/(1+$GSTrate);
-            $totallist += @$ord[5]*@$ord[6];
+            $totalgste += $ord->{totalgste};
+            $totalgsti += $ord->{totalgsti};
+            $totalgstvalue += $ord->{gstvalue};
+            $totaldiscount += ($ord->{rrpgste} - $ord->{ecostgste} ) * $ord->{quantity};
+            $totalrrpgste += $ord->{rrpgste} * $ord->{quantity};
+            $totalrrpgsti += $ord->{rrpgsti} * $ord->{quantity};
+            push @gst, $ord->{gstrate};
         }
-        $total=$num->round($total);
-        $gst=$num->round($gst);
-        $grandtotal +=$total;
-        $grandgst +=$gst;
-        push(@$arrbasket, $basket->{contractname}, $basket->{basketname}.'(N°'.$basket->{basketno}.')',$num->format_price($totallist), $num->format_price($bookseller->{discount}).'%', $num->format_price($total), $num->format_price($GSTrate*100).'%', $num->format_price($total-$gst), $num->format_price($gst), $num->format_price($total));
+        @gst = uniq map { $_ * 100 } @gst;
+        $totalgsti = $num->round($totalgsti);
+        $totalgste = $num->round($totalgste);
+        $grandtotalrrpgste += $totalrrpgste;
+        $grandtotalrrpgsti += $totalrrpgsti;
+        $grandtotalgsti += $totalgsti;
+        $grandtotalgste += $totalgste;
+        $grandtotalgstvalue += $totalgstvalue;
+        $grandtotaldiscount += $totaldiscount;
+        my @gst_string = map{$num->format_price( $_ ) . '%'} @gst;
+        push(@$arrbasket,
+            $basket->{contractname},
+            $basket->{basketname} . ' (N°' . $basket->{basketno} . ')',
+            $num->format_price($totalrrpgste),
+            $num->format_price($totalrrpgsti),
+            "@gst_string",
+            $num->format_price($totalgstvalue),
+            $num->format_price($totaldiscount),
+            $num->format_price($totalgste),
+            $num->format_price($totalgsti)
+        );
         push(@$abaskets, $arrbasket);
     }
     # now, push total
     undef $arrbasket;
-    push @$arrbasket,'','','','Total',$num->format_price($grandtotal),'',$num->format_price($grandtotal-$grandgst), $num->format_price($grandgst),$num->format_price($grandtotal);
+    push @$arrbasket,'','Total', $num->format_price($grandtotalrrpgste), $num->format_price($grandtotalrrpgsti), '', $num->format_price($grandtotalgstvalue), $num->format_price($grandtotaldiscount), $num->format_price($grandtotalgste), $num->format_price($grandtotalgsti);
     push @$abaskets,$arrbasket;
     # height is width and width is height in this function, as the pdf is in landscape mode for the Tables.
 
@@ -270,12 +306,6 @@ sub printbaskets {
                                         {
                                             justify => 'right',
                                         },
-                                        {
-                                            justify => 'right',
-                                        },
-                                        {
-                                            justify => 'right',
-                                        },
                                     ],
     );
     $pdf->mediabox($height/mm, $width/mm);
index 5247d67..0ae843f 100755 (executable)
@@ -21,7 +21,7 @@
 
 use warnings;
 use strict;
-use CGI;
+use CGI qw/-utf8/;
 
 use C4::Auth;
 use C4::Output;
index d172ea6..026d983 100755 (executable)
@@ -168,6 +168,8 @@ elsif ( $op eq 'addcategory_validate' ) {
     $template->param( else => 1 );
     # confirm settings change...
     my $params = $input->Vars;
+    $params->{'show_in_pulldown'} = ( $params->{'show_in_pulldown'} eq 'on' ) ? 1 : 0;
+
     unless ( $params->{'categorycode'} && $params->{'categoryname'} ) {
         default("MESSAGE4",$template);
     }
@@ -294,6 +296,7 @@ sub editcatform {
             categorycode    => $data->{'categorycode'},
             categoryname    => $data->{'categoryname'},
             codedescription => $data->{'codedescription'},
+            show_in_pulldown => $data->{'show_in_pulldown'},
                );
     }
        for my $ctype (GetCategoryTypes()) {
index db91e76..2182591 100755 (executable)
@@ -21,6 +21,7 @@ use strict;
 use warnings;
 
 use CGI;
+
 use C4::Auth;
 use C4::Context;
 use C4::Koha;
@@ -34,6 +35,7 @@ use File::Spec;
 use IO::File;
 use YAML::Syck qw();
 $YAML::Syck::ImplicitTyping = 1;
+$YAML::Syck::ImplicitUnicode = 1; # force utf-8 for preference encoding
 our $lang;
 
 # use Smart::Comments;
@@ -295,7 +297,8 @@ if ( $op eq 'save' ) {
 my @TABS;
 
 if ( $op eq 'search' ) {
-    my $searchfield = $input->param( 'searchfield' );
+    my $searchfield = $input->param('searchfield');
+    utf8::decode($searchfield);
 
     $searchfield =~ s/\p{IsC}//g;
     $searchfield =~ s/\s+/ /;
index c221d71..5d4166d 100755 (executable)
@@ -101,8 +101,8 @@ elsif ($op eq 'delete-branch-item') {
 # save the values entered
 elsif ($op eq 'add') {
     my $sth_search = $dbh->prepare('SELECT COUNT(*) AS total FROM issuingrules WHERE branchcode=? AND categorycode=? AND itemtype=?');
-    my $sth_insert = $dbh->prepare('INSERT INTO issuingrules (branchcode, categorycode, itemtype, maxissueqty, renewalsallowed, reservesallowed, issuelength, lengthunit, hardduedate, hardduedatecompare, fine, finedays, firstremind, chargeperiod,rentaldiscount, overduefinescap) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)');
-    my $sth_update=$dbh->prepare("UPDATE issuingrules SET fine=?, finedays=?, firstremind=?, chargeperiod=?, maxissueqty=?, renewalsallowed=?, reservesallowed=?, issuelength=?, lengthunit = ?, hardduedate=?, hardduedatecompare=?, rentaldiscount=?, overduefinescap=?  WHERE branchcode=? AND categorycode=? AND itemtype=?");
+    my $sth_insert = $dbh->prepare('INSERT INTO issuingrules (branchcode, categorycode, itemtype, maxissueqty, renewalsallowed, renewalperiod, reservesallowed, issuelength, lengthunit, hardduedate, hardduedatecompare, fine, finedays, firstremind, chargeperiod,rentaldiscount, overduefinescap) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)');
+    my $sth_update=$dbh->prepare("UPDATE issuingrules SET fine=?, finedays=?, firstremind=?, chargeperiod=?, maxissueqty=?, renewalsallowed=?, renewalperiod=?, reservesallowed=?, issuelength=?, lengthunit = ?, hardduedate=?, hardduedatecompare=?, rentaldiscount=?, overduefinescap=?  WHERE branchcode=? AND categorycode=? AND itemtype=?");
     
     my $br = $branch; # branch
     my $bor  = $input->param('categorycode'); # borrower category
@@ -113,6 +113,7 @@ elsif ($op eq 'add') {
     my $chargeperiod = $input->param('chargeperiod');
     my $maxissueqty  = $input->param('maxissueqty');
     my $renewalsallowed  = $input->param('renewalsallowed');
+    my $renewalperiod    = $input->param('renewalperiod');
     my $reservesallowed  = $input->param('reservesallowed');
     $maxissueqty =~ s/\s//g;
     $maxissueqty = undef if $maxissueqty !~ /^\d+/;
@@ -128,9 +129,9 @@ elsif ($op eq 'add') {
     $sth_search->execute($br,$bor,$cat);
     my $res = $sth_search->fetchrow_hashref();
     if ($res->{total}) {
-        $sth_update->execute($fine, $finedays,$firstremind, $chargeperiod, $maxissueqty, $renewalsallowed,$reservesallowed, $issuelength,$lengthunit, $hardduedate,$hardduedatecompare,$rentaldiscount,$overduefinescap, $br,$bor,$cat);
+        $sth_update->execute($fine, $finedays,$firstremind, $chargeperiod, $maxissueqty, $renewalsallowed, $renewalperiod, $reservesallowed, $issuelength,$lengthunit, $hardduedate,$hardduedatecompare,$rentaldiscount,$overduefinescap, $br,$bor,$cat);
     } else {
-        $sth_insert->execute($br,$bor,$cat,$maxissueqty,$renewalsallowed,$reservesallowed,$issuelength,$lengthunit,$hardduedate,$hardduedatecompare,$fine,$finedays,$firstremind,$chargeperiod,$rentaldiscount,$overduefinescap);
+        $sth_insert->execute($br,$bor,$cat,$maxissueqty,$renewalsallowed, $renewalperiod, $reservesallowed,$issuelength,$lengthunit,$hardduedate,$hardduedatecompare,$fine,$finedays,$firstremind,$chargeperiod,$rentaldiscount,$overduefinescap);
     }
 } 
 elsif ($op eq "set-branch-defaults") {
index 92cc3e5..897b552 100755 (executable)
@@ -21,7 +21,7 @@
 
 use strict;
 use warnings;
-use CGI;
+use CGI qw( -utf8 );
 use C4::Context;
 use C4::Auth;
 use C4::Output;
index f67f5c9..2fe4622 100755 (executable)
@@ -125,7 +125,7 @@ if ( $op eq "do_search" ) {
     # next/previous would not work anymore
 
     # construction of the url of each page
-    my $value_url = uri_escape($value);
+    my $value_url = uri_escape_utf8($value);
     my $base_url = "authorities-home.pl?"
       ."marclist=$marclist"
       ."&amp;and_or=$and_or"
index 8624b3b..88e6825 100755 (executable)
@@ -154,7 +154,7 @@ use C4::Branch; # GetBranches
 my $DisplayMultiPlaceHold = C4::Context->preference("DisplayMultiPlaceHold");
 # create a new CGI object
 # FIXME: no_undef_params needs to be tested
-use CGI qw('-no_undef_params');
+use CGI qw( -no_undef_params -utf8 );
 my $cgi = new CGI;
 
 my ($template,$borrowernumber,$cookie);
index 3314f1a..e2ea1cd 100755 (executable)
@@ -880,7 +880,7 @@ if ( $op eq "addbiblio" ) {
             .'&frameworkcode='.$frameworkcode
             .'&circborrowernumber='.$fa_circborrowernumber
             .'&branch='.$fa_branch
-            .'&barcode='.uri_escape($fa_barcode)
+            .'&barcode='.uri_escape_utf8($fa_barcode)
             .'&stickyduedate='.$fa_stickyduedate
             .'&duedatespec='.$fa_duedatespec
                );
index a8a8649..16fee3b 100755 (executable)
@@ -154,6 +154,7 @@ sub generate_subfield_form {
            $value = $input->param('barcode');
        }
         my $attributes_no_value = qq(tabindex="1" id="$subfield_data{id}" name="field_value" class="input_marceditor" size="67" maxlength="$subfield_data{maxlength}" );
+        my $attributes_no_value_textarea = qq(tabindex="1" id="$subfield_data{id}" name="field_value" class="input_marceditor" rows="5" cols="64" );
         my $attributes          = qq($attributes_no_value value="$value" );
         
         if ( $subfieldlib->{authorised_value} ) {
@@ -270,7 +271,7 @@ sub generate_subfield_form {
                           500 <= $tag && $tag < 600                     )
                   ) {
             # oversize field (textarea)
-            $subfield_data{marc_value} = "<textarea $attributes_no_value>$value</textarea>\n";
+            $subfield_data{marc_value} = "<textarea $attributes_no_value_textarea>$value</textarea>\n";
         } else {
            # it's a standard field
            $subfield_data{marc_value} = "<input type=\"text\" $attributes />";
@@ -517,7 +518,7 @@ if ($op eq "additem") {
         print $input->redirect(
            '/cgi-bin/koha/circ/circulation.pl?'
            .'borrowernumber='.$fa_circborrowernumber
-           .'&barcode='.uri_escape($fa_barcode)
+           .'&barcode='.uri_escape_utf8($fa_barcode)
            .'&duedatespec='.$fa_duedatespec
            .'&stickyduedate=1'
         );
index b8e8a58..425a6c1 100755 (executable)
@@ -20,7 +20,7 @@
 
 use strict;
 use warnings;
-use CGI;
+use CGI qw( -utf8 );
 
 use C4::Auth;
 use C4::Output;
@@ -106,8 +106,8 @@ my $pars= {
         subject => $subject,
         lccall => $lccall,
         controlnumber => $controlnumber,
-        stdid => 0,
-        srchany => 0,
+        stdid => $stdid,
+        srchany => $srchany,
 };
 Z3950Search($pars, $template);
 output_html_with_http_headers $input, $cookie, $template->output;
index 24b1576..b664d49 100755 (executable)
@@ -24,6 +24,7 @@
 use strict;
 use warnings;
 use CGI;
+
 use C4::Output;
 use C4::Print;
 use C4::Auth qw/:DEFAULT get_session/;
@@ -102,6 +103,7 @@ our %return_failed = ();
 for (@failedreturns) { $return_failed{$_} = 1; }
 
 my $findborrower = $query->param('findborrower') || q{};
+utf8::decode($findborrower);
 $findborrower =~ s|,| |g;
 my $borrowernumber = $query->param('borrowernumber');
 
@@ -132,8 +134,8 @@ my $issueconfirmed = $query->param('issueconfirmed');
 my $cancelreserve  = $query->param('cancelreserve');
 my $organisation   = $query->param('organisations');
 my $print          = $query->param('print') || q{};
-my $newexpiry      = $query->param('dateexpiry');
 my $debt_confirmed = $query->param('debt_confirmed') || 0; # Don't show the debt error dialog twice
+my $charges        = $query->param('charges') || q{};
 
 # Check if stickyduedate is turned off
 if ( $barcode ) {
@@ -167,7 +169,7 @@ if ( $barcode eq '' && $print eq 'maybe' ) {
 }
 
 my $inprocess = ($barcode eq '') ? '' : $query->param('inprocess');
-if ( $barcode eq '' && $query->param('charges') eq 'yes' ) {
+if ( $barcode eq '' && $charges eq 'yes' ) {
     $template->param(
         PAYCHARGES     => 'yes',
         borrowernumber => $borrowernumber
@@ -370,7 +372,7 @@ if ($borrowernumber) {
         $getreserv{suspend}        = $num_res->{'suspend'};
         $getreserv{suspend_until}  = $num_res->{'suspend_until'};
         #         check if we have a waiting status for reservations
-        if ( $num_res->{'found'} eq 'W' ) {
+        if ( $num_res->{'found'} && $num_res->{'found'} eq 'W' ) {
             $getreserv{color}   = 'reserved';
             $getreserv{waiting} = 1;
 #     genarate information displaying only waiting reserves
@@ -461,18 +463,21 @@ sub build_issue_data {
         $it->{'checkoutdate'} = C4::Dates->new($it->{'issuedate'},'iso')->output('syspref');
         $it->{'issuingbranchname'} = GetBranchName($it->{'branchcode'});
 
-        $totalprice += $it->{'replacementprice'};
+        $totalprice += $it->{'replacementprice'} || 0;
         $it->{'itemtype'} = $itemtypeinfo->{'description'};
         $it->{'itemtype_image'} = $itemtypeinfo->{'imageurl'};
+        $it->{'dd_sort'} = $it->{'date_due'};
         $it->{'dd'} = output_pref($it->{'date_due'});
+        $it->{'displaydate_sort'} = $it->{'issuedate'};
         $it->{'displaydate'} = output_pref($it->{'issuedate'});
         #$it->{'od'} = ( $it->{'date_due'} lt $todaysdate ) ? 1 : 0 ;
         $it->{'od'} = $it->{'overdue'};
-        ($it->{'author'} eq '') and $it->{'author'} = ' ';
+        $it->{'author'} ||= ' ';
         $it->{'renew_failed'} = $renew_failed{$it->{'itemnumber'}};
         $it->{'return_failed'} = $return_failed{$it->{'barcode'}};
 
-        if ( $it->{'issuedate'}."" gt $todaysdate or $it->{'lastreneweddate'} gt $todaysdate ) {
+        if ( ( $it->{'issuedate'} && $it->{'issuedate'} gt $todaysdate )
+          || ( $it->{'lastreneweddate'} && $it->{'lastreneweddate'} gt $todaysdate ) ) {
             (!$relatives) ? push @todaysissues, $it : push @relissues, $it;
         } else {
             (!$relatives) ? push @previousissues, $it : push @relprevissues, $it;
@@ -647,8 +652,10 @@ my $bor_messages_loop = GetMessages( $borrowernumber, 'B', $branch );
 if($bor_messages_loop){ $template->param(flagged => 1 ); }
 
 # Computes full borrower address
-my (undef, $roadttype_hashref) = &GetRoadTypes();
-my $address = $borrower->{'streetnumber'}.' '.$roadttype_hashref->{$borrower->{'streettype'}}.' '.$borrower->{'address'};
+my @fulladdress;
+push @fulladdress, $borrower->{'streetnumber'} if ( $borrower->{'streetnumber'} );
+push @fulladdress, &GetRoadTypeDetails( $borrower->{'streettype'} ) if ( $borrower->{'streettype'} );
+push @fulladdress, $borrower->{'address'} if ( $borrower->{'address'} );
 
 my $fast_cataloging = 0;
 if (defined getframeworkinfo('FA')) {
@@ -678,11 +685,11 @@ $template->param(
     surname           => $borrower->{'surname'},
     showname          => $borrower->{'showname'},
     category_type     => $borrower->{'category_type'},
-    dateexpiry        => format_date($newexpiry),
+    was_renewed       => $query->param('was_renewed') ? 1 : 0,
     expiry            => format_date($borrower->{'dateexpiry'}),
     categorycode      => $borrower->{'categorycode'},
     categoryname      => $borrower->{description},
-    address           => $address,
+    address           => join(' ', @fulladdress),
     address2          => $borrower->{'address2'},
     email             => $borrower->{'email'},
     emailpro          => $borrower->{'emailpro'},
@@ -718,6 +725,7 @@ $template->param(
     activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
     SuspendHoldsIntranet => C4::Context->preference('SuspendHoldsIntranet'),
     AutoResumeSuspendedHolds => C4::Context->preference('AutoResumeSuspendedHolds'),
+    RoutingSerials => C4::Context->preference('RoutingSerials'),
 );
 
 # save stickyduedate to session
index 8fed8c8..1e1bd6f 100755 (executable)
@@ -40,6 +40,8 @@ my $borcatfilter    = $input->param('borcat') || '';
 my $itemtypefilter  = $input->param('itemtype') || '';
 my $borflagsfilter  = $input->param('borflag') || '';
 my $branchfilter    = $input->param('branch') || '';
+my $homebranchfilter    = $input->param('homebranch') || '';
+my $holdingbranchfilter = $input->param('holdingbranch') || '';
 my $op              = $input->param('op') || '';
 my $dateduefrom = format_date_in_iso($input->param( 'dateduefrom' )) || '';
 my $datedueto   = format_date_in_iso($input->param( 'datedueto' )) || '';
@@ -214,7 +216,11 @@ if (@patron_attr_filter_loop) {
 $template->param(
     patron_attr_header_loop => [ map { { header => $_->{description} } } grep { ! $_->{isclone} } @patron_attr_filter_loop ],
     branchloop   => GetBranchesLoop($branchfilter, $onlymine),
+    homebranchloop => GetBranchesLoop( $homebranchfilter, $onlymine ),
+    holdingbranchloop => GetBranchesLoop( $holdingbranchfilter, $onlymine ),
     branchfilter => $branchfilter,
+    homebranchfilter => $homebranchfilter,
+    holdingbranchfilter => $homebranchfilter,
     borcatloop=> \@borcatloop,
     itemtypeloop => \@itemtypeloop,
     patron_attr_filter_loop => \@patron_attr_filter_loop,
@@ -260,6 +266,8 @@ if ($noreport) {
         issues.itemnumber,
         issues.issuedate,
         items.barcode,
+        items.homebranch,
+        items.holdingbranch,
         biblio.title,
         biblio.author,
         borrowers.borrowernumber,
@@ -295,6 +303,8 @@ if ($noreport) {
         $strsth .= " AND borrowers.lost <> 0";
     }
     $strsth.=" AND borrowers.branchcode   = '" . $branchfilter   . "' " if $branchfilter;
+    $strsth.=" AND items.homebranch       = '" . $homebranchfilter . "' " if $homebranchfilter;
+    $strsth.=" AND items.holdingbranch    = '" . $holdingbranchfilter . "' " if $holdingbranchfilter;
     $strsth.=" AND date_due < '" . $datedueto . "' "  if $datedueto;
     $strsth.=" AND date_due > '" . $dateduefrom . "' " if $dateduefrom;
     # restrict patrons (borrowers) to those matching the patron attribute filter(s), if any
@@ -352,6 +362,8 @@ if ($noreport) {
             title                  => $data->{title},
             author                 => $data->{author},
             branchcode             => $data->{branchcode},
+            homebranchcode         => $data->{homebranchcode},
+            holdingbranchcode      => $data->{holdingbranchcode},
             itemcallnumber         => $data->{itemcallnumber},
             replacementprice       => $data->{replacementprice},
             enumchron              => $data->{enumchron},
index 80bb609..41db32b 100755 (executable)
@@ -54,7 +54,7 @@ if ( $run_report ) {
     # XXX GetHoldsQueueItems() does not support $itemtypeslimit!
     my $items = GetHoldsQueueItems($branchlimit, $itemtypeslimit);
     $template->param(
-        branch     => $branchlimit,
+        branchlimit     => $branchlimit,
         total      => scalar @$items,
         itemsloop  => $items,
         run_report => $run_report,
index 94c4ea8..3f06ff2 100755 (executable)
@@ -30,7 +30,7 @@ use POSIX qw/strftime/;
 my $buildresult;
 my $distribution='squeeze-dev';
 my $git_checks='all';
-my $version='3.11-1~git';
+my $version='3.13-1~git';
 my $auto_version=1;
 my $need_help;
 my $debug;
@@ -108,7 +108,7 @@ Options:
         tracked files with untracked changes will cause an error), and 'none'
         (checking git status is skipped totally.) Default is 'all'.
     --version, -v
-        the version string for the resulting package. Default is '3.5-1~git'.
+        the version string for the resulting package. Default is '$version'.
     --(no)autoversion
         whether or not to use the date and git commit ID in the version value.
         Default is to include it.
index 61df69a..9bd4108 100644 (file)
@@ -1,3 +1,33 @@
+koha (3.10.04-1) squeeze; urgency=low
+
+  * New upstream release (3.10.04)
+
+ -- Robin Sheat <robin@catalyst.net.nz>  Mon, 25 Mar 2013 14:36:47 +1300
+
+koha (3.10.03-1) squeeze; urgency=low
+
+  * New upstream release (3.10.03)
+
+ -- Robin Sheat <robin@catalyst.net.nz>  Mon, 25 Feb 2013 15:50:34 +1300
+
+koha (3.10.02-1) squeeze; urgency=low
+
+  * New upstream release (3.10.02)
+
+ -- Robin Sheat <robin@catalyst.net.nz>  Fri, 25 Jan 2013 15:01:53 +1300
+
+koha (3.10.01-1) squeeze; urgency=low
+
+  * New upstream release (3.10.01)
+
+ -- Robin Sheat <robin@catalyst.net.nz>  Mon, 31 Dec 2012 14:57:12 +1300
+
+koha (3.10.00.1-1) squeeze; urgency=low
+
+  * Fix packaging rules for YUI (bug #9052)
+
+ -- Robin Sheat <robin@catalyst.net.nz>  Wed, 28 Nov 2012 20:01:27 +1300
+
 koha (3.10.00-1) squeeze; urgency=low
 
   *  New major upstream release (3.10.00)
index 8ac0262..fe69e1e 100644 (file)
@@ -3,16 +3,22 @@ Maintainer: Robin Sheat <robin@catalyst.net.nz>
 Section: web
 Priority: optional
 Standards-Version: 3.8.4
+# WARNING: The "control" file is automatically generated from the "control.in" file.
+# Do not manually edit "control" or your changes will be clobbered when you
+# run update-control
 # NOTA BENE: Build dependencies end up as runtime dependencies as well.
 # See debian/rules, the override_dh_gencontrol rules. 
 # There are some exceptions.
 Build-Depends: libalgorithm-checkdigits-perl,
  libanyevent-http-perl,
  libanyevent-perl,
+ libarchive-zip-perl,
  libauthen-cas-client-perl,
  libbiblio-endnotestyle-perl,
  libbusiness-isbn-perl,
+ libcache-fastmmap-perl,
  libcache-memcached-fast-perl,
+ libcache-perl,
  libcgi-pm-perl | perl-modules,
  libcgi-session-driver-memcached-perl,
  libcgi-session-perl,
@@ -36,6 +42,7 @@ Build-Depends: libalgorithm-checkdigits-perl,
  libdbi-perl,
  libdigest-sha-perl | perl,
  libemail-date-perl,
+ libfile-path-perl | perl-modules,
  libgd-barcode-perl,
  libgd-gd2-noxpm-perl | libgd-gd2-perl,
  libgraphics-magick-perl,
@@ -58,6 +65,8 @@ Build-Depends: libalgorithm-checkdigits-perl,
  libmemoize-memcached-perl,
  libmime-lite-perl,
  libmodern-perl-perl,
+ libmodule-bundled-files-perl,
+ libmodule-load-conditional-perl | perl-modules,
  libmoose-perl,
  libmoosex-storage-perl,
  libmoosex-types-perl,
@@ -186,10 +195,13 @@ Package: koha-perldeps
 Depends: libalgorithm-checkdigits-perl,
  libanyevent-http-perl,
  libanyevent-perl,
+ libarchive-zip-perl,
  libauthen-cas-client-perl,
  libbiblio-endnotestyle-perl,
  libbusiness-isbn-perl,
+ libcache-fastmmap-perl,
  libcache-memcached-fast-perl,
+ libcache-perl,
  libcgi-pm-perl | perl-modules,
  libcgi-session-driver-memcached-perl,
  libcgi-session-perl,
@@ -213,6 +225,7 @@ Depends: libalgorithm-checkdigits-perl,
  libdbi-perl,
  libdigest-sha-perl | perl,
  libemail-date-perl,
+ libfile-path-perl | perl-modules,
  libgd-barcode-perl,
  libgd-gd2-noxpm-perl | libgd-gd2-perl,
  libgraphics-magick-perl,
@@ -235,6 +248,8 @@ Depends: libalgorithm-checkdigits-perl,
  libmemoize-memcached-perl,
  libmime-lite-perl,
  libmodern-perl-perl,
+ libmodule-bundled-files-perl,
+ libmodule-load-conditional-perl | perl-modules,
  libmoose-perl,
  libmoosex-storage-perl,
  libmoosex-types-perl,
index a30aeed..0fd9d44 100644 (file)
@@ -3,6 +3,9 @@ Maintainer: Robin Sheat <robin@catalyst.net.nz>
 Section: web
 Priority: optional
 Standards-Version: 3.8.4
+# WARNING: The "control" file is automatically generated from the "control.in" file.
+# Do not manually edit "control" or your changes will be clobbered when you
+# run update-control
 # NOTA BENE: Build dependencies end up as runtime dependencies as well.
 # See debian/rules, the override_dh_gencontrol rules. 
 # There are some exceptions.
index 4dc2179..39da872 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 9f9ddea..a7383e5 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 26559c9..d879a69 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 8b7f729..1bc9ca3 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 048c3e9..b462369 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index ec79f6e..a749fb2 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 83bf8ef..81834f2 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 5274f75..0f39010 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index a2f8cc3..db45daa 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 733ddd9..c8a612c 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 9d0acf9..c67096d 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index b8079ce..070deb6 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index e5b319c..b8ce51c 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 4e272f8..69079be 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 85e8443..5ded51d 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 649df1e..4b78902 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 6acb0e8..5409d83 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 1538817..653a611 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index eb3c2ab..2d52000 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 050ddd7..ea35f89 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 8b5a4c4..a0391d0 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index c528377..d3d6ae2 100644 (file)
@@ -3,7 +3,7 @@
 <info>
 <productname>Koha</productname> is the first free software library automation package.
 <author>
-  <orgname>The Koha Communnity</orgname>
+  <orgname>The Koha Community</orgname>
   <uri>http://koha-community.org/</uri>
 </author>
 </info>
index 5980ebb..971d46c 100755 (executable)
@@ -30,10 +30,9 @@ override_dh_auto_install:
 #      ln -s /usr/share/javascript/jquery/jquery.js \
 #         $(TMP)/usr/share/koha/opac/htdocs/opac-tmpl/prog/en/lib/jquery/jquery.js
        rm -r \
-               $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/js/tinymce
-               mkdir -p $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/js/tinymce/jscripts
+               $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/lib/tiny_mce
        ln -s /usr/share/tinymce2/www \
-              $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce
+              $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/lib/tiny_mce
        rm -r \
                $(TMP)/usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/lib/yui
        ln -s /usr/share/javascript/yui \
index 66f2016..8211e1c 100755 (executable)
@@ -192,7 +192,7 @@ if [ "$op" = create ] || [ "$op" = request ] || [ "$op" = use ]
 then
     if [ "$mysqlpwd" = "" ]
     then
-        mysqlpwd="$(pwgen -1)"
+        mysqlpwd="$(pwgen -s 16 1)"
     fi
 else
     mysqlpwd="$(getinstancemysqlpassword $name)"
@@ -220,7 +220,7 @@ then
     koha-create-dirs "$name"
 
     # Generate Zebra database password.
-    zebrapwd="$(pwgen -s 12 1)"
+    zebrapwd="$(pwgen -s 16 1)"
     # Future enhancement: make this configurable for when your db is on
     # another server.
     mysql_hostname="localhost"
@@ -308,7 +308,7 @@ then
 
 
         # Change the default user's password.
-        staffpass="$(pwgen -1)"
+        staffpass="$(pwgen 12 1)"
         staffdigest=$(echo -n "$staffpass" |
                       perl -e '
                             use Digest::MD5 qw(md5_base64); 
index 70ba3ba..fd4a60e 100755 (executable)
@@ -45,7 +45,7 @@ eof
 
 for userid in "$@"
 do
-    password="$(pwgen -1)"
+    password="$(pwgen 12 1)"
     digest="$(pwdigest $password)"
     echo "$userid $password"
     echo "UPDATE borrowers SET password = '$digest' WHERE userid = '$userid';" \
index a37d55d..55fd4f5 100644 (file)
@@ -652,3 +652,13 @@ December 27 2012   Koha 3.6.11 released    releases
 January 17 2013        Hugh Davenport becomes the 199th developer to have a patch pushed
 January 17 2013        Corey Fuimaono becomes the 200th developer to have a patch pushed
 January 17 2013        Fred Pierre becomes the 201st developer to have a patch pushed
+January 22 2013        Koha 3.10.2 released    releases
+January 22 2013        Koha 3.8.9 released     releases
+February 23 2013       Koha 3.10.3 released    releases
+February 23 2013       Koha 3.8.10 released    releases
+March 22 2013  Rolando Isidoro becomes the 202nd developer to have a patch pushed
+March 25 2013  Peter Crellan Kelly becomes the 203rd developer to have a patch pushed
+March 27 2013  Kristina D.C. Hoeppner becomes the 204th developer to have a patch pushed
+March 30 2013  Jen Zajac becomes the 205th developer to have a patch pushed
+March 30 2013  Karam Qubsi becomes the 206th developer to have a patch pushed
+March 30 2013  Aaron Wells becomes the 207th developer to have a patch pushed
index 73d67bf..22529ac 100644 (file)
@@ -277,6 +277,7 @@ __PAZPAR2_TOGGLE_XML_POST__
  <authorityserver>authorities</authorityserver>
  <authorityservershadow>1</authorityservershadow>
  <pluginsdir>__PLUGINS_DIR__</pluginsdir>
+ <enable_plugins>0</enable_plugins>
  <intranetdir>__INTRANET_CGI_DIR__</intranetdir>
  <opacdir>__OPAC_CGI_DIR__/opac</opacdir>
  <opachtdocs>__OPAC_TMPL_DIR__</opachtdocs>
index 0e7af51..dd5ec41 100644 (file)
    SetEnv MEMCACHED_SERVERS "__MEMCACHED_SERVERS__"
    SetEnv MEMCACHED_NAMESPACE "__MEMCACHED_NAMESPACE__"
 
+   <Directory "__OPAC_WWW_DIR__">
+      Options -Indexes
+   </Directory>
+
+   # Secure internal stuff
+   <DirectoryMatch "__OPAC_WWW_DIR__/.*/(modules|xslt|includes)">
+      Order deny,allow
+      Deny from all
+   </DirectoryMatch>
+
    <IfModule mod_gzip.c>
      mod_gzip_on yes
      mod_gzip_dechunk yes
    ErrorDocument 404 /cgi-bin/koha/errors/404.pl
    ErrorDocument 500 /cgi-bin/koha/errors/500.pl
 
-#  Rewrite Rules
-   RewriteEngine On
+   <IfModule mod_rewrite.c>
+     # Rewrite Rules
+     RewriteEngine On
 
-#  Uncomment to turn on rewrite logging
-#  RewriteLog __LOG_DIR__/koha-opac-rewrite.log
-#  RewriteLogLevel 1
-   RewriteCond %{QUERY_STRING} (.*?)(?:[A-Za-z0-9_-]+)=&(.*)
-   RewriteRule (.+) $1?%1%2 [N,R,NE]
+     # Uncomment to turn on rewrite logging
+     #RewriteLog __LOG_DIR__/koha-opac-rewrite.log
+     #RewriteLogLevel 1
 
-   RewriteRule ^/bib/([^\/]*)/?$ /cgi-bin/koha/opac-detail\.pl?bib=$1 [PT]
-   RewriteRule ^/isbn/([^\/]*)/?$ /search?q=isbn:$1 [PT]
-   RewriteRule ^/issn/([^\/]*)/?$ /search?q=issn:$1 [PT]
+     RewriteCond %{QUERY_STRING} (.*?)(?:[A-Za-z0-9_-]+)=&(.*)
+     #RewriteRule (.+) $1?%1%2 [N,R,NE]
+     RewriteRule ^/bib/([^\/]*)/?$ /cgi-bin/koha/opac-detail\.pl?bib=$1 [PT]
+     RewriteRule ^/isbn/([^\/]*)/?$ /search?q=isbn:$1 [PT]
+     RewriteRule ^/issn/([^\/]*)/?$ /search?q=issn:$1 [PT]
+   </IfModule>
 </VirtualHost>
 
 ## Intranet
    ErrorDocument 404 /cgi-bin/koha/errors/404.pl
    ErrorDocument 500 /cgi-bin/koha/errors/500.pl
 
+   <Directory "__INTRANET_WWW_DIR__">
+      Options -Indexes
+   </Directory>
+
+   # Secure internal stuff
+   <DirectoryMatch "__INTRANET_WWW_DIR__/.*/(modules|xslt|includes)">
+      Order deny,allow
+      Deny from all
+   </DirectoryMatch>
+
    <IfModule mod_gzip.c>
      mod_gzip_on yes
      mod_gzip_dechunk yes
      </IfModule>
   </IfModule>
 
-   RewriteEngine On    
-#  Uncomment to turn on rewrite logging
-#  RewriteLog __LOG_DIR__/koha-intranet-rewrite.log
-#  RewriteLogLevel 1
+   <IfModule mod_rewrite.c>
+     # Rewrite Rules
+     RewriteEngine On
+
+     # Uncomment to turn on rewrite logging
+     #RewriteLog __LOG_DIR__/koha-intranet-rewrite.log
+     #RewriteLogLevel 1
 
-   RewriteCond %{QUERY_STRING} (.*?)(?:[A-Za-z0-9_-]+)=&(.*)
-   RewriteRule (.+) $1?%1%2 [N,R,NE]
-   RewriteRule ^/bib/([^\/]*)/?$ /cgi-bin/koha/detail\.pl?bib=$1 [PT]
-   RewriteRule ^/isbn/([^\/]*)/?$ /search?q=isbn:$1 [PT]
-   RewriteRule ^/issn/([^\/]*)/?$ /search?q=issn:$1 [PT]
+     RewriteCond %{QUERY_STRING} (.*?)(?:[A-Za-z0-9_-]+)=&(.*)
+     #RewriteRule (.+) $1?%1%2 [N,R,NE]
+     RewriteRule ^/bib/([^\/]*)/?$ /cgi-bin/koha/detail\.pl?bib=$1 [PT]
+     RewriteRule ^/isbn/([^\/]*)/?$ /search?q=isbn:$1 [PT]
+     RewriteRule ^/issn/([^\/]*)/?$ /search?q=issn:$1 [PT]
+   </IfModule>
 </VirtualHost>
diff --git a/install_misc/README.fr.install_koha_on_fresh_debian b/install_misc/README.fr.install_koha_on_fresh_debian
deleted file mode 100644 (file)
index 3fb999b..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-Ce script installe koha3 sur une debian etch (stable) nouvellement installée.
-
-1. Avertissement
-
-Ce script configure automatiquement le comportement du gestionnaire de paquet comme suit:
-
-- permet l'installation de paquets en provenance de lenny (debian testing)
-- configure aptitude pour préférer les paquets etch
-- configure aptitude pour ignorer les paquets recommandés par les dépendances
-  (ils ne seront ni installés, ni déinstallés automatiquement), ce qui correspond
-  au comportement standard des apt-tools.
-
-Si, pour l'une ou l'autre raison, vous ne souhaitez pas mélanger les distributions:
-  NE PAS UTILISER CE SCRIPT
-
-Toutefois, il est recommandé par les développeurs koha d'utiliser au maximum
-les paquets debian. Ce que fait ce script.
-
-Si vous avez deja configuré les sources à votre convenance et que les sources
-d'indexdata et de lenny sont bien disponibles, utilisez le modificateur c.
-Votre configuration ne sera alors pas altérée.
-
-    sh install_koha_on_fresh_debian g
-
-2. Prérequis
-
-Les locales doivent être correctement configurées.
-
-Il est fortement conseillé d'installer un MTA (nécessaire à koha) avant de lancer
-l'installation de koha. Cela vous permet de faire votre choix.
-
-Sachant que:
-- debian installe courier par defaut
-- je vous conseillerais postfix
-- un puriste exigerait sendmail
-- en pratique, le choix se fait en fonction des spécificités de votre site parmis
-  les nombreux MTA proposés par debian
-
-  pour voir la liste des MTA:
-
-       aptitude search '~Dprovides:mail-transport-agent'
-  
-  pour voir si un MTA est deja installé 
-
-       aptitude search '~i~Dprovides:mail-transport-agent'
-  
-3. Installation de koha
-
-Le script nécessite les droits root. lancer l'installation:
-
-    sh install_koha_on_fresh_debian [modificateurs]
-
-les modificateurs sont:
-
-b: installer koha grace au tarball du site koha-community.org
-c: ne pas configurer le systeme de paquet debian
-
-ils sont regroupés (sans espace), ainsi
-
-    sh install_koha_on_fresh_debian cb
-
-prend les deux modificateurs en compte
-
-    sh install_koha_on_fresh_debian c b # FAUX
-
-ne prend que c en compte
-
-Par défaut, le script utilise git pour télécharger les sources de koha. Nous
-conseillons de conserver ce paramètre et de selectionner [dev] comme type
-d'installation lorsque cela vous sera demandé. Ce choix vous permet de mettre
-koha à jour par un simple git pull.
-
-Si vous préférez utiliser le tarball disponible sur le site de koha-community.org,
-utilisez le modificateur b: 
-
-    sh install_koha_on_fresh_debian b
-
-       - answer to the questions
-
-4. Questions, contact
-
-N'hésitez pas à me contacter (marc.chantreux [at] biblibre.com) pour toute
-question relative à l'utilisation de ce script ou a consulter
-http://www.biblibre.com pour obtenir un support professionel pour koha.
diff --git a/install_misc/README.install_koha_on_fresh_debian b/install_misc/README.install_koha_on_fresh_debian
deleted file mode 100644 (file)
index fc845cf..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-if you
-- just installed a fresh debian etch
-- want to install koha
-- don't want to strugle with apt configuration, weird dependancies conflit,
-  and cpan install modules
-this script does it for you
-
-note:
-    french doc. is more detailled for the moment (i apologize).
-
-warning:
-    Even if etch is always prefered, this script installs some lenny packages. 
-    If you don't want to mix distribs for any reason, please don't use this script.
-
-required:
-       locales have to be allready configured configured
-
-recommends:
-
-        .
-       /!\ koha needs a local MTA. By default, courier-mta will be installed.
-           I recommend postfix but i won't decide for you (the choice of the MTA
-           relies on too many parameters).
-
-       if you want to know the alternatives, type
-       aptitude search '~Dprovides:mail-transport-agent'
-
-go:
-       - edit the first lines of the script to set some environement variables
-         (you can also use export to set variables out of the script)
-       - from the shell, type
-               sh install_koha_from_on_fesh_etch [install flags]
-
-               flags are
-               t: install koha from release or beta tarballs (default is git)
-               b: install koha from beta tarballs (default is git)
-               c: debian is still configured. It means that you exactly know the
-                   required sources and the script asumes that those sources are
-                   configured
-
-       - answer to the questions
-
-it's ready to use ...
-
-TODO:
-- improve this documentation
-
-
-
index 2460555..531b056 100644 (file)
@@ -4,21 +4,27 @@ cvs   install
 daemon install
 gcc install
 gettext install
+idzebra-2.0    install
 idzebra-2.0-common     install
 idzebra-2.0-doc        install
-idzebra-2.0    install
 idzebra-2.0-utils      install
 libalgorithm-checkdigits-perl  install
+libanyevent-http-perl          install
+libanyevent-perl               install
+libarchive-zip-perl            install
 libauthen-cas-client-perl install
 libbiblio-endnotestyle-perl install
 libbusiness-isbn-perl install
+libcache-fastmmap-perl         install
 libcache-memcached-fast-perl           install
-libcgi-session-perl    install
+libcache-perl          install
 libcgi-session-driver-memcached-perl           install
+libcgi-session-perl    install
 libcgi-session-serialize-yaml-perl install
 libclass-accessor-perl         install
 libclass-factory-util-perl     install
 libdata-ical-perl      install
+libdata-paginator-perl         install
 libdate-calc-perl install
 libdate-manip-perl install
 libdatetime-event-ical-perl            install
@@ -37,24 +43,25 @@ libdbd-mysql-perl install
 libdbd-sqlite2-perl install
 libdbi-perl    install
 libemail-date-perl     install
-libgcrypt11-dev install
 libgcrypt11 install
-libgd2-noxpm-dev install
+libgcrypt11-dev install
 libgd-barcode-perl     install
+libgd-gd2-perl         install
+libgd2-noxpm-dev install
+libgraphics-magick-perl install
 libgravatar-url-perl   install
 libhtml-format-perl            install
 libhtml-scrubber-perl  install
-libidzebra-2.0-dev     install
+libhtml-template-pro-perl install
+libhttp-oai-perl install
 libidzebra-2.0 install
+libidzebra-2.0-dev     install
 libidzebra-2.0-mod-alvis       install
 libidzebra-2.0-mod-grs-marc    install
 libidzebra-2.0-mod-grs-regx    install
 libidzebra-2.0-mod-grs-xml     install
 libidzebra-2.0-mod-text        install
 libidzebra-2.0-modules install
-libgraphics-magick-perl install
-libhtml-template-pro-perl install
-libhttp-oai-perl install
 libjson-any-perl               install
 libjson-perl   install
 liblingua-ispell-perl  install
@@ -72,6 +79,8 @@ libmarc-xml-perl install
 libmemoize-memcached-perl install
 libmime-lite-perl       install
 libmodern-perl-perl    install
+libmodule-bundled-files-perl           install
+libmoose-perl          install
 libmoosex-storage-perl         install
 libmoosex-types-perl           install
 libmysqlclient15-dev install
@@ -89,9 +98,11 @@ libreadonly-perl    install
 libreadonly-xs-perl    install
 libschedule-at-perl install
 libsms-send-perl install
+libstring-random-perl          install
 libstring-rewriteprefix-perl           install
 libtemplate-perl install
 libtemplate-plugin-htmltotext-perl             install
+libtest-deep-perl              install
 libtest-mockmodule-perl                install
 libtest-strict-perl            install
 libtest-warn-perl              install
@@ -103,17 +114,14 @@ libtext-csv-xs-perl               install
 libtext-iconv-perl     install
 libtext-unaccent-perl  install
 libtext-wrapi18n-perl  install
-libtimedate-perl       install
 libtime-duration-perl  install
 libtime-format-perl    install
 libtime-progress-perl          install
+libtimedate-perl       install
 libuniversal-require-perl      install
 libunix-syslog-perl    install
 liburi-perl            install
 libwww-perl            install
-libxml2-dev    install
-libxml2        install
-libxml2-utils  install
 libxml-dom-perl        install
 libxml-dumper-perl     install
 libxml-libxml-perl     install
@@ -127,13 +135,16 @@ libxml-sax-perl           install
 libxml-sax-writer-perl  install
 libxml-simple-perl install
 libxml-xslt-perl       install
-libxslt1.1     install
+libxml2        install
+libxml2-dev    install
+libxml2-utils  install
 libxslt1-dev   install
+libxslt1.1     install
 libyaml-perl install
 libyaml-syck-perl install
-libyaz-dev     install
 libyaz install
+libyaz-dev     install
 make install
 mysql-server install
-yaz-doc        install
 yaz    install
+yaz-doc        install
diff --git a/install_misc/install_koha_on_fresh_debian b/install_misc/install_koha_on_fresh_debian
deleted file mode 100644 (file)
index fdfbaef..0000000
+++ /dev/null
@@ -1,534 +0,0 @@
-# $Id:$ vim: fdm=marker
-
-# Licensed under the GPL
-# Copyright 2008 Biblibre.com
-# Koha library project  www.koha-community.org
-#
-# this script follow all the installtion procedure described in INSTALL.Debian
-# with some additions to use lenny packages.
-#
-# This file is part of Koha.
-#
-# Koha is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2 of the License, or (at your option) any later
-# version.
-#
-# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
-# 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.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-#
-# TODO:
-# - search and destroy all TODO in this file
-# - detect country or locale to choose lang and marc by default for koha install
-#   (fr, unimarc) 
-# - detect country or locale to choose translator
-
-# abort if anything wrong
-set -e
-
-: ${DB_TYPE:=mysql}
-: ${DB_HOST:=localhost}
-: ${DB_NAME:=koha}    
-: ${DB_USER:=kohaadmin}
-: ${DB_PASS:=katikoan}
-
-: ${INSTALL_ZEBRA:=yes}
-: ${INSTALL_SRU:=yes}
-: ${INSTALL_PAZPAR2:=no}
-: ${AUTH_INDEX_MODE:=grs1}
-: ${BIB_INDEX_MODE:=grs1}
-
-: ${INSTALL_MODE:=standard}
-
-: ${ZEBRA_MARC_FORMAT:=marc21}
-: ${ZEBRA_LANGUAGE:=en}
-: ${ZEBRA_USER:=kohauser}
-: ${ZEBRA_PASS:=zebrastripes}
-: ${ZEBRA_SRU_HOST:=localhost}
-: ${ZEBRA_SRU_BIBLIOS_PORT:=9998}
-: ${ZEBRA_SRU_AUTHORITIES_PORT:=9999}
-
-: ${KOHA_USER:=koha}
-: ${KOHA_GROUP:=koha}
-
-
-: ${MERGE_SERVER_HOST:=localhost}
-: ${MERGE_SERVER_PORT:=11001}
-
-: ${PAZPAR2_HOST:=localhost}
-: ${PAZPAR2_PORT:=11002}
-
-: ${KOHA_SRC_DIR:=/usr/local/src}
-: ${KOHA_SRC_BASE:=koha}
-KOHA_SRC_PATH="$KOHA_SRC_DIR/$KOHA_SRC_BASE"
-: ${GET_KOHA_SRC_METHOD:=git}
-
-# repo that is used by configure_lenny_sources
-# FIXME: comment this before update
-LENNY_FLAVORS="testing main non-free contrib" 
-
-GET_KOHA_LOG=/dev/null
-
-# functions declarations {{{
-
-ask_yn () {
-       local ans
-       echo
-       echo
-       echo "$*" 
-       while echo '(y/n)' && read ans; do
-               [ x"$ans" = xn ] && return 1
-               [ x"$ans" = xy ] && return 0
-       done
-}
-
-# perlish warn
-warn () { echo "$*" >&2
-}
-
-# $1 is errorlevel
-# the rest is an error message
-die () {
-    err=$1
-    shift
-    warn "$*"
-    exit $err
-}
-
-add_package () {
-# add a list of names of packages to be installed 
-# exemple: add_package screen zsh 
-# or     : echo screen zsh | add_package 
-       local deb 
-       if [ "$1" ]; then
-           for deb in $@; do
-                   echo $deb >&3
-           done
-       else
-           cat >&3
-       fi
-}
-
-open_package_list () {
-    PACKAGELIST=$(mktemp)
-    # write in fd3 to add a name of required package
-    exec 3>$PACKAGELIST
-}
-
-install_package_list () {
-    # close the list
-    exec 3>&-
-    # install it
-    xargs -a $PACKAGELIST aptitude install
-    # remove it
-    rm $PACKAGELIST
-}
-
-configure_indexdata_sources () {
-    
-    # Add indexdata packages to the apt sources
-    echo ' # Sources for yaz and idzebra
-    deb http://ftp.indexdata.dk/debian etch main
-    ' > /etc/apt/sources.list.d/indexdata.sources.list
-    
-    # install indexdata key (to make indexdata sources usable)
-    wget -O- http://ftp.indexdata.dk/debian/indexdata.asc |
-           apt-key add - || die 1 "can't get indexdata sources"
-
-}
-
-configure_lenny_using_apt_spy () {
-    dpkg -l apt-spy ||
-       aptitude -y install apt-spy
-    apt-spy -d lenny
-}
-
-# TODO:
-# configure_lenny_using_etch_mirror () { 
-# sed /etc/apt/sources.list > \
-# /etc/apt/sources.list.d/testing.sources.list
-# need to handle $@ for this 
-# }
-
-add_default_lenny_repro () {
-    echo "deb $LENNY_REPO $LENNY_FLAVORS" > \
-       /etc/apt/sources.list.d/testing.sources.list
-}
-
-ask_for_lenny_repo () {
-       echo 'type the url of the repository to use for lenny packages. Be sure that is a valid debian repository.
-       for example http://ftp.fr.debian.org/debian/'
-       read LENNY_REPO
-       add_default_lenny_repro
-}
-
-configure_lenny () {
-    local howto
-    if [ "$LENNY_REPO" ]; then
-       add_default_lenny_repro
-    else
-       echo '$LENNY_REPO not set, what do you want to do now'
-       select howto in \
-               'manually set LENNY_REPO
-               ' \
-               'get and use apt-spy to automatically find a repository
-               (it can take some times)
-               ' \
-               'let sources.list as it (still configured)' \
-               'leave the installation' 
-       do
-               case "$howto" in
-
-                       *manually*)
-                               ask_for_lenny_repo
-                               break
-                       ;;
-
-                       *automatically*)
-                               configure_lenny_using_apt_spy
-                               break
-                       ;;
-
-                       *configured*)
-                               break
-                       ;;
-
-                       *leave*)
-                               exit
-                       ;;
-               esac
-       done
-    fi
-}
-
-configure_aptitude_correctly () {
-# configure aptitude to behave as old apt tools and
-# use etch packages by default
-cat << CONFAPT >  /etc/apt/apt.conf.d/Apt
-APT {
-    Default-Release "stable";
-    Cache-Limit 20000000;
-}
-
-Aptitude {
-    Recommends-Important false;
-    Keep-Recommends false;
-}
-CONFAPT
-}
-
-
-set_libxml_parser () {
-    # TODO: update-perl-sax-parsers --priority since lib-xml-sax-perl 0.16
-       sed -i '
-               # when XML::LibXML::SAX::Parser header detected
-               # move the 2 lines in the hold space
-               /[[]XML::LibXML::SAX::Parser[]]/ {
-                       N;H;d
-               }
-
-               # replace end of file by hold space
-               $ { p;x }
-       ' /etc/perl/XML/SAX/ParserDetails.ini
-}
-
-verify_sax_parser () {
-    local r
-    r=`perl -MXML::SAX::ParserFactory -e 'print ref XML::SAX::ParserFactory->parser'`
-    test "$r" = XML::LibXML::SAX::Parser || set_libxml_parser
-}
-
-create_debian_koha_user() {
-# TODO: use $KOHA_GROUP
-echo ----------------------
-echo add the system user and group for koha.
-echo your choice: $1
-echo ----------------------
-adduser $1
-}
-
-apache_add_ports () {
-       local ports ports_conf needed
-       ports_conf="${1:-/etc/apache2/ports.conf}"
-       ports=`sed -n 's/Listen[\t ]\([0-9]\+\)/\1/p' "$ports_conf"` 
-       { for needed in 80 8080; do
-               expr "$ports" : '.*\<\('$needed'\)\>.*' > /dev/null ||
-                       echo "# Added by koha installer
-Listen $needed
-"
-       done } >> "$ports_conf" 
-}
-
-get_koha_git_clone () {
-    # /!\ be carrefull to be in the good directory
-    # /usr/local/src/ recommended
-    local base="${1:-koha}"
-
-    dpkg -l git-core ||
-       aptitude -y  install git-core git-email
-    git clone git://git.koha-community.org/koha.git "$base"
-}
-
-get_koha_release () {
-    wget -O- http://download.koha-community.org/koha-3.00.00.tar.gz |
-       tar xzf - 
-}
-
-get_koha_beta () {
-    # /!\ be carrefull to be in the good directory
-    # /usr/local/src/ recommended
-
-    local method base
-    base="$1"
-    method="${2:-beta}"
-
-    get_koha_release "$base" && return 0
-    [ $method = tar ] && return 1 
-
-    local i basename; i=2
-    while [ $i != 11 ]; do
-       basename=koha-3.00.00-beta$i
-       wget -O- http://download.koha-community.org/$basename.tar.gz |
-           tar xzf - &&
-               mv $basename "$base" &&
-               return 0
-       let i+=1
-    done
-
-    return 1 
-}
-
-get_koha_sources () {
-    # /!\ be carrefull to be in the good directory
-    # /usr/local/src/ recommended
-    local method base
-    method="${2:-git}"
-    base="$1"
-
-    case "$method" in
-       git) get_koha_git_clone $base
-       ;;
-       tar)
-               get_koha_release "$base" ||
-                       die 1 koha not found
-       ;;
-       beta) get_koha_beta "$base" "$method" ||
-                       die 1 koha not found
-       ;;
-       *) : # TODO: error message and exit 
-       ;;
-    esac
-}
-
-# end of function declarations }}}
-
-if [ -e "$KOHA_SRC_PATH" ];then
-    if ask_yn "$KOHA_SRC_PATH still exists. use it ?"; then
-           ask_yn "download the sources again ?" ||
-               PLEASE_DONT_GET=1
-    else 
-           exit
-    fi
-else 
-       [ -d "$KOHA_SRC_DIR" ] ||
-               die 1 "$KOHA_SRC_DIR is not a directory"
-fi
-
-# parsing arguments {{{
-# TODO: document it
-# TODO: this won't work with real bourne shell (use expr instead)
-if [ "$1" ]; then
-    [ "$1" = *b* ] && GET_KOHA_SRC_METHOD=beta
-    [ "$1" = *t* ] && GET_KOHA_SRC_METHOD=tar
-    [ "$1" = *c* ] && DEBIAN_STILL_CONFIGURED=yes
-fi
-
-# TODO: remove it ? 
-goto_koha_path () {
-    cd $KOHA_SRC_PATH && return 0
-    cd $KOHA_SRC_DIR
-    local candidate
-    local done
-    done=no
-    for candidate in koha?*; do
-       if [ $done = no ]; then
-           mv $candidate $KOHA_SRC_BASE
-       else
-           die 1 "more than one koha candidate into $KOHA_SRC_DIR, please clean up" 
-       fi
-    done 
-    cd $KOHA_SRC_PATH && die 1 "can't cd to $KOHA_SRC_PATH"
-}
-
-mysql_create_base () {
-       # TODO: what if non mysql backend ? so code ! 
-       # try to create or try to find the base
-       mysqladmin -uroot create "$1" || 
-               echo show databases   |
-                       mysql         |
-                       grep -q "^$1$"
-}
-
-mysql_grant_access () { 
-       local base login password
-       base="$1" login="$2" password="$3"
-cat << GRANTACCESS | mysql 
-grant all on $base.* to '$login'@'localhost' identified by '$password';
-flush privileges;
-GRANTACCESS
-}
-
-verify_etch_sources () {
-       local current backup
-       current=/etc/apt/sources.list 
-       backup=/etc/apt/sources.list.bak 
-       if [ ! -e $current ] || [ ! -s $current ]; then
-               [ -e $backup ] && mv $backup $current || die 1 "can't find etch"
-       fi
-}
-
-# }}}
-
-cd "$KOHA_SRC_DIR"
-[ "$PLEASE_DONT_GET" ] ||
-       get_koha_sources "$KOHA_SRC_BASE" "$GET_KOHA_SRC_METHOD" > $GET_KOHA_LOG 2>&1  & 
-
-[ $DEBIAN_STILL_CONFIGURED ] || {
-    configure_indexdata_sources  # to install yaz and iezebra
-    configure_lenny              # because etch lacks some packages
-    configure_aptitude_correctly # to solve dependancies and conflicts
-    verify_etch_sources
-}
-
-# update the system
-aptitude update
-aptitude upgrade
-
-open_package_list           # now we can add packages with add_package command
-# this would be installed by dependances but it needs to be
-# installed first to autoconfigure perl sax parser
-add_package libxml-libxml-perl
-# libyaz-dev required to build Net::Z3950::ZOOM from cpan
-# can be removed when debian package will be usefull
-add_package libyaz-dev
-# lot of koha dependancies
-cat << PACKAGES | add_package
-idzebra-2.0
-yaz
-libmail-sendmail-perl
-libhtml-scrubber-perl
-libmarc-record-perl/testing
-libmarc-charset-perl/testing
-libmarc-crosswalk-dublincore-perl
-libpdf-reuse-perl
-libpdf-reuse-barcode-perl
-libdata-ical-perl
-libxml-rss-perl/testing
-libpoe-perl/testing
-libschedule-at-perl
-apache2
-daemon
-libgcrypt11
-libgcrypt11-dev
-gcc
-make
-mysql-server
-libcgi-session-perl
-libdate-calc-perl
-libdate-manip-perl
-libdatetime-format-mail-perl
-libdatetime-format-ical-perl
-liblingua-stem-perl
-libdatetime-format-strptime-perl
-libdatetime-format-w3cdtf-perl
-libdbi-perl
-libmysqlclient15-dev
-libnet-ldap-perl
-liblocale-po-perl
-libpdf-api2-perl
-libpoe-perl/testing
-libtext-csv-perl/testing
-libtext-charwidth-perl
-libtime-duration-perl
-libtime-format-perl
-libunix-syslog-perl
-libxml-dom-perl
-libxml-dumper-perl
-libxml-simple-perl
-libxml-regexp-perl
-libxml-xslt-perl/testing
-libxml-libxslt-perl
-libxml2-utils
-libxslt1-dev
-libyaml-syck-perl
-libhtml-template-pro-perl
-libdbd-mysql-perl/testing
-libgraphics-magick-perl
-liblist-moreutils-perl
-libtext-iconv-perl/testing
-libalgorithm-checkdigits-perl
-libmarc-xml-perl
-PACKAGES
-
-# no more "path not found" message during cpan configuration
-add_package unzip lynx ncftp ftp
-
-# just because it ease the life of the sysop
-add_package screen zsh less lsof strace
-
-# every selected packages will now be installed
-install_package_list
-# something wrong with libyaz-dev... KISS workaround is reinstall
-aptitude install libyaz-dev
-
-# those perl libs have no statisfying debian packages
-# so they are installed via cpan.
-cpan Net::Z3950::ZOOM Biblio::EndnoteStyle
-
-getent passwd $KOHA_USER ||
-    create_debian_koha_user $KOHA_USER ||
-    die 1 "can't create $KOHA_USER"
-
-mysql_create_base "$DB_NAME" ||
-       die 1 "can't create or find $DB_NAME"
-mysql_grant_access "$DB_NAME" "$DB_USER" "$DB_PASS" ||
-       die 1 "can't grant access to $DB_USER"
-
-echo "please wait while i'm downloading koha sources"
-wait
-cd "$KOHA_SRC_PATH"
-
-verify_sax_parser 
-
-perl Makefile.PL
-make
-make test
-make install
-apache_add_ports
-
-makefile_value () {
-    sed -n ' s/^'"$1"' = //T;p;q'  Makefile
-}
-
-koha_conf=`makefile_value KOHA_DEST_KOHA_CONF_DIR`
-ln -s "$koha_conf"/koha-httpd.conf /etc/apache2/sites-available/koha
-
-a2enmod rewrite
-a2ensite koha
-invoke-rc.d apache2 reload
-
-koha_script=`makefile_value KOHA_DEST_SCRIPT_DIR`
-ln -s "$koha_script"/koha-index-daemon-ctl.sh  /etc/init.d/koha-index-daemon
-update-rc.d koha-index-daemon defaults
-
-# TODO:
-# - add translator
-# if cd misc/translator; then
-#     ./tmpl_process3 install -s po/fr-FR... -i ../../koha-tmpl/opac-tmpl/prog/en -o ../../koha-tmpl/opac-tmpl/prog/fr-FR
-#     cd -
-# fi
index 5b55070..1d1470e 100644 (file)
@@ -49,34 +49,49 @@ libxslt1-dev                                install
 # perl packages
 
 libalgorithm-checkdigits-perl          install
+libanyevent-http-perl          install
+libanyevent-perl               install
+libarchive-zip-perl            install
 libauthen-cas-client-perl              install
 libbiblio-endnotestyle-perl            install
 libbusiness-isbn-perl                  install
+libcache-fastmmap-perl         install
+libcache-perl          install
 libcgi-session-driver-memcached-perl                   install
 libcgi-session-perl                    install
 libcgi-session-serialize-yaml-perl     install
+libclass-accessor-perl         install
 libclass-factory-util-perl             install
 libdata-ical-perl                      install
+libdata-paginator-perl         install
 libdate-calc-perl                      install
 libdate-manip-perl                     install
-libdatetime-perl                       install
+libdatetime-event-ical-perl            install
 libdatetime-format-dateparse-perl                      install
 libdatetime-format-ical-perl            install
 libdatetime-format-mail-perl           install
+libdatetime-format-mysql-perl          install
 libdatetime-format-strptime-perl       install
 libdatetime-format-w3cdtf-perl         install
 libdatetime-locale-perl                        install
+libdatetime-perl                       install
+libdatetime-set-perl           install
 libdatetime-timezone-perl              install
+libdbd-mock-perl               install
 libdbd-mysql-perl                      install
 libdbd-sqlite2-perl                    install
 libdbi-perl                            install
 libemail-date-perl                     install
 libgd-barcode-perl                     install
+libgd-gd2-perl         install
 libgraphics-magick-perl                        install
 libgravatar-url-perl                   install
+libhtml-format-perl            install
 libhtml-scrubber-perl                  install
 libhtml-template-pro-perl              install
 libhttp-oai-perl                       install
+libjson-any-perl               install
+libjson-perl           install
 liblingua-ispell-perl                  install
 liblingua-stem-perl                    install
 liblingua-stem-snowball-perl           install
@@ -92,42 +107,59 @@ libmarc-xml-perl                   install
 libmemoize-memcached-perl                      install
 libmime-lite-perl                      install
 libmodern-perl                 install
+libmodule-bundled-files-perl           install
 libmodule-install-perl                 install
+libmoose-perl          install
+libmoosex-storage-perl         install
+libmoosex-types-perl           install
 libnet-ldap-perl                       install
 libnet-server-perl                     install
-libpdf-api2-simple-perl                        install
-libreadonly-perl                       install
-libreadonly-xs-perl                    install
 libnet-z3950-zoom-perl                 install
 libnumber-format-perl                  install
 libpdf-api2-perl                       install
-libpdf-reuse-perl                      install
+libpdf-api2-simple-perl                        install
 libpdf-reuse-barcode-perl              install
+libpdf-reuse-perl                      install
 libpdf-table-perl                      install
 libpoe-perl                            install
+libreadonly-perl                       install
+libreadonly-xs-perl                    install
 libschedule-at-perl                    install
 libsms-send-perl                       install
+libstring-random-perl          install
+libstring-rewriteprefix-perl           install
 libtemplate-perl                       install
 libtemplate-plugin-htmltotext-perl     install
+libtest-deep-perl              install
+libtest-mockmodule-perl                install
+libtest-strict-perl            install
+libtest-warn-perl              install
+libtest-yaml-valid-perl                install
 libtext-charwidth-perl                 install
 libtext-csv-encoded-perl                       install
 libtext-csv-perl                       install
+libtext-csv-xs-perl            install
 libtext-iconv-perl                     install
+libtext-unaccent-perl          install
 libtext-wrapi18n-perl                  install
-libtimedate-perl                       install
 libtime-duration-perl                  install
 libtime-format-perl                    install
+libtime-progress-perl          install
+libtimedate-perl                       install
 libuniversal-require-perl              install
 libunix-syslog-perl                    install
-libxml-perl                            install
+liburi-perl            install
+libwww-perl            install
 libxml-dom-perl                                install
 libxml-dumper-perl                     install
 libxml-libxml-perl                     install
 libxml-libxslt-perl                    install
 libxml-namespacesupport-perl           install
 libxml-parser-perl                     install
+libxml-perl                            install
 libxml-regexp-perl                     install
 libxml-rss-perl                                install
+libxml-sax-perl                install
 libxml-sax-writer-perl                 install
 libxml-simple-perl                     install
 libxml-xslt-perl                       install
diff --git a/install_misc/ubuntu.10.10.packages b/install_misc/ubuntu.10.10.packages
deleted file mode 100644 (file)
index 3f6cb81..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-
-apache2                                        install
-at                                     install
-daemon                                 install
-gcc                                    install
-gettext                                        install
-make                                   install
-
-# mysql packages
-
-mysql-server                           install
-libmysqlclient16                       install
-libmysqlclient16-dev                   install
-
-# yaz packages
-
-yaz                                    install
-yaz-doc                                        install
-libyaz3                                        install
-libyaz3-dev                            install
-
-# zebra packages
-
-idzebra-2.0                            install
-idzebra-2.0-common                     install
-idzebra-2.0-doc                                install
-idzebra-2.0-utils                      install
-libidzebra-2.0-0                       install
-libidzebra-2.0-dev                     install
-libidzebra-2.0-mod-alvis               install
-libidzebra-2.0-mod-grs-marc            install
-libidzebra-2.0-mod-grs-regx            install
-libidzebra-2.0-mod-grs-xml             install
-libidzebra-2.0-mod-text                        install
-libidzebra-2.0-modules                 install
-
-# crypto packages
-
-libgcrypt11                            install
-libgcrypt11-dev                                install
-
-# xml/xslt packages
-
-libxml2                                        install
-libxml2-dev                            install
-libxml2-utils                          install
-libxslt1.1                             install
-libxslt1-dev                           install
-
-# perl packages
-
-libalgorithm-checkdigits-perl          install
-libauthen-cas-client-perl              install
-libbiblio-endnotestyle-perl            install
-libbusiness-isbn-perl                  install
-libcgi-session-perl                    install
-libcgi-session-serialize-yaml-perl     install
-libclass-factory-util-perl             install
-libdata-ical-perl                      install
-libdate-calc-perl                      install
-libdate-manip-perl                     install
-libdatetime-perl                       install
-libdatetime-format-ical-perl            install
-libdatetime-format-mail-perl           install
-libdatetime-format-strptime-perl       install
-libdatetime-format-w3cdtf-perl         install
-libdatetime-locale-perl                        install
-libdatetime-timezone-perl              install
-libdbd-mysql-perl                      install
-libdbd-sqlite2-perl                    install
-libdbi-perl                            install
-libemail-date-perl                     install
-libgd-barcode-perl                     install
-libgraphics-magick-perl                        install
-libhtml-scrubber-perl                  install
-libhtml-template-pro-perl              install
-libhttp-oai-perl                       install
-liblingua-ispell-perl                  install
-liblingua-stem-perl                    install
-liblingua-stem-snowball-perl           install
-liblist-moreutils-perl                 install
-liblocale-currency-format-perl         install
-liblocale-gettext-perl                 install
-liblocale-po-perl                      install
-libmail-sendmail-perl                  install
-libmarc-charset-perl                   install
-libmarc-crosswalk-dublincore-perl      install
-libmarc-record-perl                    install
-libmarc-xml-perl                       install
-libmemoize-memcached-perl              install
-libmime-lite-perl                      install
-libmodule-install-perl                 install
-libnet-ldap-perl                       install
-libnet-server-perl                     install
-libnet-z3950-zoom-perl                 install
-libnumber-format-perl                  install
-libpdf-api2-perl                       install
-libpdf-reuse-perl                      install
-libpdf-api2-simple-perl                        install
-libpdf-reuse-barcode-perl              install
-libpdf-table-perl                      install
-libpoe-perl                            install
-libschedule-at-perl                    install
-libsms-send-perl                       install
-libtemplate-perl                       install
-libtemplate-plugin-htmltotext-perl     install
-libtext-charwidth-perl                 install
-libtext-csv-encoded-perl               install
-libtext-csv-perl                       install
-libtext-iconv-perl                     install
-libtext-wrapi18n-perl                  install
-libtimedate-perl                       install
-libtime-duration-perl                  install
-libtime-format-perl                    install
-libuniversal-require-perl              install
-libunix-syslog-perl                    install
-libxml-perl                            install
-libxml-dom-perl                                install
-libxml-dumper-perl                     install
-libxml-libxml-perl                     install
-libxml-libxslt-perl                    install
-libxml-namespacesupport-perl           install
-libxml-parser-perl                     install
-libxml-regexp-perl                     install
-libxml-rss-perl                                install
-libxml-sax-writer-perl                 install
-libxml-simple-perl                     install
-libxml-xslt-perl                       install
-libyaml-perl                           install
-libyaml-syck-perl                      install
index ebb8161..df87256 100644 (file)
@@ -48,9 +48,15 @@ libxslt1-dev                         install
 # perl packages
 
 libalgorithm-checkdigits-perl          install
+libanyevent-http-perl          install
+libanyevent-perl               install
+libarchive-zip-perl            install
 libauthen-cas-client-perl              install
 libbiblio-endnotestyle-perl            install
 libbusiness-isbn-perl                  install
+libcache-fastmmap-perl         install
+libcache-memcached-fast-perl           install
+libcache-perl          install
 libcgi-session-driver-memcached-perl                   install
 libcgi-session-perl                    install
 libcgi-session-serialize-yaml-perl     install
@@ -59,9 +65,9 @@ libchi-perl                           install
 libclass-accessor-perl                 install
 libclass-factory-util-perl             install
 libdata-ical-perl                      install
+libdata-paginator-perl         install
 libdate-calc-perl                      install
 libdate-manip-perl                     install
-libdatetime-perl                       install
 libdatetime-event-ical-perl            install
 libdatetime-format-dateparse-perl                      install
 libdatetime-format-ical-perl           install
@@ -70,8 +76,10 @@ libdatetime-format-mysql-perl                install
 libdatetime-format-strptime-perl       install
 libdatetime-format-w3cdtf-perl         install
 libdatetime-locale-perl                        install
+libdatetime-perl                       install
 libdatetime-set-perl                   install
 libdatetime-timezone-perl              install
+libdbd-mock-perl               install
 libdbd-mysql-perl                      install
 libdbd-sqlite2-perl                    install
 libdbi-perl                            install
@@ -104,28 +112,34 @@ libmemoize-memcached-perl                 install
 libmime-lite-perl                      install
 libmodern-perl                 install
 libmodern-perl-perl                    install
+libmodule-bundled-files-perl           install
 libmodule-install-perl                 install
+libmoose-perl          install
 libmoosex-storage-perl                 install
 libmoosex-types-perl                   install
 libnet-ldap-perl                       install
 libnet-server-perl                     install
-libpdf-api2-simple-perl                        install
-libreadonly-perl                       install
-libreadonly-xs-perl                    install
 libnet-z3950-zoom-perl                 install
 libnumber-format-perl                  install
 libpdf-api2-perl                       install
-libpdf-reuse-perl                      install
+libpdf-api2-simple-perl                        install
 libpdf-reuse-barcode-perl              install
+libpdf-reuse-perl                      install
 libpdf-table-perl                      install
 libpoe-perl                            install
+libreadonly-perl                       install
+libreadonly-xs-perl                    install
 libschedule-at-perl                    install
 libsms-send-perl                       install
+libstring-random-perl          install
 libstring-rewriteprefix-perl           install
 libtemplate-perl                       install
 libtemplate-plugin-htmltotext-perl     install
+libtest-deep-perl              install
 libtest-mockmodule-perl                        install
 libtest-strict-perl                    install
+libtest-warn-perl              install
+libtest-yaml-valid-perl                install
 libtext-charwidth-perl                 install
 libtext-csv-encoded-perl                       install
 libtext-csv-perl                       install
@@ -133,21 +147,21 @@ libtext-csv-xs-perl                       install
 libtext-iconv-perl                     install
 libtext-unaccent-perl                  install
 libtext-wrapi18n-perl                  install
-libtimedate-perl                       install
 libtime-duration-perl                  install
 libtime-format-perl                    install
 libtime-progress-perl                  install
+libtimedate-perl                       install
 libuniversal-require-perl              install
 libunix-syslog-perl                    install
 liburi-perl                            install
 libwww-perl                            install
-libxml-perl                            install
 libxml-dom-perl                                install
 libxml-dumper-perl                     install
 libxml-libxml-perl                     install
 libxml-libxslt-perl                    install
 libxml-namespacesupport-perl           install
 libxml-parser-perl                     install
+libxml-perl                            install
 libxml-regexp-perl                     install
 libxml-rss-perl                                install
 libxml-sax-perl                                install
index c8e8d5f..5356e54 100644 (file)
@@ -48,9 +48,15 @@ libxslt1-dev                         install
 # perl packages
 
 libalgorithm-checkdigits-perl          install
+libanyevent-http-perl          install
+libanyevent-perl               install
+libarchive-zip-perl            install
 libauthen-cas-client-perl              install
 libbiblio-endnotestyle-perl            install
 libbusiness-isbn-perl                  install
+libcache-fastmmap-perl         install
+libcache-memcached-fast-perl           install
+libcache-perl          install
 libcgi-session-driver-memcached-perl                   install
 libcgi-session-perl                    install
 libcgi-session-serialize-yaml-perl     install
@@ -59,9 +65,9 @@ libchi-perl                           install
 libclass-accessor-perl                 install
 libclass-factory-util-perl             install
 libdata-ical-perl                      install
+libdata-paginator-perl         install
 libdate-calc-perl                      install
 libdate-manip-perl                     install
-libdatetime-perl                       install
 libdatetime-event-ical-perl            install
 libdatetime-format-dateparse-perl                      install
 libdatetime-format-ical-perl            install
@@ -70,8 +76,10 @@ libdatetime-format-mysql-perl                install
 libdatetime-format-strptime-perl       install
 libdatetime-format-w3cdtf-perl         install
 libdatetime-locale-perl                        install
+libdatetime-perl                       install
 libdatetime-set-perl                   install
 libdatetime-timezone-perl              install
+libdbd-mock-perl               install
 libdbd-mysql-perl                      install
 libdbd-sqlite2-perl                    install
 libdbi-perl                            install
@@ -104,28 +112,34 @@ libmemoize-memcached-perl                 install
 libmime-lite-perl                      install
 libmodern-perl                 install
 libmodern-perl-perl                    install
+libmodule-bundled-files-perl           install
 libmodule-install-perl                 install
+libmoose-perl          install
 libmoosex-storage-perl                 install
 libmoosex-types-perl                   install
 libnet-ldap-perl                       install
 libnet-server-perl                     install
-libpdf-api2-simple-perl                        install
-libreadonly-perl                       install
-libreadonly-xs-perl                    install
 libnet-z3950-zoom-perl                 install
 libnumber-format-perl                  install
 libpdf-api2-perl                       install
-libpdf-reuse-perl                      install
+libpdf-api2-simple-perl                        install
 libpdf-reuse-barcode-perl              install
+libpdf-reuse-perl                      install
 libpdf-table-perl                      install
 libpoe-perl                            install
+libreadonly-perl                       install
+libreadonly-xs-perl                    install
 libschedule-at-perl                    install
 libsms-send-perl                       install
+libstring-random-perl          install
 libstring-rewriteprefix-perl           install
 libtemplate-perl                       install
 libtemplate-plugin-htmltotext-perl     install
+libtest-deep-perl              install
 libtest-mockmodule-perl                        install
 libtest-strict-perl                    install
+libtest-warn-perl              install
+libtest-yaml-valid-perl                install
 libtext-charwidth-perl                 install
 libtext-csv-encoded-perl                       install
 libtext-csv-perl                       install
@@ -133,21 +147,21 @@ libtext-csv-xs-perl                       install
 libtext-iconv-perl                     install
 libtext-unaccent-perl                  install
 libtext-wrapi18n-perl                  install
-libtimedate-perl                       install
 libtime-duration-perl                  install
 libtime-format-perl                    install
 libtime-progress-perl                  install
+libtimedate-perl                       install
 libuniversal-require-perl              install
 libunix-syslog-perl                    install
 liburi-perl                            install
 libwww-perl                            install
-libxml-perl                            install
 libxml-dom-perl                                install
 libxml-dumper-perl                     install
 libxml-libxml-perl                     install
 libxml-libxslt-perl                    install
 libxml-namespacesupport-perl           install
 libxml-parser-perl                     install
+libxml-perl                            install
 libxml-regexp-perl                     install
 libxml-rss-perl                                install
 libxml-sax-perl                                install
index 7a1a9a3..abd26ee 100644 (file)
@@ -1,5 +1,5 @@
 INSERT INTO `letter` (module, code, name, title, content) 
-VALUES ('circulation','ODUE','Mahnung','Mahnung','Liebe/r <<borrowers.firstname>> <<borrowers.surname>>,\n\nNach unseren Unterlagen haben Sie Medien entliehen, die nun überfällig geworden sind. Unsere Bibliothek erhebt keine Mahngebühren, bitte geben Sie die entliehenen Medien schnellstmöglich zurück.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nTelefon: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nSie können die überfälligen Medien soweit möglich auch direkt über Ihr Benutzerkonto online verlängern. Wenn ein Medium länger als 30 Tage überfällig ist, wird Ihr Benutzeraccount gesperrt und Sie können keine Medien mehr entleihen.\n\nDie folgenden Medien sind zur Zeit überfällig:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Gebühr: <fine>EUR</fine></item>\n\nVielen Dank für die schnelle Erledigung.\n\n<<branches.branchname>> Ihr Bibliotheksteam\n'),
+VALUES ('circulation','ODUE','Mahnung','Mahnung','Liebe/r <<borrowers.firstname>> <<borrowers.surname>>,\n\nNach unseren Unterlagen haben Sie Medien entliehen, die nun überfällig geworden sind. Unsere Bibliothek erhebt keine Mahngebühren, bitte geben Sie die entliehenen Medien schnellstmöglich zurück.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nTelefon: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nSie können die überfälligen Medien soweit möglich auch direkt über Ihr Benutzerkonto online verlängern. Wenn ein Medium länger als 30 Tage überfällig ist, wird Ihr Benutzeraccount gesperrt und Sie können keine Medien mehr entleihen.\n\nDie folgenden Medien sind zur Zeit überfällig:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Gebühr: <<items.fine>></item>\n\nVielen Dank für die schnelle Erledigung.\n\n< Ihr Bibliotheksteam\n'),
 ('claimacquisition','ACQCLAIM','Reklamation (Erwerbung)','Titel nicht eingetroffen','<<aqbooksellers.name>>\r\n<<aqbooksellers.address1>>\r\n<<aqbooksellers.address2>>\r\n<<aqbooksellers.address3>>\r\n<<aqbooksellers.address4>>\r\n<<aqbooksellers.phone>>\r\n\r\n<order>Ordernumber <<aqorders.ordernumber>> (<<aqorders.title>>) (<<aqorders.quantity>> bestellt) (je $<<aqorders.listprice>> €) sind nicht eingetroffen.</order>'),
 ('serial','RLIST','Umlaufliste','Zeitschrift ist jetzt verfügbar','<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nDas folgende Heft ist jetzt verfügbar:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)\r\n\r\nBitte holen Sie es sobald möglich ab.'),
 ('members','ACCTDETAILS','Kontoinformationen - Standard','Ihr neues Benutzerkonto','Liebe/r <<borrowers.title>> <<borrowers.firstname>> <<borrowers.surname>>.\r\n\r\nDie Daten Ihres neuen Benutzerkontos sind:\r\n\r\nBenutzer:  <<borrowers.userid>>\r\nPasswort: <<borrowers.password>>\r\n\r\nWenn Sie Probleme in Hinsicht auf Ihr Benutzerkonto haben, wenden Sie sich bitte an die Bibliothek.\r\n\r\nVielen Dank,\r\nIhr Bibliotheksteam'), 
@@ -7,6 +7,7 @@ VALUES ('circulation','ODUE','Mahnung','Mahnung','Liebe/r <<borrowers.firstname>
 ('circulation','DUEDGST','Fälligkeitsbenachrichtigung (Zusammenfassung)','Fälligkeitsbenachrichtigung','Sie haben <<count>> überfällige Medien.'), 
 ('circulation','PREDUE','Erinnerungsbenachrichtigung','Erinnerungsbenachrichtigung','Liebe/r <<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nFolgende Ausleihe wird bald fällig:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)'), 
 ('circulation','PREDUEDGST','Erinnerungsbenachrichtigung (Zusammenfassung)','Erinnerungsbenachrichtigung','Sie haben <<count>> Ausleihen, die bald fällig werden.'),
+('circulation','RENEWAL','Verlängerungsbenachrichtigung','Verlängerungsquittung','Liebe/r <<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nFolgede Exemplare wurden verlängert:\r\n----\r\n<<biblio.title>>\r\n----\r\nVielen Dank,\r\n<<branches.branchname>>.'),
 ('reserves', 'HOLD', 'Vormerkbenachrichtigung', 'Vormerkung abholbereit in <<branches.branchname>>', 'Liebe/r <<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nFür Sie liegt seit <<reserves.waitingdate>> eine Vormerkung zur Abholung bereit:\r\n\r\nTitel: <<biblio.title>>\r\nVerfasser: <<biblio.author>>\r\nExemplar: <<items.copynumber>>\r\nStandort: <<branches.branchname>>\r\n<<branches.branchaddress1>>\r\n<<branches.branchaddress2>>\r\n<<branches.branchaddress3>>\r\n<<branches.branchcity>> <<branches.branchzip>>'),
 ('reserves', 'HOLD_PRINT', 'Vormerkbenachrichtigung (Print)', 'Vormerkbenachrichtigung (Print)', '<<branches.branchname>>\r\n<<branches.branchaddress1>>\r\n<<branches.branchaddress2>>\r\n<<branches.branchaddress2>>\r\n<<branches.branchzip>> <<branches.branchcity>>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>>\r\n<<borrowers.address>>\r\n<<borrowers.address2>>\r\n<<borrowers.zipcode>> <<borrowers.city>>\r\n<<borrowers.country>>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nLiebe(r) <<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nFür Sie liegt seit dem <<reserves.waitingdate>> eine Vormerkung zur Abholung bereit:\r\n\r\nTitel: <<biblio.title>>\r\nVerfasser: <<biblio.author>>\r\nSignatur: <<items.itemcallnumber>>\r\n'),
 ('circulation','CHECKIN','Rückgabequittung (Zusammenfassung)','Rückgabequittung','Die folgenden Medien wurden zurückgegeben:\r\n----\r\n<<biblio.title>>\r\n----\r\nVielen Dank.'),
@@ -106,4 +107,17 @@ Fällig am: <<issues.date_due>><br />
    <li><<items.barcode>></li>
    <li><<items.itemcallnumber>></li>
 </ul>', 1);
-INSERT INTO `letter` (module, code, name, title, content) VALUES ('circulation','RENEWAL','Item Renewal','Renewals','The following items have been renew:\r\n----\r\n<<biblio.title>>\r\n----\r\nThank you for visiting <<branches.branchname>>.');
+
+INSERT INTO `letter` (`module`,`code`,`branchcode`,`name`,`is_html`,`title`,`content`)
+VALUES (
+'members',  'OPAC_REG_VERIFY',  '',  'Bestätigung der Anmeldung zur Bibliotheksnutzung',  '1',  'Verify Your Account',  'Guten Tag,
+
+Ihr Bibliothekskonto wurde angelegt. Bitte bestätigen Sie Ihre Emailadresse, indem Sie auf folgenden Link klicken:
+
+http://<<OPACBaseURL>>/cgi-bin/koha/opac-registration-verify.pl?token=<<borrower_modifications.verification_token>>
+
+Wenn Sie keine Kontoanmeldung durchgeführt haben, können Sie diese Benachrichtigung ignorieren. Sie wird in Kürze ungültig.
+
+Vielen Dank,
+Ihr Bibliotheksteam'
+);
index 4121a59..9663c5c 100644 (file)
@@ -63,12 +63,15 @@ VALUES( 'ar', 'language', 'en', 'Arabic');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'ar', 'language', 'fr', 'Arabe');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ar', 'language', 'de', 'Arabisch');
+
 -- Armenian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'hy', 'language', 'Armenian','2005-10-16');
 
 INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
-VALUES( 'hy','hy');
+VALUES( 'hy','arm');
 
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES ( 'hy', 'language', 'hy', '&#1344;&#1377;&#1397;&#1381;&#1408;&#1383;&#1398;');
@@ -79,6 +82,9 @@ VALUES( 'hy', 'language', 'en', 'Armenian');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'hy', 'language', 'fr', 'Armenian');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'hy', 'language', 'de', 'Armenisch');
+
 -- Bulgarian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'bg', 'language', 'Bulgarian','2005-10-16');
@@ -95,6 +101,9 @@ VALUES( 'bg', 'language', 'en', 'Bulgarian');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'bg', 'language', 'fr', 'Bulgare');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'bg', 'language', 'de', 'Bulgarisch');
+
 -- Chinese
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'zh', 'language', 'Chinese','2005-10-16');
@@ -111,6 +120,9 @@ VALUES( 'zh', 'language', 'en', 'Chinese');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'zh', 'language', 'fr', 'Chinois');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'zh', 'language', 'de', 'Chinesisch');
+
 -- Czech
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'cs', 'language', 'Czech','2005-10-16' );
@@ -127,6 +139,9 @@ VALUES( 'cs', 'language', 'en', 'Czech');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'cs', 'language', 'fr', 'Tchèque');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'cs', 'language', 'de', 'Tschechisch');
+
 -- Danish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'da', 'language', 'Danish','2005-10-16' );
@@ -143,6 +158,9 @@ VALUES( 'da', 'language', 'en', 'Danish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'da', 'language', 'fr', 'Danois');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'da', 'language', 'de', 'Dänisch');
+
 -- Dutch, Flemish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'nl', 'language', 'Dutch','2005-10-16' );
@@ -159,12 +177,15 @@ VALUES( 'nl', 'language', 'en', 'Dutch');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'nl', 'language', 'fr', 'Néerlandais');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'nl', 'language', 'de', 'Niederländisch');
+
 -- English
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'en', 'language', 'English','2005-10-16' );
 
 INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
-VALUES( 'en','en');
+VALUES( 'en','eng');
 
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'en', 'language', 'en', 'English');
@@ -172,22 +193,31 @@ VALUES( 'en', 'language', 'en', 'English');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'en', 'language', 'fr', 'Anglais');
 
--- English
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'en', 'language', 'de', 'Englisch');
+
+-- Finnish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'fi', 'language', 'Finnish','2005-10-16' );
 
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'fi','fin');
+
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'fi', 'language', 'fi', 'suomi');
 
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'fi', 'language', 'en', 'Finnish');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'fi', 'language', 'de', 'Finnisch');
+
 -- French
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'fr', 'language', 'French','2005-10-16' );
 
 INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
-VALUES( 'fr','fr');
+VALUES( 'fr','fre');
 
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'fr', 'language', 'en', 'French');
@@ -195,6 +225,9 @@ VALUES( 'fr', 'language', 'en', 'French');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'fr', 'language', 'fr', 'Fran&ccedil;ais');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'fr', 'language', 'de', 'Französisch');
+
 -- INSERT INTO language_descriptions(subtag, type, lang, description)
 -- VALUES( 'fr-CA', 'language', 'fr-CA', 'fran&ccedil;ais');
 
@@ -202,8 +235,8 @@ VALUES( 'fr', 'language', 'fr', 'Fran&ccedil;ais');
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'lo', 'language', 'Lao','2005-10-16' );
 
--- INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
--- VALUES( 'lo','nor'); ???
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'lo','lao');
 
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'lo', 'language', 'lo', '&#3742;&#3762;&#3754;&#3762;&#3749;&#3762;&#3751;');
@@ -211,6 +244,12 @@ VALUES( 'lo', 'language', 'lo', '&#3742;&#3762;&#3754;&#3762;&#3749;&#3762;&#375
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'lo', 'language', 'en', 'Lao');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'lo', 'language', 'fr', 'Laotien');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'lo', 'language', 'de', 'Laotisch');
+
 -- German
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'de', 'language', 'German','2005-10-16' );
@@ -243,6 +282,9 @@ VALUES( 'el', 'language', 'en', 'Greek, Modern [1453- ]');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'el', 'language', 'fr', 'Grec Moderne (Après 1453)');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'el', 'language', 'de', 'Griechisch (Nach 1453)');
+
 -- Hebrew
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'he', 'language', 'Hebrew','2005-10-16');
@@ -259,6 +301,9 @@ VALUES( 'he', 'language', 'en', 'Hebrew');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'he', 'language', 'fr', 'Hébreu');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'he', 'language', 'de', 'Hebräisch');
+
 -- Hindi
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'hi', 'language', 'Hindi','2005-10-16');
@@ -275,6 +320,9 @@ VALUES( 'hi', 'language', 'en', 'Hindi');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'hi', 'language', 'fr', 'Hindi');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'hi', 'language', 'de', 'Hindi');
+
 -- Hungarian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'hu', 'language', 'Hungarian','2005-10-16' );
@@ -291,6 +339,9 @@ VALUES( 'hu', 'language', 'en', 'Hungarian');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'hu', 'language', 'fr', 'Hongrois');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'hu', 'language', 'de', 'Ungarisch');
+
 -- Indonesian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'id', 'language', 'Indonesian','2005-10-16' );
@@ -307,12 +358,15 @@ VALUES( 'id', 'language', 'en', 'Indonesian');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'id', 'language', 'fr', 'Indonésien');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'id', 'language', 'de', 'Indonesisch');
+
 -- Italian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'it', 'language', 'Italian','2005-10-16' );
 
 INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
-VALUES( 'it','ind');
+VALUES( 'it','ita');
 
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'it', 'language', 'it', 'Italiano');
@@ -323,6 +377,9 @@ VALUES( 'it', 'language', 'en', 'Italian');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'it', 'language', 'fr', 'Italien');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'it', 'language', 'de', 'Italienisch');
+
 -- Japanese
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'ja', 'language', 'Japanese','2005-10-16');
@@ -339,6 +396,9 @@ VALUES( 'ja', 'language', 'en', 'Japanese');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'ja', 'language', 'fr', 'Japonais');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ja', 'language', 'de', 'Japanisch');
+
 -- Korean
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'ko', 'language', 'Korean','2005-10-16');
@@ -355,6 +415,9 @@ VALUES( 'ko', 'language', 'en', 'Korean');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'ko', 'language', 'fr', 'Coréen');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ko', 'language', 'de', 'Koreanisch');
+
 -- Latin
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'la', 'language', 'Latin','2005-10-16' );
@@ -371,7 +434,10 @@ VALUES( 'la', 'language', 'en', 'Latin');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'la', 'language', 'fr', 'Latin');
 
--- Galacian
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'la', 'language', 'de', 'Latein');
+
+-- Galician
 
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'gl', 'language', 'Galician','2005-10-16' );
@@ -385,6 +451,9 @@ VALUES( 'gl', 'language', 'gl', 'Galego');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'gl', 'language', 'en', 'Galician');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'gl', 'language', 'fr', 'Galicien');
+
 -- Norwegian (bokmål)
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'nb', 'language', 'Norwegian bokm&#229;l','2005-10-16' );
@@ -404,6 +473,9 @@ VALUES( 'nb', 'language', 'en', 'Norwegian bokm&#229;l');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'nb', 'language', 'fr', 'Norvégien bokm&#229;l');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'nb', 'language', 'de', 'Norwegisch bokm&#229;l');
+
 -- Norwegian (nynorsk)
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'nn', 'language', 'Norwegian nynorsk','2011-02-14' );
@@ -423,6 +495,9 @@ VALUES( 'nn', 'language', 'en', 'Norwegian nynorsk');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'nn', 'language', 'fr', 'Norvégien nynorsk');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'nn', 'language', 'de', 'Norwegisch nynorsk');
+
 -- Persian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'fa', 'language', 'Persian','2005-10-16');
@@ -439,6 +514,9 @@ VALUES( 'fa', 'language', 'en', 'Persian');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'fa', 'language', 'fr', 'Persan');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'fa', 'language', 'de', 'Persisch');
+
 -- Polish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'pl', 'language', 'Polish','2005-10-16' );
@@ -455,6 +533,9 @@ VALUES( 'pl', 'language', 'en', 'Polish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'pl', 'language', 'fr', 'Polonais');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'pl', 'language', 'de', 'Polnisch');
+
 -- Portuguese
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'pt', 'language', 'Portuguese','2005-10-16' );
@@ -471,6 +552,9 @@ VALUES( 'pt', 'language', 'en', 'Portuguese');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'pt', 'language', 'fr', 'Portugais');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'pt', 'language', 'de', 'Portugiesisch');
+
 -- Romanian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'ro', 'language', 'Romanian','2005-10-16' );
@@ -487,6 +571,9 @@ VALUES( 'ro', 'language', 'en', 'Romanian');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'ro', 'language', 'fr', 'Roumain');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ro', 'language', 'de', 'Rumänisch');
+
 -- Russian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'ru', 'language', 'Russian','2005-10-16');
@@ -503,16 +590,28 @@ VALUES( 'ru', 'language', 'en', 'Russian');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'ru', 'language', 'fr', 'Russe');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ru', 'language', 'de', 'Russisch');
+
 -- Serbian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'sr', 'language', 'Serbian','2005-10-16' );
 
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'sr','srp');
+
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'sr', 'language', 'sr', '&#1089;&#1088;&#1087;&#1089;&#1082;&#1080;');
 
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'sr', 'language', 'en', 'Serbian');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'sr', 'language', 'fr', 'Serbe');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'sr', 'language', 'de', 'Serbisch');
+
 -- Spanish, Castilian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'es', 'language', 'Spanish','2005-10-16' );
@@ -529,6 +628,31 @@ VALUES( 'es', 'language', 'en', 'Spanish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'es', 'language', 'fr', 'Espagnol');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'es', 'language', 'de', 'Spanisch');
+
+-- Spanish, Catalan
+INSERT INTO language_subtag_registry( subtag, type, description, added)
+VALUES ( 'ca', 'language', 'Catalan','2013-01-12' );
+
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'ca','cat');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'es', 'Catalán');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'en', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'fr', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'ca', 'Català');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'de', 'Katalanisch');
+
 -- Swedish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'sv', 'language', 'Swedish','2005-10-16' );
@@ -545,16 +669,28 @@ VALUES( 'sv', 'language', 'en', 'Swedish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'sv', 'language', 'fr', 'Suédois');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'sv', 'language', 'de', 'Schwedisch');
+
 -- Tetum
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'tet', 'language', 'Tetum','2005-10-16' );
 
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'tet','tet');
+
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'tet', 'language', 'tet', 'tetun');
 
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'tet', 'language', 'en', 'Tetum');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'tet', 'language', 'fr', 'Tétoum');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'tet', 'language', 'de', 'Tetum');
+
 -- Thai
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'th', 'language', 'Thai','2005-10-16');
@@ -571,6 +707,9 @@ VALUES( 'th', 'language', 'en', 'Thai');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'th', 'language', 'fr', 'Thaï');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'th', 'language', 'de', 'Thailändisch');
+
 -- Turkish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'tr', 'language', 'Turkish','2005-10-16' );
@@ -587,6 +726,8 @@ VALUES( 'tr', 'language', 'en', 'Turkish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'tr', 'language', 'fr', 'Turc');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'tr', 'language', 'de', 'Türkisch');
 
 -- Ukranian
 INSERT INTO language_subtag_registry( subtag, type, description, added)
@@ -604,16 +745,28 @@ VALUES( 'uk', 'language', 'en', 'Ukranian');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'uk', 'language', 'fr', 'Ukrainien');
 
--- English
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'uk', 'language', 'de', 'Ukrainisch');
+
+-- Urdu
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'ur', 'language', 'Urdu','2005-10-16' );
 
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'ur','urd');
+
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'ur', 'language', 'en', 'Urdu');
 
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'ur', 'language', 'ur', '&#1575;&#1585;&#1583;&#1608;');
 
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ur', 'language', 'fr', 'Ourdou');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ur', 'language', 'de', 'Urdu');
+
 -- SCRIPTS
 -- Arabic
 INSERT INTO language_subtag_registry( subtag, type, description, added)
index 5d9b04b..2d09971 100644 (file)
@@ -1,5 +1,5 @@
 INSERT INTO `letter` (module, code, name, title, content) 
-VALUES ('circulation','ODUE','Overdue Notice','Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <fine>GBP</fine></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
+VALUES ('circulation','ODUE','Overdue Notice','Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <<items.fine>></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
 ('claimacquisition','ACQCLAIM','Acquisition Claim','Item Not Received','<<aqbooksellers.name>>\r\n<<aqbooksellers.address1>>\r\n<<aqbooksellers.address2>>\r\n<<aqbooksellers.address3>>\r\n<<aqbooksellers.address4>>\r\n<<aqbooksellers.phone>>\r\n\r\n<order>Ordernumber <<aqorders.ordernumber>> (<<biblio.title>>) (<<aqorders.quantity>> ordered) ($<<aqorders.listprice>> each) has not been received.</order>'),
 ('serial','RLIST','Routing List','Serial is now available','<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nThe following issue is now available:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)\r\n\r\nPlease pick it up at your convenience.'),
 ('members','ACCTDETAILS','Account Details Template - DEFAULT','Your new Koha account details.','Hello <<borrowers.title>> <<borrowers.firstname>> <<borrowers.surname>>.\r\n\r\nYour new Koha account details are:\r\n\r\nUser:  <<borrowers.userid>>\r\nPassword: <<borrowers.password>>\r\n\r\nIf you have any problems or questions regarding your account, please contact your Koha Administrator.\r\n\r\nThank you,\r\nKoha Administrator\r\nkohaadmin@yoursite.org'), 
index dac8b29..9663c5c 100755 (executable)
@@ -631,6 +631,28 @@ VALUES( 'es', 'language', 'fr', 'Espagnol');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'es', 'language', 'de', 'Spanisch');
 
+-- Spanish, Catalan
+INSERT INTO language_subtag_registry( subtag, type, description, added)
+VALUES ( 'ca', 'language', 'Catalan','2013-01-12' );
+
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'ca','cat');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'es', 'Catalán');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'en', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'fr', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'ca', 'Català');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'de', 'Katalanisch');
+
 -- Swedish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'sv', 'language', 'Swedish','2005-10-16' );
index 26a7c81..346133f 100644 (file)
@@ -1,5 +1,5 @@
 INSERT INTO `letter` (module, code, name, title, content) 
-VALUES ('circulation','ODUE','Overdue Notice','Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <fine>GBP</fine></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
+VALUES ('circulation','ODUE','Overdue Notice','Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <<items.fine>></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
 ('claimacquisition','ACQCLAIM','Acquisition Claim','Item Not Received','<<aqbooksellers.name>>\r\n<<aqbooksellers.address1>>\r\n<<aqbooksellers.address2>>\r\n<<aqbooksellers.address3>>\r\n<<aqbooksellers.address4>>\r\n<<aqbooksellers.phone>>\r\n\r\n<order>Ordernumber <<aqorders.ordernumber>> (<<aqorders.title>>) (<<aqorders.quantity>> ordered) ($<<aqorders.listprice>> each) has not been received.</order>'),
 ('serial','RLIST','Routing List','Serial is now available','<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nThe following issue is now available:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)\r\n\r\nPlease pick it up at your convenience.'),
 ('members','ACCTDETAILS','Account Details Template - DEFAULT','Your new Koha account details.','Hello <<borrowers.title>> <<borrowers.firstname>> <<borrowers.surname>>.\r\n\r\nYour new Koha account details are:\r\n\r\nUser:  <<borrowers.userid>>\r\nPassword: <<borrowers.password>>\r\n\r\nIf you have any problems or questions regarding your account, please contact your Koha Administrator.\r\n\r\nThank you,\r\nKoha Administrator\r\nkohaadmin@yoursite.org'), 
index 90a3bed..49ad7ab 100644 (file)
@@ -535,6 +535,28 @@ VALUES( 'es', 'language', 'en', 'Spanish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'es', 'language', 'fr', 'Espagnol');
 
+-- Spanish, Catalan
+INSERT INTO language_subtag_registry( subtag, type, description, added)
+VALUES ( 'ca', 'language', 'Catalan','2013-01-12' );
+
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'ca','cat');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'es', 'Catalán');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'en', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'fr', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'ca', 'Català');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'de', 'Katalanisch');
+
 -- Swedish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'sv', 'language', 'Swedish','2005-10-16' );
index 52bc424..cf0d72f 100644 (file)
@@ -22,6 +22,9 @@
 --               well not quite complete yet today
 --           but close enough for someone to have use,
 --                      by thd for LibLime
+--
+--               MARC21 UPDATE 15 (September 2012)
+--                          2013-02-11
 -- *************************************************************
 
 
@@ -44,7 +47,7 @@
 -- Current Record ID Field/Subfields
 
 INSERT INTO `marc_tag_structure` (`tagfield`, `liblibrarian`, `libopac`, `repeatable`, `mandatory`, `authorised_value`, `frameworkcode`) VALUES
-               ('999', 'SYSTEM CONTROL NUMBERS (KOHA)', 'SYSTEM CONTROL NUMBERS (KOHA)', 1, 0, '', '');
+               ('999', 'NÚMEROS DE CONTROL DEL SISTEMA (KOHA)', 'NÚMEROS DE CONTROL DEL SISTEMA (KOHA)', 1, 0, '', '');
 
 INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`, `libopac`, `repeatable`, `mandatory`, `kohafield`, `tab`, `authorised_value`, `authtypecode`, `value_builder`, `isurl`, `hidden`, `frameworkcode`, `seealso`, `link`, `defaultvalue`) VALUES
                ('999', 'a', 'Item type [OBSOLETE]', 'Item type [OBSOLETE]', 0, 0, NULL, -1, NULL, NULL, '', NULL, -5, '', '', '', NULL),
@@ -68,21 +71,21 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
 
 
 INSERT INTO `marc_tag_structure` (`tagfield`, `liblibrarian`, `libopac`, `repeatable`, `mandatory`, `authorised_value`, `frameworkcode`) VALUES
-               ('942', 'ADDED ENTRY ELEMENTS (KOHA)', 'ADDED ENTRY ELEMENTS (KOHA)', 0, 0, '', '');
+               ('942', 'ENTRADA PARA ELEMENTOS AGREGADOS (KOHA)', 'ENTRADA PARA ELEMENTOS AGREGADOS (KOHA)', 0, 0, '', '');
 
 INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`, `libopac`, `repeatable`, `mandatory`, `kohafield`, `tab`, `authorised_value`, `authtypecode`, `value_builder`, `isurl`, `hidden`, `frameworkcode`, `seealso`, `link`, `defaultvalue`) VALUES
-               ('942', '0', 'Koha issues (borrowed), all copies', 'Koha issues (borrowed), all copies', 0, 0, 'biblioitems.totalissues', 9, '', '', '', NULL, -5, '', '', '', NULL),
-               ('942', '2', 'Source of classification or shelving scheme', 'Source of classification or shelving scheme', 0, 0, 'biblioitems.cn_source', 9, 'cn_source', '', '', NULL, 0, '', '', '', NULL),
-               ('942', '6', 'Koha normalized classification for sorting', 'Koha normalized classification for sorting', 0, 0, 'biblioitems.cn_sort', -1, '', '', '', 0, 7, '', '', '', NULL),
+               ('942', '0', 'Koha préstamos (prestados)', 'Koha préstamos (prestados)', 0, 0, 'biblioitems.totalissues', 9, '', '', '', NULL, -5, '', '', '', NULL),
+               ('942', '2', 'Fuente de clasificación o esquema de ordenación en estanterías', 'Fuente de clasificación o esquema de ordenación en estanterías', 0, 0, 'biblioitems.cn_source', 9, 'cn_source', '', '', NULL, 0, '', '', '', NULL),
+               ('942', '6', 'Clasificación normalizada Koha para ordenar', 'Clasificación normalizada Koha para ordenar', 0, 0, 'biblioitems.cn_sort', -1, '', '', '', 0, 7, '', '', '', NULL),
                ('942', 'a', 'Institution code [OBSOLETE]', 'Institution code [OBSOLETE]', 0, 0, '', 9, '', '', '', NULL, -5, '', '', '', NULL),
-               ('942', 'c', 'Koha [default] item type', 'Koha item type', 0, 1, 'biblioitems.itemtype', 9, 'itemtypes', '', '', NULL, 0, '', '', '', NULL),
-               ('942', 'e', 'Edition', 'Edition', 0, 0, 'biblioitems.cn_edition', 9, 'CN_EDITION', '', '', NULL, 0, '', '', '', NULL),
-               ('942', 'h', 'Classification part', 'Classification part', 0, 0, 'biblioitems.cn_class', 9, '', '', '', NULL, 0, '', '', '', NULL),
-               ('942', 'i', 'Item part', 'Item part', 1, 0, 'biblioitems.cn_item', 9, '', '', '', NULL, 0, '', '', '', NULL),
-               ('942', 'k', 'Call number prefix', 'Call number prefix', 0, 0, 'biblioitems.cn_prefix', 9, '', '', '', NULL, 0, '', '', '', NULL),
-               ('942', 'm', 'Call number suffix', 'Call number suffix', 0, 0, 'biblioitems.cn_suffix', 9, '', '', '', 0, 0, '', '', '', NULL),
-               ('942', 'n', 'Suppress in OPAC', 'Suppress in OPAC', 0, 0, NULL, 9, '', '', '', 0, 0, '', '', '', NULL),
-               ('942', 's', 'Serial record flag', 'Serial record', 0, 0, 'biblio.serial', 9, '', '', '', NULL, -5, '', '', '', NULL);
+               ('942', 'c', 'Koha [por defecto] tipo de  item', 'Koha [por defecto] tipo de  item', 0, 1, 'biblioitems.itemtype', 9, 'itemtypes', '', '', NULL, 0, '', '', '', NULL),
+               ('942', 'e', 'Edición', 'Edición', 0, 0, 'biblioitems.cn_edition', 9, 'CN_EDITION', '', '', NULL, 0, '', '', '', NULL),
+               ('942', 'h', 'Parte de Clasificación', 'Parte de Clasificación', 0, 0, 'biblioitems.cn_class', 9, '', '', '', NULL, 0, '', '', '', NULL),
+               ('942', 'i', 'Parte del item', 'Parte del item', 1, 0, 'biblioitems.cn_item', 9, '', '', '', NULL, 0, '', '', '', NULL),
+               ('942', 'k', 'Prefijo de signatura', 'Prefijo de signatura', 0, 0, 'biblioitems.cn_prefix', 9, '', '', '', NULL, 0, '', '', '', NULL),
+               ('942', 'm', 'Sufijo de signatura', 'Sufijo de signatura', 0, 0, 'biblioitems.cn_suffix', 9, '', '', '', 0, 0, '', '', '', NULL),
+               ('942', 'n', 'Suprimido en OPAC', 'Suprimido en OPAC', 0, 0, NULL, 9, '', '', '', 0, 0, '', '', '', NULL),
+               ('942', 's', 'Marca de registro de periódicas', 'Marca de registro de periódicas', 0, 0, 'biblio.serial', 9, '', '', '', NULL, -5, '', '', '', NULL);
 
 
 -- ******************************************************
@@ -100,44 +103,44 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
 
 
 INSERT INTO `marc_tag_structure` (`tagfield`, `liblibrarian`, `libopac`, `repeatable`, `mandatory`, `authorised_value`, `frameworkcode`) VALUES
-               ('952', 'LOCATION AND ITEM INFORMATION (KOHA)', 'LOCATION AND ITEM INFORMATION (KOHA)', 1, 0, '', '');
+               ('952', 'INFORMACIÓN DE EJEMPLAR Y UBICACIÓN (KOHA)', 'INFORMACIÓN DE EJEMPLAR Y UBICACIÓN (KOHA)', 1, 0, '', '');
 
 INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`, `libopac`, `repeatable`, `mandatory`, `kohafield`, `tab`, `authorised_value`, `authtypecode`, `value_builder`, `isurl`, `hidden`, `frameworkcode`, `seealso`, `link`, `defaultvalue`) VALUES
-               ('952', '0', 'Withdrawn status', 'Withdrawn status', 0, 0, 'items.wthdrawn', 10, 'WITHDRAWN', '', '', 0, 0, '', '', '', NULL),
-               ('952', '1', 'Lost status', 'Lost status', 0, 0, 'items.itemlost', 10, 'LOST', '', '', 0, 0, '', '', '', NULL),
-               ('952', '2', 'Source of classification or shelving scheme', 'Source of classification or shelving scheme', 0, 0, 'items.cn_source', 10, 'cn_source', '', '', NULL, 0, '', '', '', NULL),
-               ('952', '3', 'Materials specified (bound volume or other part)', 'Materials specified (bound volume or other part)', 0, 0, 'items.materials', 10, '', '', '', NULL, -1, '', '', '', NULL),
-               ('952', '4', 'Damaged status', 'Damaged status', 0, 0, 'items.damaged', 10, 'DAMAGED', '', '', NULL, 0, '', '', '', NULL),
-               ('952', '5', 'Use restrictions', 'Use restrictions', 0, 0, 'items.restricted', 10, 'RESTRICTED', '', '', 0, 0, '', '', '', NULL),
-               ('952', '6', 'Koha normalized classification for sorting', 'Koha normalized classification for sorting', 0, 0, 'items.cn_sort', -1, '', '', '', 0, 7, '', '', '', NULL),
-               ('952', '7', 'Not for loan', 'Not for loan', 0, 0, 'items.notforloan', 10, 'NOT_LOAN', '', '', 0, 0, '', '', '', NULL),
-               ('952', '8', 'Collection code', 'Collection code', 0, 0, 'items.ccode', 10, 'CCODE', '', '', 0, 0, '', '', '', NULL),
-               ('952', '9', 'Koha itemnumber (autogenerated)', 'Koha itemnumber', 0, 0, 'items.itemnumber', -1, '', '', '', 0, 7, '', '', '', NULL),
-               ('952', 'a', 'Permanent location', 'Permanent Location', 0, 0, 'items.homebranch', 10, 'branches', '', '', 0, 0, '', '', '', NULL),
-               ('952', 'b', 'Current location', 'Current Location', 0, 0, 'items.holdingbranch', 10, 'branches', '', '', 0, 0, '', '', '', NULL),
-               ('952', 'c', 'Shelving location', 'Shelving location', 0, 0, 'items.location', 10, 'LOC', '', '', 0, 0, '', '', '', NULL),
-               ('952', 'd', 'Date acquired', 'Date acquired', 0, 0, 'items.dateaccessioned', 10, '', '', 'dateaccessioned.pl', 0, 0, '', '', '', NULL),
-               ('952', 'e', 'Source of acquisition', 'Source of acquisition', 0, 0, 'items.booksellerid', 10, '', '', '', 0, 0, '', '', '', NULL),
-               ('952', 'f', 'Coded location qualifier', 'Coded location qualifier', 0, 0, 'items.coded_location_qualifier', 10, '', '', '', NULL, 0, '', '', '', NULL),
-               ('952', 'g', 'Cost, normal purchase price', 'Cost, normal purchase price', 0, 0, 'items.price', 10, '', '', '', 0, 0, '', '', '', NULL),
-               ('952', 'h', 'Serial Enumeration / chronology','Serial Enumeration / chronology', 0, 0, 'items.enumchron', 10, '', '', '', 0, 0, '', '', '', NULL),
-        ('952', 'i', 'Inventory number','Inventory number', 0, 0, 'items.stocknumber', 10, '', '', '', 0, 0, '', '', '', NULL),
-               ('952', 'j', 'Shelving control number', 'Shelving control number', 0, 0, 'items.stack', 10, 'STACK', '', '', NULL, -1, '', '', '', NULL),
-               ('952', 'l', 'Total Checkouts', 'Total Checkouts', 0, 0, 'items.issues', 10, '', '', '', NULL, -5, '', '', '', NULL),
-               ('952', 'm', 'Total Renewals', 'Total Renewals', 0, 0, 'items.renewals', 10, '', '', '', NULL, -5, '', '', '', NULL),
-               ('952', 'n', 'Total Holds', 'Total Holds', 0, 0, 'items.reserves', 10, '', '', '', NULL, -5, '', '', '', NULL),
-               ('952', 'o', 'Full call number', 'Full call number', 0, 0, 'items.itemcallnumber', 10, '', '', NULL, 0, 0, '', '', '', NULL),
-               ('952', 'p', 'Barcode', 'Barcode', 0, 0, 'items.barcode', 10, '', '', 'barcode.pl', 0, 0, '', '', '', NULL),
-               ('952', 'q', 'Checked out', 'Checked out', 0, 0, 'items.onloan', 10, '', '', '', NULL, -5, '', '', '', NULL),
-               ('952', 'r', 'Date last seen', 'Date last seen', 0, 0, 'items.datelastseen', 10, '', '', '', NULL, -5, '', '', '', NULL),
-               ('952', 's', 'Date last checked out', 'Date checked out', 0, 0, 'items.datelastborrowed', 10, '', '', '', NULL, -5, '', '', '', NULL),
-               ('952', 't', 'Copy number', 'Copy number', 0, 0, 'items.copynumber', 10, '', '', '', NULL, 0, '', '', '', NULL),
-               ('952', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 0, 0, 'items.uri', 10, '', '', '', 1, 0, '', '', '', NULL),
-               ('952', 'v', 'Cost, replacement price', 'Cost, replacement price', 0, 0, 'items.replacementprice', 10, '', '', '', 0, 0, '', '', '', NULL),
-               ('952', 'w', 'Price effective from', 'Price effective from', 0, 0, 'items.replacementpricedate', 10, '', '', '', 0, 0, '', '', '', NULL),
-               ('952', 'x', 'Non-public note', 'Non-public note', 0, 0, '', 10, '', '', '', NULL, 1, '', '', '', NULL),
-               ('952', 'y', 'Koha item type', 'Koha item type', 0, 0, 'items.itype', 10, 'itemtypes', '', '', NULL, 0, '', '', '', NULL),
-               ('952', 'z', 'Public note', 'Public note', 0, 0, 'items.itemnotes', 10, '', '', '', NULL, 0, '', '', '', NULL);
+               ('952', '0', 'Suprimido', 'Suprimido', 0, 0, 'items.wthdrawn', 10, 'WITHDRAWN', '', '', 0, 0, '', '', '', NULL),
+               ('952', '1', 'Estado de pérdida', 'Estado de pérdida', 0, 0, 'items.itemlost', 10, 'LOST', '', '', 0, -5, '', '', '', NULL),
+               ('952', '2', 'Fuente de clasificación o esquema de ordenación en estanterías', 'Fuente de clasificación o esquema de ordenación en estanterías', 0, 0, 'items.cn_source', 10, 'cn_source', '', '', NULL, 0, '', '', '', NULL),
+               ('952', '3', 'Materiales especializados (volumen obligatorio u otra parte)', 'Materiales especializados (volumen obligatorio u otra parte)', 0, 0, 'items.materials', 10, '', '', '', NULL, -1, '', '', '', NULL),
+               ('952', '4', 'Estropeado', 'Estropeado', 0, 0, 'items.damaged', 10, 'DAMAGED', '', '', NULL, 0, '', '', '', NULL),
+               ('952', '5', 'Restricciones de uso', 'Restricciones de uso', 0, 0, 'items.restricted', 10, 'RESTRICTED', '', '', 0, 0, '', '', '', NULL),
+               ('952', '6', 'Clasificación normalizada Koha para ordenar', 'Clasificación normalizada Koha para ordenar', 0, 0, 'items.cn_sort', -1, '', '', '', 0, 7, '', '', '', NULL),
+               ('952', '7', 'No para préstamo', 'No para préstamo', 0, 0, 'items.notforloan', 10, 'NOT_LOAN', '', '', 0, 0, '', '', '', NULL),
+               ('952', '8', 'Código de colección', 'Código de colección', 0, 0, 'items.ccode', 10, 'CCODE', '', '', 0, 0, '', '', '', NULL),
+               ('952', '9', 'Itemnumber de  Koha (autogenerado)', 'Itemnumber de  Koha (autogenerado)', 0, 0, 'items.itemnumber', -1, '', '', '', 0, 7, '', '', '', NULL),
+               ('952', 'a', 'Localización permanente', 'Localización permanente', 0, 0, 'items.homebranch', 10, 'branches', '', '', 0, 0, '', '', '', NULL),
+               ('952', 'b', 'Localización actual', 'Localización actual', 0, 0, 'items.holdingbranch', 10, 'branches', '', '', 0, 0, '', '', '', NULL),
+               ('952', 'c', 'Localización en estanterías', 'Localización en estanterías', 0, 0, 'items.location', 10, 'LOC', '', '', 0, 0, '', '', '', NULL),
+               ('952', 'd', 'Fecha de adquisición', 'Fecha de adquisición', 0, 0, 'items.dateaccessioned', 10, '', '', 'dateaccessioned.pl', 0, 0, '', '', '', NULL),
+               ('952', 'e', 'Fuente de adquisición', 'Fuente de adquisición', 0, 0, 'items.booksellerid', 10, '', '', '', 0, 0, '', '', '', NULL),
+               ('952', 'f', 'Calificador de ubicación codificada', 'Calificador de ubicación codificada', 0, 0, 'items.coded_location_qualifier', 10, '', '', '', NULL, 0, '', '', '', NULL),
+               ('952', 'g', 'Coste', 'Coste', 0, 0, 'items.price', 10, '', '', '', 0, 0, '', '', '', NULL),
+               ('952', 'h', 'Enumeración de seriadas / cronología', 'Enumeración de seriadas / cronología', 0, 0, 'items.enumchron', 10, '', '', '', 0, 0, '', '', '', NULL),
+               ('952', 'i', 'Número de inventario', 'Número de inventario', 0, 0, 'items.stocknumber', 10, '', '', '', 0, 0, '', '', '', NULL),
+               ('952', 'j', 'Número de control de estantería', 'Número de control de estantería', 0, 0, 'items.stack', 10, 'STACK', '', '', NULL, -1, '', '', '', NULL),
+               ('952', 'l', 'Préstamos totales', 'Préstamos totales', 0, 0, 'items.issues', 10, '', '', '', NULL, -5, '', '', '', NULL),
+               ('952', 'm', 'Renovaciones totales', 'Renovaciones totales', 0, 0, 'items.renewals', 10, '', '', '', NULL, -5, '', '', '', NULL),
+               ('952', 'n', 'Reserva totales', 'Reserva totales', 0, 0, 'items.reserves', 10, '', '', '', NULL, -5, '', '', '', NULL),
+               ('952', 'o', 'Signatura completa', 'Signatura completa', 0, 0, 'items.itemcallnumber', 10, '', '', NULL, 0, 0, '', '', '', NULL),
+               ('952', 'p', 'Código de barras', 'Código de barras', 0, 0, 'items.barcode', 10, '', '', 'barcode.pl', 0, 0, '', '', '', NULL),
+               ('952', 'q', 'Prestado', 'Prestado', 0, 0, 'items.onloan', 10, '', '', '', NULL, -5, '', '', '', NULL),
+               ('952', 'r', 'Fecha última consulta', 'Fecha última consulta', 0, 0, 'items.datelastseen', 10, '', '', '', NULL, -5, '', '', '', NULL),
+               ('952', 's', 'Fecha último préstamo', 'Fecha último préstamo', 0, 0, 'items.datelastborrowed', 10, '', '', '', NULL, -5, '', '', '', NULL),
+               ('952', 't', 'Número de ejemplar', 'Número de ejemplar', 0, 0, 'items.copynumber', 10, '', '', '', NULL, 0, '', '', '', NULL),
+               ('952', 'u', 'Identificador uniforme del recurso', 'Identificador uniforme del recurso', 0, 0, 'items.uri', 10, '', '', '', 1, 0, '', '', '', NULL),
+               ('952', 'v', 'Coste', 'Coste', 0, 0, 'items.replacementprice', 10, '', '', '', 0, 0, '', '', '', NULL),
+               ('952', 'w', 'Fecha del precio de reemplazo', 'Fecha del precio de reemplazo', 0, 0, 'items.replacementpricedate', 10, '', '', '', 0, 0, '', '', '', NULL),
+               ('952', 'x', 'Nota no pública', 'Nota no pública', 0, 0, '', 10, '', '', '', NULL, 1, '', '', '', NULL),
+               ('952', 'y', 'Tipo de item de Koha', 'Tipo de item de Koha', 0, 0, 'items.itype', 10, 'itemtypes', '', '', NULL, 0, '', '', '', NULL),
+               ('952', 'z', 'Note pública', 'Note pública', 0, 0, 'items.itemnotes', 10, '', '', '', NULL, 0, '', '', '', NULL);
 
 
 
@@ -184,536 +187,575 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
 
 
 INSERT INTO `marc_tag_structure` (`tagfield`, `liblibrarian`, `libopac`, `repeatable`, `mandatory`, `authorised_value`, `frameworkcode`) VALUES
-               ('000', 'LEADER', 'LEADER', 0, 1, '', ''),
-               ('001', 'CONTROL NUMBER', 'CONTROL NUMBER', 0, 0, '', ''),
-               ('003', 'CONTROL NUMBER IDENTIFIER', 'CONTROL NUMBER IDENTIFIER', 0, 1, '', ''),
-               ('005', 'DATE AND TIME OF LATEST TRANSACTION', 'DATE AND TIME OF LATEST TRANSACTION', 0, 1, '', ''),
-               ('006', 'FIXED-LENGTH DATA ELEMENTS--ADDITIONAL MATERIAL CHARACTERISTICS--GENERAL INFORMATION', 'FIXED-LENGTH DATA ELEMENTS--ADDITIONAL MATERIAL CHARACTERISTICS--GENERAL INFORMATION', 1, 0, '', ''),
-               ('007', 'PHYSICAL DESCRIPTION FIXED FIELD--GENERAL INFORMATION', 'PHYSICAL DESCRIPTION FIXED FIELD--GENERAL INFORMATION', 1, 0, '', ''),
-               ('008', 'FIXED-LENGTH DATA ELEMENTS--GENERAL INFORMATION', 'FIXED-LENGTH DATA ELEMENTS--GENERAL INFORMATION', 0, 1, '', ''),
+               ('000', 'CABECERA', 'CABECERA', 0, 1, '', ''),
+               ('001', 'NÚMERO DE CONTROL', 'NÚMERO DE CONTROL', 0, 0, '', ''),
+               ('003', 'IDENTIFICADOR DEL NÚMERO DE CONTROL', 'IDENTIFICADOR DEL NÚMERO DE CONTROL', 0, 1, '', ''),
+               ('005', 'FECHA Y HORA DE LA ÚLTIMA TRANSACCIÓN', 'FECHA Y HORA DE LA ÚLTIMA TRANSACCIÓN', 0, 1, '', ''),
+               ('006', 'CÓDIGOS DE INFORMACIÓN DE LONGITUD FIJA - CARACTERÍSTICAS DEL MATERIAL ADICIONAL', 'CÓDIGOS DE INFORMACIÓN DE LONGITUD FIJA - CARACTERÍSTICAS DEL MATERIAL ADICIONAL', 1, 0, '', ''),
+               ('007', 'CAMPO FIJO DE DESCRIPCIÓN FÍSICA', 'CAMPO FIJO DE DESCRIPCIÓN FÍSICA', 1, 0, '', ''),
+               ('008', 'CÓDIGOS DE INFORMACIÓN DE LONGITUD FIJA', 'CÓDIGOS DE INFORMACIÓN DE LONGITUD FIJA', 0, 1, '', ''),
                ('009', 'PHYSICAL DESCRIPTION FIXED-FIELD FOR ARCHIVAL COLLECTION (VM) [OBSOLETE]', 'PHYSICAL DESCRIPTION FIXED-FIELD FOR ARCHIVAL COLLECTION (VM) [OBSOLETE]', 1, 0, '', ''),
-               ('010', 'LIBRARY OF CONGRESS CONTROL NUMBER', 'LIBRARY OF CONGRESS CONTROL NUMBER', 0, 0, '', ''),
+               ('010', 'NÚMERO DE CONTROL DE LA BIBLIOTECA DEL CONGRESO', 'NÚMERO DE CONTROL DE LA BIBLIOTECA DEL CONGRESO', 0, 0, '', ''),
                ('011', 'LINKING LIBRARY OF CONGRESS CONTROL NUMBER [OBSOLETE]', 'LINKING LIBRARY OF CONGRESS CONTROL NUMBER [OBSOLETE]', 0, 0, '', ''),
-               ('013', 'PATENT CONTROL INFORMATION', 'PATENT CONTROL INFORMATION', 1, 0, '', ''),
-               ('015', 'NATIONAL BIBLIOGRAPHY NUMBER', 'NATIONAL BIBLIOGRAPHY NUMBER', 1, 0, '', ''),
-               ('016', 'NATIONAL BIBLIOGRAPHIC AGENCY CONTROL NUMBER', 'NATIONAL BIBLIOGRAPHIC AGENCY CONTROL NUMBER', 1, 0, '', ''),
-               ('017', 'COPYRIGHT OR LEGAL DEPOSIT NUMBER', 'COPYRIGHT OR LEGAL DEPOSIT NUMBER', 1, 0, '', ''),
-               ('018', 'COPYRIGHT ARTICLE-FEE CODE', 'COPYRIGHT ARTICLE-FEE CODE', 0, 0, '', ''),
+               ('013', 'INFORMACIÓN DE CONTROL DE PATENTES', 'INFORMACIÓN DE CONTROL DE PATENTES', 1, 0, '', ''),
+               ('015', 'NÚMERO DE BIBLIOGRAFÍA NACIONAL', 'NÚMERO DE BIBLIOGRAFÍA NACIONAL', 1, 0, '', ''),
+               ('016', 'NÚMERO DE CONTROL DE UNA AGENCIA BIBLIOGRÁFICA NACIONAL', 'NÚMERO DE CONTROL DE UNA AGENCIA BIBLIOGRÁFICA NACIONAL', 1, 0, '', ''),
+               ('017', 'NÚMERO DE COPYRIGHT O DE DEPÓSITO LEGAL', 'NÚMERO DE COPYRIGHT O DE DEPÓSITO LEGAL', 1, 0, '', ''),
+               ('018', 'CÓDIGO DE COPYRIGHT SOBRE LA TARIFA DEL ARTÍCULO', 'CÓDIGO DE COPYRIGHT SOBRE LA TARIFA DEL ARTÍCULO', 0, 0, '', ''),
                ('01e', 'CODED FIELD ERROR (RLIN)', 'CODED FIELD ERROR (RLIN)', 1, 0, '', ''),
-               ('020', 'INTERNATIONAL STANDARD BOOK NUMBER', 'INTERNATIONAL STANDARD BOOK NUMBER', 1, 0, NULL, ''),
-               ('022', 'INTERNATIONAL STANDARD SERIAL NUMBER', 'INTERNATIONAL STANDARD SERIAL NUMBER', 1, 0, NULL, ''),
+               ('020', 'NÚMERO INTERNACIONAL NORMALIZADO PARA LIBROS (ISBN)', 'NÚMERO INTERNACIONAL NORMALIZADO PARA LIBROS (ISBN)', 1, 0, NULL, ''),
+               ('022', 'NÚMERO INTERNACIONAL NORMALIZADO PARA PUBLICACIONES SERIADAS (ISSN)', 'NÚMERO INTERNACIONAL NORMALIZADO PARA PUBLICACIONES SERIADAS (ISSN)', 1, 0, NULL, ''),
                ('023', 'STANDARD FILM NUMBER (VM) [DELETED]', 'STANDARD FILM NUMBER (VM) [DELETED]', 1, 0, NULL, ''),
-               ('024', 'OTHER STANDARD IDENTIFIER', 'OTHER STANDARD IDENTIFIER', 1, 0, NULL, ''),
-               ('025', 'OVERSEAS ACQUISITION NUMBER', 'OVERSEAS ACQUISITION NUMBER', 1, 0, '', ''),
-               ('026', 'FINGERPRINT IDENTIFIER', 'FINGERPRINT IDENTIFIER', 1, 0, '', ''),
-               ('027', 'STANDARD TECHNICAL REPORT NUMBER', 'STANDARD TECHNICAL REPORT NUMBER', 1, 0, '', ''),
-               ('028', 'PUBLISHER NUMBER', 'PUBLISHER NUMBER', 1, 0, NULL, ''),
-               ('029', 'OTHER SYSTEM CONTROL NUMBER (OCLC)', ' (OCLC)', 1, 0, '', ''),
-               ('030', 'CODEN DESIGNATION', 'CODEN DESIGNATION', 1, 0, '', ''),
-               ('031', 'MUSICAL INCIPITS INFORMATION', 'MUSICAL INCIPITS INFORMATION', 1, 0, '', ''),
-               ('032', 'POSTAL REGISTRATION NUMBER', 'POSTAL REGISTRATION NUMBER', 1, 0, '', ''),
-               ('033', 'DATE/TIME AND PLACE OF AN EVENT', 'DATE/TIME AND PLACE OF AN EVENT', 1, 0, '', ''),
-               ('034', 'CODED CARTOGRAPHIC MATHEMATICAL DATA', 'CODED CARTOGRAPHIC MATHEMATICAL DATA', 1, 0, '', ''),
-               ('035', 'SYSTEM CONTROL NUMBER', 'SYSTEM CONTROL NUMBER', 1, 0, NULL, ''),
-               ('036', 'ORIGINAL STUDY NUMBER FOR COMPUTER DATA FILES', 'ORIGINAL STUDY NUMBER FOR COMPUTER DATA FILES', 0, 0, '', ''),
-               ('037', 'SOURCE OF ACQUISITION', 'SOURCE OF ACQUISITION', 1, 0, NULL, ''),
-               ('038', 'RECORD CONTENT LICENSOR', 'RECORD CONTENT LICENSOR', 0, 0, '', ''),
+               ('024', 'OTROS IDENTIFICADORES NORMALIZADOS', 'OTROS IDENTIFICADORES NORMALIZADOS', 1, 0, NULL, ''),
+               ('025', 'NÚMERO DE ADQUISICIÓN EN EL EXTRANJERO', 'NÚMERO DE ADQUISICIÓN EN EL EXTRANJERO', 1, 0, '', ''),
+               ('026', 'IDENTIFICADOR TIPOGRÁFICO', 'IDENTIFICADOR TIPOGRÁFICO', 1, 0, '', ''),
+               ('027', 'NÚMERO NORMALIZADO DE INFORME TÉCNICO', 'NÚMERO NORMALIZADO DE INFORME TÉCNICO', 1, 0, '', ''),
+               ('028', 'NÚMERO DE EDITOR', 'NÚMERO DE EDITOR', 1, 0, NULL, ''),
+               ('029', 'OTHER SYSTEM CONTROL NUMBER (OCLC)', 'OTHER SYSTEM CONTROL NUMBER (OCLC)', 1, 0, '', ''),
+               ('030', 'DESIGNACIÓN CODEN', 'DESIGNACIÓN CODEN', 1, 0, '', ''),
+               ('031', 'INFORMACIÓN SOBRE EL ÍNCIPIT MUSICAL', 'INFORMACIÓN SOBRE EL ÍNCIPIT MUSICAL', 1, 0, '', ''),
+               ('032', 'NÚMERO DE REGISTRO POSTAL', 'NÚMERO DE REGISTRO POSTAL', 1, 0, '', ''),
+               ('033', 'FECHA/HORA Y LUGAR DE UN ACONTECIMIENTO', 'FECHA/HORA Y LUGAR DE UN ACONTECIMIENTO', 1, 0, '', ''),
+               ('034', 'DATOS MATEMÁTICOS CARTOGRÁFICOS CODIFICADOS', 'DATOS MATEMÁTICOS CARTOGRÁFICOS CODIFICADOS', 1, 0, '', ''),
+               ('035', 'NÚMERO DE CONTROL DEL SISTEMA', 'NÚMERO DE CONTROL DEL SISTEMA', 1, 0, NULL, ''),
+               ('036', 'NÚMERO DE ESTUDIO ORIGINAL PARA ARCHIVOS DE ORDENADOR', 'NÚMERO DE ESTUDIO ORIGINAL PARA ARCHIVOS DE ORDENADOR', 0, 0, '', ''),
+               ('037', 'FUENTE DE ADQUISICIÓN', 'FUENTE DE ADQUISICIÓN', 1, 0, NULL, ''),
+               ('038', 'LICENCIADOR DEL CONTENIDO DEL REGISTRO', 'LICENCIADOR DEL CONTENIDO DEL REGISTRO', 0, 0, '', ''),
                ('039', 'LEVEL OF BIBLIOGRAPHIC CONTROL AND CODING DETAIL [OBSOLETE]', 'LEVEL OF BIBLIOGRAPHIC CONTROL AND CODING DETAIL [OBSOLETE]', 0, 0, '', ''),
-               ('040', 'CATALOGING SOURCE', 'CATALOGING SOURCE', 0, 1, NULL, ''),
-               ('041', 'LANGUAGE CODE', 'LANGUAGE CODE', 1, 0, '', ''),
-               ('042', 'AUTHENTICATION CODE', 'AUTHENTICATION CODE', 0, 0, '', ''),
-               ('043', 'GEOGRAPHIC AREA CODE', 'GEOGRAPHIC AREA CODE', 0, 0, NULL, ''),
-               ('044', 'COUNTRY OF PUBLISHING/PRODUCING ENTITY CODE', 'COUNTRY OF PUBLISHING/PRODUCING ENTITY CODE', 0, 0, '', ''),
-               ('045', 'TIME PERIOD OF CONTENT', 'TIME PERIOD OF CONTENT', 0, 0, '', ''),
-               ('046', 'SPECIAL CODED DATES', 'SPECIAL CODED DATES', 1, 0, '', ''),
-               ('047', 'FORM OF MUSICAL COMPOSITION CODE', 'FORM OF MUSICAL COMPOSITION CODE', 1, 0, '', ''),
-               ('048', 'NUMBER OF MUSICAL INSTRUMENTS OR VOICES CODE', 'NUMBER OF MUSICAL INSTRUMENTS OR VOICES CODE', 1, 0, '', ''),
+               ('040', 'FUENTE DE LA CATALOGACIÓN', 'FUENTE DE LA CATALOGACIÓN', 0, 1, NULL, ''),
+               ('041', 'CÓDIGO DE LENGUA', 'CÓDIGO DE LENGUA', 1, 0, '', ''),
+               ('042', 'CÓDIGO DE AUTENTICACIÓN', 'CÓDIGO DE AUTENTICACIÓN', 0, 0, '', ''),
+               ('043', 'CÓDIGO DE ÁREA GEOGRÁFICA', 'CÓDIGO DE ÁREA GEOGRÁFICA', 0, 0, NULL, ''),
+               ('044', 'CÓDIGO DEL PAÍS DE LA ENTIDAD EDITORA/PRODUCTORA', 'CÓDIGO DEL PAÍS DE LA ENTIDAD EDITORA/PRODUCTORA', 0, 0, '', ''),
+               ('045', 'PERIODO DE TIEMPO DEL CONTENIDO', 'PERIODO DE TIEMPO DEL CONTENIDO', 0, 0, '', ''),
+               ('046', 'FECHAS CON CODIFICACIÓN ESPECIAL', 'FECHAS CON CODIFICACIÓN ESPECIAL', 1, 0, '', ''),
+               ('047', 'CÓDIGO DE FORMA DE LA COMPOSICIÓN MUSICAL', 'CÓDIGO DE FORMA DE LA COMPOSICIÓN MUSICAL', 1, 0, '', ''),
+               ('048', 'CÓDIGO DEL NÚMERO DE INSTRUMENTOS MUSICALES O VOCES', 'CÓDIGO DEL NÚMERO DE INSTRUMENTOS MUSICALES O VOCES', 1, 0, '', ''),
                ('049', 'LOCAL HOLDINGS (OCLC)', 'LOCAL HOLDINGS (OCLC)', 0, 0, '', ''),
-               ('050', 'LIBRARY OF CONGRESS CALL NUMBER', 'LIBRARY OF CONGRESS CALL NUMBER', 1, 0, NULL, ''),
+               ('050', 'SIGNATURA TOPOGRÁFICA DE LA BIBLIOTECA DEL CONGRESO', 'SIGNATURA TOPOGRÁFICA DE LA BIBLIOTECA DEL CONGRESO', 1, 0, NULL, ''),
                ('051', 'LIBRARY OF CONGRESS COPY, ISSUE, OFFPRINT STATEMENT', 'LIBRARY OF CONGRESS COPY, ISSUE, OFFPRINT STATEMENT', 1, 0, NULL, ''),
-               ('052', 'GEOGRAPHIC CLASSIFICATION', 'GEOGRAPHIC CLASSIFICATION', 1, 0, NULL, ''),
-               ('055', 'CLASSIFICATION NUMBERS ASSIGNED IN CANADA', 'CLASSIFICATION NUMBERS ASSIGNED IN CANADA', 1, 0, NULL, ''),
-               ('060', 'NATIONAL LIBRARY OF MEDICINE CALL NUMBER', 'NATIONAL LIBRARY OF MEDICINE CALL NUMBER', 1, 0, NULL, ''),
-               ('061', 'NATIONAL LIBRARY OF MEDICINE COPY STATEMENT', 'NATIONAL LIBRARY OF MEDICINE COPY STATEMENT', 1, 0, NULL, ''),
-               ('066', 'CHARACTER SETS PRESENT', 'CHARACTER SETS PRESENT', 0, 0, NULL, ''),
-               ('070', 'NATIONAL AGRICULTURAL LIBRARY CALL NUMBER', 'NATIONAL AGRICULTURAL LIBRARY CALL NUMBER', 1, 0, NULL, ''),
-               ('071', 'NATIONAL AGRICULTURAL LIBRARY COPY STATEMENT', 'NATIONAL AGRICULTURAL LIBRARY COPY STATEMENT', 1, 0, NULL, ''),
-               ('072', 'SUBJECT CATEGORY CODE', 'SUBJECT CATEGORY CODE', 1, 0, NULL, ''),
-               ('074', 'GPO ITEM NUMBER', 'GPO ITEM NUMBER', 1, 0, NULL, ''),
-               ('080', 'UNIVERSAL DECIMAL CLASSIFICATION NUMBER', 'UNIVERSAL DECIMAL CLASSIFICATION NUMBER', 1, 0, NULL, ''),
-               ('082', 'DEWEY DECIMAL CLASSIFICATION NUMBER', 'DEWEY DECIMAL CLASSIFICATION NUMBER', 1, 0, NULL, ''),
-               ('084', 'OTHER CLASSIFICATION NUMBER', 'OTHER CLASSIFICATION NUMBER', 1, 0, NULL, ''),
-               ('086', 'GOVERNMENT DOCUMENT CLASSIFICATION NUMBER', 'GOVERNMENT DOCUMENT CLASSIFICATION NUMBER', 1, 0, NULL, ''),
-               ('087', 'REPORT NUMBER [OBSOLETE, CAN/MARC]', 'REPORT NUMBER [OBSOLETE, CAN/MARC]', 1, 0, NULL, ''),
-               ('088', 'REPORT NUMBER', 'REPORT NUMBER', 1, 0, NULL, ''),
-               ('090', 'LOCALLY ASSIGNED LC-TYPE CALL NUMBER (OCLC); LOCAL CALL NUMBER (RLIN)', 'LOCALLY ASSIGNED LC-TYPE CALL NUMBER (OCLC); LOCAL CALL NUMBER (OCLC)', 1, 0, '', ''),
+               ('052', 'CLASIFICACIÓN GEOGRÁFICA', 'CLASIFICACIÓN GEOGRÁFICA', 1, 0, NULL, ''),
+               ('055', 'NÚMEROS DE CLASIFICACIÓN ASIGNADOS EN CANADÁ', 'NÚMEROS DE CLASIFICACIÓN ASIGNADOS EN CANADÁ', 1, 0, NULL, ''),
+               ('060', 'SIGNATURA TOPOGRÁFICA DE LA NATIONAL LIBRARY OF MEDICINE', 'SIGNATURA TOPOGRÁFICA DE LA NATIONAL LIBRARY OF MEDICINE', 1, 0, NULL, ''),
+               ('061', 'MENCIÓN DE LA NATIONAL LIBRARY OF MEDICINE SOBRE EJEMPLARES', 'MENCIÓN DE LA NATIONAL LIBRARY OF MEDICINE SOBRE EJEMPLARES', 1, 0, NULL, ''),
+               ('066', 'JUEGO DE CARACTERES UTILIZADO', 'JUEGO DE CARACTERES UTILIZADO', 0, 0, NULL, ''),
+               ('070', 'SIGNATURA TOPOGRÁFICA DE LA NATIONAL AGRICULTURAL LIBRARY', 'SIGNATURA TOPOGRÁFICA DE LA NATIONAL AGRICULTURAL LIBRARY', 1, 0, NULL, ''),
+               ('071', 'MENCIÓN DE LA NATIONAL AGRICULTURAL LIBRARY SOBRE EJEMPLARES', 'MENCIÓN DE LA NATIONAL AGRICULTURAL LIBRARY SOBRE EJEMPLARES', 1, 0, NULL, ''),
+               ('072', 'CÓDIGO DE CATEGORÍA DE MATERIA', 'CÓDIGO DE CATEGORÍA DE MATERIA', 1, 0, NULL, ''),
+               ('074', 'NÚMERO DE DOCUMENTO DE LA GPO', 'NÚMERO DE DOCUMENTO DE LA GPO', 1, 0, NULL, ''),
+               ('080', 'NÚMERO DE LA CLASIFICACIÓN DECIMAL UNIVERSAL', 'NÚMERO DE LA CLASIFICACIÓN DECIMAL UNIVERSAL', 1, 0, NULL, ''),
+               ('082', 'NÚMERO DE LA CLASIFICACIÓN DECIMAL DEWEY', 'NÚMERO DE LA CLASIFICACIÓN DECIMAL DEWEY', 1, 0, NULL, ''),
+               ('083', 'NÚMERO ADICIONAL DE LA CLASIFICACIÓN DECIMAL DEWEY', 'NÚMERO ADICIONAL DE LA CLASIFICACIÓN DECIMAL DEWEY',1,0,'',''),
+               ('084', 'OTRO NÚMERO DE CLASIFICACIÓN', 'OTRO NÚMERO DE CLASIFICACIÓN', 1, 0, NULL, ''),
+               ('085', 'COMPONENTES DE UN NÚMERO DE CLASIFICACIÓN SINTÉTICO', 'COMPONENTES DE UN NÚMERO DE CLASIFICACIÓN SINTÉTICO', 1, 0, NULL, ''),
+               ('086', 'NÚMERO DE CLASIFICACIÓN PARA DOCUMENTOS GUBERNAMENTALES', 'NÚMERO DE CLASIFICACIÓN PARA DOCUMENTOS GUBERNAMENTALES', 1, 0, NULL, ''),
+               ('087', 'REPORT NUMBER [OBSOLETE; CAN/MARC]', 'REPORT NUMBER [OBSOLETE; CAN/MARC]', 1, 0, NULL, ''),
+               ('088', 'NÚMERO DE INFORME', 'NÚMERO DE INFORME', 1, 0, NULL, ''),
+               ('090', 'LOCALLY ASSIGNED LC-TYPE CALL NUMBER (OCLC); LOCAL CALL NUMBER (RLIN)', 'LOCALLY ASSIGNED LC-TYPE CALL NUMBER (OCLC); LOCAL CALL NUMBER (RLIN)', 1, 0, '', ''),
                ('091', 'MICROFILM SHELF LOCATION (AM) [OBSOLETE]', 'MICROFILM SHELF LOCATION (AM) [OBSOLETE]', 0, 0, '', ''),
                ('092', 'LOCALLY ASSIGNED DEWEY CALL NUMBER (OCLC)', 'LOCALLY ASSIGNED DEWEY CALL NUMBER (OCLC)', 1, 0, '', ''),
                ('096', 'LOCALLY ASSIGNED NLM-TYPE CALL NUMBER (OCLC)', 'LOCALLY ASSIGNED NLM-TYPE CALL NUMBER (OCLC)', 1, 0, '', ''),
                ('098', 'OTHER CLASSIFICATION SCHEMES (OCLC)', 'OTHER CLASSIFICATION SCHEMES (OCLC)', 1, 0, '', ''),
                ('099', 'LOCAL FREE-TEXT CALL NUMBER (OCLC)', 'LOCAL FREE-TEXT CALL NUMBER (OCLC)', 1, 0, '', ''),
-               ('100', 'MAIN ENTRY--PERSONAL NAME', 'MAIN ENTRY--PERSONAL NAME', 0, 0, NULL, ''),
-               ('110', 'MAIN ENTRY--CORPORATE NAME', 'MAIN ENTRY--CORPORATE NAME', 0, 0, NULL, ''),
-               ('111', 'MAIN ENTRY--MEETING NAME', 'MAIN ENTRY--MEETING NAME', 0, 0, NULL, ''),
-               ('130', 'MAIN ENTRY--UNIFORM TITLE', 'MAIN ENTRY--UNIFORM TITLE', 0, 0, NULL, ''),
-               ('210', 'ABBREVIATED TITLE', 'ABBREVIATED TITLE', 1, 0, NULL, ''),
+               ('100', 'PUNTO DE ACCESO PRINCIPAL - NOMBRE DE PERSONA', 'PUNTO DE ACCESO PRINCIPAL - NOMBRE DE PERSONA', 0, 0, NULL, ''),
+               ('110', 'PUNTO DE ACCESO PRINCIPAL - NOMBRE DE ENTIDAD CORPORATIVA', 'PUNTO DE ACCESO PRINCIPAL - NOMBRE DE ENTIDAD CORPORATIVA', 0, 0, NULL, ''),
+               ('111', 'PUNTO DE ACCESO PRINCIPAL - NOMBRE DE CONGRESO', 'PUNTO DE ACCESO PRINCIPAL - NOMBRE DE CONGRESO', 0, 0, NULL, ''),
+               ('130', 'PUNTO DE ACCESO PRINCIPAL - TÍTULO UNIFORME', 'PUNTO DE ACCESO PRINCIPAL - TÍTULO UNIFORME', 0, 0, NULL, ''),
+               ('210', 'TÍTULO ABREVIADO', 'TÍTULO ABREVIADO', 1, 0, NULL, ''),
                ('211', 'ACRONYM OR SHORTENED TITLE [OBSOLETE]', 'ACRONYM OR SHORTENED TITLE [OBSOLETE]', 1, 0, NULL, ''),
                ('212', 'VARIANT ACCESS TITLE [OBSOLETE]', 'VARIANT ACCESS TITLE [OBSOLETE]', 1, 0, NULL, ''),
                ('214', 'AUGMENTED TITLE [OBSOLETE]', 'AUGMENTED TITLE [OBSOLETE]', 1, 0, NULL, ''),
-               ('222', 'KEY TITLE', 'KEY TITLE', 1, 0, NULL, ''),
-               ('240', 'UNIFORM TITLE', 'UNIFORM TITLE', 0, 0, 'Unititle', ''),
+               ('222', 'TÍTULO CLAVE', 'TÍTULO CLAVE', 1, 0, NULL, ''),
+               ('240', 'TÍTULO UNIFORME', 'TÍTULO UNIFORME', 0, 0, 'Unititle', ''),
                ('241', 'ROMANIZED TITLE (BK AM CF MP MU VM) [OBSOLETE]', 'ROMANIZED TITLE (BK AM CF MP MU VM) [OBSOLETE]', 0, 0, '', ''),
-               ('242', 'TRANSLATION OF TITLE BY CATALOGING AGENCY', 'TRANSLATION OF TITLE BY CATALOGING AGENCY', 1, 0, NULL, ''),
-               ('243', 'COLLECTIVE UNIFORM TITLE', 'COLLECTIVE UNIFORM TITLE', 0, 0, '', ''),
-               ('245', 'TITLE STATEMENT', 'TITLE STATEMENT', 0, 1, '', ''),
-               ('246', 'VARYING FORM OF TITLE', 'VARYING FORM OF TITLE', 1, 0, NULL, ''),
-               ('247', 'FORMER TITLE', 'FORMER TITLE', 1, 0, NULL, ''),
-               ('250', 'EDITION STATEMENT', 'EDITION STATEMENT', 0, 0, NULL, ''),
-               ('254', 'MUSICAL PRESENTATION STATEMENT', 'MUSICAL PRESENTATION STATEMENT', 0, 0, NULL, ''),
-               ('255', 'CARTOGRAPHIC MATHEMATICAL DATA', 'CARTOGRAPHIC MATHEMATICAL DATA', 1, 0, NULL, ''),
-               ('256', 'COMPUTER FILE CHARACTERISTICS', 'COMPUTER FILE CHARACTERISTICS', 0, 0, NULL, ''),
-               ('257', 'COUNTRY OF PRODUCING ENTITY FOR ARCHIVAL FILMS', 'COUNTRY OF PRODUCING ENTITY FOR ARCHIVAL FILMS', 0, 0, NULL, ''),
-               ('258', 'PHILATELIC ISSUE DATE', 'PHILATELIC ISSUE DATE', 1, 0, NULL, ''),
+               ('242', 'TÍTULO TRADUCIDO POR EL CENTRO CATALOGADOR', 'TÍTULO TRADUCIDO POR EL CENTRO CATALOGADOR', 1, 0, NULL, ''),
+               ('243', 'TÍTULO UNIFORME COLECTIVO', 'TÍTULO UNIFORME COLECTIVO', 0, 0, '', ''),
+               ('245', 'MENCIÓN DE TÍTULO', 'MENCIÓN DE TÍTULO', 0, 1, '', ''),
+               ('246', 'VARIANTES DE TÍTULO', 'VARIANTES DE TÍTULO', 1, 0, NULL, ''),
+               ('247', 'TÍTULO ANTERIOR', 'TÍTULO ANTERIOR', 1, 0, NULL, ''),
+               ('250', 'MENCIÓN DE EDICIÓN', 'MENCIÓN DE EDICIÓN', 0, 0, NULL, ''),
+               ('254', 'MENCIÓN DE PRESENTACIÓN MUSICAL', 'MENCIÓN DE PRESENTACIÓN MUSICAL', 0, 0, NULL, ''),
+               ('255', 'DATOS MATEMÁTICOS CARTOGRÁFICOS', 'DATOS MATEMÁTICOS CARTOGRÁFICOS', 1, 0, NULL, ''),
+               ('256', 'CARACTERÍSTICAS DEL ARCHIVO DE ORDENADOR', 'CARACTERÍSTICAS DEL ARCHIVO DE ORDENADOR', 0, 0, NULL, ''),
+               ('257', 'PAÍS DE LA ENTIDAD PRODUCTORA', 'PAÍS DE LA ENTIDAD PRODUCTORA', 1, 0, NULL, ''),
+               ('258', 'DATOS DE EMISIÓN FILATÉLICA', 'DATOS DE EMISIÓN FILATÉLICA', 1, 0, NULL, ''),
                ('260', 'PUBLICATION, DISTRIBUTION, ETC. (IMPRINT)', 'PUBLICATION, DISTRIBUTION, ETC. (IMPRINT)', 1, 0, NULL, ''),
                ('261', 'IMPRINT STATEMENT FOR FILMS (Pre-AACR 1 Revised) [OBSOLETE, CAN/MARC], [LOCAL, USA]', 'IMPRINT STATEMENT FOR FILMS (Pre-AACR 1 Revised) [OBSOLETE, CAN/MARC], [LOCAL, USA]', 0, 0, NULL, ''),
-               ('262', 'IMPRINT STATEMENT FOR SOUND RECORDINGS (Pre-AACR 2) [LOCAL, USA]', 'IMPRINT STATEMENT FOR SOUND RECORDINGS (Pre-AACR 2) [LOCAL, USA]', 0, 0, NULL, ''),
-               ('263', 'PROJECTED PUBLICATION DATE', 'PROJECTED PUBLICATION DATE', 0, 0, NULL, ''),
+               ('262', 'IMPRINT STATEMENT FOR SOUND RECORDINGS (PRE-AACR 2) [LOCAL; USA]', 'IMPRINT STATEMENT FOR SOUND RECORDINGS (PRE-AACR 2) [LOCAL; USA]', 0, 0, NULL, ''),
+               ('263', 'FECHA PROYECTADA DE PUBLICACIÓN', 'FECHA PROYECTADA DE PUBLICACIÓN', 0, 0, NULL, ''),
+               ('264','PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE','PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE','1','0','',''),
                ('265', 'SOURCE FOR ACQUISITION/SUBSCRIPTION ADDRESS [OBSOLETE]', 'SOURCE FOR ACQUISITION/SUBSCRIPTION ADDRESS [OBSOLETE]', 0, 0, NULL, ''),
-               ('270', 'ADDRESS', 'ADDRESS', 1, 0, NULL, ''),
-               ('300', 'PHYSICAL DESCRIPTION', 'PHYSICAL DESCRIPTION', 1, 0, NULL, ''),
-               ('301', 'PHYSICAL DESCRIPTION FOR FILMS (PRE-AACR 2) (VM) [OBSOLETE, USMARC]', 'PHYSICAL DESCRIPTION FOR FILMS (PRE-AACR 2) (VM) [OBSOLETE, USMARC]', 0, 0, NULL, ''),
+               ('270', 'DIRECCIÓN', 'DIRECCIÓN', 1, 0, NULL, ''),
+               ('300', 'DESCRIPCIÓN FÍSICA', 'DESCRIPCIÓN FÍSICA', 1, 0, NULL, ''),
+               ('301', 'PHYSICAL DESCRIPTION FOR FILMS (PRE-AACR 2) (VM) [OBSOLETE; USMARC]', 'PHYSICAL DESCRIPTION FOR FILMS (PRE-AACR 2) (VM) [OBSOLETE; USMARC]', 0, 0, NULL, ''),
                ('302', 'PAGE OR ITEM COUNT (BK AM) [OBSOLETE]', 'PAGE OR ITEM COUNT (BK AM) [OBSOLETE]', 0, 0, NULL, ''),
-               ('303', 'UNIT COUNT (AM) [OBSOLETE, USMARC]', 'UNIT COUNT (AM) [OBSOLETE, USMARC]', 0, 0, NULL, ''),
-               ('304', 'LINEAR FOOTAGE (AM) [OBSOLETE, USMARC]', 'LINEAR FOOTAGE (AM) [OBSOLETE, USMARC]', 0, 0, NULL, ''),
-               ('305', 'PHYSICAL DESCRIPTION FOR SOUND RECORDINGS (Pre-AACR 2) (MU) [OBSOLETE]', 'PHYSICAL DESCRIPTION FOR SOUND RECORDINGS (Pre-AACR 2) (MU) [OBSOLETE]', 0, 0, NULL, ''),
-               ('306', 'PLAYING TIME', 'PLAYING TIME', 0, 0, NULL, ''),
-               ('307', 'HOURS, ETC.', 'HOURS, ETC.', 1, 0, NULL, ''),
+               ('303', 'UNIT COUNT (AM) [OBSOLETE; USMARC]', 'UNIT COUNT (AM) [OBSOLETE; USMARC]', 0, 0, NULL, ''),
+               ('304', 'LINEAR FOOTAGE (AM) [OBSOLETE; USMARC]', 'LINEAR FOOTAGE (AM) [OBSOLETE; USMARC]', 0, 0, NULL, ''),
+               ('305', 'PHYSICAL DESCRIPTION FOR SOUND RECORDINGS (PRE-AACR 2) (MU) [OBSOLETE]', 'PHYSICAL DESCRIPTION FOR SOUND RECORDINGS (PRE-AACR 2) (MU) [OBSOLETE]', 0, 0, NULL, ''),
+               ('306', 'DURACIÓN', 'DURACIÓN', 0, 0, NULL, ''),
+               ('307', 'HORARIO; ETC.', 'HORARIO; ETC.', 1, 0, NULL, ''),
                ('308', 'PHYSICAL DESCRIPTION FOR FILMS (ARCHIVAL) (VM) [OBSOLETE]', 'PHYSICAL DESCRIPTION FOR FILMS (ARCHIVAL) (VM) [OBSOLETE]', 1, 0, NULL, ''),
-               ('310', 'CURRENT PUBLICATION FREQUENCY', 'CURRENT PUBLICATION FREQUENCY', 0, 0, NULL, ''),
+               ('310', 'PERIODICIDAD ACTUAL', 'PERIODICIDAD ACTUAL', 0, 0, NULL, ''),
                ('315', 'FREQUENCY (CF MP) [OBSOLETE]', 'FREQUENCY (CF MP) [OBSOLETE]', 0, 0, NULL, ''),
-               ('321', 'FORMER PUBLICATION FREQUENCY', 'FORMER PUBLICATION FREQUENCY', 1, 0, NULL, ''),
-               ('340', 'PHYSICAL MEDIUM', 'PHYSICAL MEDIUM', 1, 0, NULL, ''),
-               ('342', 'GEOSPATIAL REFERENCE DATA', 'GEOSPATIAL REFERENCE DATA', 1, 0, NULL, ''),
-               ('343', 'PLANAR COORDINATE DATA', 'PLANAR COORDINATE DATA', 1, 0, NULL, ''),
-               ('350', 'PRICE (NR) (BK AM CF MU VM SE) [OBSOLETE]', 'PRICE (NR) (BK AM CF MU VM SE) [OBSOLETE]', 1, 0, NULL, ''),
-               ('351', 'ORGANIZATION AND ARRANGEMENT OF MATERIALS', 'ORGANIZATION AND ARRANGEMENT OF MATERIALS', 1, 0, NULL, ''),
-               ('352', 'DIGITAL GRAPHIC REPRESENTATION', 'DIGITAL GRAPHIC REPRESENTATION', 1, 0, NULL, ''),
-               ('355', 'SECURITY CLASSIFICATION CONTROL', 'SECURITY CLASSIFICATION CONTROL', 1, 0, NULL, ''),
-               ('357', 'ORIGINATOR DISSEMINATION CONTROL', 'ORIGINATOR DISSEMINATION CONTROL', 0, 0, NULL, ''),
+               ('321', 'PERIODICIDAD ANTERIOR', 'PERIODICIDAD ANTERIOR', 1, 0, NULL, ''),
+               ('336', 'TIPO DE CONTENIDO', 'TIPO DE CONTENIDO', 1, 0, NULL, ''),
+               ('337', 'TIPO DE MEDIO', 'TIPO DE MEDIO', 1, 0, NULL, ''),
+               ('338', 'TIPO DE SOPORTE', 'TIPO DE SOPORTE', 1, 0, NULL, ''),
+               ('340', 'MEDIO FÍSICO', 'MEDIO FÍSICO', 1, 0, NULL, ''),
+               ('342', 'INFORMACIÓN DE REFERENCIA GEOESPACIAL', 'INFORMACIÓN DE REFERENCIA GEOESPACIAL', 1, 0, NULL, ''),
+               ('343', 'INFORMACIÓN DE COORDENADAS PLANAS', 'INFORMACIÓN DE COORDENADAS PLANAS', 1, 0, NULL, ''),
+               ('344', 'CARACTERÍSTICAS DE SONIDO', 'CARACTERÍSTICAS DE SONIDO', 1, 0, NULL, ''),
+               ('345', 'CARACTERÍSTICAS DE LA PROYECCIÓN DE IMAGEN EN MOVIMIENTO', 'CARACTERÍSTICAS DE LA PROYECCIÓN DE IMAGEN EN MOVIMIENTO', 1, 0, NULL, ''),
+               ('346', 'CARACTERÍSTICAS DE VÍDEO', 'CARACTERÍSTICAS DE VÍDEO', 1, 0, NULL, ''),
+               ('347', 'CARACTERÍSTICAS DEL ARCHIVO DIGITAL', 'CARACTERÍSTICAS DEL ARCHIVO DIGITAL', 1, 0, NULL, ''),
+               ('350', 'PRICE (BK AM CF MU VM SE) [OBSOLETE]', 'PRICE (BK AM CF MU VM SE) [OBSOLETE]', 1, 0, NULL, ''),
+               ('351', 'ORGANIZACIÓN Y ORDENACIÓN DE LOS MATERIALES', 'ORGANIZACIÓN Y ORDENACIÓN DE LOS MATERIALES', 1, 0, NULL, ''),
+               ('352', 'REPRESENTACIÓN GRÁFICA DIGITAL', 'REPRESENTACIÓN GRÁFICA DIGITAL', 1, 0, NULL, ''),
+               ('355', 'CLASIFICACIÓN DE SEGURIDAD', 'CLASIFICACIÓN DE SEGURIDAD', 1, 0, NULL, ''),
+               ('357', 'CONTROL DE LA DIFUSIÓN', 'CONTROL DE LA DIFUSIÓN', 0, 0, NULL, ''),
                ('359', 'RENTAL PRICE (VM) [OBSOLETE]', 'RENTAL PRICE (VM) [OBSOLETE]', 0, 0, NULL, ''),
-               ('362', 'DATES OF PUBLICATION AND/OR SEQUENTIAL DESIGNATION', 'DATES OF PUBLICATION AND/OR SEQUENTIAL DESIGNATION', 1, 0, NULL, ''),
-               ('365', 'TRADE PRICE', 'TRADE PRICE', 1, 0, NULL, ''),
-               ('366', 'TRADE AVAILABILITY INFORMATION', 'TRADE AVAILABILITY INFORMATION', 1, 0, NULL, ''),
+               ('362', 'FECHAS DE PUBLICACIÓN Y/O DESIGNACIÓN SECUENCIAL', 'FECHAS DE PUBLICACIÓN Y/O DESIGNACIÓN SECUENCIAL', 1, 0, NULL, ''),
+               ('363', 'FECHA NORMALIZADA Y DESIGNACIÓN SECUENCIAL', 'FECHA NORMALIZADA Y DESIGNACIÓN SECUENCIAL', 1, 0, NULL, ''),
+               ('365', 'PRECIO COMERCIAL', 'PRECIO COMERCIAL', 1, 0, NULL, ''),
+               ('366', 'INFORMACIÓN SOBRE DISPONIBILIDAD COMERCIAL', 'INFORMACIÓN SOBRE DISPONIBILIDAD COMERCIAL', 1, 0, NULL, ''),
+               ('377', 'LENGUA ASOCIADA', 'LENGUA ASOCIADA', 1 , 0 , NULL, ''),
+               ('380', 'FORMA DE LA OBRA', 'FORMA DE LA OBRA', 1, 0, NULL, ''),
+               ('381', 'OTRAS CARACTERÍSTICAS DISTINTIVAS DE OBRA O EXPRESIÓN', 'OTRAS CARACTERÍSTICAS DISTINTIVAS DE OBRA O EXPRESIÓN', 1, 0, NULL, ''),
+               ('382', 'MEDIO DE INTERPRETACIÓN', 'MEDIO DE INTERPRETACIÓN', 1, 0, NULL, ''),
+               ('383', 'DESIGNACIÓN NUMÉRICA DE OBRA MUSICAL', 'DESIGNACIÓN NUMÉRICA DE OBRA MUSICAL', 1, 0, NULL, ''),
+               ('384', 'TONALIDAD', 'TONALIDAD', 0, 0, NULL, ''),
                ('400', 'SERIES STATEMENT/ADDED ENTRY--PERSONAL NAME [OBSOLETE, CAN/MARC], [LOCAL, USA]', 'SERIES STATEMENT/ADDED ENTRY--PERSONAL NAME [OBSOLETE, CAN/MARC], [LOCAL, USA]', 1, 0, NULL, ''),
                ('410', 'SERIES STATEMENT/ADDED ENTRY--CORPORATE NAME [OBSOLETE, CAN/MARC], [LOCAL, USA]', 'SERIES STATEMENT/ADDED ENTRY--CORPORATE NAME [OBSOLETE, CAN/MARC], [LOCAL, USA]', 1, 0, NULL, ''),
                ('411', 'SERIES STATEMENT/ADDED ENTRY--MEETING NAME [OBSOLETE, CAN/MARC], [LOCAL, USA]', 'SERIES STATEMENT/ADDED ENTRY--MEETING NAME [OBSOLETE, CAN/MARC], [LOCAL, USA]', 1, 0, NULL, ''),
-               ('440', 'SERIES STATEMENT/ADDED ENTRY--TITLE', 'SERIES STATEMENT/ADDED ENTRY--TITLE', 1, 0, NULL, ''),
-               ('490', 'SERIES STATEMENT', 'SERIES STATEMENT', 1, 0, '', ''),
-               ('500', 'GENERAL NOTE', 'GENERAL NOTE', 1, 0, NULL, ''),
-               ('501', 'WITH NOTE', 'WITH NOTE', 1, 0, NULL, ''),
-               ('502', 'DISSERTATION NOTE', 'DISSERTATION NOTE', 1, 0, NULL, ''),
+               ('440', 'MENCIÓN DE SERIE/ASIENTO SECUNDARIO—TÍTULO [OBSOLETO]', 'MENCIÓN DE SERIE/ASIENTO SECUNDARIO—TÍTULO [OBSOLETO]', 1, 0, NULL, ''),
+               ('490', 'MENCIÓN DE SERIE', 'MENCIÓN DE SERIE', 1, 0, '', ''),
+               ('500', 'NOTA GENERAL', 'NOTA GENERAL', 1, 0, NULL, ''),
+               ('501', 'NOTA DE “CON”', 'NOTA DE “CON”', 1, 0, NULL, ''),
+               ('502', 'NOTA DE TESIS', 'NOTA DE TESIS', 1, 0, NULL, ''),
                ('503', 'BIBLIOGRAPHIC HISTORY NOTE (BK CF MU) [OBSOLETE]', 'BIBLIOGRAPHIC HISTORY NOTE (BK CF MU) [OBSOLETE]', 1, 0, NULL, ''),
-               ('504', 'BIBLIOGRAPHY, ETC. NOTE', 'BIBLIOGRAPHY, ETC. NOTE', 1, 0, NULL, ''),
-               ('505', 'FORMATTED CONTENTS NOTE', 'FORMATTED CONTENTS NOTE', 1, 0, NULL, ''),
-               ('506', 'RESTRICTIONS ON ACCESS NOTE', 'RESTRICTIONS ON ACCESS NOTE', 1, 0, NULL, ''),
-               ('507', 'SCALE NOTE FOR GRAPHIC MATERIAL', 'SCALE NOTE FOR GRAPHIC MATERIAL', 0, 0, NULL, ''),
-               ('508', 'CREATION/PRODUCTION CREDITS NOTE', 'CREATION/PRODUCTION CREDITS NOTE', 1, 0, NULL, ''),
+               ('504', 'NOTA DE BIBLIOGRAFÍA; ETC.', 'NOTA DE BIBLIOGRAFÍA; ETC.', 1, 0, NULL, ''),
+               ('505', 'NOTA DE CONTENIDO CON FORMATO', 'NOTA DE CONTENIDO CON FORMATO', 1, 0, NULL, ''),
+               ('506', 'NOTA DE RESTRICCIONES AL ACCESO', 'NOTA DE RESTRICCIONES AL ACCESO', 1, 0, NULL, ''),
+               ('507', 'NOTA DE ESCALA PARA MATERIAL GRÁFICO', 'NOTA DE ESCALA PARA MATERIAL GRÁFICO', 0, 0, NULL, ''),
+               ('508', 'NOTA DE CRÉDITOS DE CREACIÓN O PRODUCCIÓN', 'NOTA DE CRÉDITOS DE CREACIÓN O PRODUCCIÓN', 1, 0, NULL, ''),
                ('509', 'INFORMAL NOTES (RLIN)', 'INFORMAL NOTES (RLIN)', 0, 0, NULL, ''),
-               ('510', 'CITATION/REFERENCES NOTE', 'CITATION/REFERENCES NOTE', 1, 0, NULL, ''),
-               ('511', 'PARTICIPANT OR PERFORMER NOTE', 'PARTICIPANT OR PERFORMER NOTE', 1, 0, NULL, ''),
+               ('510', 'NOTA DE CITAS O REFERENCIAS BIBLIOGRÁFICAS', 'NOTA DE CITAS O REFERENCIAS BIBLIOGRÁFICAS', 1, 0, NULL, ''),
+               ('511', 'NOTA DE PARTICIPANTES O INTÉRPRETES', 'NOTA DE PARTICIPANTES O INTÉRPRETES', 1, 0, NULL, ''),
                ('512', 'EARLIER OR LATER VOLUMES SEPARATELY CATALOGED NOTE (SE) [OBSOLETE]', 'EARLIER OR LATER VOLUMES SEPARATELY CATALOGED NOTE (SE) [OBSOLETE]', 1, 0, NULL, ''),
-               ('513', 'TYPE OF REPORT AND PERIOD COVERED NOTE', 'TYPE OF REPORT AND PERIOD COVERED NOTE', 1, 0, NULL, ''),
-               ('514', 'DATA QUALITY NOTE', 'DATA QUALITY NOTE', 0, 0, NULL, ''),
-               ('515', 'NUMBERING PECULIARITIES NOTE', 'NUMBERING PECULIARITIES NOTE', 1, 0, NULL, ''),
-               ('516', 'TYPE OF COMPUTER FILE OR DATA NOTE', 'TYPE OF COMPUTER FILE OR DATA NOTE', 1, 0, NULL, ''),
+               ('513', 'NOTA DE TIPO DE INFORME Y PERÍODO CUBIERTO', 'NOTA DE TIPO DE INFORME Y PERÍODO CUBIERTO', 1, 0, NULL, ''),
+               ('514', 'NOTA DE CALIDAD DE LOS DATOS', 'NOTA DE CALIDAD DE LOS DATOS', 0, 0, NULL, ''),
+               ('515', 'NOTA DE PECULIARIDADES DE LA NUMERACIÓN', 'NOTA DE PECULIARIDADES DE LA NUMERACIÓN', 1, 0, NULL, ''),
+               ('516', 'NOTA DE TIPO DE ARCHIVO DE ORDENADOR O DE DATOS', 'NOTA DE TIPO DE ARCHIVO DE ORDENADOR O DE DATOS', 1, 0, NULL, ''),
                ('517', 'CATEGORIES OF FILMS NOTE (ARCHIVAL) (VM) [OBSOLETE]', 'CATEGORIES OF FILMS NOTE (ARCHIVAL) (VM) [OBSOLETE]', 0, 0, NULL, ''),
-               ('518', 'DATE/TIME AND PLACE OF AN EVENT NOTE', 'DATE/TIME AND PLACE OF AN EVENT NOTE', 1, 0, NULL, ''),
-               ('520', 'SUMMARY, ETC.', 'SUMMARY, ETC.', 1, 0, NULL, ''),
-               ('521', 'TARGET AUDIENCE NOTE', 'TARGET AUDIENCE NOTE', 1, 0, NULL, ''),
-               ('522', 'GEOGRAPHIC COVERAGE NOTE', 'GEOGRAPHIC COVERAGE NOTE', 1, 0, NULL, ''),
+               ('518', 'NOTA DE FECHA/HORA Y LUGAR DE UN ACONTECIMIENTO', 'NOTA DE FECHA/HORA Y LUGAR DE UN ACONTECIMIENTO', 1, 0, NULL, ''),
+               ('520', 'NOTA DE SUMARIO; ETC.', 'NOTA DE SUMARIO; ETC.', 1, 0, NULL, ''),
+               ('521', 'NOTA DEL NIVEL DE DESTINATARIO', 'NOTA DEL NIVEL DE DESTINATARIO', 1, 0, NULL, ''),
+               ('522', 'NOTA DE ÁMBITO GEOGRÁFICO', 'NOTA DE ÁMBITO GEOGRÁFICO', 1, 0, NULL, ''),
                ('523', 'TIME PERIOD OF CONTENT NOTE (CF) [OBSOLETE]', 'TIME PERIOD OF CONTENT NOTE (CF) [OBSOLETE]', 0, 0, NULL, ''),
-               ('524', 'PREFERRED CITATION OF DESCRIBED MATERIALS NOTE', 'PREFERRED CITATION OF DESCRIBED MATERIALS NOTE', 1, 0, NULL, ''),
-               ('525', 'SUPPLEMENT NOTE', 'SUPPLEMENT NOTE', 0, 0, NULL, ''),
-               ('526', 'STUDY PROGRAM INFORMATION NOTE', 'STUDY PROGRAM INFORMATION NOTE', 0, 0, NULL, ''),
+               ('524', 'NOTA DE FORMA USUAL DE CITA DE LOS MATERIALES DESCRITOS', 'NOTA DE FORMA USUAL DE CITA DE LOS MATERIALES DESCRITOS', 1, 0, NULL, ''),
+               ('525', 'NOTA DE SUPLEMENTO', 'NOTA DE SUPLEMENTO', 0, 0, NULL, ''),
+               ('526', 'NOTA DE INFORMACIÓN SOBRE EL PROGRAMA DE ESTUDIO', 'NOTA DE INFORMACIÓN SOBRE EL PROGRAMA DE ESTUDIO', 0, 0, NULL, ''),
                ('527', 'CENSORSHIP NOTE (VM) [OBSOLETE]', 'CENSORSHIP NOTE (VM) [OBSOLETE]', 1, 0, NULL, ''),
-               ('530', 'ADDITIONAL PHYSICAL FORM AVAILABLE NOTE', 'ADDITIONAL PHYSICAL FORM AVAILABLE NOTE', 1, 0, NULL, ''),
-               ('533', 'REPRODUCTION NOTE', 'REPRODUCTION NOTE', 1, 0, NULL, ''),
-               ('534', 'ORIGINAL VERSION NOTE', 'ORIGINAL VERSION NOTE', 1, 0, NULL, ''),
-               ('535', 'LOCATION OF ORIGINALS/DUPLICATES NOTE', 'LOCATION OF ORIGINALS/DUPLICATES NOTE', 1, 0, NULL, ''),
-               ('536', 'FUNDING INFORMATION NOTE', 'FUNDING INFORMATION NOTE', 1, 0, NULL, ''),
+               ('530', 'NOTA DE FORMATO FÍSICO ADICIONAL DISPONIBLE', 'NOTA DE FORMATO FÍSICO ADICIONAL DISPONIBLE', 1, 0, NULL, ''),
+               ('533', 'NOTA DE REPRODUCCIÓN', 'NOTA DE REPRODUCCIÓN', 1, 0, NULL, ''),
+               ('534', 'NOTA SOBRE LA OBRA ORIGINAL', 'NOTA SOBRE LA OBRA ORIGINAL', 1, 0, NULL, ''),
+               ('535', 'NOTA DE LOCALIZACIÓN DE ORIGINALES/DUPLICADOS', 'NOTA DE LOCALIZACIÓN DE ORIGINALES/DUPLICADOS', 1, 0, NULL, ''),
+               ('536', 'NOTA DE PATROCINADOR', 'NOTA DE PATROCINADOR', 1, 0, NULL, ''),
                ('537', 'SOURCE OF DATA NOTE (CF) [OBSOLETE]', 'SOURCE OF DATA NOTE (CF) [OBSOLETE]', 0, 0, NULL, ''),
-               ('538', 'SYSTEM DETAILS NOTE', 'SYSTEM DETAILS NOTE', 1, 0, NULL, ''),
-               ('540', 'TERMS GOVERNING USE AND REPRODUCTION NOTE', 'TERMS GOVERNING USE AND REPRODUCTION NOTE', 1, 0, NULL, ''),
-               ('541', 'IMMEDIATE SOURCE OF ACQUISITION NOTE', 'IMMEDIATE SOURCE OF ACQUISITION NOTE', 1, 0, NULL, ''),
+               ('538', 'NOTA DE DETALLES DEL SISTEMA', 'NOTA DE DETALLES DEL SISTEMA', 1, 0, NULL, ''),
+               ('540', 'NOTA DE CONDICIONES DE USO Y REPRODUCCIÓN', 'NOTA DE CONDICIONES DE USO Y REPRODUCCIÓN', 1, 0, NULL, ''),
+               ('541', 'NOTA DE FUENTE DE ADQUISICIÓN DIRECTA', 'NOTA DE FUENTE DE ADQUISICIÓN DIRECTA', 1, 0, NULL, ''),
+               ('542', 'NOTA DE INFORMACIÓN RELACIONADA CON EL ESTADO DEL COPYRIGHT', 'NOTA DE INFORMACIÓN RELACIONADA CON EL ESTADO DEL COPYRIGHT','1','0','',''),
                ('543', 'SOLICITATION INFORMATION NOTE (AM) [OBSOLETE]', 'SOLICITATION INFORMATION NOTE (AM) [OBSOLETE]', 1, 0, NULL, ''),
-               ('544', 'LOCATION OF OTHER ARCHIVAL MATERIALS NOTE', 'LOCATION OF OTHER ARCHIVAL MATERIALS NOTE', 1, 0, NULL, ''),
-        ('545', 'BIOGRAPHICAL OR HISTORICAL DATA', 'BIOGRAPHICAL OR HISTORICAL DATA', 1, 0, NULL, ''),
-               ('546', 'LANGUAGE NOTE', 'LANGUAGE NOTE', 1, 0, NULL, ''),
-               ('547', 'FORMER TITLE COMPLEXITY NOTE', 'FORMER TITLE COMPLEXITY NOTE', 1, 0, NULL, ''),
-               ('550', 'ISSUING BODY NOTE', 'ISSUING BODY NOTE', 1, 0, NULL, ''),
-               ('552', 'ENTITY AND ATTRIBUTE INFORMATION NOTE', 'ENTITY AND ATTRIBUTE INFORMATION NOTE', 1, 0, NULL, ''),
-               ('555', 'CUMULATIVE INDEX/FINDING AIDS NOTE', 'CUMULATIVE INDEX/FINDING AIDS NOTE', 1, 0, NULL, ''),
-               ('556', 'INFORMATION ABOUT DOCUMENTATION NOTE', 'INFORMATION ABOUT DOCUMENTATION NOTE', 1, 0, NULL, ''),
-               ('561', 'OWNERSHIP AND CUSTODIAL HISTORY', 'OWNERSHIP AND CUSTODIAL HISTORY', 1, 0, NULL, ''),
-               ('562', 'COPY AND VERSION IDENTIFICATION NOTE', 'COPY AND VERSION IDENTIFICATION NOTE', 1, 0, NULL, ''),
-               ('563', 'BINDING INFORMATION', 'BINDING INFORMATION', 1, 0, NULL, ''),
-               ('565', 'CASE FILE CHARACTERISTICS NOTE', 'CASE FILE CHARACTERISTICS NOTE', 1, 0, NULL, ''),
-               ('567', 'METHODOLOGY NOTE', 'METHODOLOGY NOTE', 1, 0, NULL, ''),
+               ('544', 'NOTA DE LOCALIZACIÓN DE MATERIALES DE ARCHIVO RELACIONADOS', 'NOTA DE LOCALIZACIÓN DE MATERIALES DE ARCHIVO RELACIONADOS', 1, 0, NULL, ''),
+               ('545', 'NOTA BIOGRÁFICA O HISTÓRICA', 'NOTA BIOGRÁFICA O HISTÓRICA', 1, 0, NULL, ''),
+               ('546', 'NOTA DE LENGUA', 'NOTA DE LENGUA', 1, 0, NULL, ''),
+               ('547', 'NOTA DE RELACIÓN COMPLEJA CON LOS TÍTULOS ANTERIORES', 'NOTA DE RELACIÓN COMPLEJA CON LOS TÍTULOS ANTERIORES', 1, 0, NULL, ''),
+               ('550', 'NOTA DE ENTIDAD RESPONSABLE', 'NOTA DE ENTIDAD RESPONSABLE', 1, 0, NULL, ''),
+               ('552', 'NOTA DE INFORMACIÓN SOBRE EL OBJETO Y SU ATRIBUTO', 'NOTA DE INFORMACIÓN SOBRE EL OBJETO Y SU ATRIBUTO', 1, 0, NULL, ''),
+               ('555', 'NOTA DE ÍNDICE ACUMULATIVO U OTROS INSTRUMENTOS BIBLIOGRÁFICOS', 'NOTA DE ÍNDICE ACUMULATIVO U OTROS INSTRUMENTOS BIBLIOGRÁFICOS', 1, 0, NULL, ''),
+               ('556', 'NOTA DE INFORMACIÓN SOBRE LA DOCUMENTACIÓN', 'NOTA DE INFORMACIÓN SOBRE LA DOCUMENTACIÓN', 1, 0, NULL, ''),
+               ('561', 'NOTA DE PROCEDENCIA', 'NOTA DE PROCEDENCIA', 1, 0, NULL, ''),
+               ('562', 'NOTA DE IDENTIFICACIÓN DE LA COPIA Y VERSIÓN', 'NOTA DE IDENTIFICACIÓN DE LA COPIA Y VERSIÓN', 1, 0, NULL, ''),
+               ('563', 'NOTA DE ENCUADERNACIÓN', 'NOTA DE ENCUADERNACIÓN', 1, 0, NULL, ''),
+               ('565', 'NOTA DE CARACTERÍSTICAS DEL EXPEDIENTE', 'NOTA DE CARACTERÍSTICAS DEL EXPEDIENTE', 1, 0, NULL, ''),
+               ('567', 'NOTA SOBRE LA METODOLOGÍA', 'NOTA SOBRE LA METODOLOGÍA', 1, 0, NULL, ''),
                ('570', 'EDITOR NOTE (SE) [OBSOLETE]', 'EDITOR NOTE (SE) [OBSOLETE]', 1, 0, NULL, ''),
-               ('580', 'LINKING ENTRY COMPLEXITY NOTE', 'LINKING ENTRY COMPLEXITY NOTE', 1, 0, NULL, ''),
-               ('581', 'PUBLICATIONS ABOUT DESCRIBED MATERIALS NOTE', 'PUBLICATIONS ABOUT DESCRIBED MATERIALS NOTE', 1, 0, NULL, ''),
+               ('580', 'NOTA DE RELACIÓN COMPLEJA', 'NOTA DE RELACIÓN COMPLEJA', 1, 0, NULL, ''),
+               ('581', 'NOTA DE PUBLICACIONES SOBRE LOS MATERIALES DESCRITOS', 'NOTA DE PUBLICACIONES SOBRE LOS MATERIALES DESCRITOS', 1, 0, NULL, ''),
                ('582', 'RELATED COMPUTER FILES NOTE (CF) [OBSOLETE]', 'RELATED COMPUTER FILES NOTE (CF) [OBSOLETE]', 1, 0, NULL, ''),
-               ('583', 'ACTION NOTE', 'ACTION NOTE', 1, 0, NULL, ''),
-               ('584', 'ACCUMULATION AND FREQUENCY OF USE NOTE', 'ACCUMULATION AND FREQUENCY OF USE NOTE', 1, 0, NULL, ''),
-               ('585', 'EXHIBITIONS NOTE', 'EXHIBITIONS NOTE', 1, 0, NULL, ''),
-               ('586', 'AWARDS NOTE', 'AWARDS NOTE', 1, 0, NULL, ''),
+               ('583', 'NOTA DE ACCIÓN', 'NOTA DE ACCIÓN', 1, 0, NULL, ''),
+               ('584', 'NOTA DE CRECIMIENTO Y FRECUENCIA DE USO', 'NOTA DE CRECIMIENTO Y FRECUENCIA DE USO', 1, 0, NULL, ''),
+               ('585', 'NOTA DE EXPOSICIONES', 'NOTA DE EXPOSICIONES', 1, 0, NULL, ''),
+               ('586', 'NOTA DE PREMIOS', 'NOTA DE PREMIOS', 1, 0, NULL, ''),
+               ('588', 'NOTA DE FUENTE DE LA DESCRIPCIÓN', 'NOTA DE FUENTE DE LA DESCRIPCIÓN', 1, 0, NULL, ''),
                ('590', 'LOCAL NOTE (RLIN)', 'LOCAL NOTE (RLIN)', 1, 0, NULL, ''),
-               ('600', 'SUBJECT ADDED ENTRY--PERSONAL NAME', 'SUBJECT ADDED ENTRY--PERSONAL NAME', 1, 0, NULL, ''),
-               ('610', 'SUBJECT ADDED ENTRY--CORPORATE NAME', 'SUBJECT ADDED ENTRY--CORPORATE NAME', 1, 0, NULL, ''),
-               ('611', 'SUBJECT ADDED ENTRY--MEETING NAME', 'SUBJECT ADDED ENTRY--MEETING NAME', 1, 0, NULL, ''),
-               ('630', 'SUBJECT ADDED ENTRY--UNIFORM TITLE', 'SUBJECT ADDED ENTRY--UNIFORM TITLE', 1, 0, NULL, ''),
-               ('648', 'SUBJECT ADDED ENTRY--CHRONOLOGICAL TERM', 'SUBJECT ADDED ENTRY--CHRONOLOGICAL TERM', 1, 0, NULL, ''),
-               ('650', 'SUBJECT ADDED ENTRY--TOPICAL TERM', 'SUBJECT ADDED ENTRY--TOPICAL TERM', 1, 0, NULL, ''),
-               ('651', 'SUBJECT ADDED ENTRY--GEOGRAPHIC NAME', 'SUBJECT ADDED ENTRY--GEOGRAPHIC NAME', 1, 0, NULL, ''),
+               ('600', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - NOMBRE DE PERSONA', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - NOMBRE DE PERSONA', 1, 0, NULL, ''),
+               ('610', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - NOMBRE DE ENTIDAD CORPORATIVA', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - NOMBRE DE ENTIDAD CORPORATIVA', 1, 0, NULL, ''),
+               ('611', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - NOMBRE DE CONGRESO', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - NOMBRE DE CONGRESO', 1, 0, NULL, ''),
+               ('630', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - TÍTULO UNIFORME', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - TÍTULO UNIFORME', 1, 0, NULL, ''),
+               ('648', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - TÉRMINO CRONOLÓGICO', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - TÉRMINO CRONOLÓGICO', 1, 0, NULL, ''),
+               ('650', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - TÉRMINO DE MATERIA', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - TÉRMINO DE MATERIA', 1, 0, NULL, ''),
+               ('651', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - NOMBRE GEOGRÁFICO', 'PUNTO DE ACCESO ADICIONAL DE MATERIA - NOMBRE GEOGRÁFICO', 1, 0, NULL, ''),
                ('652', 'SUBJECT ADDED ENTRY--REVERSE GEOGRAPHIC (BK MP SE) [OBSOLETE]', 'SUBJECT ADDED ENTRY--REVERSE GEOGRAPHIC (BK MP SE) [OBSOLETE]', 1, 0, NULL, ''),
-               ('653', 'INDEX TERM--UNCONTROLLED', 'INDEX TERM--UNCONTROLLED', 1, 0, NULL, ''),
-               ('654', 'SUBJECT ADDED ENTRY--FACETED TOPICAL TERM', 'SUBJECT ADDED ENTRY--FACETED TOPICAL TERM', 1, 0, NULL, ''),
-               ('655', 'INDEX TERM--GENRE/FORM', 'INDEX TERM--GENRE/FORM', 1, 0, NULL, ''),
-               ('656', 'INDEX TERM--OCCUPATION', 'INDEX TERM--OCCUPATION', 1, 0, NULL, ''),
-               ('657', 'INDEX TERM--FUNCTION', 'INDEX TERM--FUNCTION', 1, 0, NULL, ''),
-               ('658', 'INDEX TERM--CURRICULUM OBJECTIVE', 'INDEX TERM--CURRICULUM OBJECTIVE', 1, 0, NULL, ''),
-               ('662', 'SUBJECT ADDED ENTRY--HIERARCHICAL PLACE NAME', 'SUBJECT ADDED ENTRY--HIERARCHICAL PLACE NAME', 1, 0, NULL, ''),
-               ('690', 'LOCAL SUBJECT ADDED ENTRY--TOPICAL TERM (OCLC, RLIN)', 'LOCAL SUBJECT ADDED ENTRY--TOPICAL TERM (OCLC, RLIN)', 1, 0, '', ''),
+               ('653', 'TÉRMINO DE INDIZACIÓN - NO CONTROLADO', 'TÉRMINO DE INDIZACIÓN - NO CONTROLADO', 1, 0, NULL, ''),
+               ('654', 'PUNTO DE ACCESO ADICIONAL - TÉRMINOS DE MATERIA POR FACETAS', 'PUNTO DE ACCESO ADICIONAL - TÉRMINOS DE MATERIA POR FACETAS', 1, 0, NULL, ''),
+               ('655', 'TÉRMINO DE INDIZACIÓN - GÉNERO/FORMA', 'TÉRMINO DE INDIZACIÓN - GÉNERO/FORMA', 1, 0, NULL, ''),
+               ('656', 'TÉRMINO DE INDIZACIÓN - PROFESIÓN', 'TÉRMINO DE INDIZACIÓN - PROFESIÓN', 1, 0, NULL, ''),
+               ('657', 'TÉRMINO DE INDIZACIÓN - FUNCIÓN', 'TÉRMINO DE INDIZACIÓN - FUNCIÓN', 1, 0, NULL, ''),
+               ('658', 'TÉRMINO DE INDIZACIÓN - OBJETIVO CURRICULAR', 'TÉRMINO DE INDIZACIÓN - OBJETIVO CURRICULAR', 1, 0, NULL, ''),
+               ('662', 'PUNTO DE ACCESO ADICIONAL - NOMBRE JERÁRQUICO DE LUGAR', 'PUNTO DE ACCESO ADICIONAL - NOMBRE JERÁRQUICO DE LUGAR', 1, 0, NULL, ''),
+               ('690', 'LOCAL SUBJECT ADDED ENTRY--TOPICAL TERM (OCLC; RLIN)', 'LOCAL SUBJECT ADDED ENTRY--TOPICAL TERM (OCLC; RLIN)', 1, 0, '', ''),
                ('691', 'LOCAL SUBJECT ADDED ENTRY--GEOGRAPHIC NAME (RLIN)', 'LOCAL SUBJECT ADDED ENTRY--GEOGRAPHIC NAME (RLIN)', 1, 0, '', ''),
                ('696', 'LOCAL SUBJECT ADDED ENTRY--PERSONAL NAME (RLIN)', 'LOCAL SUBJECT ADDED ENTRY--PERSONAL NAME (RLIN)', 1, 0, '', ''),
                ('697', 'LOCAL SUBJECT ADDED ENTRY--CORPORATE NAME (RLIN)', 'LOCAL SUBJECT ADDED ENTRY--CORPORATE NAME (RLIN)', 1, 0, '', ''),
                ('698', 'LOCAL SUBJECT ADDED ENTRY--MEETING NAME (RLIN)', 'LOCAL SUBJECT ADDED ENTRY--MEETING NAME (RLIN)', 1, 0, '', ''),
                ('699', 'LOCAL SUBJECT ADDED ENTRY--UNIFORM TITLE (RLIN)', 'LOCAL SUBJECT ADDED ENTRY--UNIFORM TITLE (RLIN)', 1, 0, '', ''),
-               ('700', 'ADDED ENTRY--PERSONAL NAME', 'ADDED ENTRY--PERSONAL NAME', 1, 0, NULL, ''),
+               ('700', 'PUNTO DE ACCESO ADICIONAL - NOMBRE DE PERSONA', 'PUNTO DE ACCESO ADICIONAL - NOMBRE DE PERSONA', 1, 0, NULL, ''),
                ('705', 'ADDED ENTRY--PERSONAL NAME (PERFORMER) (MU) [OBSOLETE]', 'ADDED ENTRY--PERSONAL NAME (PERFORMER) (MU) [OBSOLETE]', 1, 0, NULL, ''),
-               ('710', 'ADDED ENTRY--CORPORATE NAME', 'ADDED ENTRY--CORPORATE NAME', 1, 0, NULL, ''),
-               ('711', 'ADDED ENTRY--MEETING NAME', 'ADDED ENTRY--MEETING NAME', 1, 0, NULL, ''),
+               ('710', 'PUNTO DE ACCESO ADICIONAL - NOMBRE DE ENTIDAD', 'PUNTO DE ACCESO ADICIONAL - NOMBRE DE ENTIDAD', 1, 0, NULL, ''),
+               ('711', 'PUNTO DE ACCESO ADICIONAL - NOMBRE DE CONGRESO', 'PUNTO DE ACCESO ADICIONAL - NOMBRE DE CONGRESO', 1, 0, NULL, ''),
                ('715', 'ADDED ENTRY--CORPORATE NAME (PERFORMER) (MU) [OBSOLETE]', 'ADDED ENTRY--CORPORATE NAME (PERFORMER) (MU) [OBSOLETE]', 1, 0, NULL, ''),
-               ('720', 'ADDED ENTRY--UNCONTROLLED NAME', 'ADDED ENTRY--UNCONTROLLED NAME', 1, 0, NULL, ''),
-               ('730', 'ADDED ENTRY--UNIFORM TITLE', 'ADDED ENTRY--UNIFORM TITLE', 1, 0, NULL, ''),
-               ('740', 'ADDED ENTRY--UNCONTROLLED RELATED/ANALYTICAL TITLE', 'ADDED ENTRY--UNCONTROLLED RELATED/ANALYTICAL TITLE', 1, 0, NULL, ''),
-               ('752', 'ADDED ENTRY--HIERARCHICAL PLACE NAME', 'ADDED ENTRY--HIERARCHICAL PLACE NAME', 1, 0, NULL, ''),
-               ('753', 'SYSTEM DETAILS ACCESS TO COMPUTER FILES', 'SYSTEM DETAILS ACCESS TO COMPUTER FILES', 1, 0, NULL, ''),
-               ('754', 'ADDED ENTRY--TAXONOMIC IDENTIFICATION', 'ADDED ENTRY--TAXONOMIC IDENTIFICATION', 1, 0, NULL, ''),
+               ('720', 'PUNTO DE ACCESO ADICIONAL - NOMBRE NO CONTROLADO', 'PUNTO DE ACCESO ADICIONAL - NOMBRE NO CONTROLADO', 1, 0, NULL, ''),
+               ('730', 'PUNTO DE ACCESO ADICIONAL - TÍTULO UNIFORME', 'PUNTO DE ACCESO ADICIONAL - TÍTULO UNIFORME', 1, 0, NULL, ''),
+               ('740', 'PUNTO DE ACCESO ADICIONAL - TÍTULO RELACIONADO O ANALÍTICO O NO CONTROLADO', 'PUNTO DE ACCESO ADICIONAL - TÍTULO RELACIONADO O ANALÍTICO O NO CONTROLADO', 1, 0, NULL, ''),
+               ('751', 'PUNTO DE ACCESO ADICIONAL - NOMBRE GEOGRÁFICO', 'PUNTO DE ACCESO ADICIONAL - NOMBRE GEOGRÁFICO', 1, 0, NULL, ''),
+               ('752', 'PUNTO DE ACCESO ADICIONAL - NOMBRE JERÁRQUICO DE LUGAR', 'PUNTO DE ACCESO ADICIONAL - NOMBRE JERÁRQUICO DE LUGAR', 1, 0, NULL, ''),
+               ('753', 'INFORMACIÓN TÉCNICA SOBRE ACCESO A ARCHIVOS DE ORDENADOR', 'INFORMACIÓN TÉCNICA SOBRE ACCESO A ARCHIVOS DE ORDENADOR', 1, 0, NULL, ''),
+               ('754', 'PUNTO DE ACCESO ADICIONAL - IDENTIFICACIÓN TAXONÓMICA', 'PUNTO DE ACCESO ADICIONAL - IDENTIFICACIÓN TAXONÓMICA', 1, 0, NULL, ''),
                ('755', 'ADDED ENTRY--PHYSICAL CHARACTERISTICS [OBSOLETE]', 'ADDED ENTRY--PHYSICAL CHARACTERISTICS [OBSOLETE]', 1, 0, NULL, ''),
-               ('760', 'MAIN SERIES ENTRY', 'MAIN SERIES ENTRY', 1, 0, NULL, ''),
-               ('762', 'SUBSERIES ENTRY', 'SUBSERIES ENTRY', 1, 0, NULL, ''),
-               ('765', 'ORIGINAL LANGUAGE ENTRY', 'ORIGINAL LANGUAGE ENTRY', 1, 0, NULL, ''),
-               ('767', 'TRANSLATION ENTRY', 'TRANSLATION ENTRY', 1, 0, NULL, ''),
-               ('770', 'SUPPLEMENT/SPECIAL ISSUE ENTRY', 'SUPPLEMENT/SPECIAL ISSUE ENTRY', 1, 0, NULL, ''),
-               ('772', 'SUPPLEMENT PARENT ENTRY', 'SUPPLEMENT PARENT ENTRY', 1, 0, NULL, ''),
-               ('773', 'HOST ITEM ENTRY', 'HOST ITEM ENTRY', 1, 0, NULL, ''),
-               ('774', 'CONSTITUENT UNIT ENTRY', 'CONSTITUENT UNIT ENTRY', 1, 0, NULL, ''),
-               ('775', 'OTHER EDITION ENTRY', 'OTHER EDITION ENTRY', 1, 0, NULL, ''),
-               ('776', 'ADDITIONAL PHYSICAL FORM ENTRY', 'ADDITIONAL PHYSICAL FORM ENTRY', 1, 0, NULL, ''),
-               ('777', 'ISSUED WITH ENTRY', 'ISSUED WITH ENTRY', 1, 0, NULL, ''),
-               ('780', 'PRECEDING ENTRY', 'PRECEDING ENTRY', 1, 0, NULL, ''),
-               ('785', 'SUCCEEDING ENTRY', 'SUCCEEDING ENTRY', 1, 0, NULL, ''),
-               ('786', 'DATA SOURCE ENTRY', 'DATA SOURCE ENTRY', 1, 0, NULL, ''),
-               ('787', 'NONSPECIFIC RELATIONSHIP ENTRY', 'NONSPECIFIC RELATIONSHIP ENTRY', 1, 0, NULL, ''),
+               ('760', 'ENLACE A UNA SERIE PRINCIPAL', 'ENLACE A UNA SERIE PRINCIPAL', 1, 0, NULL, ''),
+               ('762', 'ENLACE A UNA SUBSERIE', 'ENLACE A UNA SUBSERIE', 1, 0, NULL, ''),
+               ('765', 'ENLACE A LA LENGUA ORIGINAL', 'ENLACE A LA LENGUA ORIGINAL', 1, 0, NULL, ''),
+               ('767', 'ENLACE A UNA TRADUCCIÓN', 'ENLACE A UNA TRADUCCIÓN', 1, 0, NULL, ''),
+               ('770', 'ENLACE A UN SUPLEMENTO/NÚMERO ESPECIAL', 'ENLACE A UN SUPLEMENTO/NÚMERO ESPECIAL', 1, 0, NULL, ''),
+               ('772', 'ENLACE A LA PUBLICACIÓN PRINCIPAL', 'ENLACE A LA PUBLICACIÓN PRINCIPAL', 1, 0, NULL, ''),
+               ('773', 'ENLACE AL DOCUMENTO FUENTE', 'ENLACE AL DOCUMENTO FUENTE', 1, 0, NULL, ''),
+               ('774', 'ENLACE A UNA UNIDAD CONSTITUYENTE', 'ENLACE A UNA UNIDAD CONSTITUYENTE', 1, 0, NULL, ''),
+               ('775', 'ENLACE A OTRA EDICIÓN', 'ENLACE A OTRA EDICIÓN', 1, 0, NULL, ''),
+               ('776', 'ENLACE A UN FORMATO FÍSICO ADICIONAL', 'ENLACE A UN FORMATO FÍSICO ADICIONAL', 1, 0, NULL, ''),
+               ('777', 'ENLACE A “PUBLICADO CON”', 'ENLACE A “PUBLICADO CON”', 1, 0, NULL, ''),
+               ('780', 'ENLACE A UN TÍTULO ANTERIOR', 'ENLACE A UN TÍTULO ANTERIOR', 1, 0, NULL, ''),
+               ('785', 'ENLACE A UN TÍTULO POSTERIOR', 'ENLACE A UN TÍTULO POSTERIOR', 1, 0, NULL, ''),
+               ('786', 'ENLACE A UNA FUENTE DE INFORMACIÓN', 'ENLACE A UNA FUENTE DE INFORMACIÓN', 1, 0, NULL, ''),
+               ('787', 'OTRAS RELACIONES', 'OTRAS RELACIONES', 1, 0, NULL, ''),
                ('789', 'COMPONENT ITEM ENTRY (RLIN)', 'COMPONENT ITEM ENTRY (RLIN)', 1, 0, '', ''),
                ('796', 'LOCAL ADDED ENTRY--PERSONAL NAME (RLIN)', 'LOCAL ADDED ENTRY--PERSONAL NAME (RLIN)', 1, 0, '', ''),
                ('797', 'LOCAL ADDED ENTRY--CORPORATE NAME (RLIN)', 'LOCAL ADDED ENTRY--CORPORATE NAME (RLIN)', 1, 0, '', ''),
                ('798', 'LOCAL ADDED ENTRY--MEETING NAME (RLIN)', 'LOCAL ADDED ENTRY--MEETING NAME (RLIN)', 1, 0, '', ''),
                ('799', 'LOCAL ADDED ENTRY--UNIFORM TITLE (RLIN)', 'LOCAL ADDED ENTRY--UNIFORM TITLE (RLIN)', 1, 0, '', ''),
-               ('800', 'SERIES ADDED ENTRY--PERSONAL NAME', 'SERIES ADDED ENTRY--PERSONAL NAME', 1, 0, NULL, ''),
-               ('810', 'SERIES ADDED ENTRY--CORPORATE NAME', 'SERIES ADDED ENTRY--CORPORATE NAME', 1, 0, NULL, ''),
-               ('811', 'SERIES ADDED ENTRY--MEETING NAME', 'SERIES ADDED ENTRY--MEETING NAME', 1, 0, NULL, ''),
-               ('830', 'SERIES ADDED ENTRY--UNIFORM TITLE', 'SERIES ADDED ENTRY--UNIFORM TITLE', 1, 0, NULL, ''),
+               ('800', 'PUNTO DE ACCESO ADICIONAL DE SERIE - NOMBRE DE PERSONA', 'PUNTO DE ACCESO ADICIONAL DE SERIE - NOMBRE DE PERSONA', 1, 0, NULL, ''),
+               ('810', 'PUNTO DE ACCESO ADICIONAL DE SERIE - NOMBRE DE ENTIDAD', 'PUNTO DE ACCESO ADICIONAL DE SERIE - NOMBRE DE ENTIDAD', 1, 0, NULL, ''),
+               ('811', 'PUNTO DE ACCESO ADICIONAL DE SERIE - NOMBRE DE CONGRESO', 'PUNTO DE ACCESO ADICIONAL DE SERIE - NOMBRE DE CONGRESO', 1, 0, NULL, ''),
+               ('830', 'PUNTO DE ACCESO ADICIONAL DE SERIE - TÍTULO UNIFORME', 'PUNTO DE ACCESO ADICIONAL DE SERIE - TÍTULO UNIFORME', 1, 0, NULL, ''),
                ('840', 'SERIES ADDED ENTRY--TITLE [OBSOLETE]', 'SERIES ADDED ENTRY--TITLE [OBSOLETE]', 1, 0, NULL, ''),
-               ('841', 'HOLDINGS CODED DATA VALUES', 'HOLDINGS CODED DATA VALUES', 0, 0, NULL, ''),
-               ('842', 'TEXTUAL PHYSICAL FORM DESIGNATOR', 'TEXTUAL PHYSICAL FORM DESIGNATOR', 0, 0, NULL, ''),
-               ('843', 'REPRODUCTION NOTE', 'REPRODUCTION NOTE', 1, 0, NULL, ''),
-               ('844', 'NAME OF UNIT', 'NAME OF UNIT', 0, 0, NULL, ''),
-               ('845', 'TERMS GOVERNING USE AND REPRODUCTION NOTE', 'TERMS GOVERNING USE AND REPRODUCTION NOTE', 1, 0, NULL, ''),
-               ('850', 'HOLDING INSTITUTION', 'HOLDING INSTITUTION', 1, 0, NULL, ''),
+               ('841', 'VALORES CODIFICADOS DE LOS FONDOS', 'VALORES CODIFICADOS DE LOS FONDOS', 0, 0, NULL, ''),
+               ('842', 'DENOMINACIÓN TEXTUAL DEL FORMATO FÍSICO', 'DENOMINACIÓN TEXTUAL DEL FORMATO FÍSICO', 0, 0, NULL, ''),
+               ('843', 'NOTA DE REPRODUCCIÓN', 'NOTA DE REPRODUCCIÓN', 1, 0, NULL, ''),
+               ('844', 'NOMBRE DE LA UNIDAD', 'NOMBRE DE LA UNIDAD', 0, 0, NULL, ''),
+               ('845', 'CONDICIONES DE USO Y REPRODUCCIÓN', 'CONDICIONES DE USO Y REPRODUCCIÓN', 1, 0, NULL, ''),
+               ('850', 'INSTITUCIÓN QUE POSEE LOS FONDOS', 'INSTITUCIÓN QUE POSEE LOS FONDOS', 1, 0, NULL, ''),
                ('851', 'LOCATION [OBSOLETE]', 'LOCATION [OBSOLETE]', 1, 0, NULL, ''),
-               ('852', 'LOCATION/CALL NUMBER', 'LOCATION/CALL NUMBER', 1, 0, NULL, ''),
-               ('853', 'CAPTIONS AND PATTERN--BASIC BIBLIOGRAPHIC UNIT', 'CAPTIONS AND PATTERN--BASIC BIBLIOGRAPHIC UNIT', 1, 0, NULL, ''),
-               ('854', 'CAPTIONS AND PATTERN--SUPPLEMENTARY MATERIAL', 'CAPTIONS AND PATTERN--SUPPLEMENTARY MATERIAL', 1, 0, NULL, ''),
-               ('855', 'CAPTIONS AND PATTERN--INDEXES', 'CAPTIONS AND PATTERN--INDEXES', 1, 0, NULL, ''),
-               ('856', 'ELECTRONIC LOCATION AND ACCESS', 'ELECTRONIC LOCATION AND ACCESS', 1, 0, NULL, ''),
+               ('852', 'LOCALIZACIÓN', 'LOCALIZACIÓN', 1, 0, NULL, ''),
+               ('853', 'DENOMINACIÓN Y MODELO - UNIDAD BIBLIOGRÁFICA BÁSICA', 'DENOMINACIÓN Y MODELO - UNIDAD BIBLIOGRÁFICA BÁSICA', 1, 0, NULL, ''),
+               ('854', 'DENOMINACIÓN Y MODELO - MATERIAL ADICIONAL', 'DENOMINACIÓN Y MODELO - MATERIAL ADICIONAL', 1, 0, NULL, ''),
+               ('855', 'DENOMINACIÓN Y MODELO - ÍNDICES', 'DENOMINACIÓN Y MODELO - ÍNDICES', 1, 0, NULL, ''),
+               ('856', 'LOCALIZACIÓN Y ACCESO ELECTRÓNICOS', 'LOCALIZACIÓN Y ACCESO ELECTRÓNICOS', 1, 0, NULL, ''),
                ('859', 'LOCAL CONTROL INFORMATION (RLIN)', 'LOCAL CONTROL INFORMATION (RLIN)', 1, 0, '', ''),
-               ('863', 'ENUMERATION AND CHRONOLOGY--BASIC BIBLIOGRAPHIC UNIT', 'ENUMERATION AND CHRONOLOGY--BASIC BIBLIOGRAPHIC UNIT', 1, 0, NULL, ''),
-               ('864', 'ENUMERATION AND CHRONOLOGY--SUPPLEMENTARY MATERIAL', 'ENUMERATION AND CHRONOLOGY--SUPPLEMENTARY MATERIAL', 1, 0, NULL, ''),
-               ('865', 'ENUMERATION AND CHRONOLOGY--INDEXES', 'ENUMERATION AND CHRONOLOGY--INDEXES', 1, 0, NULL, ''),
-               ('866', 'TEXTUAL HOLDINGS--BASIC BIBLIOGRAPHIC UNIT', 'TEXTUAL HOLDINGS--BASIC BIBLIOGRAPHIC UNIT', 1, 0, NULL, ''),
-               ('867', 'TEXTUAL HOLDINGS--SUPPLEMENTARY MATERIAL', 'TEXTUAL HOLDINGS--SUPPLEMENTARY MATERIAL', 1, 0, NULL, ''),
-               ('868', 'TEXTUAL HOLDINGS--INDEXES', 'TEXTUAL HOLDINGS--INDEXES', 1, 0, NULL, ''),
+               ('863', 'NUMERACIÓN Y CRONOLOGÍA - UNIDAD BIBLIOGRÁFICA BÁSICA', 'NUMERACIÓN Y CRONOLOGÍA - UNIDAD BIBLIOGRÁFICA BÁSICA', 1, 0, NULL, ''),
+               ('864', 'NUMERACIÓN Y CRONOLOGÍA - MATERIAL ADICIONAL', 'NUMERACIÓN Y CRONOLOGÍA - MATERIAL ADICIONAL', 1, 0, NULL, ''),
+               ('865', 'NUMERACIÓN Y CRONOLOGÍA - ÍNDICES', 'NUMERACIÓN Y CRONOLOGÍA - ÍNDICES', 1, 0, NULL, ''),
+               ('866', 'MENCIÓN TEXTUAL DE FONDOS - UNIDAD BIBLIOGRÁFICA BÁSICA', 'MENCIÓN TEXTUAL DE FONDOS - UNIDAD BIBLIOGRÁFICA BÁSICA', 1, 0, NULL, ''),
+               ('867', 'MENCIÓN TEXTUAL DE FONDOS - MATERIAL ADICIONAL', 'MENCIÓN TEXTUAL DE FONDOS - MATERIAL ADICIONAL', 1, 0, NULL, ''),
+               ('868', 'MENCIÓN TEXTUAL DE FONDOS - ÍNDICES', 'MENCIÓN TEXTUAL DE FONDOS - ÍNDICES', 1, 0, NULL, ''),
                ('870', 'VARIANT PERSONAL NAME (SE) [OBSOLETE]', 'VARIANT PERSONAL NAME (SE) [OBSOLETE]', 1, 0, NULL, ''),
                ('871', 'VARIANT CORPORATE NAME (SE)[OBSOLETE]', 'VARIANT CORPORATE NAME (SE)[OBSOLETE]', 1, 0, NULL, ''),
                ('872', 'VARIANT CONFERENCE OR MEETING NAME (SE) [OBSOLETE]', 'VARIANT CONFERENCE OR MEETING NAME (SE) [OBSOLETE]', 1, 0, NULL, ''),
                ('873', 'VARIANT UNIFORM TITLE HEADING (SE) [OBSOLETE]', 'VARIANT UNIFORM TITLE HEADING (SE) [OBSOLETE]', 1, 0, NULL, ''),
-               ('876', 'ITEM INFORMATION--BASIC BIBLIOGRAPHIC UNIT', 'ITEM INFORMATION--BASIC BIBLIOGRAPHIC UNIT', 1, 0, NULL, ''),
-               ('877', 'ITEM INFORMATION--SUPPLEMENTARY MATERIAL', 'ITEM INFORMATION--SUPPLEMENTARY MATERIAL', 1, 0, NULL, ''),
-               ('878', 'ITEM INFORMATION--INDEXES', 'ITEM INFORMATION--INDEXES', 1, 0, NULL, ''),
-               ('880', 'ALTERNATE GRAPHIC REPRESENTATION', 'ALTERNATE GRAPHIC REPRESENTATION', 1, 0, NULL, ''),
-               ('886', 'FOREIGN MARC INFORMATION FIELD', 'FOREIGN MARC INFORMATION FIELD', 1, 0, NULL, ''),
-               ('887', 'NON-MARC INFORMATION FIELD', 'NON-MARC INFORMATION FIELD', 1, 0, NULL, ''),
+               ('876', 'INFORMACIÓN SOBRE LA UNIDAD FÍSICA - UNIDAD BIBLIOGRÁFICA BÁSICA', 'INFORMACIÓN SOBRE LA UNIDAD FÍSICA - UNIDAD BIBLIOGRÁFICA BÁSICA', 1, 0, NULL, ''),
+               ('877', 'INFORMACIÓN SOBRE LA UNIDAD FÍSICA - MATERIAL ADICIONAL', 'INFORMACIÓN SOBRE LA UNIDAD FÍSICA - MATERIAL ADICIONAL', 1, 0, NULL, ''),
+               ('878', 'INFORMACIÓN SOBRE LA UNIDAD FÍSICA - ÍNDICES', 'INFORMACIÓN SOBRE LA UNIDAD FÍSICA - ÍNDICES', 1, 0, NULL, ''),
+               ('880', 'REPRESENTACIÓN GRÁFICA ALTERNATIVA', 'REPRESENTACIÓN GRÁFICA ALTERNATIVA', 1, 0, NULL, ''),
+               ('882', 'INFORMACIÓN SOBRE EL REGISTRO QUE SUSTITUYE A UN REGISTRO ELIMINADO', 'INFORMACIÓN SOBRE EL REGISTRO QUE SUSTITUYE A UN REGISTRO ELIMINADO', 0, 0, NULL, ''),
+               ('883', 'PROCEDENCIA DE METADATOS GENERADOS POR MÁQUINA', 'PROCEDENCIA DE METADATOS GENERADOS POR MÁQUINA', 1, 0, NULL, ''),
+               ('886', 'CAMPO PARA INFORMACIÓN DE OTROS FORMATOS MARC', 'CAMPO PARA INFORMACIÓN DE OTROS FORMATOS MARC', 1, 0, NULL, ''),
+               ('887', 'CAMPO PARA INFORMACIÓN DE REGISTROS NO - MARC', 'CAMPO PARA INFORMACIÓN DE REGISTROS NO - MARC', 1, 0, NULL, ''),
                ('896', 'LOCAL SERIES ADDED ENTRY--PERSONAL NAME (RLIN)', 'LOCAL SERIES ADDED ENTRY--PERSONAL NAME (RLIN)', 1, 0, '', ''),
                ('897', 'LOCAL SERIES ADDED ENTRY--CORPORATE NAME (RLIN)', 'LOCAL SERIES ADDED ENTRY--CORPORATE NAME (RLIN)', 1, 0, '', ''),
                ('898', 'LOCAL SERIES ADDED ENTRY--MEETING NAME (RLIN)', 'LOCAL SERIES ADDED ENTRY--MEETING NAME (RLIN)', 1, 0, '', ''),
                ('899', 'LOCAL SERIES ADDED ENTRY--UNIFORM TITLE (RLIN)', 'LOCAL SERIES ADDED ENTRY--UNIFORM TITLE (RLIN)', 1, 0, '', ''),
-               ('900', 'EQUIVALENCE OR CROSS-REFERENCE-PERSONAL NAME [LOCAL, CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-PERSONAL NAME [LOCAL, CANADA]', 1, 0, '', ''),
-               ('901', 'LOCAL DATA ELEMENT A, LDA (RLIN)', 'LOCAL DATA ELEMENT A, LDA (RLIN)', 1, 0, '', ''),
-               ('902', 'LOCAL DATA ELEMENT B, LDB (RLIN)', 'LOCAL DATA ELEMENT B, LDB (RLIN)', 1, 0, '', ''),
-               ('903', 'LOCAL DATA ELEMENT C, LDC (RLIN)', 'LOCAL DATA ELEMENT C, LDC (RLIN)', 1, 0, '', ''),
-               ('904', 'LOCAL DATA ELEMENT D, LDD (RLIN)', 'LOCAL DATA ELEMENT D, LDD (RLIN)', 1, 0, '', ''),
-               ('905', 'LOCAL DATA ELEMENT E, LDE (RLIN)', 'LOCAL DATA ELEMENT E, LDE (RLIN)', 1, 0, '', ''),
-               ('906', 'LOCAL DATA ELEMENT F, LDF (RLIN)', 'LOCAL DATA ELEMENT F, LDF (RLIN)', 1, 0, '', ''),
-               ('907', 'LOCAL DATA ELEMENT G, LDG (RLIN)', 'LOCAL DATA ELEMENT G, LDG (RLIN)', 1, 0, '', ''),
+               ('900', 'EQUIVALENCE OR CROSS-REFERENCE-PERSONAL NAME [LOCAL; CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-PERSONAL NAME [LOCAL; CANADA]', 1, 0, '', ''),
+               ('901', 'LOCAL DATA ELEMENT A; LDA (RLIN)', 'LOCAL DATA ELEMENT A; LDA (RLIN)', 1, 0, '', ''),
+               ('902', 'LOCAL DATA ELEMENT B; LDB (RLIN)', 'LOCAL DATA ELEMENT B; LDB (RLIN)', 1, 0, '', ''),
+               ('903', 'LOCAL DATA ELEMENT C; LDC (RLIN)', 'LOCAL DATA ELEMENT C; LDC (RLIN)', 1, 0, '', ''),
+               ('904', 'LOCAL DATA ELEMENT D; LDD (RLIN)', 'LOCAL DATA ELEMENT D; LDD (RLIN)', 1, 0, '', ''),
+               ('905', 'LOCAL DATA ELEMENT E; LDE (RLIN)', 'LOCAL DATA ELEMENT E; LDE (RLIN)', 1, 0, '', ''),
+               ('906', 'LOCAL DATA ELEMENT F; LDF (RLIN)', 'LOCAL DATA ELEMENT F; LDF (RLIN)', 1, 0, '', ''),
+               ('907', 'LOCAL DATA ELEMENT G; LDG (RLIN)', 'LOCAL DATA ELEMENT G; LDG (RLIN)', 1, 0, '', ''),
                ('908', 'PUT COMMAND PARAMETER (RLIN)', 'PUT COMMAND PARAMETER (RLIN)', 0, 0, '', ''),
                ('910', 'USER-OPTION DATA (OCLC)', 'USER-OPTION DATA (OCLC)', 0, 0, '', ''),
-               ('911', 'EQUIVALENCE OR CROSS-REFERENCE-CONFERENCE OR MEETING NAME [LOCAL, CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-CONFERENCE OR MEETING NAME [LOCAL, CANADA]', 1, 0, '', ''),
-               ('930', 'EQUIVALENCE OR CROSS-REFERENCE-UNIFORM TITLE HEADING [LOCAL, CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-UNIFORM TITLE HEADING [LOCAL, CANADA]', 1, 0, '', ''),
-               ('936', 'OCLC/CONSER MISCELLANEOUS DATA (OCLC); PIECE USED FOR CATALOGING (pre-AACR2) (RLIN)', 'OCLC/CONSER MISCELLANEOUS DATA (OCLC); PIECE USED FOR CATALOGING (pre-AACR2) (RLIN)', 0, 0, '', ''),
-               ('940', 'EQUIVALENCE OR CROSS-REFERENCE--UNIFORM TITLE [OBSOLETE] [CAN/MARC only]', 'EQUIVALENCE OR CROSS-REFERENCE--UNIFORM TITLE [OBSOLETE] [CAN/MARC only]', 1, 0, '', ''),
-               ('941', 'EQUIVALENCE OR CROSS-REFERENCE--ROMANIZED TITLE [OBSOLETE] [CAN/MARC only]', 'EQUIVALENCE OR CROSS-REFERENCE--ROMANIZED TITLE [OBSOLETE] [CAN/MARC only]', 1, 0, '', ''),
-               ('943', 'EQUIVALENCE OR CROSS-REFERENCE--COLLECTIVE TITLE [OBSOLETE] [CAN/MARC only]', 'EQUIVALENCE OR CROSS-REFERENCE--COLLECTIVE TITLE [OBSOLETE] [CAN/MARC only]', 1, 0, '', ''),
+               ('911', 'EQUIVALENCE OR CROSS-REFERENCE-CONFERENCE OR MEETING NAME [LOCAL; CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-CONFERENCE OR MEETING NAME [LOCAL; CANADA]', 1, 0, '', ''),
+               ('930', 'EQUIVALENCE OR CROSS-REFERENCE-UNIFORM TITLE HEADING [LOCAL; CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-UNIFORM TITLE HEADING [LOCAL; CANADA]', 1, 0, '', ''),
+               ('936', 'OCLC/CONSER MISCELLANEOUS DATA (OCLC); PIECE USED FOR CATALOGING (PRE-AACR2) (RLIN)', 'OCLC/CONSER MISCELLANEOUS DATA (OCLC); PIECE USED FOR CATALOGING (PRE-AACR2) (RLIN)', 0, 0, '', ''),
+               ('940', 'EQUIVALENCE OR CROSS-REFERENCE--UNIFORM TITLE [OBSOLETE] [CAN/MARC ONLY]', 'EQUIVALENCE OR CROSS-REFERENCE--UNIFORM TITLE [OBSOLETE] [CAN/MARC ONLY]', 1, 0, '', ''),
+               ('941', 'EQUIVALENCE OR CROSS-REFERENCE--ROMANIZED TITLE [OBSOLETE] [CAN/MARC ONLY]', 'EQUIVALENCE OR CROSS-REFERENCE--ROMANIZED TITLE [OBSOLETE] [CAN/MARC ONLY]', 1, 0, '', ''),
+               ('943', 'EQUIVALENCE OR CROSS-REFERENCE--COLLECTIVE TITLE [OBSOLETE] [CAN/MARC ONLY]', 'EQUIVALENCE OR CROSS-REFERENCE--COLLECTIVE TITLE [OBSOLETE] [CAN/MARC ONLY]', 1, 0, '', ''),
                ('945', 'LOCAL PROCESSING INFORMATION (OCLC)', 'LOCAL PROCESSING INFORMATION (OCLC)', 1, 0, '', ''),
                ('946', 'LOCAL PROCESSING INFORMATION (OCLC)', 'LOCAL PROCESSING INFORMATION (OCLC)', 1, 0, '', ''),
                ('947', 'LOCAL PROCESSING INFORMATION (OCLC)', 'LOCAL PROCESSING INFORMATION (OCLC)', 1, 0, '', ''),
                ('948', 'LOCAL PROCESSING INFORMATION (OCLC); SERIES PART DESIGNATOR (RLIN)', 'LOCAL PROCESSING INFORMATION (OCLC); SERIES PART DESIGNATOR (RLIN)', 1, 0, '', ''),
                ('949', 'LOCAL PROCESSING INFORMATION (OCLC)', 'LOCAL PROCESSING INFORMATION (OCLC)', 1, 0, '', ''),
                ('950', 'LOCAL HOLDINGS (RLIN)', 'LOCAL HOLDINGS (RLIN)', 1, 0, '', ''),
-               ('951', 'EQUIVALENCE OR CROSS-REFERENCE--GEOGRAPHIC NAME/AREA NAME [OBSOLETE] [CAN/MARC only]', 'EQUIVALENCE OR CROSS-REFERENCE-GEOGRAPHIC NAME/AREA NAME [OBSOLETE] [CAN/MARC only]', 1, 0, '', ''),
+               ('951', 'EQUIVALENCE OR CROSS-REFERENCE--GEOGRAPHIC NAME/AREA NAME [OBSOLETE] [CAN/MARC ONLY]', 'EQUIVALENCE OR CROSS-REFERENCE--GEOGRAPHIC NAME/AREA NAME [OBSOLETE] [CAN/MARC ONLY]', 1, 0, '', ''),
                ('955', 'COPY-LEVEL INFORMATION (RLIN)', 'COPY-LEVEL INFORMATION (RLIN)', 1, 0, '', ''),
                ('956', 'LOCAL ELECTRONIC LOCATION AND ACCESS (OCLC)', 'LOCAL ELECTRONIC LOCATION AND ACCESS (OCLC)', 1, 0, '', ''),
                ('960', 'PHYSICAL LOCATION (RLIN)', 'PHYSICAL LOCATION (RLIN)', 1, 0, '', ''),
                ('967', 'ADDITIONAL ESTC CODES (RLIN)', 'ADDITIONAL ESTC CODES (RLIN)', 1, 0, '', ''),
-               ('980', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--PERSONAL NAME/TITLE [LOCAL, CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--PERSONAL NAME/TITLE [LOCAL, CANADA]', 1, 0, '', ''),
-               ('981', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--CORPORATE NAME/TITLE [LOCAL, CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--CORPORATE NAME/TITLE [LOCAL, CANADA]', 1, 0, '', ''),
-               ('982', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--CONFERENCE OR MEETING NAME/TITLE [LOCAL, CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--CONFERENCE OR MEETING NAME/TITLE [LOCAL, CANADA]', 1, 0, '', ''),
-               ('983', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--TITLE/UNIFORM TITLE [LOCAL, CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE--SERIES STATEMENT-TITLE/UNIFORM TITLE [LOCAL, CANADA]', 1, 0, '', ''),
+               ('980', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--PERSONAL NAME/TITLE [LOCAL; CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--PERSONAL NAME/TITLE [LOCAL; CANADA]', 1, 0, '', ''),
+               ('981', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--CORPORATE NAME/TITLE [LOCAL; CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--CORPORATE NAME/TITLE [LOCAL; CANADA]', 1, 0, '', ''),
+               ('982', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--CONFERENCE OR MEETING NAME/TITLE [LOCAL; CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--CONFERENCE OR MEETING NAME/TITLE [LOCAL; CANADA]', 1, 0, '', ''),
+               ('983', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--TITLE/UNIFORM TITLE [LOCAL; CANADA]', 'EQUIVALENCE OR CROSS-REFERENCE-SERIES STATEMENT--TITLE/UNIFORM TITLE [LOCAL; CANADA]', 1, 0, '', ''),
                ('984', 'WLN AUTOMATIC HOLDINGS STATEMENT (OCLC)', 'WLN AUTOMATIC HOLDINGS STATEMENT (OCLC)', 1, 0, '', ''),
                ('987', 'LOCAL ROMANIZATION/CONVERSION HISTORY (OCLC)', 'LOCAL ROMANIZATION/CONVERSION HISTORY (OCLC)', 1, 0, '', ''),
-               ('990', 'EQUIVALENCES OR CROSS-REFERENCES [LOCAL, CANADA]', 'EQUIVALENCES OR CROSS-REFERENCES [LOCAL, CANADA]', 1, 0, '', ''),
-               ('995', 'RECOMMENDATION 995 [LOCAL, UNIMARC FRANCE]', 'RECOMMENDATION 995 [LOCAL, UNIMARC FRANCE]', 1, 0, '', ''),
+               ('990', 'EQUIVALENCES OR CROSS-REFERENCES [LOCAL; CANADA]', 'EQUIVALENCES OR CROSS-REFERENCES [LOCAL; CANADA]', 1, 0, '', ''),
+               ('995', 'RECOMMENDATION 995 [LOCAL; UNIMARC FRANCE]', 'RECOMMENDATION 995 [LOCAL; UNIMARC FRANCE]', 1, 0, '', ''),
                ('998', 'LOCAL CONTROL INFORMATION (RLIN)', 'LOCAL CONTROL INFORMATION (RLIN)', 1, 0, '', '');
 
 
 
 INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`, `libopac`, `repeatable`, `mandatory`, `kohafield`, `tab`, `authorised_value`, `authtypecode`, `value_builder`, `isurl`, `hidden`, `frameworkcode`, `seealso`, `link`, `defaultvalue`) VALUES
-               ('000', '@', 'fixed length control field', 'fixed length control field', 0, 1, '', 0, '', '', 'marc21_leader.pl', 0, 0, '', '', '', NULL),
-               ('001', '@', 'control field', 'control field', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('003', '@', 'control field', 'control field', 0, 1, '', 0, '', '', 'marc21_field_003.pl', 0, 0, '', '', '', NULL),
-               ('005', '@', 'control field', 'control field', 0, 1, '', 0, '', '', 'marc21_field_005.pl', 0, 0, '', '', '', NULL),
-               ('006', '@', 'fixed length control field', 'fixed length control field', 0, 0, '', 0, '', '', 'marc21_field_006.pl', 0, -1, '', '', '', NULL),
-               ('007', '@', 'fixed length control field', 'fixed length control field', 0, 0, '', 0, '', '', 'marc21_field_007.pl', 0, 0, '', '', '', NULL),
-               ('008', '@', 'fixed length control field', 'fixed length control field', 0, 1, '', 0, '', '', 'marc21_field_008.pl', 0, 0, '', '', '', NULL),
-               ('009', '@', 'fixed length control field', 'fixed length control field', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('010', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', NULL, 0, -6, '', '', '', NULL),
-               ('010', 'a', 'LC control number', 'LC control number', 0, 0, 'biblioitems.lccn', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('010', 'b', 'NUCMC control number', 'NUCMC control number', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('010', 'z', 'Canceled/invalid LC control number', 'Canceled/invalid LC control number', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('000', '@', 'Campo de control de longitud fija', 'Campo de control de longitud fija', 0, 1, '', 0, '', '', 'marc21_leader.pl', 0, 0, '', '', '', NULL),
+               ('001', '@', 'Campo de control', 'Campo de control', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('003', '@', 'Campo de control', 'Campo de control', 0, 1, '', 0, '', '', 'marc21_field_003.pl', 0, 0, '', '', '', NULL),
+               ('005', '@', 'Campo de control', 'Campo de control', 0, 1, '', 0, '', '', 'marc21_field_005.pl', 0, 0, '', '', '', NULL),
+               ('006', '@', 'Campo de control de longitud fija', 'Campo de control de longitud fija', 0, 0, '', 0, '', '', 'marc21_field_006.pl', 0, -1, '', '', '', NULL),
+               ('007', '@', 'Campo de control de longitud fija', 'Campo de control de longitud fija', 0, 0, '', 0, '', '', 'marc21_field_007.pl', 0, 0, '', '', '', NULL),
+               ('008', '@', 'Campo de control de longitud fija', 'Campo de control de longitud fija', 0, 1, '', 0, '', '', 'marc21_field_008.pl', 0, 0, '', '', '', NULL),
+               ('009', '@', 'Campo de control de longitud fija', 'Campo de control de longitud fija', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('010', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', NULL, 0, -6, '', '', '', NULL),
+               ('010', 'a', 'Número de control de LC', 'Número de control de LC', 0, 0, 'biblioitems.lccn', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('010', 'b', 'Número de control de NUCMC', 'Número de control de NUCMC', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('010', 'z', 'Número de control de LC cancelado o no válido', 'Número de control de LC cancelado o no válido', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
                ('011', 'a', 'LC control number', 'LC control number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('013', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', NULL, 0, -6, '', '', '', NULL),
-               ('013', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('013', 'a', 'Number', 'Number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('013', 'b', 'Country', 'Country', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('013', 'c', 'Type of number', 'Type of number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('013', 'd', 'Date', 'Date', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('013', 'e', 'Status', 'Status', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('013', 'f', 'Party to document', 'Party to document', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('015', '2', 'Source', 'Source', 0, 0, '', 0, '', '', NULL, 0, 0, '', '', '', NULL),
-               ('015', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('015', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('015', 'a', 'National bibliography number', 'National bibliography number', 1, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('016', '2', 'Source', 'Source', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('016', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('016', 'a', 'Record control number', 'Record control number', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('016', 'z', 'Canceled or invalid record control number', 'Canceled or invalid record control number', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('017', '2', 'Source', 'Source', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('017', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('017', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('017', 'a', 'Copyright or legal deposit number', 'Copyright or legal deposit number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('017', 'b', 'Assigning agency', 'Assigning agency', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('017', 'd', 'Date', 'Date', 0, 0, '', 0, '', '', NULL, 0, -6, '', '', '', NULL),
-               ('017', 'i', 'Display text', 'Display text', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('018', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('018', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('018', 'a', 'Copyright article-fee code', 'Copyright article-fee code', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('013', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', NULL, 0, -6, '', '', '', NULL),
+               ('013', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('013', 'a', 'Número', 'Número', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('013', 'b', 'País', 'País', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('013', 'c', 'Tipo de número', 'Tipo de número', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('013', 'd', 'Fecha', 'Fecha', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('013', 'e', 'Estado', 'Estado', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('013', 'f', 'Parte responsable del documento', 'Parte responsable del documento', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('015', '2', 'Fuente', 'Fuente', 0, 0, '', 0, '', '', NULL, 0, 0, '', '', '', NULL),
+               ('015', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('015', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('015', 'a', 'Número de bibliografía nacional', 'Número de bibliografía nacional', 1, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('015', 'z', 'Número de bibliografía nacional cancelado/no válido', 'Número de bibliografía nacional cancelado/no válido', 1, 0,'', 1, '', '', '', 0,0, '', '', '', NULL),
+               ('016', '2', 'Fuente', 'Fuente', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('016', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('016', 'a', 'Número de control del registro', 'Número de control del registro', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('016', 'z', 'Número de control cancelado/no válido', 'Número de control cancelado/no válido', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('017', '2', 'Fuente', 'Fuente', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('017', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('017', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('017', 'a', 'Número de copyright o de depósito legal', 'Número de copyright o de depósito legal', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('017', 'b', 'Agencia que asigna el número', 'Agencia que asigna el número', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('017', 'd', 'Fecha', 'Fecha', 0, 0, '', 0, '', '', NULL, 0, -6, '', '', '', NULL),
+               ('017', 'i', 'Texto de visualización', 'Texto de visualización', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('017', 'z', 'Número de copyright o de depósito legal cancelado/no válido', 'Número de copyright o de depósito legal cancelado/no válido','1','0','','1','','','','0','-6','','','',NULL),
+               ('018', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('018', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('018', 'a', 'Código de copyright sobre la tarifa del artículo', 'Código de copyright sobre la tarifa del artículo', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('01e', 'a', 'Coded field error', 'Coded field error', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('020', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('020', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('020', 'a', 'International Standard Book Number', 'International Standard Book Number', 0, 0, 'biblioitems.isbn', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('020', 'c', 'Terms of availability', 'Terms of availability', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('020', 'z', 'Cancelled/invalid ISBN', 'Cancelled/invalid ISBN', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('022', '2', 'Source', 'Source', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('022', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('022', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('022', 'a', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, 'biblioitems.issn', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('022', 'y', 'Incorrect ISSN', 'Incorrect ISSN', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('022', 'z', 'Canceled ISSN', 'Canceled ISSN', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('020', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('020', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('020', 'a', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 0, 0, 'biblioitems.isbn', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('020', 'c', 'Condiciones de disponibilidad', 'Condiciones de disponibilidad', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('020', 'z', 'ISBN cancelado o no válido', 'ISBN cancelado o no válido', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('022', '2', 'Fuente', 'Fuente', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('022', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('022', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('022', 'a', 'Número Internacional Normalizado para Publicaciones Seriadas', 'Número Internacional Normalizado para Publicaciones Seriadas', 0, 0, 'biblioitems.issn', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('022', 'l', 'ISSN-L', 'ISSN-L','0','0','','0','','','','0','0','','','',NULL),
+               ('022', 'm', 'ISSN-L cancelado', 'ISSN-L cancelado','1','0','','0','','','','0','0','','','',NULL),
+               ('022', 'y', 'ISSN incorrecto', 'ISSN incorrecto', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('022', 'z', 'ISSN cancelado', 'ISSN cancelado', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
                ('023', 'a', 'Standard film number', 'Standard film number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('024', '2', 'Source of number or code', 'Source of number or code', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('024', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('024', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('024', 'a', 'Standard number or code', 'Standard number or code', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('024', 'b', 'Additional codes following the standard number [OBSOLETE]', 'Additional codes following the standard number [OBSOLETE]', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('024', 'c', 'Terms of availability', 'Terms of availability', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('024', 'd', 'Additional codes following the standard number or code', 'Additional codes following the standard number or code', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('024', 'z', 'Canceled/invalid standard number or code', 'Canceled/invalid standard number or code', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('025', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('025', 'a', 'Overseas acquisition number', 'Overseas acquisition number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('026', '2', 'Source', 'Source', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('026', '5', 'Institution to which field applies', 'Institution to which field applies', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('026', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('026', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('026', 'a', 'First and second groups of characters', 'First and second groups of characters', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('026', 'b', 'Third and fourth groups of characters', 'Third and fourth groups of characters', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('026', 'c', 'Date', 'Date', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('026', 'd', 'Number of volume or part', 'Number of volume or part', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('026', 'e', 'unparsed fingerprint', 'unparsed fingerprint', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('027', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('027', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('027', 'a', 'Standard technical report number', 'Standard technical report number', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('027', 'z', 'Canceled/invalid number', 'Canceled/invalid number', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('028', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('028', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('028', 'a', 'Publisher number', 'Publisher number', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('028', 'b', 'Source', 'Source', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('030', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('030', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('024', '2', 'Fuente del número o código', 'Fuente del número o código', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('024', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('024', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('024', 'a', 'Número normalizado o código', 'Número normalizado o código', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('024', 'c', 'Condiciones de disponibilidad', 'Condiciones de disponibilidad', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('024', 'd', 'Códigos adicionales que siguen al número normalizado o código', 'Códigos adicionales que siguen al número normalizado o código', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('024', 'z', 'Número normalizado o código cancelado/no válido', 'Número normalizado o código cancelado/no válido', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('025', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('025', 'a', 'Número de adquisición en el extranjero', 'Número de adquisición en el extranjero', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('026', '2', 'Fuente', 'Fuente', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('026', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('026', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('026', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('026', 'a', 'Primer y segundo grupo de caracteres', 'Primer y segundo grupo de caracteres', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('026', 'b', 'Tercer y cuarto grupo de caracteres', 'Tercer y cuarto grupo de caracteres', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('026', 'c', 'Fecha', 'Fecha', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('026', 'd', 'Número de volumen o parte', 'Número de volumen o parte', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('026', 'e', 'Identificador tipográfico no disgregado', 'Identificador tipográfico no disgregado', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('027', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('027', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('027', 'a', 'Número Normalizado de Informe Técnico', 'Número Normalizado de Informe Técnico', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('027', 'z', 'Número cancelado/no válido', 'Número cancelado/no válido', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('028', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('028', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('028', 'a', 'Número de editor', 'Número de editor', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('028', 'b', 'Fuente', 'Fuente', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('028', 'q', 'Información de cualificación', 'Información de cualificación', 1, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('029', 'a', 'OCLC library identifier', 'OCLC library identifier', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('029', 'b', 'System control number', 'System control number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('029', 'c', 'OAI set name', 'OAI set name', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('029', 't', 'Content type identifier', 'Content type identifier', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('030', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('030', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('030', 'a', 'CODEN', 'CODEN', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('030', 'z', 'Canceled/invalid CODEN', 'Canceled/invalid CODEN', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', '2', 'System code', 'System code', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'a', 'Number of work', 'Number of work', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'b', 'Number of movement', 'Number of movement', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'c', 'Number of excerpt', 'Number of excerpt', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'd', 'Caption or heading', 'Caption or heading', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'e', 'Role', 'Role', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'g', 'Clef', 'Clef', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'm', 'Voice/instrument', 'Voice/instrument', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'n', 'Key signature', 'Key signature', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'o', 'Time signature', 'Time signature', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'p', 'Musical notation', 'Musical notation', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'q', 'General note', 'General note', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'r', 'Key or mode', 'Key or mode', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 's', 'Coded validity note', 'Coded validity note', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 't', 'Text incipit', 'Text incipit', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 0, '', '', '', 1, -6, '', '', '', NULL),
-               ('031', 'y', 'Link text', 'Link text', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('031', 'z', 'Public note', 'Public note', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('032', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', NULL, 0, -6, '', '', '', NULL),
-               ('032', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('032', 'a', 'Postal registration number', 'Postal registration number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('032', 'b', 'Source (agency assigning number)', 'Source (agency assigning number)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('033', '3', 'Materials specified', 'Materials specified', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('033', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('033', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('033', 'a', 'Formatted date/time', 'Formatted date/time', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('033', 'b', 'Geographic classification area code', 'Geographic classification area code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('033', 'c', 'Geographic classification subarea code', 'Geographic classification subarea code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', '2', 'Source', 'Source', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'a', 'Category of scale', 'Category of scale', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'b', 'Constant ratio linear horizontal scale', 'Constant ratio linear horizontal scale', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'c', 'Constant ratio linear vertical scale', 'Constant ratio linear vertical scale', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'd', 'Coordinates--westernmost longitude', 'Coordinates--westernmost longitude', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'e', 'Coordinates--easternmost longitude', 'Coordinates--easternmost longitude', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'f', 'Coordinates--northernmost latitude', 'Coordinates--northernmost latitude', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'g', 'Coordinates--southernmost latitude', 'Coordinates--southernmost latitude', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'h', 'Angular scale', 'Angular scale', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'j', 'Declination--northern limit', 'Declination--northern limit', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'k', 'Declination--southern limit', 'Declination--southern limit', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'm', 'Right ascension--eastern limit', 'Right ascension--eastern limit', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'n', 'Right ascension--western limit', 'Right ascension--western limit', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'p', 'Equinox', 'Equinox', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'r', 'Distance from earth', 'Distance from earth', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 's', 'G-ring latitude', 'G-ring latitude', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 't', 'G-ring longitude', 'G-ring longitude', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'x', 'Beginning date', 'Beginning date', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'y', 'Ending date', 'Ending date', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('034', 'z', 'Name of extraterrestrial body', 'Name of extraterrestrial body', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('035', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('035', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('035', 'a', 'System control number', 'System control number', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('035', 'z', 'Canceled/invalid control number', 'Canceled/invalid control number', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('036', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('036', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('036', 'a', 'Original study number', 'Original study number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('036', 'b', 'Source (agency assigning number)', 'Source (agency assigning number)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('037', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('037', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('037', 'a', 'Stock number', 'Stock number', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('037', 'b', 'Source of stock number/acquisition', 'Source of stock number/acquisition', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('037', 'c', 'Terms of availability', 'Terms of availability', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('037', 'f', 'Form of issue', 'Form of issue', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('037', 'g', 'Additional format characteristics', 'Additional format characteristics', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('037', 'n', 'Note', 'Note', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('038', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('038', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('038', 'a', 'Record content licensor', 'Record content licensor', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('039', 'a', 'Level of rules in bibliographic description', 'Level of rules in bibliographic description', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('039', 'b', 'Level of effort used to assign nonsubject heading access points', 'Level of effort used to assign nonsubject heading access points', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('039', 'c', 'Level of effort used to assign subject headings', 'Level of effort used to assign subject headings', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('039', 'd', 'Level of effort used to assign classification', 'Level of effort used to assign classification', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('039', 'e', 'Number of fixed field character positions coded', 'Number of fixed field character positions coded', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('040', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('040', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('040', 'a', 'Original cataloging agency', 'Original cataloging agency', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('040', 'b', 'Language of cataloging', 'Language of cataloging', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('040', 'c', 'Transcribing agency', 'Transcribing agency', 0, 1, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('040', 'd', 'Modifying agency', 'Modifying agency', 1, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('040', 'e', 'Description conventions', 'Description conventions', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('041', '2', 'Source of code', 'Source of code', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('041', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('041', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('041', 'a', 'Language code of text/sound track or separate title', 'Language code of text/sound track or separate title', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('041', 'b', 'Language code of summary or abstract/overprinted title or subtitle', 'Language code of summary or abstract/overprinted title or subtitle', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('041', 'c', 'Languages of separate titles (VM) [OBSOLETE] ; Languages of available translation  (SE) [OBSOLETE]', 'Languages of separate titles (VM) [OBSOLETE] ; Languages of available translation  (SE) [OBSOLETE]', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('041', 'd', 'Language code of sung or spoken text', 'Language code of sung or spoken text', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('041', 'e', 'Language code of librettos', 'Language code of librettos', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('041', 'f', 'Language code of table of contents', 'Language code of table of contents', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('041', 'g', 'Language code of accompanying material other than librettos', 'Language code of accompanying material other than librettos', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('041', 'h', 'Language code of original and/or intermediate translations of text', 'Language code of original and/or intermediate translations of text', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('042', 'a', 'Authentication code', 'Authentication code', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('043', '2', 'Source of local code', 'Source of local code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('043', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('043', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('043', 'a', 'Geographic area code', 'Geographic area code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('043', 'b', 'Local GAC code', 'Local GAC code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('043', 'c', 'ISO code', 'ISO code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('044', '2', 'Source of local subentity code', 'Source of local subentity code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('044', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('044', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('044', 'a', 'MARC country code', 'MARC country code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('044', 'b', 'Local subentity code', 'Local subentity code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('044', 'c', 'ISO country code', 'ISO country code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('045', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('045', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('045', 'a', 'Time period code', 'Time period code', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('045', 'b', 'Formatted 9999 B.C. through C.E. time period', 'Formatted 9999 B.C. through C.E. time period', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('045', 'c', 'Formatted pre-9999 B.C. time period', 'Formatted pre-9999 B.C. time period', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', '2', 'Source of date', 'Source of date', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', 'a', 'Type of date code', 'Type of date code', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', 'b', 'Date 1 (B.C. date)', 'Date 1 (B.C. date)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', 'c', 'Date 1 (C.E. date)', 'Date 1 (C.E. date)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', 'd', 'Date 2 (B.C. date)', 'Date 2 (B.C. date)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', 'e', 'Date 2 (C.E. date)', 'Date 2 (C.E. date)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', 'j', 'Date resource modified', 'Date resource modified', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', 'k', 'Beginning or single date created', 'Beginning or single date created', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', 'l', 'Ending date created', 'Ending date created', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', 'm', 'Beginning of date valid', 'Beginning of date valid', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('046', 'n', 'End of date valid', 'End of date valid', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('047', '2', 'Source of code', 'Source of code', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('047', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('047', 'a', 'Form of musical composition code', 'Form of musical composition code', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('048', '2', 'Source of code', 'Source of code', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('048', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('048', 'a', 'Performer or ensemble', 'Performer or ensemble', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
-               ('048', 'b', 'Soloist', 'Soloist', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('030', 'z', 'CODEN cancelado/no válido', 'CODEN cancelado/no válido', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', '2', 'Código del sistema', 'Código del sistema', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'a', 'Número de la obra', 'Número de la obra', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'b', 'Número del movimiento', 'Número del movimiento', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'c', 'Número del pasaje', 'Número del pasaje', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'd', 'Título o encabezamiento', 'Título o encabezamiento', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'e', 'Personaje', 'Personaje', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'g', 'Clave', 'Clave', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'm', 'Voz/instrumento', 'Voz/instrumento', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'n', 'Armadura', 'Armadura', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'o', 'Compás', 'Compás', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'p', 'Notación musical', 'Notación musical', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'q', 'Nota general', 'Nota general', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'r', 'Tonalidad o modo', 'Tonalidad o modo', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 's', 'Nota de validez codificada', 'Nota de validez codificada', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 't', 'Texto del íncipit', 'Texto del íncipit', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'u', 'Identificador Uniforme del Recurso', 'Identificador Uniforme del Recurso', 1, 0, '', 0, '', '', '', 1, -6, '', '', '', NULL),
+               ('031', 'y', 'Texto del enlace', 'Texto del enlace', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('031', 'z', 'Nota pública', 'Nota pública', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('032', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', NULL, 0, -6, '', '', '', NULL),
+               ('032', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('032', 'a', 'Número de registro postal', 'Número de registro postal', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('032', 'b', 'Agencia que asigna el número', 'Agencia que asigna el número', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('033', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('033', '2', 'Fuente del término', 'Fuente del término','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('033', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('033', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('033', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('033', 'a', 'Fecha/hora formateada', 'Fecha/hora formateada', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('033', 'b', 'Código de clasificación de área geográfica', 'Código de clasificación de área geográfica', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('033', 'c', 'Código de clasificación de subárea geográfica', 'Código de clasificación de subárea geográfica', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('033', 'p', 'Lugar del acontecimiento', 'Lugar del acontecimiento','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('034', '0', 'Número de control del registro de autoridad o número normalizado', 'Número de control del registro de autoridad o número normalizado','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('034', '2', 'Fuente', 'Fuente', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','0','','','','0','-6', '', '', '', NULL),
+               ('034', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'a', 'Tipo de scala', 'Tipo de scala', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'b', 'Escala horizontal lineal (razón constante)', 'Escala horizontal lineal (razón constante)', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'c', 'Escala vertical lineal (razón constante)', 'Escala vertical lineal (razón constante)', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'd', 'Coordenadas - longitud más occidental', 'Coordenadas - longitud más occidental', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'e', 'Coordenadas - longitud más oriental', 'Coordenadas - longitud más oriental', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'f', 'Coordenadas - latitud más septentrional', 'Coordenadas - latitud más septentrional', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'g', 'Coordenadas - latitud más meridional', 'Coordenadas - latitud más meridional', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'h', 'Escala angular', 'Escala angular', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'j', 'Declinación-límite septentrional', 'Declinación-límite septentrional', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'k', 'Declinación-límite meridional', 'Declinación-límite meridional', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'm', 'Ascensión recta-límite oriental', 'Ascensión recta-límite oriental', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'n', 'Ascensión recta-límite occidental', 'Ascensión recta-límite occidental', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'p', 'Equinoccio', 'Equinoccio', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'r', 'Distancia desde la tierra', 'Distancia desde la tierra', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 's', 'Latitud del anillo-G', 'Latitud del anillo-G', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 't', 'Longitud del anillo-G', 'Longitud del anillo-G', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'x', 'Fecha de inicio', 'Fecha de inicio', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'y', 'Fecha de finalización', 'Fecha de finalización', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('034', 'z', 'Nombre del cuerpo extraterrestre', 'Nombre del cuerpo extraterrestre', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('035', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('035', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('035', 'a', 'Número de control del sistema', 'Número de control del sistema', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('035', 'z', 'Número de control cancelado/no válido', 'Número de control cancelado/no válido', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('036', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('036', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('036', 'a', 'Número de estudio original', 'Número de estudio original', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('036', 'b', 'Fuente (agencia que asigna el número)', 'Fuente (agencia que asigna el número)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('037', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('037', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('037', 'a', 'Número de adquisición', 'Número de adquisición', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('037', 'b', 'Fuente del número de adquisición', 'Fuente del número de adquisición', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('037', 'c', 'Condiciones de disponibilidad', 'Condiciones de disponibilidad', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('037', 'f', 'Formato de la publicación', 'Formato de la publicación', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('037', 'g', 'Características adicionales del formato', 'Características adicionales del formato', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('037', 'n', 'Nota', 'Nota', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('038', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('038', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('038', 'a', 'Licenciador del contenido del registro', 'Licenciador del contenido del registro', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('039', 'a', 'Bibliographic description - level of rules used', 'Bibliographic description - level of rules used', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('039', 'b', 'Access points excluding subject access - level of effort used to assign access', 'Access points excluding subject access - level of effort used to assign access', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('039', 'c', 'Subject headings - level of effort used to assign', 'Subject headings - level of effort used to assign', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('039', 'd', 'Classification - level of effort used to assign', 'Classification - level of effort used to assign', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('039', 'e', 'Fixed fields - number of positions coded', 'Fixed fields - number of positions coded', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('040', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('040', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('040', 'a', 'Centro catalogador de origen', 'Centro catalogador de origen', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('040', 'b', 'Lengua de catalogación', 'Lengua de catalogación', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('040', 'c', 'Centro transcriptor', 'Centro transcriptor', 0, 1, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('040', 'd', 'Centro modificador', 'Centro modificador', 1, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('040', 'e', 'Normas de descripción', 'Normas de descripción', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('041', '2', 'Fuente del código', 'Fuente del código', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('041', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('041', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('041', 'a', 'Código de lengua del texto/banda sonora o título independiente', 'Código de lengua del texto/banda sonora o título independiente', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('041', 'b', 'Código de lengua del sumario o resumen', 'Código de lengua del sumario o resumen', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('041', 'd', 'Código de lengua del texto cantado o hablado', 'Código de lengua del texto cantado o hablado', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('041', 'e', 'Código de lengua de los libretos', 'Código de lengua de los libretos', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('041', 'f', 'Código de lengua de la tabla de contenido', 'Código de lengua de la tabla de contenido', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('041', 'g', 'Código de lengua del material anejo si no son libretos', 'Código de lengua del material anejo si no son libretos', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('041', 'h', 'Código de lengua original', 'Código de lengua original', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('041', 'j', 'Código de lengua de los subtítulos o leyendas', 'Código de lengua de los subtítulos o leyendas','1','0','','0','','','','0','-1', '', '', '', NULL),
+               ('041', 'k', 'Código de lengua de las traducciones intermedias', 'Código de lengua de las traducciones intermedias','1','0','','0','','','','0','-1', '', '', '', NULL),
+               ('041', 'm', 'Código de lengua del material anejo original si no son libretos', 'Código de lengua del material anejo original si no son libretos','1','0','','0','','','','0','-1', '', '', '', NULL),
+               ('041', 'n', 'Código de lengua del libreto original', 'Código de lengua del libreto original','1','0','','0','','','','0','-1', '', '', '', NULL),
+               ('042', 'a', 'Código de autenticación', 'Código de autenticación', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('043', '0', 'Número de control del registro de autoridad o número normalizado', 'Número de control del registro de autoridad o número normalizado','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('043', '2', 'Fuente del código local', 'Fuente del código local', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('043', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('043', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('043', 'a', 'Código de área geográfica', 'Código de área geográfica', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('043', 'b', 'Código local GAC', 'Código local GAC', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('043', 'c', 'Código ISO', 'Código ISO', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('044', '2', 'Fuente del código de subentidad local', 'Fuente del código de subentidad local', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('044', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('044', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('044', 'a', 'Código MARC del país', 'Código MARC del país', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('044', 'b', 'Código de subentidad local', 'Código de subentidad local', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('044', 'c', 'Código ISO del país', 'Código ISO del país', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('045', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('045', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('045', 'a', 'Código de periodo de tiempo', 'Código de periodo de tiempo', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('045', 'b', 'Periodo de tiempo normalizado  posterior a 9999 a.C.', 'Periodo de tiempo normalizado  posterior a 9999 a.C.', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('045', 'c', 'Periodo de tiempo normalizado  anterior a 9999 a.C.', 'Periodo de tiempo normalizado  anterior a 9999 a.C.', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', '2', 'Fuente de la fecha', 'Fuente de la fecha', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', 'a', 'Código de tipo de fecha', 'Código de tipo de fecha', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', 'b', 'Primera fecha (fecha a.C.)', 'Primera fecha (fecha a.C.)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', 'c', 'Primera fecha (fecha d.C.)', 'Primera fecha (fecha d.C.)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', 'd', 'Segunda fecha (fecha a.C.)', 'Segunda fecha (fecha a.C.)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', 'e', 'Segunda fecha (fecha d.C.)', 'Segunda fecha (fecha d.C.)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', 'j', 'Fecha de modificación del recurso', 'Fecha de modificación del recurso', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', 'k', 'Fecha única o de inicio de la creación', 'Fecha única o de inicio de la creación', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', 'l', 'Fecha de finalización de la creación', 'Fecha de finalización de la creación', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', 'm', 'Fecha de inicio de validez', 'Fecha de inicio de validez', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('046', 'n', 'Fecha de fin de validez', 'Fecha de fin de validez', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('047', '2', 'Fuente del código', 'Fuente del código', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('047', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('047', 'a', 'Código de forma de la composición musical', 'Código de forma de la composición musical', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('048', '2', 'Fuente del código', 'Fuente del código', 0, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('048', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('048', 'a', 'Intérprete o conjunto', 'Intérprete o conjunto', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
+               ('048', 'b', 'Solista', 'Solista', 1, 0, '', 0, '', '', '', 0, -1, '', '', '', NULL),
                ('049', 'a', 'Holding library', 'Holding library', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('049', 'c', 'Copy statement', 'Copy statement', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('049', 'd', 'Definition of bibliographic subdivisions', 'Definition of bibliographic subdivisions', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
@@ -724,85 +766,109 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('049', 'p', 'Secondary bibliographic subdivision', 'Secondary bibliographic subdivision', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('049', 'q', 'Third bibliographic subdivision', 'Third bibliographic subdivision', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('049', 'r', 'Fourth bibliographic subdivision', 'Fourth bibliographic subdivision', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('049', 's', 'Fifth bibliographic subdivision', 'Fifth bibliographic subdivision', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('049', 's', 'Fifth bibliographic subdivision', 'Fifth bibliographic subdivision', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('049', 't', 'Sixth bibliographic subdivision', 'Sixth bibliographic subdivision', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('049', 'u', 'Seventh bibliographic subdivision', 'Seventh bibliographic subdivision', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('049', 'v', 'Primary bibliographic subdivision', 'Primary bibliographic subdivision', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('049', 'y', 'Inclusive dates of publication or coverage', 'Inclusive dates of publication or coverage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('050', '3', 'Materials specified', 'Materials specified', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('050', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('050', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('050', 'a', 'Classification number', 'Classification number', 1, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('050', 'b', 'Item number', 'Item number', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
-               ('050', 'd', 'Supplementary class number (MU) [OBSOLETE]', 'Supplementary class number (MU) [OBSOLETE]', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('051', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('051', 'a', 'Classification number', 'Classification number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('051', 'b', 'Item number', 'Item number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('051', 'c', 'Copy information', 'Copy information', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('052', '2', 'Code Source', 'Code Source', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('052', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('052', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('052', 'a', 'Geographic classification area code', 'Geographic classification area code', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('052', 'b', 'Geographic classification subarea code', 'Geographic classification subarea code', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('052', 'c', 'Subject (MP) [OBSOLETE]', 'Subject (MP) [OBSOLETE]', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('052', 'd', 'Populated place name', 'Populated place name', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('055', '2', 'Source of call/class number', 'Source of call/class number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('055', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('055', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('055', 'a', 'Classification number', 'Classification number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('055', 'b', 'Item number', 'Item number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('060', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('060', 'a', 'Classification number', 'Classification number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('060', 'b', 'Item number', 'Item number', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('061', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('061', 'a', 'Classification number', 'Classification number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('061', 'b', 'Item number', 'Item number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('061', 'c', 'Copy information', 'Copy information', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('066', 'a', 'Primary G0 character set', 'Primary G0 character set', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('066', 'b', 'Primary G1 character set', 'Primary G1 character set', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('066', 'c', 'Alternate G0 or G1 character set', 'Alternate G0 or G1 character set', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('070', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('070', 'a', 'Classification number', 'Classification number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('070', 'b', 'Item number', 'Item number', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('071', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('071', 'a', 'Classification number', 'Classification number', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('071', 'b', 'Item number', 'Item number', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('071', 'c', 'Copy information', 'Copy information', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('072', '2', 'Source', 'Source', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('072', '6', 'Linkage', 'Linkage', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('072', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('072', 'a', 'Subject category code', 'Subject category code', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('072', 'x', 'Subject category code subdivision', 'Subject category code subdivision', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('074', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('074', 'a', 'GPO item number', 'GPO item number', 0, 0, NULL, 0, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('074', 'z', 'Canceled/invalid GPO item number', 'Canceled/invalid GPO item number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('080', '2', 'Edition identifier', 'Edition identifier', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('080', '6', 'Linkage', 'Linkage', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('080', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('080', 'a', 'Universal Decimal Classification number', 'Universal Decimal Classification number', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('080', 'b', 'Item number', 'Item number', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('080', 'x', 'Common auxiliary subdivision', 'Common auxiliary subdivision', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('082', '2', 'Edition number', 'Edition number', 0, 0, '', 0, '', '', '', NULL, 0, '', '', '', NULL),
-               ('082', '6', 'Linkage', 'Linkage', 0, 0, '', 0, '', '', '', NULL, -6, '', '', '', NULL),
-               ('082', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 0, '', '', '', NULL, -6, '', '', '', NULL),
-               ('082', 'a', 'Classification number', 'Classification number', 1, 0, '', 0, '', '', '', NULL, 0, '', '', '', NULL),
-               ('082', 'b', 'Item number', 'Item number', 0, 0, '', 0, '', '', '', NULL, 0, '', '', '', NULL),
-               ('084', '2', 'Source of number', 'Source of number', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('084', '6', 'Linkage', 'Linkage', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('084', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('084', 'a', 'Classification number', 'Classification number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('084', 'b', 'Item number', 'Item number', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('086', '2', 'Number source', 'Number source', 0, 0, NULL, 0, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('086', '6', 'Linkage', 'Linkage', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('086', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('086', 'a', 'Classification number', 'Classification number', 0, 0, NULL, 0, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('086', 'z', 'Canceled/invalid classification number', 'Canceled/invalid classification number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('050', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('050', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('050', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('050', 'a', 'Número de clasificación', 'Número de clasificación', 1, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('050', 'b', 'Número de documento', 'Número de documento', 0, 0, '', 0, '', '', '', 0, 0, '', '', '', NULL),
+               ('051', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('051', 'a', 'Número de clasificación', 'Número de clasificación', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('051', 'b', 'Número de ejemplar', 'Número de ejemplar', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('051', 'c', 'Información sobre otras copias', 'Información sobre otras copias', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('052', '2', 'Fuente del código', 'Fuente del código', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('052', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('052', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('052', 'a', 'Código de clasificación de área geográfica', 'Código de clasificación de área geográfica', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('052', 'b', 'Código de clasificación de subárea geográfica', 'Código de clasificación de subárea geográfica', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('052', 'd', 'Nombre de la población', 'Nombre de la población', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('055', '2', 'Fuente del número de signatura/clasificación', 'Fuente del número de signatura/clasificación', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('055', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('055', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('055', 'a', 'Número de clasificación', 'Número de clasificación', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('055', 'b', 'Número del documento', 'Número del documento', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('060', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('060', 'a', 'Número de clasificación', 'Número de clasificación', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('060', 'b', 'Número de documento', 'Número de documento', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('061', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('061', 'a', 'Número de clasificación', 'Número de clasificación', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('061', 'b', 'Número de documento', 'Número de documento', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('061', 'c', 'Información sobre otras copias', 'Información sobre otras copias', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('066', 'a', 'Juego de caracteres básico G0', 'Juego de caracteres básico G0', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('066', 'b', 'Juego de caracteres básico G1', 'Juego de caracteres básico G1', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('066', 'c', 'Juego de caracteres alternativo G0 o G1', 'Juego de caracteres alternativo G0 o G1', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('070', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('070', 'a', 'Número de clasificación', 'Número de clasificación', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('070', 'b', 'Número de documento', 'Número de documento', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('071', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('071', 'a', 'Número de clasificación', 'Número de clasificación', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('071', 'b', 'Número de documento', 'Número de documento', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('071', 'c', 'Información sobre otras copias', 'Información sobre otras copias', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
+               ('072', '2', 'Fuente', 'Fuente', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('072', '6', 'Enlace', 'Enlace', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('072', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('072', 'a', 'Código de categoría de materia', 'Código de categoría de materia', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('072', 'x', 'Subdivisión del código de categoría de materia', 'Subdivisión del código de categoría de materia', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('074', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('074', 'a', 'Número de documento de la GPO', 'Número de documento de la GPO', 0, 0, NULL, 0, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('074', 'z', 'Número de documento de la GPO cancelado/no válido', 'Número de documento de la GPO cancelado/no válido', 1, 0, NULL, 0, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('080', '2', 'Identificador de la edición', 'Identificador de la edición', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('080', '6', 'Enlace', 'Enlace', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('080', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('080', 'a', 'Número de la Clasificación Decimal Universal', 'Número de la Clasificación Decimal Universal', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('080', 'b', 'Número del documento', 'Número del documento', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('080', 'x', 'Subdivisión auxiliar común', 'Subdivisión auxiliar común', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('082', '2', 'Número de edición', 'Número de edición', 0, 0, '', 0, '', '', '', NULL, 0, '', '', '', NULL),
+               ('082', '6', 'Enlace', 'Enlace', 0, 0, '', 0, '', '', '', NULL, -6, '', '', '', NULL),
+               ('082', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 0, '', '', '', NULL, -6, '', '', '', NULL),
+               ('082', 'a', 'Número de clasificación', 'Número de clasificación', 1, 0, '', 0, '', '', '', NULL, 0, '', '', '', NULL),
+               ('082', 'b', 'Número de documento', 'Número de documento', 0, 0, '', 0, '', '', '', NULL, 0, '', '', '', NULL),
+               ('082', 'm', 'Designación estándar u opcional', 'Designación estándar u opcional','0','0','','0','','','','0','0', '', '', '', NULL),
+               ('082', 'q', 'Agencia que asigna el número', 'Agencia que asigna el número','0','0','','0','','','','0','0', '', '', '', NULL),
+               ('083', '2', 'Número de edición', 'Número de edición','0','0','','0','','','','0','0', '', '', '', NULL),
+               ('083', '6', 'Enlace', 'Enlace','0','0','','0','','','','0','0', '', '', '', NULL),
+               ('083', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','0','','','','0','0', '', '', '', NULL),
+               ('083', 'a', 'Número de clasificación', 'Número de clasificación','1','0','','0','','','','0','0', '', '', '', NULL),
+               ('083', 'c', 'Número de clasificación - Último número del rango', 'Número de clasificación - Último número del rango','1','0','','0','','','','0','0', '', '', '', NULL),
+               ('083', 'm', 'Designación estándar u opcional', 'Designación estándar u opcional','0','0','','0','','','','0','0', '', '', '', NULL),
+               ('083', 'q', 'Agencia que asigna el número', 'Agencia que asigna el número','0','0','','0','','','','0','0', '', '', '', NULL),
+               ('083', 'y', 'Número secuencial de tabla para subordenación interna o tabla añadida', 'Número secuencial de tabla para subordenación interna o tabla añadida','1','0','','0','','','','0','0', '', '', '', NULL),
+               ('083', 'z', 'Identificador de tabla', 'Identificador de tabla','1','0','','0','','','','0','0', '', '', '', NULL),
+               ('084', '2', 'Fuente del número', 'Fuente del número', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('084', '6', 'Enlace', 'Enlace', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('084', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('084', 'a', 'Número de clasificación', 'Número de clasificación', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('084', 'b', 'Número de documento', 'Número de documento', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('084', 'q', 'Agencia que asigna el número', 'Agencia que asigna el número','0','0','','0','','','','0','-6','','','',NULL),
+               ('085', '6', 'Enlace', 'Enlace','0','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 'a', 'Número de donde se han tomado las instrucciones - número único o comienzo de un rango numérico', 'Número de donde se han tomado las instrucciones - número único o comienzo de un rango numérico','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 'b', 'Número base', 'Número base','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 'c', 'Número de clasificación - final de un rango numérico', 'Número de clasificación - final de un rango numérico','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 'f', 'Indicador de faceta', 'Indicador de faceta','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 'r', 'Número raíz', 'Número raíz','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 's', 'Dígitos añadidos a partir de un número de clasificación de un esquema o tabla externa', 'Dígitos añadidos a partir de un número de clasificación de un esquema o tabla externa','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 't', 'Dígitos añadidos a partir de una subordenación interna o una tabla adicional', 'Dígitos añadidos a partir de una subordenación interna o una tabla adicional','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 'u', 'Número que se analiza', 'Número que se analiza','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 'v', 'Número de una subordenación interna o tabla adicional en el que se dan las pautas [de agregación]', 'Número de una subordenación interna o tabla adicional en el que se dan las pautas [de agregación]','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 'w', 'Identificador de tabla - Subordenación interna o tabla adicional', 'Identificador de tabla - Subordenación interna o tabla adicional','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 'y', 'Número secuencial de tabla para subordenación interna o tabla adicional', 'Número secuencial de tabla para subordenación interna o tabla adicional','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('085', 'z', 'Identificador de tabla', 'Identificador de tabla','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('086', '2', 'Fuente del número', 'Fuente del número', 0, 0, NULL, 0, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('086', '6', 'Enlace', 'Enlace', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('086', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('086', 'a', 'Número de clasificación', 'Número de clasificación', 0, 0, NULL, 0, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('086', 'z', 'Número de clasificación cancelado/no válido', 'Número de clasificación cancelado/no válido', 1, 0, NULL, 0, NULL, NULL, '', NULL, -1, '', '', '', NULL),
                ('087', 'a', 'Report number [OBSOLETE, CAN/MARC]', 'Report number [OBSOLETE, CAN/MARC]', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('087', 'z', 'Canceled/invalid report number [OBSOLETE, CAN/MARC]', 'Canceled/invalid report number [OBSOLETE, CAN/MARC]', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('088', '6', 'Linkage', 'Linkage', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('088', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('088', 'a', 'Report number', 'Report number', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('088', 'z', 'Canceled/invalid report number', 'Canceled/invalid report number', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('088', '6', 'Enlace', 'Enlace', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('088', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('088', 'a', 'Número de informe', 'Número de informe', 0, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('088', 'z', 'Número de informe cancelado/no válido', 'Número de informe cancelado/no válido', 1, 0, NULL, 0, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('090', 'a', 'Classification number (OCLC) (R) ; Classification number, CALL (RLIN) (NR)', 'Classification number (OCLC) (R) ; Classification number, CALL (RLIN) (NR)', 1, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('090', 'b', 'Local cutter number (OCLC) ; Book number/undivided call number, CALL (RLIN)', 'Local cutter number (OCLC) ; Book number/undivided call number, CALL (RLIN)', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('090', 'e', 'Feature heading (OCLC)', 'Feature heading (OCLC)', 0, 0, '', 0, '', '', '', 0, 5, '', '', '', NULL),
@@ -832,214 +898,209 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('099', 'a', 'Classification number', 'Classification number', 1, 0, '', 0, '', '', '', NULL, -6, '', '', '', NULL),
                ('099', 'e', 'Feature heading', 'Feature heading', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
                ('099', 'f', 'Filing suffix', 'Filing suffix', 0, 0, '', 0, '', '', '', 0, -6, '', '', '', NULL),
-               ('100', '4', 'Relator code', 'Relator code', 1, 0, '', 1, '', '', '', 0, 0, '', '', '', NULL),
-               ('100', '6', 'Linkage', 'Linkage', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
-               ('100', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('100', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('100', '4', 'Código de función', 'Código de función', 1, 0, '', 1, '', '', '', 0, 0, '', '', '', NULL),
+               ('100', '6', 'Enlace', 'Enlace', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('100', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
                ('100', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 1, '', '', '', 0, -5, '', '', '', NULL),
-               ('100', 'a', 'Personal name', 'Personal name', 0, 0, 'biblio.author', 1, '', 'PERSO_NAME', '', 0, 0, '', '''100b'',''100c'',''100q'',''100d'',''100e'',''110a'',''110b'',''110c'',''110d'',''110e'',''111a'',''111e'',''111c'',''111d'',''130a'',''700a'',''700b'',''700c'',''700q'',''700d'',''700e'',''710a'',''710b'',''710c'',''710d'',''710e'',''711a'',''711e'',''711c'',''711d'',''720a'',''720e'',''796a'',''796b'',''796c'',''796q'',''796d'',''796e'',''797a'',''797b'',''797c'',''797d'',''797e'',''798a'',''798e'',''798c'',''798d'',''800a'',''800b'',''800c'',''800q'',''800d'',''800e'',''810a'',''810b'',''810c'',''810d'',''810e'',''811a'',''811e'',''811c'',''811d'',''896a'',''896b'',''896c'',''896q'',''896d'',''896e'',''897a'',''897b'',''897c'',''897d'',''897e'',''898a'',''898e'',''898c'',''898d'',''505r''', '', NULL),
-               ('100', 'b', 'Numeration', 'Numeration', 0, 0, '', 1, '', '', '', 0, -1, '', '', '', NULL),
-               ('100', 'c', 'Titles and other words associated with a name', 'Titles and other words associated with a name', 1, 0, '', 1, '', '', '', 0, -1, '', '', '', NULL),
-               ('100', 'd', 'Dates associated with a name', 'Dates associated with a name', 0, 0, '', 1, '', '', '', 0, 0, '', '', '', NULL),
-               ('100', 'e', 'Relator term', 'Relator term', 1, 0, '', 1, '', '', '', 0, 0, '', '', '', NULL),
-               ('100', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
-               ('100', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
-               ('100', 'j', 'Attribution qualifier', 'Attribution qualifier', 1, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
-               ('100', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
-               ('100', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
-               ('100', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
-               ('100', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
-               ('100', 'q', 'Fuller form of name', 'Fuller form of name', 0, 0, '', 1, '', '', '', 0, 0, '', '', '', NULL),
-               ('100', 't', 'Title of a work', 'Title of a work', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
-               ('100', 'u', 'Affiliation', 'Affiliation', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
-               ('110', '4', 'Relator code', 'Relator code', 1, 0, '', 1, '', '', '', NULL, 0, '', '', '', NULL),
-               ('110', '6', 'Linkage', 'Linkage', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('110', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
+               ('100', 'a', 'Nombre de persona', 'Nombre de persona', 0, 0, 'biblio.author', 1, '', 'PERSO_NAME', '', 0, 0, '', '''100b'',''100c'',''100q'',''100d'',''100e'',''110a'',''110b'',''110c'',''110d'',''110e'',''111a'',''111e'',''111c'',''111d'',''130a'',''700a'',''700b'',''700c'',''700q'',''700d'',''700e'',''710a'',''710b'',''710c'',''710d'',''710e'',''711a'',''711e'',''711c'',''711d'',''720a'',''720e'',''796a'',''796b'',''796c'',''796q'',''796d'',''796e'',''797a'',''797b'',''797c'',''797d'',''797e'',''798a'',''798e'',''798c'',''798d'',''800a'',''800b'',''800c'',''800q'',''800d'',''800e'',''810a'',''810b'',''810c'',''810d'',''810e'',''811a'',''811e'',''811c'',''811d'',''896a'',''896b'',''896c'',''896q'',''896d'',''896e'',''897a'',''897b'',''897c'',''897d'',''897e'',''898a'',''898e'',''898c'',''898d'',''505r''', '', NULL),
+               ('100', 'b', 'Numeración', 'Numeración', 0, 0, '', 1, '', '', '', 0, -1, '', '', '', NULL),
+               ('100', 'c', 'Títulos y otros términos asociados al nombre', 'Títulos y otros términos asociados al nombre', 1, 0, '', 1, '', '', '', 0, -1, '', '', '', NULL),
+               ('100', 'd', 'Fechas asociadas al nombre', 'Fechas asociadas al nombre', 0, 0, '', 1, '', '', '', 0, 0, '', '', '', NULL),
+               ('100', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 1, '', '', '', 0, 0, '', '', '', NULL),
+               ('100', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('100', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('100', 'j', 'Calificador de atribución', 'Calificador de atribución', 1, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('100', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('100', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('100', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('100', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('100', 'q', 'Forma desarrollada del nombre', 'Forma desarrollada del nombre', 0, 0, '', 1, '', '', '', 0, 0, '', '', '', NULL),
+               ('100', 't', 'Título de la obra', 'Título de la obra', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('100', 'u', 'Filiación', 'Filiación', 0, 0, '', 1, '', '', '', 0, -6, '', '', '', NULL),
+               ('110', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('110', '4', 'Código de función', 'Código de función', 1, 0, '', 1, '', '', '', NULL, 0, '', '', '', NULL),
+               ('110', '6', 'Enlace', 'Enlace', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
+               ('110', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
                ('110', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 1, '', '', '', 0, -5, '', '', '', NULL),
-               ('110', 'a', 'Corporate name or jurisdiction name as entry element', 'Corporate name or jurisdiction name as entry element', 0, 0, '', 1, '', 'CORPO_NAME', '', NULL, 0, '', '', '', NULL),
-               ('110', 'b', 'Subordinate unit', 'Subordinate unit', 1, 0, '', 1, '', '', '', NULL, 0, '', '', '', NULL),
-               ('110', 'c', 'Location of meeting', 'Location of meeting', 0, 0, '', 1, '', '', '', NULL, -1, '', '', '', NULL),
-               ('110', 'd', 'Date of meeting or treaty signing', 'Date of meeting or treaty signing', 1, 0, '', 1, '', '', '', NULL, -1, '', '', '', NULL),
-               ('110', 'e', 'Relator term', 'Relator term', 1, 0, '', 1, '', '', '', NULL, 0, '', '', '', NULL),
-               ('110', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('110', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('110', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('110', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('110', 'n', 'Number of part/section/meeting', 'Number of part/section/meeting', 1, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('110', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('110', 't', 'Title of a work', 'Title of a work', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('110', 'u', 'Affiliation', 'Affiliation', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('111', '4', 'Relator code', 'Relator code', 1, 0, NULL, 1, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('111', '6', 'Linkage', 'Linkage', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('111', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('110', 'a', 'Nombre de entidad corporativa o nombre de jurisdicción como elemento inicial', 'Nombre de entidad corporativa o nombre de jurisdicción como elemento inicial', 0, 0, '', 1, '', 'CORPO_NAME', '', NULL, 0, '', '', '', NULL),
+               ('110', 'b', 'Unidad subordinada', 'Unidad subordinada', 1, 0, '', 1, '', '', '', NULL, 0, '', '', '', NULL),
+               ('110', 'c', 'Sede del congreso', 'Sede del congreso', 0, 0, '', 1, '', '', '', NULL, -1, '', '', '', NULL),
+               ('110', 'd', 'Fecha del congreso o de la firma de un tratado', 'Fecha del congreso o de la firma de un tratado', 1, 0, '', 1, '', '', '', NULL, -1, '', '', '', NULL),
+               ('110', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 1, '', '', '', NULL, 0, '', '', '', NULL),
+               ('110', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
+               ('110', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
+               ('110', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
+               ('110', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
+               ('110', 'n', 'Número del congreso o número de parte o sección de la obra', 'Número del congreso o número de parte o sección de la obra', 1, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
+               ('110', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
+               ('110', 't', 'Título de la obra', 'Título de la obra', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
+               ('110', 'u', 'Filiación', 'Filiación', 0, 0, '', 1, '', '', '', NULL, -6, '', '', '', NULL),
+               ('111', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('111', '4', 'Código de función', 'Código de función', 1, 0, NULL, 1, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('111', '6', 'Enlace', 'Enlace', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('111', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('111', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 1, '', '', '', 0, -5, '', '', '', NULL),
-               ('111', 'a', 'Meeting name or jurisdiction name as entry element', 'Meeting name or jurisdiction name as entry element', 0, 0, NULL, 1, NULL, 'MEETI_NAME', '', NULL, 0, '', '', '', NULL),
-               ('111', 'b', 'Number [OBSOLETE]', 'Number [OBSOLETE]', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('111', 'c', 'Location of meeting', 'Location of meeting', 0, 0, NULL, 1, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('111', 'd', 'Date of meeting', 'Date of meeting', 0, 0, NULL, 1, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('111', 'e', 'Subordinate unit', 'Subordinate unit', 1, 0, NULL, 1, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('111', 'f', 'Date of a work', 'Date of a work', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('111', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('111', 'j', 'Relator term', 'Relator term', 1, 0, NULL, 1, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('111', 'k', 'Form subheading', 'Form subheading', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('111', 'l', 'Language of a work', 'Language of a work', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('111', 'n', 'Number of part/section/meeting', 'Number of part/section/meeting', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('111', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('111', 'q', 'Name of meeting following jurisdiction name entry element', 'Name of meeting following jurisdiction name entry element', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('111', 't', 'Title of a work', 'Title of a work', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('111', 'u', 'Affiliation', 'Affiliation', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', '6', 'Linkage', 'Linkage', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('111', 'a', 'Nombre de congreso o jurisdicción como elemento de entrada', 'Nombre de congreso o jurisdicción como elemento de entrada', 0, 0, NULL, 1, NULL, 'MEETI_NAME', '', NULL, 0, '', '', '', NULL),
+               ('111', 'c', 'Sede del congreso', 'Sede del congreso', 0, 0, NULL, 1, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('111', 'd', 'Fecha del congreso', 'Fecha del congreso', 0, 0, NULL, 1, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('111', 'e', 'Unidad subordinada', 'Unidad subordinada', 1, 0, NULL, 1, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('111', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('111', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('111', 'j', 'Término indicativo de función', 'Término indicativo de función', 1, 0, NULL, 1, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('111', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('111', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('111', 'n', 'Número del congreso o número de parte o sección de la obra', 'Número del congreso o número de parte o sección de la obra', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('111', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('111', 'q', 'Nombre de congreso que sigue a un nombre de jurisdicción como elemento de entrada', 'Nombre de congreso que sigue a un nombre de jurisdicción como elemento de entrada', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('111', 't', 'Título de la obra', 'Título de la obra', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('111', 'u', 'Filiación', 'Filiación', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','0','','','','0','-6', '', '', '', NULL),
+               ('130', '6', 'Enlace', 'Enlace', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('130', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 1, '', '', '', 0, -5, '', '', '', NULL),
-               ('130', 'a', 'Uniform title', 'Uniform title', 0, 0, NULL, 1, NULL, 'UNIF_TITLE', '', NULL, -1, '', '''130o'',''130m'',''130r'',''130s'',''130d'',''130k'',''130n'',''130p'',''130g'',''130l'',''130f'',''130h'',''130t''', '', NULL),
-               ('130', 'd', 'Date of treaty signing', 'Date of treaty signing', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', 'f', 'Date of a work', 'Date of a work', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', 'h', 'Medium', 'Medium', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', 'k', 'Form subheading', 'Form subheading', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', 'l', 'Language of a work', 'Language of a work', 0, 0, NULL, 1, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('130', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', 'r', 'Key for music', 'Key for music', 0, 0, NULL, 1, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('130', 's', 'Version', 'Version', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('130', 't', 'Title of a work', 'Title of a work', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('210', '2', 'Source', 'Source', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('210', '6', 'Linkage', 'Linkage', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('210', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('210', 'a', 'Abbreviated title', 'Abbreviated title', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('210', 'b', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('130', 'a', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 1, NULL, 'UNIF_TITLE', '', NULL, -1, '', '''130o'',''130m'',''130r'',''130s'',''130d'',''130k'',''130n'',''130p'',''130g'',''130l'',''130f'',''130h'',''130t''', '', NULL),
+               ('130', 'd', 'Fecha de la firma de un tratado', 'Fecha de la firma de un tratado', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', 'h', 'Medio', 'Medio', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, NULL, 1, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('130', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', 'o', 'Arreglo', 'Arreglo', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', 'r', 'Tonalidad', 'Tonalidad', 0, 0, NULL, 1, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('130', 's', 'Versión', 'Versión', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('130', 't', 'Título de la obra', 'Título de la obra', 0, 0, NULL, 1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('210', '2', 'Fuente', 'Fuente', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('210', '6', 'Enlace', 'Enlace', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('210', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('210', 'a', 'Título abreviado', 'Título abreviado', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('210', 'b', 'Información adicional', 'Información adicional', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
                ('211', '6', 'Linkage', 'Linkage', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('211', 'a', 'Acronym or shortened title', 'Acronym or shortened title', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('212', '6', 'Linkage', 'Linkage', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('212', 'a', 'Variant access title', 'Variant access title', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('214', '6', 'Linkage', 'Linkage', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('214', 'a', 'Augmented title', 'Augmented title', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('222', '6', 'Linkage', 'Linkage', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('222', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('222', 'a', 'Key title', 'Key title', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('222', 'b', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('240', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('240', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('222', '6', 'Enlace', 'Enlace', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('222', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('222', 'a', 'Título clave', 'Título clave', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('222', 'b', 'Información adicional', 'Información adicional', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('240', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','2','','','','0','-1', '', '', '', NULL),
+               ('240', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('240', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
                ('240', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 2, '', '', '', 0, -5, '', '', '', NULL),
-               ('240', 'a', 'Uniform title', 'Uniform title', 0, 0, 'biblio.unititle', 2, '', '', '', 1, -1, '', '', '', NULL),
-               ('240', 'd', 'Date of treaty signing', 'Date of treaty signing', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('240', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('240', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('240', 'h', 'Medium', 'Medium', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
-               ('240', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('240', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
-               ('240', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('240', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('240', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('240', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('240', 'r', 'Key for music', 'Key for music', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
-               ('240', 's', 'Version', 'Version', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
+               ('240', 'a', 'Título uniforme', 'Título uniforme', 0, 0, 'biblio.unititle', 2, '', '', '', 1, -1, '', '', '', NULL),
+               ('240', 'd', 'Fecha de la firma de un tratado', 'Fecha de la firma de un tratado', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('240', 'f', 'Fecha de la obra', 'Fecha de la obra', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('240', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('240', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
+               ('240', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('240', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
+               ('240', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('240', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('240', 'o', 'Arreglo', 'Arreglo', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('240', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('240', 'r', 'Tonalidad', 'Tonalidad', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
+               ('240', 's', 'Versión', 'Versión', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
                ('241', 'a', 'Romanized title', 'Romanized title', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('241', 'h', 'Medium', 'Medium', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('242', '6', 'Linkage', 'Linkage', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('242', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('242', 'a', 'Title', 'Title', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('242', 'b', 'Remainder of title', 'Remainder of title', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('242', 'c', 'Statement of responsibility, etc', 'Statement of responsibility, etc', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('242', 'd', 'Designation of section (BK AM MP MU VM SE) [OBSOLETE]', 'Designation of section (BK AM MP MU VM SE) [OBSOLETE]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('242', 'e', 'Name of part/section (BK AM MP MU VM SE) [OBSOLETE]', 'Name of part/section (BK AM MP MU VM SE) [OBSOLETE]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('242', 'h', 'Medium', 'Medium', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('242', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('242', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('242', 'y', 'Language code of translated title', 'Language code of translated title', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('243', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('243', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('242', '6', 'Enlace', 'Enlace', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('242', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('242', 'a', 'Título', 'Título', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('242', 'b', 'Resto del título', 'Resto del título', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('242', 'c', 'Mención de responsabilidad  etc.', 'Mención de responsabilidad  etc.', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('242', 'h', 'Medio', 'Medio', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('242', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('242', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('242', 'y', 'Código de lengua del título traducido', 'Código de lengua del título traducido', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('243', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('243', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
                ('243', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 2, '', '', '', 0, -5, '', '', '', NULL),
-               ('243', 'a', 'Uniform title', 'Unifor title', 0, 0, '', 2, '', '', '', 1, -1, '', '', '', NULL),
-               ('243', 'd', 'Date of treaty signing', 'Date of treaty signing', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('243', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('243', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('243', 'h', 'Medium', 'Medium', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
-               ('243', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('243', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
-               ('243', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('243', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('243', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('243', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('243', 'r', 'Key for music', 'Key for music', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
-               ('243', 's', 'Version', 'Version', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
-               ('245', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('245', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('245', 'a', 'Title', 'Title', 0, 1, 'biblio.title', 2, '', '', '', NULL, 0, '', '''245b'',''245f'',''245g'',''245k'',''245n'',''245p'',''245s'',''245h'',''246i'',''246a'',''246b'',''246f'',''246g'',''246n'',''246p'',''246h'',''242a'',''242b'',''242n'',''242p'',''242h'',''505t''', '', NULL),
-               ('245', 'b', 'Remainder of title', 'Remainder of title', 0, 0, 'bibliosubtitle.subtitle', 2, '', '', '', NULL, 0, '', '', '', NULL),
-               ('245', 'c', 'Statement of responsibility, etc', 'Statement of responsibility, etc', 0, 0, '', 2, '', '', '', NULL, 0, '', '', '', NULL),
-               ('245', 'd', 'Designation of section/part/series (SE) [OBSOLETE]', 'Designation of section section/part/series: (SE) [OBSOLETE]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('245', 'e', 'Name of part/section/series (SE) [OBSOLETE]', 'Name of part/section/series (SE) [OBSOLETE]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('245', 'f', 'Inclusive dates', 'Inclusive dates', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('245', 'g', 'Bulk dates', 'Bulk dates', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('245', 'h', 'Medium', 'Medium', 0, 0, '', 2, '', '', '', NULL, 0, '', '', '', NULL),
-               ('245', 'k', 'Form', 'Form', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('245', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('245', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('245', 's', 'Version', 'Version', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('246', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('246', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('246', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('246', 'a', 'Title proper/short title', 'Title proper/short title', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
-               ('246', 'b', 'Remainder of title', 'Remainder of title', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
-               ('246', 'd', 'Designation of section/part/series (SE) [OBSOLETE]', 'Designation of section section/part/series (SE) [OBSOLETE]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('246', 'e', 'Name of part/section/series (SE) [OBSOLETE]', 'Name of part/section/series (SE) [OBSOLETE]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('246', 'f', 'Date or sequential designation', 'Date or sequential designation', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('246', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('246', 'h', 'Medium', 'Medium', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
-               ('246', 'i', 'Display text', 'Display text', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
-               ('246', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('246', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('247', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('247', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('247', 'a', 'Title', 'Title', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
-               ('247', 'b', 'Remainder of title', 'Remainder of title', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
-               ('247', 'd', 'Designation of section (SE) [OBSOLETE]', 'Designation of section (SE) [OBSOLETE]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('247', 'e', 'Name of part/section (SE) [OBSOLETE]', 'Name of part/section (SE) [OBSOLETE]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('247', 'f', 'Date or sequential designation', 'Date or sequential designation', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('247', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('247', 'h', 'Medium', 'Medium', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
-               ('247', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('247', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('247', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('250', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('250', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('250', 'a', 'Edition statement', 'Edition statement', 0, 0, 'biblioitems.editionstatement', 2, '', '', '', NULL, 0, '', '', '', NULL),
-               ('250', 'b', 'Remainder of edition statement', 'Remainder of edition statement', 0, 0, '', 2, '', '', '', NULL, 0, '', '', '', NULL),
-               ('254', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('254', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('254', 'a', 'Musical presentation statement', 'Musical presentation statement', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('255', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('255', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('255', 'a', 'Statement of scale', 'Statement of scale', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('255', 'b', 'Statement of projection', 'Statement of projection', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('255', 'c', 'Statement of coordinates', 'Statement of coordinates', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('255', 'd', 'Statement of zone', 'Statement of zone', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('255', 'e', 'Statement of equinox', 'Statement of equinox', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('255', 'f', 'Outer G-ring coordinate pairs', 'Outer G-ring coordinate pairs', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('255', 'g', 'Exclusion G-ring coordinate pairs', 'Exclusion G-ring coordinate pairs', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('256', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('256', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('256', 'a', 'Computer file characteristics', 'Computer file characteristics', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('257', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('257', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('257', 'a', 'Country of producing entity', 'Country of producing entity', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('258', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('258', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('258', 'a', 'Issuing jurisdiction', 'Issuing jurisdiction', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('258', 'b', 'Denomination', 'Denomination', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('260', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('260', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('260', 'a', 'Place of publication, distribution, etc', 'Place of publication, distribution, etc', 1, 0, 'biblioitems.place', 2, '', '', '', NULL, 0, '', '', '', NULL),
-               ('260', 'b', 'Name of publisher, distributor, etc', 'Name of publisher, distributor, etc', 1, 0, 'biblioitems.publishercode', 2, '', '', '', NULL, 0, '', '', '', NULL),
-               ('260', 'c', 'Date of publication, distribution, etc', 'Date of publication, distribution, etc', 1, 0, 'biblio.copyrightdate', 2, '', '', '', NULL, 0, '', '', '', NULL),
-               ('260', 'd', 'Plate or publisher\'s number for music (Pre-AACR 2) [OBSOLETE, CAN/MARC], [LOCAL, USA]', 'Plate or publisher\'s number for music (Pre-AACR 2) [OBSOLETE, CAN/MARC], [LOCAL, USA]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('260', 'e', 'Place of manufacture', 'Place of manufacture', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('260', 'f', 'Manufacturer', 'Manufacturer', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('260', 'g', 'Date of manufacture', 'Date of manufacture', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('260', 'k', 'Identification/manufacturer number [OBSOLETE, CAN/MARC]', 'Identification/manufacturer number [OBSOLETE, CAN/MARC]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('260', 'l', 'Matrix and/or take number [OBSOLETE, CAN/MARC]', 'Matrix and/or take number [OBSOLETE, CAN/MARC]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('243', 'a', 'Título uniforme', 'Título uniforme', 0, 0, '', 2, '', '', '', 1, -1, '', '', '', NULL),
+               ('243', 'd', 'Fecha de la firma de un tratado', 'Fecha de la firma de un tratado', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('243', 'f', 'Fecha de la obra', 'Fecha de la obra', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('243', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('243', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
+               ('243', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('243', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
+               ('243', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('243', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('243', 'o', 'Arreglo', 'Arreglo', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('243', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('243', 'r', 'Tonalidad', 'Tonalidad', 0, 0, '', 2, '', '', '', 0, -6, '', '', '', NULL),
+               ('243', 's', 'Versión', 'Versión', 0, 0, '', 2, '', '', '', 0, -1, '', '', '', NULL),
+               ('245', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('245', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('245', 'a', 'Título', 'Título', 0, 1, 'biblio.title', 2, '', '', '', NULL, 0, '', '''245b'',''245f'',''245g'',''245k'',''245n'',''245p'',''245s'',''245h'',''246i'',''246a'',''246b'',''246f'',''246g'',''246n'',''246p'',''246h'',''242a'',''242b'',''242n'',''242p'',''242h'',''505t''', '', NULL),
+               ('245', 'b', 'Resto del título', 'Resto del título', 0, 0, 'bibliosubtitle.subtitle', 2, '', '', '', NULL, 0, '', '', '', NULL),
+               ('245', 'c', 'Mención de responsabilidad  etc.', 'Mención de responsabilidad  etc.', 0, 0, '', 2, '', '', '', NULL, 0, '', '', '', NULL),
+               ('245', 'f', 'Fechas extremas', 'Fechas extremas', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('245', 'g', 'Fechas predominantes', 'Fechas predominantes', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('245', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 2, '', '', '', NULL, 0, '', '', '', NULL),
+               ('245', 'k', 'Forma', 'Forma', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('245', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('245', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('245', 's', 'Versión', 'Versión', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('246', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('246', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('246', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('246', 'a', 'Título propio / Titulo en breve', 'Título propio / Titulo en breve', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
+               ('246', 'b', 'Resto de título', 'Resto de título', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
+               ('246', 'f', 'Fecha o designación secuencial', 'Fecha o designación secuencial', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('246', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('246', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
+               ('246', 'i', 'Texto de visualización', 'Texto de visualización', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
+               ('246', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('246', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('247', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('247', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('247', 'a', 'Título', 'Título', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
+               ('247', 'b', 'Resto de título', 'Resto de título', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
+               ('247', 'f', 'Fecha o designación secuencial', 'Fecha o designación secuencial', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('247', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('247', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 2, '', '', '', NULL, -1, '', '', '', NULL),
+               ('247', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('247', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('247', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('250', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('250', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('250', 'a', 'Mención de edición', 'Mención de edición', 0, 0, 'biblioitems.editionstatement', 2, '', '', '', NULL, 0, '', '', '', NULL),
+               ('250', 'b', 'Resto de la mención de edición', 'Resto de la mención de edición', 0, 0, '', 2, '', '', '', NULL, 0, '', '', '', NULL),
+               ('254', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('254', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('254', 'a', 'Mención de presentación musical', 'Mención de presentación musical', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('255', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('255', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('255', 'a', 'Escala', 'Escala', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('255', 'b', 'Proyección', 'Proyección', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('255', 'c', 'Coordenadas', 'Coordenadas', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('255', 'd', 'Zona', 'Zona', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('255', 'e', 'Equinoccio', 'Equinoccio', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('255', 'f', 'Coordenadas del anillo-G exterior', 'Coordenadas del anillo-G exterior', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('255', 'g', 'Coordenadas del anillo-G de exclusión', 'Coordenadas del anillo-G de exclusión', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('256', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('256', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('256', 'a', 'Características del archivo de ordenador', 'Características del archivo de ordenador', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('257', '2', 'Fuente', 'Fuente','0','0','','2','','','','0','-6', '', '', '', NULL),
+               ('257', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('257', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('257', 'a', 'País de la entidad productora', 'País de la entidad productora', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('258', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('258', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('258', 'a', 'Jurisdicción emisora', 'Jurisdicción emisora', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('258', 'b', 'Valor facial', 'Valor facial', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('260', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','2','','','','0','-6', '', '', '', NULL),
+               ('260', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('260', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('260', 'a', 'Lugar de publicación  distribución  etc.', 'Lugar de publicación  distribución  etc.', 1, 0, 'biblioitems.place', 2, '', '', '', NULL, 0, '', '', '', NULL),
+               ('260', 'b', 'Nombre del editor  distribuidor  etc.', 'Nombre del editor  distribuidor  etc.', 1, 0, 'biblioitems.publishercode', 2, '', '', '', NULL, 0, '', '', '', NULL),
+               ('260', 'c', 'Fecha de publicación  distribución  etc.', 'Fecha de publicación  distribución  etc.', 1, 0, 'biblio.copyrightdate', 2, '', '', '', NULL, 0, '', '', '', NULL),
+               ('260', 'e', 'Lugar de fabricación', 'Lugar de fabricación', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('260', 'f', 'Fabricante', 'Fabricante', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('260', 'g', 'Fecha de fabricación', 'Fecha de fabricación', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
                ('261', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
                ('261', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
                ('261', 'a', 'Producing company', 'Producing company', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
@@ -1055,45 +1116,47 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('262', 'c', 'Date of production, release, etc.', 'Date of production, release, etc.', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
                ('262', 'k', 'Serial identification', 'Serial identification', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
                ('262', 'l', 'Matrix and/or take number', 'Matrix and/or take number', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('263', '6', 'Linkage', 'Linkage', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('263', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('263', 'a', 'Projected publication date', 'Projected publication date', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('263', '6', 'Enlace', 'Enlace', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('263', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('263', 'a', 'Fecha proyectada de publicación', 'Fecha proyectada de publicación', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
+               ('264', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','2','','','','0','-6', '', '', '', NULL),
+               ('264', '6', 'Enlace', 'Enlace','0','0','','2','','','','0','-6', '', '', '', NULL),
+               ('264', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','2','','','','0','-6', '', '', '', NULL),
+               ('264', 'a', 'Lugar de producción  publicación  distribución  fabricación', 'Lugar de producción  publicación  distribución  fabricación','1','0','','2','','','','0','-6', '', '', '', NULL),
+               ('264', 'b', 'Nombre del de productor  editor  distribuidor  fabricante', 'Nombre del de productor  editor  distribuidor  fabricante','1','0','','2','','','','0','-6', '', '', '', NULL),
+               ('264', 'c', 'Fecha de de producción  publicación  distribución  fabricación o copyright', 'Fecha de de producción  publicación  distribución  fabricación o copyright','1','0','','2','','','','0','-6', '', '', '', NULL),
                ('265', '6', 'Linkage [OBSOLETE]', 'Linkage [OBSOLETE]', 0, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
                ('265', 'a', 'Source for acquisition/subscription address [OBSOLETE]', 'Source for acquisition/subscription address [OBSOLETE]', 1, 0, '', 2, '', '', '', NULL, -6, '', '', '', NULL),
-               ('270', '4', 'Relator code', 'Relator code', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('270', '6', 'Linkage', 'Linkage', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('270', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('270', 'a', 'Address', 'Address', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'b', 'City', 'City', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'c', 'State or province', 'State or province', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'd', 'Country', 'Country', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'e', 'Postal code', 'Postal code', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'f', 'Terms preceding attention name', 'Terms preceding attention name', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'g', 'Attention name', 'Attention name', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'h', 'Attention position', 'Attention position', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'i', 'Type of address', 'Type of address', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'j', 'Specialized telephone number', 'Specialized telephone number', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'k', 'Telephone number', 'Telephone number', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'l', 'Fax number', 'Fax number', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'm', 'Electronic mail address', 'Electronic mail address', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'n', 'TDD or TTY number', 'TDD or TTY number', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'p', 'Contact person', 'Contact person', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'q', 'Title of contact person', 'Title of contact person', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'r', 'Hours', 'Hours', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('270', 'z', 'Public note', 'Public note', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('300', '3', 'Materials specified', 'Materials specified', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('300', '6', 'Linkage', 'Linkage', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('300', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('300', 'a', 'Extent', 'Extent', 1, 0, 'biblioitems.pages', 3, '', '', '', NULL, 0, '', '', '', NULL),
-               ('300', 'b', 'Other physical details', 'Other physical details', 0, 0, 'biblioitems.illus', 3, '', '', '', 0, 0, '', '', '', NULL),
-               ('300', 'c', 'Dimensions', 'Dimensions', 1, 0, 'biblioitems.size', 3, '', '', '', NULL, 0, '', '', '', NULL),
-               ('300', 'd', 'Accompanying material [OBSOLETE, CAN/MARC]', 'Accompanying material [OBSOLETE, CAN/MARC]', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('300', 'e', 'Accompanying material', 'Accompanying material', 0, 0, '', 3, '', '', '', NULL, 0, '', '', '', NULL),
-               ('300', 'f', 'Type of unit', 'Type of unit', 1, 0, '', 3, '', '', '', NULL, 0, '', '', '', NULL),
-               ('300', 'g', 'Size of unit', 'Size of unit', 1, 0, '', 3, '', '', '', NULL, 0, '', '', '', NULL),
-               ('300', 'k', 'Speed [Videodiscs, pre-AACR2 records only] [OBSOLETE, CAN/MARC]', 'Speed [Videodiscs, pre-AACR2 records only] [OBSOLETE, CAN/MARC]', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('300', 'm', 'Identification/manufacturer number [pre-AACR2 records only] [OBSOLETE, CAN/MARC]', 'Identification/manufacturer number [pre-AACR2 records only] [OBSOLETE, CAN/MARC]', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('300', 'n', 'Matrix and/or take number [Sound recordings, pre-AACR2 records only] [OBSOLETE, CAN/MARC]', 'Matrix and/or take number [Sound recordings, pre-AACR2 records only] [OBSOLETE, CAN/MARC]', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('270', '4', 'Código de relación', 'Código de relación', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('270', '6', 'Enlace', 'Enlace', 0, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('270', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 2, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('270', 'a', 'Dirección', 'Dirección', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'b', 'Ciudad', 'Ciudad', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'c', 'Estado o provincia', 'Estado o provincia', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'd', 'País', 'País', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'e', 'Código postal', 'Código postal', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'f', 'Términos que preceden al nombre', 'Términos que preceden al nombre', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'g', 'Nombre', 'Nombre', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'h', 'Términos que siguen al nombre', 'Términos que siguen al nombre', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'i', 'Tipo de dirección', 'Tipo de dirección', 0, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'j', 'Número de teléfono especial', 'Número de teléfono especial', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'k', 'Número de teléfono', 'Número de teléfono', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'l', 'Número de fax', 'Número de fax', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'm', 'Dirección de correo electrónico', 'Dirección de correo electrónico', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'n', 'Número TDD o TTY', 'Número TDD o TTY', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'p', 'Persona de contacto', 'Persona de contacto', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'q', 'Cargo de la persona de contacto', 'Cargo de la persona de contacto', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'r', 'Horario', 'Horario', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('270', 'z', 'Nota pública', 'Nota pública', 1, 0, NULL, 2, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('300', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('300', '6', 'Enlace', 'Enlace', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('300', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('300', 'a', 'Extensión', 'Extensión', 1, 0, 'biblioitems.pages', 3, '', '', '', NULL, 0, '', '', '', NULL),
+               ('300', 'b', 'Otras características físicas', 'Otras características físicas', 0, 0, 'biblioitems.illus', 3, '', '', '', 0, 0, '', '', '', NULL),
+               ('300', 'c', 'Dimensiones', 'Dimensiones', 1, 0, 'biblioitems.size', 3, '', '', '', NULL, 0, '', '', '', NULL),
+               ('300', 'e', 'Material anejo', 'Material anejo', 0, 0, '', 3, '', '', '', NULL, 0, '', '', '', NULL),
+               ('300', 'f', 'Tipo de unidad', 'Tipo de unidad', 1, 0, '', 3, '', '', '', NULL, 0, '', '', '', NULL),
+               ('300', 'g', 'Tamaño de la unidad', 'Tamaño de la unidad', 1, 0, '', 3, '', '', '', NULL, 0, '', '', '', NULL),
                ('301', 'a', 'Extent of item', 'Extent of item', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
                ('301', 'b', 'Sound characteristics', 'Sound characteristics', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
                ('301', 'c', 'Color characteristics', 'Color characteristics', 0, 0, '', 3, '', '', NULL, NULL, -6, '', '', '', NULL),
@@ -1112,13 +1175,13 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('305', 'f', 'Number of tracks', 'Number of tracks', 0, 0, '', 3, '', '', NULL, NULL, -6, '', '', '', NULL),
                ('305', 'm', 'Serial identification', 'Serial identification', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
                ('305', 'n', 'Matrix and/or take number', 'Matrix and/or take number', 0, 0, '', 3, '', '', NULL, NULL, -6, '', '', '', NULL),
-               ('306', '6', 'Linkage', 'Linkage', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('306', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('306', 'a', 'Playing time', 'Playing time', 0, 0, '', 3, '', '', '', NULL, 0, '', '', '', NULL),
-               ('307', '6', 'Linkage', 'Linkage', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('307', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('307', 'a', 'Hours', 'Hours', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('307', 'b', 'Additional information', 'Additional information', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('306', '6', 'Enlace', 'Enlace', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('306', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('306', 'a', 'Duración', 'Duración', 1, 0, '', 3, '', '', '', NULL, 0, '', '', '', NULL),
+               ('307', '6', 'Enlace', 'Enlace', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('307', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('307', 'a', 'Horario', 'Horario', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('307', 'b', 'Información adicional', 'Información adicional', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
                ('308', '6', 'Linkage', 'Linkage', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
                ('308', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
                ('308', 'a', 'Number of reels', 'Number of reels', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
@@ -1127,134 +1190,256 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('308', 'd', 'Color characteristics', 'Color characteristics', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
                ('308', 'e', 'Width', 'Width', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
                ('308', 'f', 'Presentation format', 'Presentation format', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('310', '6', 'Linkage', 'Linkage', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('310', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('310', 'a', 'Current publication frequency', 'Current publication frequency', 0, 0, NULL, 3, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('310', 'b', 'Date of current publication frequency', 'Date of current publication frequency', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('310', '6', 'Enlace', 'Enlace', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('310', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('310', 'a', 'Periodicidad actual', 'Periodicidad actual', 0, 0, NULL, 3, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('310', 'b', 'Fecha de comienzo de la periodicidad actual', 'Fecha de comienzo de la periodicidad actual', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('315', '6', 'Linkage', 'Linkage', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
                ('315', 'a', 'Frequency', 'Frequency', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
                ('315', 'b', 'Dates of frequency', 'Dates of frequency', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('321', '6', 'Linkage', 'Linkage', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('321', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('321', 'a', 'Former publication frequency', 'Former publication frequency', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('321', 'b', 'Former publication frequency', 'Former publication frequency', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('340', '3', 'Materials specified', 'Materials specified', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('340', '6', 'Linkage', 'Linkage', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('340', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('340', 'a', 'Material base and configuration', 'Material base and configuration', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('340', 'b', 'Dimensions', 'Dimensions', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('340', 'c', 'Materials applied to surface', 'Materials applied to surface', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('340', 'd', 'Information recording technique', 'Information recording technique', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('340', 'e', 'Support', 'Support', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('340', 'f', 'Production rate/ratio', 'Production rate/ratio', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('340', 'h', 'Location within medium', 'Location within medium', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('340', 'i', 'Technical specifications of medium', 'Technical specifications of medium', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', '2', 'Reference method used', 'Reference method used', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', '6', 'Linkage', 'Linkage', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'a', 'Name', 'Name', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'b', 'Coordinate or distance units', 'Coordinate or distance units', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'c', 'Latitude resolution', 'Latitude resolution', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'd', 'Longitude resolution', 'Longitude resolution', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'e', 'Standard parallel or oblique line latitude', 'Standard parallel or oblique line latitude', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'f', 'Oblique line longitude', 'Oblique line longitude', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'g', 'Longitude of central meridian or projection center', 'Longitude of central meridian or projection center', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'h', 'Latitude of projection origin or projection center', 'Latitude of projection origin or projection center', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'i', 'False easting', 'False easting', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'j', 'False northing', 'False northing', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'k', 'Scale factor', 'Scale factor', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'l', 'Height of perspective point above surface', 'Height of perspective point above surface', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'm', 'Azimuthal angle', 'Azimuthal angle', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'n', 'Azimuth measure point longitude or straight vertical longitude from pole', 'Azimuth measure point longitude or straight vertical longitude from pole', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'o', 'Landsat number and path number', 'Landsat number and path number', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'p', 'Zone identifier', 'Zone identifier', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'q', 'Ellipsoid name', 'Ellipsoid name', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'r', 'Semi-major axis', 'Semi-major axis', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 's', 'Denominator of flattening ratio', 'Denominator of flattening ratio', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 't', 'Vertical resolution', 'Vertical resolution', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'u', 'Vertical encoding method', 'Vertical encoding method', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'v', 'Local planar, local, or other projection or grid description', 'Local planar, local, or other projection or grid description', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('342', 'w', 'Local planar or local georeference information', 'Local planar or local georeference information', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', '6', 'Linkage', 'Linkage', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', 'a', 'Planar coordinate encoding method', 'Planar coordinate encoding method', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', 'b', 'Planar distance units', 'Planar distance units', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', 'c', 'Abscissa resolution', 'Abscissa resolution', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', 'd', 'Ordinate resolution', 'Ordinate resolution', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', 'e', 'Distance resolution', 'Distance resolution', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', 'f', 'Bearing resolution', 'Bearing resolution', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', 'g', 'Bearing unit', 'Bearing unit', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', 'h', 'Bearing reference direction', 'Bearing reference direction', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('343', 'i', 'Bearing reference meridian', 'Bearing reference meridian', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('321', '6', 'Enlace', 'Enlace', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('321', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('321', 'a', 'Periodicidad anterior', 'Periodicidad anterior', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('321', 'b', 'Fechas de la periodicidad anterior', 'Fechas de la periodicidad anterior', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('336', '2', 'Fuente', 'Fuente','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('336', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('336', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('336', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('336', 'a', 'Término de tipo de contenido', 'Término de tipo de contenido','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('336', 'b', 'Código de tipo de contenido', 'Código de tipo de contenido','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('337', '2', 'Fuente', 'Fuente','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('337', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('337', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('337', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('337', 'a', 'Nombre del tipo de medio', 'Nombre del tipo de medio','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('337', 'b', 'Código del tipo de medio', 'Código del tipo de medio','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('338', '2', 'Fuente', 'Fuente','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('338', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('338', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('338', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('338', 'a', 'Nombre del tipo de soporte', 'Nombre del tipo de soporte','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('338', 'b', 'Código del tipo de soporte', 'Código del tipo de soporte','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('340', '0', 'Número de control del registro de autoridad o número normalizado', 'Número de control del registro de autoridad o número normalizado','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('340', '2', 'Fuente', 'Fuente','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('340', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', '6', 'Enlace', 'Enlace', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', 'a', 'Base y configuración del material', 'Base y configuración del material', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', 'b', 'Dimensiones', 'Dimensiones', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', 'c', 'Materiales aplicados a la superficie', 'Materiales aplicados a la superficie', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', 'd', 'Técnica en que se registra la información', 'Técnica en que se registra la información', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', 'e', 'Soporte', 'Soporte', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', 'f', 'Coeficiente/proporción de la producción', 'Coeficiente/proporción de la producción', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', 'h', 'Localización interna', 'Localización interna', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', 'i', 'Especificaciones técnicas del medio', 'Especificaciones técnicas del medio', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('340', 'j', 'Generación', 'Generación','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('340', 'k', 'Diseño', 'Diseño','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('340', 'm', 'Formato del libro', 'Formato del libro','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('340', 'n', 'Tamaño de fuente', 'Tamaño de fuente','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('340', 'o', 'Polaridad', 'Polaridad','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('342', '2', 'Método de referencia utilizado', 'Método de referencia utilizado', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', '6', 'Enlace', 'Enlace', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'a', 'Nombre', 'Nombre', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'b', 'Unidades de coordenadas o de distancia', 'Unidades de coordenadas o de distancia', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'c', 'Resolución en latitud', 'Resolución en latitud', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'd', 'Resolución en longitud', 'Resolución en longitud', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'e', 'Paralelo estándar o latitud de línea oblicua', 'Paralelo estándar o latitud de línea oblicua', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'f', 'Longitud de línea oblicua', 'Longitud de línea oblicua', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'g', 'Longitud del meridiano central o centro de la proyección', 'Longitud del meridiano central o centro de la proyección', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'h', 'Latitud del centro de la proyección u origen de la proyección', 'Latitud del centro de la proyección u origen de la proyección', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'i', 'Falsa abscisa', 'Falsa abscisa', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'j', 'Falsa ordenada', 'Falsa ordenada', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'k', 'Factor de escala', 'Factor de escala', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'l', 'Altura del punto de vista sobre la superficie', 'Altura del punto de vista sobre la superficie', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'm', 'Ángulo acimutal', 'Ángulo acimutal', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'n', 'Longitud del acimut del punto de medida o longitud vertical recta desde el polo', 'Longitud del acimut del punto de medida o longitud vertical recta desde el polo', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'o', 'Número de Landsat y de trayectoria', 'Número de Landsat y de trayectoria', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'p', 'Identificador de zona', 'Identificador de zona', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'q', 'Nombre del elipsoide', 'Nombre del elipsoide', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'r', 'Semieje mayor', 'Semieje mayor', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 's', 'Denominador de proporción plana', 'Denominador de proporción plana', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 't', 'Resolución vertical', 'Resolución vertical', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'u', 'Método de codificación vertical', 'Método de codificación vertical', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'v', 'Proyección plana local  local u otra  o descripción de la cuadrícula', 'Proyección plana local  local u otra  o descripción de la cuadrícula', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('342', 'w', 'Información de georeferencia plana local o local', 'Información de georeferencia plana local o local', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', '6', 'Enlace', 'Enlace', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', 'a', 'Método de codificación de coordenadas planas', 'Método de codificación de coordenadas planas', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', 'b', 'Unidades de distancia plana', 'Unidades de distancia plana', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', 'c', 'Resolución de la abscisa', 'Resolución de la abscisa', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', 'd', 'Resolución de la ordenada', 'Resolución de la ordenada', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', 'e', 'Resolución de distancia', 'Resolución de distancia', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', 'f', 'Resolución de orientación', 'Resolución de orientación', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', 'g', 'Unidades de orientación', 'Unidades de orientación', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', 'h', 'Dirección de referencia de la orientación', 'Dirección de referencia de la orientación', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('343', 'i', 'Meridiano de referencia de la orientación', 'Meridiano de referencia de la orientación', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('344', '0', 'Número de control del registro de autoridad o número normalizado', 'Número de control del registro de autoridad o número normalizado','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', '2', 'Fuente', 'Fuente','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', 'a', 'Tipo de grabación', 'Tipo de grabación','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', 'b', 'Medio de grabación', 'Medio de grabación','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', 'c', 'Velocidad de reproducción', 'Velocidad de reproducción','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', 'd', 'Características del surco', 'Características del surco','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', 'e', 'Configuración de la pista', 'Configuración de la pista','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', 'f', 'Configuración de la cinta', 'Configuración de la cinta','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', 'g', 'Configuración de los canales de reproducción del sonido', 'Configuración de los canales de reproducción del sonido','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('344', 'h', 'Características especiales de reproducción', 'Características especiales de reproducción','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('345', '0', 'Número de control del registro de autoridad o número normalizado', 'Número de control del registro de autoridad o número normalizado','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('345', '2', 'Fuente', 'Fuente','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('345', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('345', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('345', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('345', 'a', 'Formato de presentación', 'Formato de presentación','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('345', 'b', 'Velocidad de proyección', 'Velocidad de proyección','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('346', '0', 'Número de control del registro de autoridad o número normalizado', 'Número de control del registro de autoridad o número normalizado','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('346', '2', 'Fuente', 'Fuente','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('346', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('346', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('346', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('346', 'a', 'Formato de vídeo', 'Formato de vídeo','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('346', 'b', 'Estándar de emisión', 'Estándar de emisión','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', '0', 'Número de control del registro de autoridad o número normalizado', 'Número de control del registro de autoridad o número normalizado','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', '2', 'Fuente', 'Fuente','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', 'a', 'Tipo de archivo', 'Tipo de archivo','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', 'b', 'Formato de codificación', 'Formato de codificación','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', 'c', 'Tamaño de archivo', 'Tamaño de archivo','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', 'd', 'Resolución', 'Resolución','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', 'e', 'Codificación regional', 'Codificación regional','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('347', 'f', 'Velocidad de transmisión', 'Velocidad de transmisión','1','0','','3','','','','0','-6', '', '', '', NULL),
                ('350', '6', 'Linkage', 'Linkage', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('350', 'a', 'Price', 'Price', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('350', 'b', 'Form of issue', 'Form of issue', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('351', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('351', '6', 'Linkage', 'Linkage', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('351', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('351', 'a', 'Organization', 'Organization', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('351', 'b', 'Arrangement', 'Arrangement', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('351', 'c', 'Hierarchical level', 'Hierarchical level', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('352', '6', 'Linkage', 'Linkage', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('352', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('352', 'a', 'Direct reference method', 'Direct reference method', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('352', 'b', 'Object type', 'Object type', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('352', 'c', 'Object count', 'Object count', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('352', 'd', 'Row count', 'Row count', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('352', 'e', 'Column count', 'Column count', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('352', 'f', 'Vertical count', 'Vertical count', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('352', 'g', 'VPF topology level', 'VPF topology level', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('352', 'i', 'Indirect reference description', 'Indirect reference description', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', '6', 'Linkage', 'Linkage', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', 'a', 'Security classification', 'Security classification', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', 'b', 'Handling instructions', 'Handling instructions', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', 'c', 'External dissemination information', 'External dissemination information', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', 'd', 'Downgrading or declassification event', 'Downgrading or declassification event', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', 'e', 'Classification system', 'Classification system', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', 'f', 'Country of origin code', 'Country of origin code', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', 'g', 'Downgrading date', 'Downgrading date', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', 'h', 'Declassification date', 'Declassification date', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('355', 'j', 'Authorization', 'Authorization', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('357', '6', 'Linkage', 'Linkage', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('357', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('357', 'a', 'Originator control term', 'Originator control term', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('357', 'b', 'Originating agency', 'Originating agency', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('357', 'c', 'Authorized recipients of material', 'Authorized recipients of material', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('357', 'g', 'Other restrictions', 'Other restrictions', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('351', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('351', '6', 'Enlace', 'Enlace', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('351', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('351', 'a', 'Organización', 'Organización', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('351', 'b', 'Ordenación', 'Ordenación', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('351', 'c', 'Nivel jerárquico', 'Nivel jerárquico', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', '6', 'Enlace', 'Enlace', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', 'a', 'Método de referencia directo', 'Método de referencia directo', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', 'b', 'Tipo de objeto', 'Tipo de objeto', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', 'c', 'Contador de objetos', 'Contador de objetos', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', 'd', 'Contador de filas', 'Contador de filas', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', 'e', 'Contador de columnas', 'Contador de columnas', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', 'f', 'Contador vertical', 'Contador vertical', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', 'g', 'Nivel de topología VPF', 'Nivel de topología VPF', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', 'i', 'Descripción de una referencia indirecta', 'Descripción de una referencia indirecta', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('352', 'q', 'Formato de la imagen digital', 'Formato de la imagen digital','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('355', '6', 'Enlace', 'Enlace', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('355', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('355', 'a', 'Clasificación de seguridad', 'Clasificación de seguridad', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('355', 'b', 'Instrucciones de utilización', 'Instrucciones de utilización', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('355', 'c', 'Información para la difusión externa', 'Información para la difusión externa', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('355', 'd', 'Información sobre reducción de nivel de seguridad o desclasificación', 'Información sobre reducción de nivel de seguridad o desclasificación', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('355', 'e', 'Sistema de clasificación', 'Sistema de clasificación', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('355', 'f', 'Código del país de origen', 'Código del país de origen', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('355', 'g', 'Fecha de reducción del nivel de seguridad', 'Fecha de reducción del nivel de seguridad', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('355', 'h', 'Fecha de desclasificación', 'Fecha de desclasificación', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('355', 'j', 'Autorización', 'Autorización', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('357', '6', 'Enlace', 'Enlace', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('357', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('357', 'a', 'Término de control del emisor', 'Término de control del emisor', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('357', 'b', 'Agencia emisora', 'Agencia emisora', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('357', 'c', 'Destinatarios autorizados de los documentos', 'Destinatarios autorizados de los documentos', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('357', 'g', 'Otras restricciones', 'Otras restricciones', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('359', 'a', 'Rental price', 'Rental price', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('362', '6', 'Linkage', 'Linkage', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('362', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('362', 'a', 'Dates of publication and/or sequential designation', 'Dates of publication and/or sequential designation', 0, 0, 'biblioitems.volumedesc', 3, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('362', 'z', 'Source of information', 'Source of information', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('365', '2', 'Source of price type code', 'Source of price type code', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', '6', 'Linkage', 'Linkage', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('365', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('365', 'a', 'Price type code', 'Price type code', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'b', 'Price amount', 'Price amount', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'c', 'Price type code', 'Price type code', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'd', 'Unit of pricing', 'Unit of pricing', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'e', 'Price note', 'Price note', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'f', 'Price effective from', 'Price effective from', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'g', 'Price effective until', 'Price effective until', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'h', 'Tax rate 1', 'Tax rate 1', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'i', 'Tax rate 2', 'Tax rate 2', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'j', 'ISO country code', 'ISO country code', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'k', 'MARC country code', 'MARC country code', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('365', 'm', 'Identification of pricing entity', 'Identification of pricing entity', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', '2', 'Source of availability status code', 'Source of availability status code', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', '6', 'Linkage', 'Linkage', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('366', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
-               ('366', 'a', 'Publishers\' compressed title identification', 'Publishers\' compressed title identification', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', 'b', 'Detailed date of publication', 'Detailed date of publication', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', 'c', 'Availability status code', 'Availability status code', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', 'd', 'Expected next availability date', 'Expected next availability date', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', 'e', 'Note', 'Note', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', 'f', 'Publishers\' discount category', 'Publishers\' discount category', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', 'g', 'Date made out of print', 'Date made out of print', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', 'j', 'ISO country code', 'ISO country code', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', 'k', 'MARC country code', 'MARC country code', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
-               ('366', 'm', 'Identification of agency', 'Identification of agency', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('362', '6', 'Enlace', 'Enlace', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('362', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('362', 'a', 'Fecha de publicación y/o designación secuencial', 'Fecha de publicación y/o designación secuencial', 0, 0, 'biblioitems.volumedesc', 3, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('362', 'z', 'Fuente de información', 'Fuente de información', 0, 0, NULL, 3, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('363', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-6', '', '', '', NULL),
+               ('363', 'a', 'Primer nivel de enumeración', 'Primer nivel de enumeración','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('363', 'b', 'Segundo nivel de enumeración', 'Segundo nivel de enumeración','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', 'c', 'Tercer nivel de enumeración', 'Tercer nivel de enumeración','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', 'd', 'Cuarto nivel de enumeración', 'Cuarto nivel de enumeración','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', 'e', 'Quinto nivel de enumeración', 'Quinto nivel de enumeración','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('363', 'f', 'Sexto nivel de enumeración', 'Sexto nivel de enumeración','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('363', 'g', 'Esquema de numeración alternativo  primer nivel de enumeración', 'Esquema de numeración alternativo  primer nivel de enumeración','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', 'h', 'Esquema de numeración alternativo  segundo nivel de enumeración', 'Esquema de numeración alternativo  segundo nivel de enumeración','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', 'i', 'Primer nivel de cronología', 'Primer nivel de cronología','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', 'j', 'Segundo nivel de cronología', 'Segundo nivel de cronología','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('363', 'k', 'Tercer nivel de cronología', 'Tercer nivel de cronología','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('363', 'l', 'Cuarto nivel de cronología', 'Cuarto nivel de cronología','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', 'm', 'Esquema de numeración alternativo  cronología', 'Esquema de numeración alternativo  cronología','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', 'u', 'Primer nivel de designación textual', 'Primer nivel de designación textual','0','0','','3','','','','0','-6', '', '', '', NULL),
+               ('363', 'v', 'Primer nivel de cronología  publicación', 'Primer nivel de cronología  publicación','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', 'x', 'Nota interna', 'Nota interna','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('363', 'z', 'Nota pública', 'Nota pública','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('365', '2', 'Fuente del código de tipo de precio', 'Fuente del código de tipo de precio', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', '6', 'Enlace', 'Enlace', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('365', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('365', 'a', 'Código de tipo de precio', 'Código de tipo de precio', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'b', 'Cantidad', 'Cantidad', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'c', 'Código de moneda', 'Código de moneda', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'd', 'Unidad de precio', 'Unidad de precio', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'e', 'Nota sobre el precio', 'Nota sobre el precio', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'f', 'Precio válido a partir de', 'Precio válido a partir de', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'g', 'Precio válido hasta', 'Precio válido hasta', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'h', 'Impuesto 1', 'Impuesto 1', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'i', 'Impuesto 2', 'Impuesto 2', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'j', 'Código ISO de país', 'Código ISO de país', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'k', 'Código MARC de país', 'Código MARC de país', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('365', 'm', 'Identificación de la entidad que asigna el precio', 'Identificación de la entidad que asigna el precio', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', '2', 'Fuente del código de disponibilidad', 'Fuente del código de disponibilidad', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', '6', 'Enlace', 'Enlace', 0, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('366', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 3, '', '', '', NULL, -6, '', '', '', NULL),
+               ('366', 'a', 'Identificación abreviada del título por parte del editor', 'Identificación abreviada del título por parte del editor', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', 'b', 'Fecha detallada de publicación', 'Fecha detallada de publicación', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', 'c', 'Código del estado de la disponibilidad', 'Código del estado de la disponibilidad', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', 'd', 'Próxima fecha prevista de disponibilidad', 'Próxima fecha prevista de disponibilidad', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', 'e', 'Nota', 'Nota', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', 'f', 'Categoría de descuento del editor', 'Categoría de descuento del editor', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', 'g', 'Fecha en la que se agotó', 'Fecha en la que se agotó', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', 'j', 'Código ISO de país', 'Código ISO de país', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', 'k', 'Código MARC de país', 'Código MARC de país', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('366', 'm', 'Identificación de la agencia', 'Identificación de la agencia', 0, 0, '', 3, '', '', '', NULL, -1, '', '', '', NULL),
+               ('377', '2', 'Fuente', 'Fuente','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('377', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('377', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('377', 'a', 'Código de lengua', 'Código de lengua','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('377', 'l', 'Término de lengua', 'Término de lengua','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('380', '0', 'Número de control del registro', 'Número de control del registro','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('380', '2', 'Fuente del término', 'Fuente del término','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('380', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('380', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('380', 'a', 'Forma de la obra', 'Forma de la obra','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('381', '0', 'Número de control del registro', 'Número de control del registro','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('381', '2', 'Fuente del término', 'Fuente del término','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('381', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('381', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('381', 'a', 'Otras características distintivas', 'Otras características distintivas','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('381', 'u', 'Identificador Uniforme del Recurso', 'Identificador Uniforme del Recurso','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('381', 'v', 'Fuente de información', 'Fuente de información','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', '0', 'Número de control del registro', 'Número de control del registro','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', '2', 'Fuente del término', 'Fuente del término','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', 'a', 'Medio de interpretación', 'Medio de interpretación','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', 'b', 'Solista', 'Solista','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', 'd', 'Instrumento auxiliar', 'Instrumento auxiliar','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', 'n', 'Número de intérpretes de un mismo medio', 'Número de intérpretes de un mismo medio','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', 'p', 'Medio de interpretación alternativo', 'Medio de interpretación alternativo','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', 's', 'Número total de intérpretes', 'Número total de intérpretes','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('382', 'v', 'Nota', 'Nota','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('383', '2', 'Fuente', 'Fuente','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('383', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('383', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('383', 'a', 'Número de serie', 'Número de serie','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('383', 'b', 'Número de opus', 'Número de opus','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('383', 'c', 'Número de catálogo temático', 'Número de catálogo temático','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('383', 'd', 'Código de catálogo temático', 'Código de catálogo temático','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('383', 'e', 'Editor asociado al número de serie o de opus', 'Editor asociado al número de serie o de opus','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('384', '6', 'Enlace', 'Enlace','0','0','','3','','','','0','-1', '', '', '', NULL),
+               ('384', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','3','','','','0','-1', '', '', '', NULL),
+               ('384', 'a', 'Tonalidad', 'Tonalidad','0','0','','3','','','','0','-1', '', '', '', NULL),
                ('400', '4', 'Relator code', 'Relator code', 1, 0, '', 4, '', '', '', 0, -6, '', '', '', NULL),
                ('400', '6', 'Linkage', 'Linkage', 0, 0, '', 4, '', '', '', 0, -6, '', '', '', NULL),
                ('400', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 4, '', '', '', 0, -6, '', '', '', NULL),
@@ -1314,613 +1499,654 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('411', 'u', 'Affiliation', 'Affiliation', 0, 0, NULL, 4, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('411', 'v', 'Volume number/sequential designation', 'Volume number/sequential designation', 0, 0, '', 4, '', '', '', NULL, -6, '', '', '', NULL),
                ('411', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, '', 4, '', '', '', NULL, -6, '', '', '', NULL),
-               ('440', '6', 'Linkage', 'Linkage', 0, 0, '', 4, '', '', '', NULL, -6, '', '', '', NULL),
-               ('440', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 4, '', '', '', NULL, -6, '', '', '', NULL),
+               ('440', '6', 'Enlace', 'Enlace', 0, 0, '', 4, '', '', '', NULL, -6, '', '', '', NULL),
+               ('440', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 4, '', '', '', NULL, -6, '', '', '', NULL),
                ('440', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 4, '', '', '', 0, -5, '', '', '', NULL),
-               ('440', 'a', 'Title', 'Title', 0, 0, 'biblio.seriestitle', 4, '', 'UNIF_TITLE', '', NULL, 0, '', '''440n'',''440p'',''490a'',''830a'',''830n'',''830p'',''899a''', '', NULL),
-               ('440', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, 'biblioitems.number', 4, '', '', '', NULL, 0, '', '', '', NULL),
-               ('440', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 4, '', '', '', NULL, 0, '', '', '', NULL),
-               ('440', 'v', 'Volume number/sequential designation', 'Volume number/sequential designation', 0, 0, 'biblioitems.volume', 4, '', '', '', NULL, 0, '', '', '', NULL),
+               ('440', 'a', 'Título', 'Título', 0, 0, 'biblio.seriestitle', 4, '', 'UNIF_TITLE', '', NULL, 0, '', '''440n'',''440p'',''490a'',''830a'',''830n'',''830p'',''899a''', '', NULL),
+               ('440', 'n', 'Número de la parte/sección de una obra', 'Número de la parte/sección de una obra', 1, 0, 'biblioitems.number', 4, '', '', '', NULL, 0, '', '', '', NULL),
+               ('440', 'p', 'Nombre de la parte/sección de una obra', 'Nombre de la parte/sección de una obra', 1, 0, '', 4, '', '', '', NULL, 0, '', '', '', NULL),
+               ('440', 'v', 'Número de volumen/designación secuencial', 'Número de volumen/designación secuencial', 0, 0, 'biblioitems.volume', 4, '', '', '', NULL, 0, '', '', '', NULL),
                ('440', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, '', 4, '', '', '', NULL, 0, '', '', '', NULL),
-               ('490', '6', 'Linkage', 'Linkage', 0, 0, '', 4, '', '', '', NULL, -6, '', '', '', NULL),
-               ('490', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 4, '', '', NULL, NULL, -6, '', '', '', NULL),
-               ('490', 'a', 'Series statement', 'Series statement', 1, 0, '', 4, '', '', '', NULL, -1, '', '', '', NULL),
-               ('490', 'l', 'Library of Congress call number', 'Library of Congress call number', 0, 0, '', 4, '', '', '', NULL, -6, '', '', '', NULL),
-               ('490', 'v', 'Volume number/sequential designation', 'Volume number/sequential designation', 1, 0, '', 4, '', '', '', NULL, -1, '', '', '', NULL),
-               ('490', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, '', 4, '', '', '', NULL, -1, '', '', '', NULL),
-               ('500', '3', 'Materials specified', 'Materials specified', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('500', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('500', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('500', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('500', 'a', 'General note', 'General note', 0, 0, 'biblio.notes', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('500', 'l', 'Library of Congress call number (SE) [OBSOLETE]', 'Library of Congress call number (SE) [OBSOLETE]', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('500', 'n', 'n (RLIN) [OBSOLETE]', 'n (RLIN) [OBSOLETE]', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('500', 'x', 'International Standard Serial Number (SE) [OBSOLETE]', 'International Standard Serial Number (SE) [OBSOLETE]', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('500', 'z', 'Source of note information (AM SE) [OBSOLETE]', 'Source of note information (AM SE) [OBSOLETE]', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('501', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('501', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('501', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('501', 'a', 'With note', 'With note', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('502', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('502', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('502', 'a', 'Dissertation note', 'Dissertation note', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('490', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','3','','','','0','-1','','','', NULL),
+               ('490', '6', 'Enlace', 'Enlace', 0, 0, '', 4, '', '', '', NULL, -6, '', '', '', NULL),
+               ('490', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 4, '', '', NULL, NULL, -6, '', '', '', NULL),
+               ('490', 'a', 'Mención de serie', 'Mención de serie', 1, 0, '', 4, '', '', '', NULL, -1, '', '', '', NULL),
+               ('490', 'l', 'Signatura topográfica de la Biblioteca del Congreso', 'Signatura topográfica de la Biblioteca del Congreso', 0, 0, '', 4, '', '', '', NULL, -6, '', '', '', NULL),
+               ('490', 'v', 'Designación de volumen o secuencia', 'Designación de volumen o secuencia', 1, 0, '', 4, '', '', '', NULL, -1, '', '', '', NULL),
+               ('490', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 1, 0, '', 4, '', '', '', NULL, -1, '', '', '', NULL),
+               ('500', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('500', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('500', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('500', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('500', 'a', 'Nota general', 'Nota general', 0, 0, 'biblio.notes', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('501', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('501', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('501', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('501', 'a', 'Nota de \"Con\"', 'Nota de \"Con\"', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('502', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('502', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('502', 'a', 'Nota de tesis', 'Nota de tesis', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('502', 'b', 'Tipo de título', 'Tipo de título','0','0','','5','','','','0','-6', '', '', '', NULL),
+               ('502', 'c', 'Nombre de la institución que otorga el título', 'Nombre de la institución que otorga el título','0','0','','5','','','','0','-6', '', '', '', NULL),
+               ('502', 'd', 'Año de obtención del título', 'Año de obtención del título','0','0','','5','','','','0','-6', '', '', '', NULL),
+               ('502', 'g', 'Información miscelánea', 'Información miscelánea','1','0','','5','','','','0','-6', '', '', '', NULL),
+               ('502', 'o', 'Identificador de la tesis', 'Identificador de la tesis','1','0','','5','','','','0','-6', '', '', '', NULL),
                ('503', '8', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
                ('503', 'a', 'Bibliographic history note', 'Bibliographic history note', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('504', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('504', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('504', 'a', 'Bibliography, etc', 'Bibliography, etc', 0, 0, '', 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('504', 'b', 'Number of references', 'Number of references', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('505', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('505', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('505', 'a', 'Formatted contents note', 'Formatted contents note', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('505', 'g', 'Miscellaneous information', 'Miscellaneous information', 1, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('505', 'r', 'Statement of responsibility', 'Statement of responsibility', 1, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('505', 't', 'Title', 'Title', 1, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('505', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 5, '', '', '', 1, 0, '', '', '', NULL),
-               ('506', '2', 'Source of term', 'Source of term', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', '3', 'Materials specified', 'Materials specified', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', 'a', 'Terms governing access', 'Terms governing access', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', 'b', 'Jurisdiction', 'Jurisdiction', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', 'c', 'Physical access provisions', 'Physical access provisions', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', 'd', 'Authorized users', 'Authorized users', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', 'e', 'Authorization', 'Authorization', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', 'f', 'Standardized terminology for access restriction', 'Standardized terminology for access restriction', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('506', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 5, '', '', '', 1, -6, '', '', '', NULL),
-               ('507', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('507', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('507', 'a', 'Representative fraction of scale note', 'Representative fraction of scale note', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('507', 'b', 'Remainder of scale note', 'Remainder of scale note', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('508', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('508', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('508', 'a', 'Creation/production credits note', 'Creation/production credits note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('504', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('504', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('504', 'a', 'Nota de bibliografía  etc.', 'Nota de bibliografía  etc.', 0, 0, '', 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('504', 'b', 'Número de referencias', 'Número de referencias', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('505', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('505', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('505', 'a', 'Nota de contenido con formato', 'Nota de contenido con formato', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('505', 'g', 'Información varia', 'Información varia', 1, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('505', 'r', 'Mención de responsabilidad', 'Mención de responsabilidad', 1, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('505', 't', 'Título', 'Título', 1, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('505', 'u', 'Identificador Uniforme del Recurso', 'Identificador Uniforme del Recurso', 1, 0, '', 5, '', '', '', 1, 0, '', '', '', NULL),
+               ('506', '2', 'Fuente del término', 'Fuente del término', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', 'a', 'Limitaciones de acceso', 'Limitaciones de acceso', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', 'b', 'Autoridad competente', 'Autoridad competente', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', 'c', 'Condiciones para el acceso físico', 'Condiciones para el acceso físico', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', 'd', 'Usuarios autorizados', 'Usuarios autorizados', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', 'e', 'Autorización', 'Autorización', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', 'f', 'Terminología normalizada para las restricciones de acceso', 'Terminología normalizada para las restricciones de acceso', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('506', 'u', 'Identificador Uniforme del Recurso (URI)', 'Identificador Uniforme del Recurso (URI)', 1, 0, '', 5, '', '', '', 1, -6, '', '', '', NULL),
+               ('507', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('507', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('507', 'a', 'Nota de escala o de fracción representativa', 'Nota de escala o de fracción representativa', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('507', 'b', 'Nota de resto de la escala', 'Nota de resto de la escala', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('508', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('508', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('508', 'a', 'Nota de créditos de creación o producción', 'Nota de créditos de creación o producción', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
                ('509', 'a', 'Informal Notes', 'Informal Notes', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('510', '3', 'Materials specified', 'Materials specified', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('510', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('510', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('510', 'a', 'Name of source', 'Name of source', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('510', 'b', 'Coverage of source', 'Coverage of source', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('510', 'c', 'Location within source', 'Location within source', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('510', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('511', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('511', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('511', 'a', 'Participant or performer note', 'Participant or performer note', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('510', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('510', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('510', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('510', 'a', 'Nombre de la fuente', 'Nombre de la fuente', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('510', 'b', 'Cobertura de la fuente', 'Cobertura de la fuente', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('510', 'c', 'Localización dentro de la fuente', 'Localización dentro de la fuente', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('510', 'u', 'Identificador Uniforme del Recurso (URI)', 'Identificador Uniforme del Recurso (URI)','1','0','','5','','','','0','-6', '', '', '', NULL),
+               ('510', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('511', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('511', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('511', 'a', 'Nota de participantes o intérpretes', 'Nota de participantes o intérpretes', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
                ('512', '6', 'Linkage', 'Linkage', 0, 0, '', -1, '', '', '', NULL, -6, '', '', '', NULL),
                ('512', 'a', 'Earlier or later volumes separately cataloged note', 'Earlier or later volumes separately cataloged note', 0, 0, '', -1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('513', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('513', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('513', 'a', 'Type of report', 'Type of report', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('513', 'b', 'Period covered', 'Period covered', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'a', 'Attribute accuracy report', 'Attribute accuracy report', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'b', 'Attribute accuracy value', 'Attribute accuracy value', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'c', 'Attribute accuracy explanation', 'Attribute accuracy explanation', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'd', 'Logical consistency report', 'Logical consistency report', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'e', 'Completeness report', 'Completeness report', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'f', 'Horizontal position accuracy report', 'Horizontal position accuracy report', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'g', 'Horizontal position accuracy value', 'Horizontal position accuracy value', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'h', 'Horizontal position accuracy explanation', 'Horizontal position accuracy explanation', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'i', 'Vertical positional accuracy report', 'Vertical positional accuracy report', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'j', 'Vertical positional accuracy value', 'Vertical positional accuracy value', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'k', 'Vertical positional accuracy explanation', 'Vertical positional accuracy explanation', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'm', 'Cloud cover', 'Cloud cover', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('514', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 5, '', '', '', 1, -6, '', '', '', NULL),
-               ('514', 'z', 'Display note', 'Display note', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('515', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('515', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('515', 'a', 'Numbering peculiarities note', 'Numbering peculiarities note', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('515', 'z', 'Source of note information (SE) [OBSOLETE]', 'Source of note information (SE) [OBSOLETE]', 0, 0, '', -1, '', '', '', NULL, -6, '', '', '', NULL),
-               ('516', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('516', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('516', 'a', 'Type of computer file or data note', 'Type of computer file or data note', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('513', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('513', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('513', 'a', 'Tipo de informe', 'Tipo de informe', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('513', 'b', 'Periodo cubierto', 'Periodo cubierto', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'a', 'Informe de exactitud del atributo', 'Informe de exactitud del atributo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'b', 'Valor de exactitud del atributo', 'Valor de exactitud del atributo', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'c', 'Explicación de exactitud del atributo', 'Explicación de exactitud del atributo', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'd', 'Informe de consistencia lógica', 'Informe de consistencia lógica', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'e', 'Informe de exhaustividad', 'Informe de exhaustividad', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'f', 'Informe de la exactitud de la posición horizontal', 'Informe de la exactitud de la posición horizontal', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'g', 'Valor de la exactitud de la posición horizontal', 'Valor de la exactitud de la posición horizontal', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'h', 'Explicación de la exactitud de la posición horizontal', 'Explicación de la exactitud de la posición horizontal', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'i', 'Informe de la exactitud de la posición vertical', 'Informe de la exactitud de la posición vertical', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'j', 'Valor de la exactitud de la posición vertical', 'Valor de la exactitud de la posición vertical', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'k', 'Explicación de la exactitud de la posición vertical', 'Explicación de la exactitud de la posición vertical', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'm', 'Cobertura nubosa', 'Cobertura nubosa', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('514', 'u', 'Identificador Uniforme del Recurso', 'Identificador Uniforme del Recurso', 1, 0, '', 5, '', '', '', 1, -6, '', '', '', NULL),
+               ('514', 'z', 'Nota de visualización', 'Nota de visualización', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('515', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('515', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('515', 'a', 'Nota de peculiaridades de la numeración', 'Nota de peculiaridades de la numeración', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('516', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('516', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('516', 'a', 'Nota de tipo de archivo de ordenador o de datos', 'Nota de tipo de archivo de ordenador o de datos', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
                ('517', 'a', 'Different formats', 'Different formats', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
                ('517', 'b', 'Content descriptors', 'Content descriptors', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
                ('517', 'c', 'Additional animation techniques', 'Additional animation techniques', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('518', '3', 'Materials specified', 'Materials specified', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('518', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('518', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('518', 'a', 'Date/time and place of an event note', 'Date/time and place of an event note', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('520', '3', 'Materials specified', 'Materials specified', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('520', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('520', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('520', 'a', 'Summary, etc', 'Summary, etc', 0, 0, 'biblio.abstract', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('520', 'b', 'Expansion of summary note', 'Expansion of summary note', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('520', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 5, '', '', '', 1, 0, '', '', '', NULL),
-               ('520', 'z', 'Source of note information [OBSOLETE]', 'Source of note information [OBSOLETE]', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('521', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('521', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('521', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('521', 'a', 'Target audience note', 'Target audience note', 1, 0, NULL, 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('521', 'b', 'Source', 'Source', 0, 0, NULL, 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('522', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('522', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('522', 'a', 'Geographic coverage note', 'Geographic coverage note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('518', '0', 'Número de control del registro', 'Número de control del registro','1','0','','5','','','','0','-6', '', '', '', NULL),
+               ('518', '2', 'Fuente del término', 'Fuente del término','1','0','','5','','','','0','-6', '', '', '', NULL),
+               ('518', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('518', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('518', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('518', 'a', 'Nota de fecha/hora y lugar de un acontecimiento', 'Nota de fecha/hora y lugar de un acontecimiento', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('518', 'd', 'Fecha del acontecimiento', 'Fecha del acontecimiento','1','0','','5','','','','0','0', '', '', '', NULL),
+               ('518', 'o', 'Otra información sobre el acontecimiento', 'Otra información sobre el acontecimiento','0','0','','5','','','','0','0', '', '', '', NULL),
+               ('518', 'p', 'Lugar del acontecimiento', 'Lugar del acontecimiento','1','0','','5','','','','0','0', '', '', '', NULL),
+               ('520', '2', 'Fuente', 'Fuente','0','0','','5','','','','0','0', '', '', '', NULL),
+               ('520', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('520', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('520', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('520', 'a', 'Sumario  etc.', 'Sumario  etc.', 0, 0, 'biblio.abstract', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('520', 'b', 'Ampliación de la nota de sumario', 'Ampliación de la nota de sumario', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('520', 'c', 'Fuente proveedora', 'Fuente proveedora','0','0','','5','','','','0','0', '', '', '', NULL),
+               ('520', 'u', 'Identificador Uniforme del Recurso', 'Identificador Uniforme del Recurso', 1, 0, '', 5, '', '', '', 1, 0, '', '', '', NULL),
+               ('521', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('521', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('521', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('521', 'a', 'Nota de público destinatario', 'Nota de público destinatario', 1, 0, NULL, 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('521', 'b', 'Fuente', 'Fuente', 0, 0, NULL, 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('522', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('522', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('522', 'a', 'Nota de ámbito geográfico', 'Nota de ámbito geográfico', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
                ('523', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('523', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('523', 'a', 'Time period of content note', 'Time period of content note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('524', '2', 'Source of schema used', 'Source of schema used', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('524', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('524', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('524', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('524', 'a', 'Preferred citation of described materials note', 'Preferred citation of described materials note', 0, 0, NULL, 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('525', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('525', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('525', 'a', 'Supplement note', 'Supplement note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('525', 'z', 'Source of note information (SE) [OBSOLETE]', 'Source of note information (SE) [OBSOLETE]', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('526', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('526', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('526', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('526', 'a', 'Program name', 'Program name', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('526', 'b', 'Interest level', 'Interest level', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('526', 'c', 'Reading level', 'Reading level', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('526', 'd', 'Title point value', 'Title point value', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
-               ('526', 'i', 'Display text', 'Display text', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('526', 'x', 'Nonpublic note', 'Nonpublic note', 1, 0, '', 5, '', '', '', NULL, 6, '', '', '', NULL),
-               ('526', 'z', 'Public note', 'Public note', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('524', '2', 'Fuente', 'Fuente', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('524', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('524', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('524', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('524', 'a', 'Nota de forma usual de cita de los materiales descritos', 'Nota de forma usual de cita de los materiales descritos', 0, 0, NULL, 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('525', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('525', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('525', 'a', 'Nota de suplemento', 'Nota de suplemento', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('526', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('526', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('526', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('526', 'a', 'Nombre del programa', 'Nombre del programa', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('526', 'b', 'Nivel de interés', 'Nivel de interés', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('526', 'c', 'Nivel de lectura', 'Nivel de lectura', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('526', 'd', 'Puntuación del título', 'Puntuación del título', 0, 0, '', 5, '', '', '', NULL, 0, '', '', '', NULL),
+               ('526', 'i', 'Texto de visualización', 'Texto de visualización', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('526', 'x', 'Nota no pública', 'Nota no pública', 1, 0, '', 5, '', '', '', NULL, 6, '', '', '', NULL),
+               ('526', 'z', 'Nota pública', 'Nota pública', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
                ('527', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('527', 'a', 'Censorship note', 'Censorship note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('530', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('530', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('530', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('530', 'a', 'Additional physical form available note', 'Additional physical form available note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('530', 'b', 'Availability source', 'Availability source', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('530', 'c', 'Availability conditions', 'Availability conditions', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('530', 'd', 'Order number', 'Order number', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('530', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, NULL, 5, NULL, NULL, '', 1, -1, '', '', '', NULL),
-               ('530', 'z', 'Source of note information (AM CF VM SE) [OBSOLETE]', 'Source of note information (AM CF VM SE) [OBSOLETE]', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('533', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('533', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('533', '7', 'Fixed-length data elements of reproduction', 'Fixed-length data elements of reproduction', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('533', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('533', 'a', 'Type of reproduction', 'Type of reproduction', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('533', 'b', 'Place of reproduction', 'Place of reproduction', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('533', 'c', 'Agency responsible for reproduction', 'Agency responsible for reproduction', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('533', 'd', 'Date of reproduction', 'Date of reproduction', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('533', 'e', 'Physical description of reproduction', 'Physical description of reproduction', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('533', 'f', 'Series statement of reproduction', 'Series statement of reproduction', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('533', 'm', 'Dates and/or sequential designation of issues reproduced', 'Dates and/or sequential designation of issues reproduced', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('533', 'n', 'Note about reproduction', 'Note about reproduction', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('534', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'a', 'Main entry of original', 'Main entry of original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'b', 'Edition statement of original', 'Edition statement of original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'c', 'Publication, distribution, etc', 'Publication, distribution, etc', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'e', 'Physical description, etc', 'Physical description, etc', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'f', 'Series statement of original', 'Series statement of original', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'k', 'Key title of original', 'Key title of original', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'l', 'Location of original', 'Location of original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'm', 'Material specific details', 'Material specific details', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'n', 'Note about original', 'Note about original', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'p', 'Introductory phrase', 'Introductory phrase', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 't', 'Title statement of original', 'Title statement of original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('534', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('535', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('535', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('535', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('535', 'a', 'Custodian', 'Custodian', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('535', 'b', 'Postal address', 'Postal address', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('535', 'c', 'Country', 'Country', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('535', 'd', 'Telecommunications address', 'Telecommunications address', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('535', 'g', 'Repository location code', 'Repository location code', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('536', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('536', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('536', 'a', 'Text of note', 'Text of note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('536', 'b', 'Contract number', 'Contract number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('536', 'c', 'Grant number', 'Grant number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('536', 'd', 'Undifferentiated number', 'Undifferentiated number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('536', 'e', 'Program element number', 'Program element number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('536', 'f', 'Project number', 'Project number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('536', 'g', 'Task number', 'Task number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('536', 'h', 'Work unit number', 'Work unit number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('530', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('530', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('530', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('530', 'a', 'Nota de formato físico adicional disponible', 'Nota de formato físico adicional disponible', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('530', 'b', 'Fuente para la adquisición', 'Fuente para la adquisición', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('530', 'c', 'Condiciones de adquisición', 'Condiciones de adquisición', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('530', 'd', 'Número de orden', 'Número de orden', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('530', 'u', 'Identificador Uniforme del Recurso', 'Identificador Uniforme del Recurso', 1, 0, NULL, 5, NULL, NULL, '', 1, -1, '', '', '', NULL),
+               ('533', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('533', '5', 'Institución que aplica el campo', 'Institución que aplica el campo','0','0','','5','','','','0','-6', '', '', '', NULL),
+               ('533', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('533', '7', 'Datos de longitud fija sobre la reproducción', 'Datos de longitud fija sobre la reproducción', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('533', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('533', 'a', 'Tipo de reproducción', 'Tipo de reproducción', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('533', 'b', 'Lugar de la reproducción', 'Lugar de la reproducción', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('533', 'c', 'Institución responsable de la reproducción', 'Institución responsable de la reproducción', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('533', 'd', 'Fecha de la reproducción', 'Fecha de la reproducción', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('533', 'e', 'Descripción física de la reproducción', 'Descripción física de la reproducción', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('533', 'f', 'Mención de serie de la reproducción', 'Mención de serie de la reproducción', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('533', 'm', 'Fecha y/o designación secuencial de los originales reproducidos', 'Fecha y/o designación secuencial de los originales reproducidos', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('533', 'n', 'Nota sobre la reproducción', 'Nota sobre la reproducción', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('534', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','5','','','','0','-1', '', '', '', NULL),
+               ('534', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'a', 'Encabezamiento principal del original', 'Encabezamiento principal del original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'b', 'Mención de edición del original', 'Mención de edición del original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'c', 'Publicación  distribución  etc. del original', 'Publicación  distribución  etc. del original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'e', 'Descripción física  etc. del original', 'Descripción física  etc. del original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'f', 'Mención de serie del original', 'Mención de serie del original', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'k', 'Título clave del original', 'Título clave del original', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'l', 'Localización del original', 'Localización del original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'm', 'Datos específicos del material original', 'Datos específicos del material original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'n', 'Nota sobre el original', 'Nota sobre el original', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'o', 'Otros identificadores del recurso', 'Otros identificadores del recurso','1','0','','5','','','','0','-6', '', '', '', NULL),
+               ('534', 'p', 'Frase introductoria', 'Frase introductoria', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 't', 'Mención de título del original', 'Mención de título del original', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'x', 'ISSN', 'ISSN', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('534', 'z', 'ISBN', 'ISBN', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('535', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('535', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('535', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('535', 'a', 'Depositario', 'Depositario', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('535', 'b', 'Dirección postal', 'Dirección postal', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('535', 'c', 'País', 'País', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('535', 'd', 'Dirección de telecomunicaciones', 'Dirección de telecomunicaciones', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('535', 'g', 'Código de localización del depósito', 'Código de localización del depósito', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('536', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('536', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('536', 'a', 'Texto de la nota', 'Texto de la nota', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('536', 'b', 'Número de contrato', 'Número de contrato', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('536', 'c', 'Número de subvención', 'Número de subvención', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('536', 'd', 'Número indiferenciado', 'Número indiferenciado', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('536', 'e', 'Número de elemento de programa', 'Número de elemento de programa', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('536', 'f', 'Número de proyecto', 'Número de proyecto', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('536', 'g', 'Número de tarea', 'Número de tarea', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('536', 'h', 'Número de unidad de trabajo', 'Número de unidad de trabajo', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('537', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('537', 'a', 'Source of data note', 'Source of data note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('538', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('538', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('538', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('538', 'a', 'System details note', 'System details note', 0, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('538', 'i', 'Display text', 'Display text', 0, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('538', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 5, '', '', '', 1, -1, '', '', '', NULL),
-               ('540', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('540', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('540', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('540', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('540', 'a', 'Terms governing use and reproduction', 'Terms governing use and reproduction', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('540', 'b', 'Jurisdiction', 'Jurisdiction', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('540', 'c', 'Authorization', 'Authorization', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('540', 'd', 'Authorized users', 'Authorized users', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('540', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 5, '', '', '', 1, -6, '', '', '', NULL),
-               ('541', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('541', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('541', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('541', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('541', 'a', 'Source of acquisition', 'Source of acquisition', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
-               ('541', 'b', 'Address', 'Address', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
-               ('541', 'c', 'Method of acquisition', 'Method of acquisition', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
-               ('541', 'd', 'Date of acquisition', 'Date of acquisition', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
-               ('541', 'e', 'Accession number', 'Accession number', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
-               ('541', 'f', 'Owner', 'Owner', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
-               ('541', 'h', 'Purchase price', 'Purchase price', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
-               ('541', 'n', 'Extent', 'Extent', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
-               ('541', 'o', 'Type of unit', 'Type of unit', 1, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
+               ('538', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('538', '5', 'Institución que aplica el campo', 'Institución que aplica el campo','1','0','','5','','','','0','-6', '', '', '', NULL),
+               ('538', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('538', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('538', 'a', 'Nota de detalles del sistema', 'Nota de detalles del sistema', 0, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('538', 'i', 'Texto de visualización', 'Texto de visualización', 0, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('538', 'u', 'Identificador Uniforme del Recurso (URI)', 'Identificador Uniforme del Recurso (URI)', 1, 0, '', 5, '', '', '', 1, -1, '', '', '', NULL),
+               ('540', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('540', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('540', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('540', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('540', 'a', 'Condiciones de uso y reproducción', 'Condiciones de uso y reproducción', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('540', 'b', 'Autoridad competente', 'Autoridad competente', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('540', 'c', 'Autorización', 'Autorización', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('540', 'd', 'Usuarios autorizados', 'Usuarios autorizados', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('540', 'u', 'Identificador Uniforme del Recurso', 'Identificador Uniforme del Recurso', 1, 0, '', 5, '', '', '', 1, -6, '', '', '', NULL),
+               ('541', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('541', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('541', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('541', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('541', 'a', 'Fuente de adquisición', 'Fuente de adquisición', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
+               ('541', 'b', 'Dirección', 'Dirección', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
+               ('541', 'c', 'Forma de adquisición', 'Forma de adquisición', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
+               ('541', 'd', 'Fecha de adquisición', 'Fecha de adquisición', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
+               ('541', 'e', 'Número de registro', 'Número de registro', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
+               ('541', 'f', 'Propietario', 'Propietario', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
+               ('541', 'h', 'Precio de compra', 'Precio de compra', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
+               ('541', 'n', 'Extensión', 'Extensión', 0, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
+               ('541', 'o', 'Tipo de unidad', 'Tipo de unidad', 1, 0, '', 5, '', '', '', NULL, 1, '', '', '', NULL),
+               ('542', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', '6', 'Enlace', 'Enlace','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'a', 'Creador personal', 'Creador personal','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'b', 'Fecha de fallecimiento del creador personal', 'Fecha de fallecimiento del creador personal','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'c', 'Entidad creadora', 'Entidad creadora','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'd', 'Títular del copyright', 'Títular del copyright','1','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'e', 'Información de contacto del titular del copyright', 'Información de contacto del titular del copyright','1','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'f', 'Mención de copyright', 'Mención de copyright','1','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'g', 'Fecha de copyright', 'Fecha de copyright','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'h', 'Fecha de renovación del copyright', 'Fecha de renovación del copyright','1','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'i', 'Fecha de publicación', 'Fecha de publicación','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'j', 'Fecha de creación', 'Fecha de creación','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'k', 'Editor', 'Editor','1','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'l', 'Estado del copyright', 'Estado del copyright','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'm', 'Estado de la publicación', 'Estado de la publicación','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'n', 'Nota', 'Nota','1','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'o', 'Fecha de la búsqueda', 'Fecha de la búsqueda','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'p', 'País de publicación o creación', 'País de publicación o creación','1','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'q', 'Agencia que proporciona la información', 'Agencia que proporciona la información','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'r', 'Jurisdicción de la mención de copyright', 'Jurisdicción de la mención de copyright','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 's', 'Fuente de la información', 'Fuente de la información','0','0','','5','','','','0','1', '', '', '', NULL),
+               ('542', 'u', 'Identificador Uniforme del Recurso (URI)', 'Identificador Uniforme del Recurso (URI)','1','0','','5','','','','0','1', '', '', '', NULL),
                ('543', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('543', 'a', 'Solicitation information note', 'Solicitation information note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('544', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('544', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('544', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('544', 'a', 'Custodian', 'Custodian', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('544', 'b', 'Address', 'Address', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('544', 'c', 'Country', 'Country', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('544', 'd', 'Title', 'Title', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('544', 'e', 'Provenance', 'Provenance', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('544', 'n', 'Note', 'Note', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('545', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('545', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('545', 'a', 'Biographical or historical note', 'Biographical or historical note', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('545', 'b', 'Expansion', 'Expansion', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('545', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 5, '', '', '', 1, -6, '', '', '', NULL),
-               ('546', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('546', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('546', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('546', 'a', 'Language note', 'Language note', 0, 0, NULL, 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('546', 'b', 'Information code or alphabet', 'Information code or alphabet', 1, 0, NULL, 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('546', 'z', 'Source of note information (SE) [OBSOLETE]', 'Source of note information (SE) [OBSOLETE]', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('547', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('547', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('547', 'a', 'Former title complexity note', 'Former title complexity note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('547', 'z', 'Source of note information (SE) [OBSOLETE]', 'Source of note information (SE) [OBSOLETE]', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('550', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('550', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('550', 'a', 'Issuing body note', 'Issuing body note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('550', 'z', 'Source of note information (SE) [OBSOLETE]', 'Source of note information (SE) [OBSOLETE]', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('552', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'a', 'Entity type label', 'Entity type label', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'b', 'Entity type definition and source', 'Entity type definition and source', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'c', 'Attribute label', 'Attribute label', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'd', 'Attribute definition and source', 'Attribute definition and source', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'e', 'Enumerated domain value', 'Enumerated domain value', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'f', 'Enumerated domain value definition and source', 'Enumerated domain value definition and source', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'g', 'Range domain minimum and maximum', 'Range domain minimum and maximum', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'h', 'Codeset name and source', 'Codeset name and source', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'i', 'Unrepresentable domain', 'Unrepresentable domain', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'j', 'Attribute units of measurement and resolution', 'Attribute units of measurement and resolution', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'k', 'Beginning date and ending date of attribute values', 'Beginning date and ending date of attribute values', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'l', 'Attribute value accuracy', 'Attribute value accuracy', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'm', 'Attribute value accuracy explanation', 'Attribute value accuracy explanation', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'n', 'Attribute measurement frequency', 'Attribute measurement frequency', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'o', 'Entity and attribute overview', 'Entity and attribute overview', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'p', 'Entity and attribute detail citation', 'Entity and attribute detail citation', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('552', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 5, '', '', '', 1, -6, '', '', '', NULL),
-               ('552', 'z', 'Display note', 'Display note', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('555', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('555', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('555', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('555', 'a', 'Cumulative index/finding aids note', 'Cumulative index/finding aids note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('555', 'b', 'Availability source', 'Availability source', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('555', 'c', 'Degree of control', 'Degree of control', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('555', 'd', 'Bibliographic reference', 'Bibliographic reference', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('555', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, NULL, 5, NULL, NULL, '', 1, -1, '', '', '', NULL),
-               ('556', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('556', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('556', 'a', 'Information about documentation note', 'Information about documentation note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('556', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('561', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('561', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('561', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('561', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('561', 'a', 'History', 'History', 0, 0, '', 5, '', '', '', NULL, 6, '', '', '', NULL),
-               ('561', 'b', 'Time of collation [OBSOLETE]', 'Time of collation [OBSOLETE]', 0, 0, '', 5, '', '', '', NULL, 6, '', '', '', NULL),
-               ('562', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('562', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, NULL, -1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('562', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('562', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('562', 'a', 'Identifying markings', 'Identifying markings', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('562', 'b', 'Copy identification', 'Copy identification', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('562', 'c', 'Version identification', 'Version identification', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('562', 'd', 'Presentation format', 'Presentation format', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('562', 'e', 'Number of copies', 'Number of copies', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('563', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('563', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, NULL, -1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('563', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('563', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('563', 'a', 'Binding note', 'Binding note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('563', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, NULL, 5, NULL, NULL, '', 1, -1, '', '', '', NULL),
-               ('565', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('565', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('565', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('565', 'a', 'Number of cases/variables', 'Number of cases/variables', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('565', 'b', 'Name of variable', 'Name of variable', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('565', 'c', 'Unit of analysis', 'Unit of analysis', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('565', 'd', 'Universe of data', 'Universe of data', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('565', 'e', 'Filing scheme or code', 'Filing scheme or code', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('567', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('567', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('567', 'a', 'Methodology note', 'Methodology note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('544', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('544', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('544', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('544', 'a', 'Entidad depositaria', 'Entidad depositaria', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('544', 'b', 'Dirección', 'Dirección', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('544', 'c', 'País', 'País', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('544', 'd', 'Título', 'Título', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('544', 'e', 'Procedencia', 'Procedencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('544', 'n', 'Nota', 'Nota', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('545', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('545', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('545', 'a', 'Datos biográficos o históricos', 'Datos biográficos o históricos', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('545', 'b', 'Ampliación de la nota', 'Ampliación de la nota', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('545', 'u', 'Identificador Uniforme del Recurso', 'Identificador Uniforme del Recurso', 1, 0, '', 5, '', '', '', 1, -6, '', '', '', NULL),
+               ('546', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('546', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('546', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('546', 'a', 'Nota de lengua', 'Nota de lengua', 0, 0, NULL, 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('546', 'b', 'Información sobre el código o alfabeto', 'Información sobre el código o alfabeto', 1, 0, NULL, 5, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('547', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('547', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('547', 'a', 'Nota de relación compleja con los títulos anteriores', 'Nota de relación compleja con los títulos anteriores', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('550', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('550', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('550', 'a', 'Nota de entidad responsable', 'Nota de entidad responsable', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('552', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'a', 'Identificación del tipo de objeto', 'Identificación del tipo de objeto', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'b', 'Definición y fuente del tipo de objeto', 'Definición y fuente del tipo de objeto', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'c', 'Identificación del atributo', 'Identificación del atributo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'd', 'Definición y fuente del atributo', 'Definición y fuente del atributo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'e', 'Valor del ámbito', 'Valor del ámbito', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'f', 'Definición y fuente del valor del ámbito', 'Definición y fuente del valor del ámbito', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'g', 'Rango mínimo y máximo del ámbito', 'Rango mínimo y máximo del ámbito', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'h', 'Nombre y fuente del conjunto de códigos', 'Nombre y fuente del conjunto de códigos', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'i', 'Ámbito no representable', 'Ámbito no representable', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'j', 'Unidades de medida y resolución del atributo', 'Unidades de medida y resolución del atributo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'k', 'Fechas de inicio y finalización de los valores del atributo', 'Fechas de inicio y finalización de los valores del atributo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'l', 'Exactitud del valor del atributo', 'Exactitud del valor del atributo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'm', 'Explicación de la exactitud del valor del atributo', 'Explicación de la exactitud del valor del atributo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'n', 'Frecuencia de la medida del atributo', 'Frecuencia de la medida del atributo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'o', 'Resumen del objeto y su atributo', 'Resumen del objeto y su atributo', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'p', 'Referencia detallada del objeto y su atributo', 'Referencia detallada del objeto y su atributo', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('552', 'u', 'Identificador Uniforme del Recurso (URI)', 'Identificador Uniforme del Recurso (URI)', 1, 0, '', 5, '', '', '', 1, -6, '', '', '', NULL),
+               ('552', 'z', 'Texto del enlace', 'Texto del enlace', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('555', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('555', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('555', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('555', 'a', 'Nota de índice acumulativo u otros instrumentos bibliográficos', 'Nota de índice acumulativo u otros instrumentos bibliográficos', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('555', 'b', 'Fuente de la adquisición', 'Fuente de la adquisición', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('555', 'c', 'Grado de control', 'Grado de control', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('555', 'd', 'Referencia bibliográfica', 'Referencia bibliográfica', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('555', 'u', 'Identificador Uniforme del Recurso', 'Identificador Uniforme del Recurso', 1, 0, NULL, 5, NULL, NULL, '', 1, -1, '', '', '', NULL),
+               ('556', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('556', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('556', 'a', 'Nota de información sobre la documentación', 'Nota de información sobre la documentación', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('556', 'z', 'Número Internacional Normalizado para Libros', 'Número Internacional Normalizado para Libros', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('561', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('561', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('561', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('561', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('561', 'a', 'Procedencia', 'Procedencia', 0, 0, '', 5, '', '', '', NULL, 6, '', '', '', NULL),
+               ('561', 'u', 'Identificador Uniforme del Recurso', 'Identificador Uniforme del Recurso','1','0','','5','','','','0','6', '', '', '', NULL),
+               ('562', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('562', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, NULL, -1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('562', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('562', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('562', 'a', 'Marcas de identificación', 'Marcas de identificación', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('562', 'b', 'Identificación de la copia', 'Identificación de la copia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('562', 'c', 'Identificación de la versión', 'Identificación de la versión', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('562', 'd', 'Formato de presentación', 'Formato de presentación', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('562', 'e', 'Número de copias', 'Número de copias', 1, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('563', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('563', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, NULL, -1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('563', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('563', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('563', 'a', 'Nota de encuadernación', 'Nota de encuadernación', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('563', 'u', 'Identificador Uniforme del Recurso (URI)', 'Identificador Uniforme del Recurso (URI)', 1, 0, NULL, 5, NULL, NULL, '', 1, -1, '', '', '', NULL),
+               ('565', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('565', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('565', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('565', 'a', 'Número de casos /variables', 'Número de casos /variables', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('565', 'b', 'Nombre de la variable', 'Nombre de la variable', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('565', 'c', 'Unidad de análisis', 'Unidad de análisis', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('565', 'd', 'Muestra', 'Muestra', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('565', 'e', 'Esquema o código de ordenación', 'Esquema o código de ordenación', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('567', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('567', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('567', 'a', 'Nota sobre la metodología', 'Nota sobre la metodología', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('570', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('570', 'a', 'Editor note', 'Editor note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('570', 'z', 'Source of note information', 'Source of note information', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('580', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('580', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('580', 'a', 'Linking entry complexity note', 'Linking entry complexity note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('580', 'z', 'Source of note information [OBSOLETE]', 'Source of note information [OBSOLETE]', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('581', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('581', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('581', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('581', 'a', 'Publications about described materials note', 'Publications about described materials note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('581', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('580', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('580', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('580', 'a', 'Nota de relación compleja', 'Nota de relación compleja', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('581', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('581', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('581', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('581', 'a', 'Nota de publicaciones sobre los materiales descritos', 'Nota de publicaciones sobre los materiales descritos', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('581', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('582', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('582', 'a', 'Related computer files note', 'Related computer files note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('583', '2', 'Source of term', 'Source of term', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('583', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('583', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('583', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('583', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('583', 'a', 'Action', 'Action', 0, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'b', 'Action identification', 'Action identification', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'c', 'Time/date of action', 'Time/date of action', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'd', 'Action interval', 'Action interval', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'e', 'Contingency for action', 'Contingency for action', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'f', 'Authorization', 'Authorization', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'h', 'Jurisdiction', 'Jurisdiction', 0, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'i', 'Method of action', 'Method of action', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'j', 'Site of action', 'Site of action', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'k', 'Action agent', 'Action agent', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'l', 'Status', 'Status', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'n', 'Extent', 'Extent', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'o', 'Type of unit', 'Type of unit', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('583', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 5, '', '', '', 1, -1, '', '', '', NULL),
-               ('583', 'x', 'Nonpublic note', 'Nonpublic note', 1, 0, '', 5, '', '', '', NULL, 4, '', '', '', NULL),
-               ('583', 'z', 'Public note', 'Public note', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('584', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('584', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('584', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('584', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('584', 'a', 'Accumulation', 'Accumulation', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('584', 'b', 'Frequency of use', 'Frequency of use', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('585', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('585', '5', 'Institution to which field applies', 'Institution to which field applies', 0, -6, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('585', '6', 'Linkage', 'Linkage', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('585', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
-               ('585', 'a', 'Exhibitions note', 'Exhibitions note', 0, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
-               ('586', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('586', '6', 'Linkage', 'Linkage', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('586', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('586', 'a', 'Awards note', 'Awards note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('583', '2', 'Fuente del término', 'Fuente del término', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('583', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('583', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('583', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('583', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('583', 'a', 'Acción', 'Acción', 0, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'b', 'Código de identificación de la acción', 'Código de identificación de la acción', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'c', 'Fecha/hora de la acción', 'Fecha/hora de la acción', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'd', 'Intervalo de la acción', 'Intervalo de la acción', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'e', 'Contingencia de la acción', 'Contingencia de la acción', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'f', 'Autorización', 'Autorización', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'h', 'Autoridad competente', 'Autoridad competente', 0, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'i', 'Método de la acción', 'Método de la acción', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'j', 'Lugar de la acción', 'Lugar de la acción', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'k', 'Agente de la acción', 'Agente de la acción', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'l', 'Estado del material', 'Estado del material', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'n', 'Extensión', 'Extensión', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'o', 'Tipo de unidad', 'Tipo de unidad', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('583', 'u', 'Identificador Uniforme del Recurso (URI)', 'Identificador Uniforme del Recurso (URI)', 1, 0, '', 5, '', '', '', 1, -1, '', '', '', NULL),
+               ('583', 'x', 'Nota no pública', 'Nota no pública', 1, 0, '', 5, '', '', '', NULL, 4, '', '', '', NULL),
+               ('583', 'z', 'Nota pública', 'Nota pública', 1, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('584', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('584', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('584', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('584', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('584', 'a', 'Crecimiento', 'Crecimiento', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('584', 'b', 'Frecuencia de uso', 'Frecuencia de uso', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('585', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('585', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, -6, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('585', '6', 'Enlace', 'Enlace', 0, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('585', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 5, '', '', '', NULL, -6, '', '', '', NULL),
+               ('585', 'a', 'Nota de exposiciones', 'Nota de exposiciones', 0, 0, '', 5, '', '', '', NULL, -1, '', '', '', NULL),
+               ('586', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('586', '6', 'Enlace', 'Enlace', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('586', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('586', 'a', 'Nota de premios', 'Nota de premios', 0, 0, NULL, 5, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('588', '5', 'Institución que aplica el campo', 'Institución que aplica el campo','0','0','','5','','','','0','-1', '', '', '', NULL),
+               ('588', '6', 'Enlace', 'Enlace','0','0','','5','','','','0','-1', '', '', '', NULL),
+               ('588', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','5','','','','0','-1', '', '', '', NULL),
+               ('588', 'a', 'Nota de fuente de la descripción', 'Nota de fuente de la descripción','0','0','','5','','','','0','-1', '', '', '', NULL),
                ('590', '6', 'Linkage (RLIN)', 'Linkage (RLIN)', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('590', '8', 'Field link and sequence number (RLIN)', 'Field link and sequence number (RLIN)', 1, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('590', 'a', 'Local note', 'Local note', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('590', 'b', 'Provenance (VM) [OBSOLETE]', 'Provenance (VM) [OBSOLETE]', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('590', 'c', 'Condition of individual reels (VM) [OBSOLETE]', 'Condition of individual reels (VM) [OBSOLETE]', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('590', 'd', 'Origin of safety copy (VM) [OBSOLETE]', 'Origin of safety copy (VM) [OBSOLETE]', 0, 0, NULL, 5, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('600', '2', 'Source of heading or term', 'Source of heading or term', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('600', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', '4', 'Relator code', 'Relator code', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0', '', '', '', NULL),
+               ('600', '2', 'Fuente del encabezamiento o término [600]', 'Fuente del encabezamiento o término [600]', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('600', '3', 'Especificación de materiales [600/700/800]', 'Especificación de materiales [600/700/800]', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', '4', 'Código de función', 'Código de función', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('600', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('600', 'a', 'Personal name', 'Personal name', 0, 0, '', 6, '', 'PERSO_NAME', '', NULL, 0, '', '', '', NULL),
-               ('600', 'b', 'Numeration', 'Numeration', 0, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
-               ('600', 'c', 'Titles and other words associated with a name', 'Titles and other words associated with a name', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
-               ('600', 'd', 'Dates associated with a name', 'Dates associated with a name', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('600', 'e', 'Relator term', 'Relator term', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'h', 'Medium', 'Medium', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'j', 'Attribution qualifier', 'Attribution qualifier', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'q', 'Fuller form of name', 'Fuller form of name', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('600', 'r', 'Key for music', 'Key for music', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 's', 'Version', 'Version', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 't', 'Title of a work', 'Title of a work', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('600', 'u', 'Affiliation', 'Affiliation', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('600', 'v', 'Form subdivision', 'Form subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('600', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('600', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('600', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('610', '2', 'Source of heading or term', 'Source of heading or term', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('610', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', '4', 'Relator code', 'Relator code', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'a', 'Nombre de persona', 'Nombre de persona', 0, 0, '', 6, '', 'PERSO_NAME', '', NULL, 0, '', '', '', NULL),
+               ('600', 'b', 'Numeración', 'Numeración', 0, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
+               ('600', 'c', 'Títulos y otros términos asociados al nombre', 'Títulos y otros términos asociados al nombre', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
+               ('600', 'd', 'Fechas asociadas al nombre', 'Fechas asociadas al nombre', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('600', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'h', 'Tipo de material [600/700/800]', 'Tipo de material [600/700/800]', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'j', 'Calificador de atribución', 'Calificador de atribución', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'm', 'Medio de interpretación [600/700/800]', 'Medio de interpretación [600/700/800]', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'o', 'Arreglo [600/700/800]', 'Arreglo [600/700/800]', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'q', 'Forma desarrollada del nombre', 'Forma desarrollada del nombre', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('600', 'r', 'Tonalidad [600/700/800]', 'Tonalidad [600/700/800]', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 's', 'Versión [600/700/800]', 'Versión [600/700/800]', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 't', 'Título de la obra', 'Título de la obra', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('600', 'u', 'Filiación', 'Filiación', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('600', 'v', 'Subdivisión de forma [600]', 'Subdivisión de forma [600]', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('600', 'x', 'Subdivisión de materia general [600]', 'Subdivisión de materia general [600]', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('600', 'y', 'Subdivisión cronológica [600]', 'Subdivisión cronológica [600]', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('600', 'z', 'Subdivisión geográfica [600]', 'Subdivisión geográfica [600]', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('610', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0', '', '', '', NULL),
+               ('610', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('610', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', '4', 'Código de función', 'Código de función', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('610', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('610', 'a', 'Corporate name or jurisdiction name as entry element', 'Corporate name or jurisdiction name as entry element', 0, 0, '', 6, '', 'CORPO_NAME', '', NULL, 0, '', '', '', NULL),
-               ('610', 'b', 'Subordinate unit', 'Subordinate unit', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('610', 'c', 'Location of meeting', 'Location of meeting', 0, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
-               ('610', 'd', 'Date of meeting or treaty signing', 'Date of meeting or treaty signing', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
-               ('610', 'e', 'Relator term', 'Relator term', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'h', 'Medium', 'Medium', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'n', 'Number of part/section/meeting', 'Number of part/section/meeting', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'r', 'Key for music', 'Key for music', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 's', 'Version', 'Version', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 't', 'Title of a work', 'Title of a work', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('610', 'u', 'Affiliation', 'Affiliation', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('610', 'v', 'Form subdivision', 'Form subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('610', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('610', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('610', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('611', '2', 'Source of heading or term', 'Source of heading or term', 0, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('611', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', '4', 'Relator code', 'Relator code', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', '6', 'Linkage', 'Linkage', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('610', 'a', 'Nombre de entidad corporativa o nombre de jurisdicción como elemento inicial', 'Nombre de entidad corporativa o nombre de jurisdicción como elemento inicial', 0, 0, '', 6, '', 'CORPO_NAME', '', NULL, 0, '', '', '', NULL),
+               ('610', 'b', 'Unidad subordinada', 'Unidad subordinada', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('610', 'c', 'Sede del congreso', 'Sede del congreso', 0, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
+               ('610', 'd', 'Fecha del congreso o de la firma de un tratado', 'Fecha del congreso o de la firma de un tratado', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
+               ('610', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'n', 'Número del congreso o número de parte o sección de la obra', 'Número del congreso o número de parte o sección de la obra', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'o', 'Arreglo', 'Arreglo', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'r', 'Tonalidad', 'Tonalidad', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 's', 'Versión', 'Versión', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 't', 'Título de la obra', 'Título de la obra', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('610', 'u', 'Filiación', 'Filiación', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('610', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('610', 'x', 'Subdivisión de materia general', 'Subdivisión de materia general', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('610', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('610', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('611', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0','','','', NULL),
+               ('611', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término', 0, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('611', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', '4', 'Código de función', 'Código de función', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', '6', 'Enlace', 'Enlace', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('611', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('611', 'a', 'Meeting name or jurisdiction name as entry element', 'Meeting name or jurisdiction name as entry element', 0, 0, NULL, 6, NULL, 'MEETI_NAME', '', NULL, -1, '', '', '', NULL),
-               ('611', 'b', 'Number  (BK CF MP MU SE VM MX)  [OBSOLETE]', 'Number  (BK CF MP MU SE VM MX)  [OBSOLETE]', 1, 0, NULL, -1, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 'c', 'Location of meeting', 'Location of meeting', 0, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('611', 'd', 'Date of meeting', 'Date of meeting', 0, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('611', 'e', 'Subordinate unit', 'Subordinate unit', 1, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('611', 'f', 'Date of a work', 'Date of a work', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 'h', 'Medium', 'Medium', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 'j', 'Relator term', 'Relator term', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 'k', 'Form subheading', 'Form subheading', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 'l', 'Language of a work', 'Language of a work', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 'n', 'Number of part/section/meeting', 'Number of part/section/meeting', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 'q', 'Name of meeting following jurisdiction name entry element', 'Name of meeting following jurisdiction name entry element', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 's', 'Version', 'Version', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 't', 'Title of a work', 'Title of a work', 0, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('611', 'u', 'Affiliation', 'Affiliation', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('611', 'v', 'Form subdivision', 'Form subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('611', 'x', 'General subdivision', 'General subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('611', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('611', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('630', '2', 'Source of heading or term', 'Source of heading or term', 0, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('630', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', '4', 'Relator code', 'Relator code', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', '6', 'Linkage', 'Linkage', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 'a', 'Nombre de congreso o nombre de jurisdicción como elemento inicial', 'Nombre de congreso o nombre de jurisdicción como elemento inicial', 0, 0, NULL, 6, NULL, 'MEETI_NAME', '', NULL, -1, '', '', '', NULL),
+               ('611', 'c', 'Sede del congreso', 'Sede del congreso', 0, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('611', 'd', 'Fecha del congreso', 'Fecha del congreso', 0, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('611', 'e', 'Unidad subordinada', 'Unidad subordinada', 1, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('611', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 'h', 'Tipo de material', 'Tipo de material', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 'j', 'Término indicativo de función', 'Término indicativo de función', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 'n', 'Número del congreso o número de parte o sección de la obra', 'Número del congreso o número de parte o sección de la obra', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 'q', 'Nombre de congreso a continuación de una jurisdicción como elemento inicial', 'Nombre de congreso a continuación de una jurisdicción como elemento inicial', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 's', 'Versión', 'Versión', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 't', 'Título de la obra', 'Título de la obra', 0, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('611', 'u', 'Filiación', 'Filiación', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('611', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('611', 'x', 'Subdivisión de materia general', 'Subdivisión de materia general', 1, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('611', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('611', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('630', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0', '', '', '', NULL),
+               ('630', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término', 0, 0, NULL, 6, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('630', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', '4', 'Código de función', 'Código de función', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', '6', 'Enlace', 'Enlace', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('630', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('630', 'a', 'Uniform title', 'Uniform title', 0, 0, NULL, 6, NULL, 'UNIF_TITLE', '', NULL, 0, '', '', '', NULL),
-               ('630', 'd', 'Date of treaty signing', 'Date of treaty signing', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 'e', 'Relator term', 'Relator term', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
-               ('630', 'f', 'Date of a work', 'Date of a work', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 'h', 'Medium', 'Medium', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 'k', 'Form subheading', 'Form subheading', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 'l', 'Language of a work', 'Language of a work', 0, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('630', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 'r', 'Key for music', 'Key for music', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 's', 'Version', 'Version', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('630', 't', 'Title of a work', 'Title of a work', 0, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('630', 'v', 'Form subdivision', 'Form subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('630', 'x', 'General subdivision', 'General subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('630', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('630', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('648', '2', 'Source of heading or term', 'Source of heading or term', 0, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('648', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('648', '6', 'Linkage', 'Linkage', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('648', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 'a', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 6, NULL, 'UNIF_TITLE', '', NULL, 0, '', '', '', NULL),
+               ('630', 'd', 'Fecha de la firma de un tratado', 'Fecha de la firma de un tratado', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
+               ('630', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 'h', 'Tipo de material', 'Tipo de material', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('630', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 'o', 'Mención de arreglo', 'Mención de arreglo', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 'r', 'Tonalidad', 'Tonalidad', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 's', 'Versión', 'Versión', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('630', 't', 'Título de la obra', 'Título de la obra', 0, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('630', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('630', 'x', 'Subdivisión de materia general', 'Subdivisión de materia general', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('630', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('630', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('648', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0', '', '', '', NULL),
+               ('648', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término', 0, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('648', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('648', '6', 'Enlace', 'Enlace', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('648', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('648', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('648', 'a', 'Chronological term', 'Chronological term', 0, 0, NULL, 6, NULL, 'CHRON_TERM', '', NULL, 0, '', '', '', NULL),
-               ('648', 'v', 'Form subdivision', 'Form subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('648', 'x', 'General subdivision', 'General subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('648', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('648', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('650', '2', 'Source of heading or term', 'Source of heading or term', 0, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
-               ('650', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', 0, -6, '', '', '', NULL),
-               ('650', '4', 'Relator code', 'Relator code', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('650', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', 0, -6, '', '', '', NULL),
-               ('650', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', 0, -6, '', '', '', NULL),
+               ('648', 'a', 'Término cronológico', 'Término cronológico', 0, 0, NULL, 6, NULL, 'CHRON_TERM', '', NULL, 0, '', '', '', NULL),
+               ('648', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('648', 'x', 'Subdivisión de materia general', 'Subdivisión de materia general', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('648', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('648', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('650', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0','','','', NULL),
+               ('650', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término', 0, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
+               ('650', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 6, '', '', '', 0, -6, '', '', '', NULL),
+               ('650', '4', 'Código de función', 'Código de función', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('650', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', 0, -6, '', '', '', NULL),
+               ('650', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 6, '', '', '', 0, -6, '', '', '', NULL),
                ('650', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('650', 'a', 'Topical term or geographic name as entry element', 'Topical term or geographic name as entry element', 0, 0, 'bibliosubject.subject', 6, '', 'TOPIC_TERM', '', 0, 0, '', '''6003'',''600a'',''600b'',''600c'',''600d'',''600e'',''600f'',''600g'',''600h'',''600k'',''600l'',''600m'',''600n'',''600o'',''600p'',''600r'',''600s'',''600t'',''600u'',''600x'',''600z'',''600y'',''600v'',''6103'',''610a'',''610b'',''610c'',''610d'',''610e'',''610f'',''610g'',''610h'',''610k'',''610l'',''610m'',''610n'',''610o'',''610p'',''610r'',''610s'',''610t'',''610u'',''610x'',''610z'',''610y'',''610v'',''6113'',''611a'',''611b'',''611c'',''611d'',''611e'',''611f'',''611g'',''611h'',''611k'',''611l'',''611m'',''611n'',''611o'',''611p'',''611r'',''611s'',''611t'',''611u'',''611x'',''611z'',''611y'',''611v'',''630a'',''630b'',''630c'',''630d'',''630e'',''630f'',''630g'',''630h'',''630k'',''630l'',''630m'',''630n'',''630o'',''630p'',''630r'',''630s'',''630t'',''630x'',''630z'',''630y'',''630v'',''6483'',''648a'',''648x'',''648z'',''648y'',''648v'',''6503'',''650b'',''650c'',''650d'',''650e'',''650x'',''650z'',''650y'',''650v'',''6513'',''651a'',''651b'',''651c'',''651d'',''651e'',''651x'',''651z'',''651y'',''651v'',''653a'',''6543'',''654a'',''654b'',''654x'',''654z'',''654y'',''654v'',''6553'',''655a'',''655b'',''655x'',''655z'',''655y'',''655v'',''6563'',''656a'',''656k'',''656x'',''656z'',''656y'',''656v'',''6573'',''657a'',''657x'',''657z'',''657y'',''657v'',''658a'',''658b'',''658c'',''658d'',''658v''', '', NULL),
-               ('650', 'b', 'Topical term following geographic name as entry element', 'Topical term following geographic name as entry element', 0, 0, '', 6, '', '', '', 0, -1, '', '', '', NULL),
-               ('650', 'c', 'Location of event', 'Location of event', 0, 0, '', 6, '', '', '', 0, -1, '', '', '', NULL),
-               ('650', 'd', 'Active dates', 'Active dates', 0, 0, '', 6, '', '', '', 0, -1, '', '', '', NULL),
-               ('650', 'e', 'Relator term', 'Relator term', 0, 0, '', 6, '', '', '', 0, -1, '', '', '', NULL),
-               ('650', 'v', 'Form subdivision', 'Form subdivision', 1, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
-               ('650', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
-               ('650', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
-               ('650', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
-               ('651', '2', 'Source of heading or term', 'Source of heading or term', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('651', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('651', '4', 'Relator code', 'Relator code', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('651', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('651', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('650', 'a', 'Término de materia o nombre geográfico como elemento inicial', 'Término de materia o nombre geográfico como elemento inicial', 0, 0, 'bibliosubject.subject', 6, '', 'TOPIC_TERM', '', 0, 0, '', '''6003'',''600a'',''600b'',''600c'',''600d'',''600e'',''600f'',''600g'',''600h'',''600k'',''600l'',''600m'',''600n'',''600o'',''600p'',''600r'',''600s'',''600t'',''600u'',''600x'',''600z'',''600y'',''600v'',''6103'',''610a'',''610b'',''610c'',''610d'',''610e'',''610f'',''610g'',''610h'',''610k'',''610l'',''610m'',''610n'',''610o'',''610p'',''610r'',''610s'',''610t'',''610u'',''610x'',''610z'',''610y'',''610v'',''6113'',''611a'',''611b'',''611c'',''611d'',''611e'',''611f'',''611g'',''611h'',''611k'',''611l'',''611m'',''611n'',''611o'',''611p'',''611r'',''611s'',''611t'',''611u'',''611x'',''611z'',''611y'',''611v'',''630a'',''630b'',''630c'',''630d'',''630e'',''630f'',''630g'',''630h'',''630k'',''630l'',''630m'',''630n'',''630o'',''630p'',''630r'',''630s'',''630t'',''630x'',''630z'',''630y'',''630v'',''6483'',''648a'',''648x'',''648z'',''648y'',''648v'',''6503'',''650b'',''650c'',''650d'',''650e'',''650x'',''650z'',''650y'',''650v'',''6513'',''651a'',''651b'',''651c'',''651d'',''651e'',''651x'',''651z'',''651y'',''651v'',''653a'',''6543'',''654a'',''654b'',''654x'',''654z'',''654y'',''654v'',''6553'',''655a'',''655b'',''655x'',''655z'',''655y'',''655v'',''6563'',''656a'',''656k'',''656x'',''656z'',''656y'',''656v'',''6573'',''657a'',''657x'',''657z'',''657y'',''657v'',''658a'',''658b'',''658c'',''658d'',''658v''', '', NULL),
+               ('650', 'b', 'Término de materia que sigue a un nombre geográfico como elemento inicial', 'Término de materia que sigue a un nombre geográfico como elemento inicial', 0, 0, '', 6, '', '', '', 0, -1, '', '', '', NULL),
+               ('650', 'c', 'Localización del acontecimiento', 'Localización del acontecimiento', 0, 0, '', 6, '', '', '', 0, -1, '', '', '', NULL),
+               ('650', 'd', 'Fechas vigentes', 'Fechas vigentes', 0, 0, '', 6, '', '', '', 0, -1, '', '', '', NULL),
+               ('650', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 6, '', '', '', 0, -1, '', '', '', NULL),
+               ('650', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
+               ('650', 'x', 'Subdivisión de materia general', 'Subdivisión de materia general', 1, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
+               ('650', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
+               ('650', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
+               ('651', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0','','','', NULL),
+               ('651', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('651', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('651', '4', 'Código de función', 'Código de función', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('651', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('651', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('651', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('651', 'a', 'Geographic name', 'Geographic name', 0, 0, '', 6, '', 'GEOGR_NAME', '', NULL, 0, '', '', '', NULL),
-               ('651', 'b', 'Geographic name following place entry element [OBSOLETE]', 'Geographic name following place entry element [OBSOLETE]', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('651', 'e', 'Relator term', 'Relator term', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
-               ('651', 'v', 'Form subdivision', 'Form subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('651', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('651', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('651', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('651', 'a', 'Nombre geográfico', 'Nombre geográfico', 0, 0, '', 6, '', 'GEOGR_NAME', '', NULL, 0, '', '', '', NULL),
+               ('651', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
+               ('651', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('651', 'x', 'Subdivisión de materia general', 'Subdivisión de materia general', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('651', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('651', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
                ('652', 'a', 'Geographic name of place element', 'Geographic name of place element', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('652', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('652', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('652', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('653', '6', 'Linkage', 'Linkage', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('653', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('653', 'a', 'Uncontrolled term', 'Uncontrolled term', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('654', '2', 'Source of term', 'Source of term', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('654', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('654', '4', 'Relator code', 'Relator code', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('654', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('654', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('653', '6', 'Enlace', 'Enlace', 0, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('653', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('653', 'a', 'Término no controlado', 'Término no controlado', 1, 0, NULL, 6, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('654', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0', '', '', '', NULL),
+               ('654', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('654', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('654', '4', 'Código de función', 'Código de función', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('654', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('654', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('654', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('654', 'a', 'Focus term', 'Focus term', 1, 0, '', 6, '', 'TOPIC_TERM', '', NULL, 0, '', '', '', NULL),
-               ('654', 'b', 'Non-focus term', 'Non-focus term', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('654', 'c', 'Facet/hierarchy designation', 'Facet/hierarchy designation', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('654', 'e', 'Relator term', 'Relator term', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
-               ('654', 'v', 'Form subdivision', 'Form subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('654', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('654', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('654', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('655', '2', 'Source of term', 'Source of term', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('655', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('655', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('655', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('655', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('654', 'a', 'Término principal', 'Término principal', 1, 0, '', 6, '', 'TOPIC_TERM', '', NULL, 0, '', '', '', NULL),
+               ('654', 'b', 'Término no-principal(R)', 'Término no-principal(R)', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('654', 'c', 'Designación de faceta/jerarquía', 'Designación de faceta/jerarquía', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('654', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
+               ('654', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('654', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('654', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('655', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0', '', '', '', NULL),
+               ('655', '2', 'Fuente del término', 'Fuente del término', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('655', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('655', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('655', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('655', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('655', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('655', 'a', 'Genre/form data or focus term', 'Genre/form data or focus term', 0, 0, '', 6, '', 'GENRE/FORM', '', NULL, 0, '', '', '', NULL),
-               ('655', 'b', 'Non-focus term', 'Non-focus term', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('655', 'c', 'Facet/hierarchy designation', 'Facet/hierarchy designation', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('655', 'v', 'Form subdivision', 'Form subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('655', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('655', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('655', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('656', '2', 'Source of term', 'Source of term', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('656', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('656', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('656', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('655', 'a', 'Datos o término principal de género/forma', 'Datos o término principal de género/forma', 0, 0, '', 6, '', 'GENRE/FORM', '', NULL, 0, '', '', '', NULL),
+               ('655', 'b', 'Término no-principal', 'Término no-principal', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('655', 'c', 'Designación de faceta/jerarquía', 'Designación de faceta/jerarquía', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('655', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('655', 'x', 'Subdivisión de materia general', 'Subdivisión de materia general', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('655', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('655', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('656', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0', '', '', '', NULL),
+               ('656', '2', 'Fuente del término', 'Fuente del término', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('656', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('656', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('656', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('656', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('656', 'a', 'Occupation', 'Occupation', 0, 0, '', 6, '', 'TOPIC_TERM', '', NULL, -6, '', '', '', NULL),
-               ('656', 'k', 'Form', 'Form', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('656', 'v', 'Form subdivision', 'Form subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('656', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('656', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('656', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('657', '2', 'Source of term', 'Source of term', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('657', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('657', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('657', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('656', 'a', 'Profesión', 'Profesión', 0, 0, '', 6, '', 'TOPIC_TERM', '', NULL, -6, '', '', '', NULL),
+               ('656', 'k', 'Forma', 'Forma', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('656', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('656', 'x', 'Subdivisión de materia general', 'Subdivisión de materia general', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('656', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('656', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('657', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0','','','', NULL),
+               ('657', '2', 'Fuente del término', 'Fuente del término', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('657', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('657', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('657', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('657', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('657', 'a', 'Function', 'Function', 0, 0, '', 6, '', 'TOPIC_TERM', '', NULL, -6, '', '', '', NULL),
-               ('657', 'v', 'Form subdivision', 'Form subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('657', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('657', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('657', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('658', '2', 'Source of term', 'Source of term', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('658', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('658', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('657', 'a', 'Función', 'Función', 0, 0, '', 6, '', 'TOPIC_TERM', '', NULL, -6, '', '', '', NULL),
+               ('657', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('657', 'x', 'Subdivisión de materia general', 'Subdivisión de materia general', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('657', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('657', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('658', '2', 'Fuente del término o código', 'Fuente del término o código', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('658', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('658', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('658', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('658', 'a', 'Main curriculum objective', 'Main curriculum objective', 0, 0, '', 6, '', 'TOPIC_TERM', '', NULL, 0, '', '', '', NULL),
-               ('658', 'b', 'Subordinate curriculum objective', 'Subordinate curriculum objective', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('658', 'c', 'Curriculum code', 'Curriculum code', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('658', 'd', 'Correlation factor', 'Correlation factor', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('662', '2', 'Source of term', 'Source of term', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('662', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('662', '4', 'Relator code', 'Relator code', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('662', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('662', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('658', 'a', 'Objetivo curricular principal', 'Objetivo curricular principal', 0, 0, '', 6, '', 'TOPIC_TERM', '', NULL, 0, '', '', '', NULL),
+               ('658', 'b', 'Objetivo curricular subordinado', 'Objetivo curricular subordinado', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('658', 'c', 'Código del currículo', 'Código del currículo', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('658', 'd', 'Factor de correlación', 'Factor de correlación', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('662', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','6','','','','0','0', '', '', '', NULL),
+               ('662', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('662', '4', 'Código de función', 'Código de función', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('662', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('662', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
                ('662', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 6, '', '', '', 0, -5, '', '', '', NULL),
-               ('662', 'a', 'Country or larger entity', 'Country or larger entity', 1, 0, '', 6, '', 'GEOGR_NAME', '', NULL, 0, '', '', '', NULL),
-               ('662', 'b', 'First-order political jurisdiction', 'First-order political jurisdiction', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('662', 'c', 'Intermediate political jurisdiction', 'Intermediate political jurisdiction', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('662', 'd', 'City', 'City', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('662', 'e', 'Relator term', 'Relator term', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
-               ('662', 'f', 'City subsection', 'City subsection', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('662', 'g', 'Other nonjurisdictional geographic region and feature', 'Other nonjurisdictional geographic region and feature', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
-               ('662', 'h', 'Extraterrestrial area', 'Extraterrestrial area', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('662', 'a', 'País o entidad superior', 'País o entidad superior', 1, 0, '', 6, '', 'GEOGR_NAME', '', NULL, 0, '', '', '', NULL),
+               ('662', 'b', 'Jurisdicción política de primer nivel', 'Jurisdicción política de primer nivel', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('662', 'c', 'Jurisdicción política intermedia', 'Jurisdicción política intermedia', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('662', 'd', 'Ciudad', 'Ciudad', 0, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('662', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 6, '', '', '', NULL, -1, '', '', '', NULL),
+               ('662', 'f', 'Subdivisión de ciudad', 'Subdivisión de ciudad', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('662', 'g', 'Otras regiones o rasgos geográficos no jurisdiccionales', 'Otras regiones o rasgos geográficos no jurisdiccionales', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
+               ('662', 'h', 'Área extraterrestre', 'Área extraterrestre', 1, 0, '', 6, '', '', '', NULL, 0, '', '', '', NULL),
                ('690', '%', '% (RLIN)', '% (RLIN)', 0, 0, '', 6, '', '', '', 0, -6, '', '', '', NULL),
                ('690', '2', 'Source of heading or term', 'Source of heading or term', 0, 0, '', 6, '', '', '', 0, 0, '', '', '', NULL),
                ('690', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', 0, -6, '', '', '', NULL),
@@ -2058,33 +2284,34 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('699', 'v', 'Form subdivision', 'Form subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('699', 'x', 'General subdivision', 'General subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('699', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, NULL, 6, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('700', '3', 'Materials specified', 'Materials specified', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', '4', 'Relator code', 'Relator code', 1, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
-               ('700', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', '6', 'Linkage', 'Linkage', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','7','','','','0','0','','','', NULL),
+               ('700', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', '4', 'Código de función', 'Código de función', 1, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
+               ('700', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', '6', 'Enlace', 'Enlace', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('700', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 7, '', '', '', 0, -5, '', '', '', NULL),
-               ('700', 'a', 'Personal name', 'Personal name', 0, 0, 'additionalauthors.author', 7, '', 'PERSO_NAME', '', NULL, 0, '', '', '', NULL),
-               ('700', 'b', 'Numeration', 'Numeration', 0, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
-               ('700', 'c', 'Titles and other words associated with a name', 'Titles and other words associated with a name', 1, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
-               ('700', 'd', 'Dates associated with a name', 'Dates associated with a name', 0, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
-               ('700', 'e', 'Relator term', 'Relator term', 1, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
-               ('700', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'h', 'Medium', 'Medium', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'j', 'Attribution qualifier', 'Attribution qualifier', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'q', 'Fuller form of name', 'Fuller form of name', 0, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
-               ('700', 'r', 'Key for music', 'Key for music', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 's', 'Version', 'Version', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 't', 'Title of a work', 'Title of a work', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'u', 'Affiliation', 'Affiliation', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('700', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'a', 'Nombre de persona', 'Nombre de persona', 0, 0, 'additionalauthors.author', 7, '', 'PERSO_NAME', '', NULL, 0, '', '', '', NULL),
+               ('700', 'b', 'Numeración', 'Numeración', 0, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
+               ('700', 'c', 'Títulos y otros términos asociados al nombre', 'Títulos y otros términos asociados al nombre', 1, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
+               ('700', 'd', 'Fechas asociadas al nombre', 'Fechas asociadas al nombre', 0, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
+               ('700', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
+               ('700', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'j', 'Calificador de la atribución', 'Calificador de la atribución', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'o', 'Arreglo', 'Arreglo', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'q', 'Forma desarrollada del nombre', 'Forma desarrollada del nombre', 0, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
+               ('700', 'r', 'Tonalidad', 'Tonalidad', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 's', 'Versión', 'Versión', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 't', 'Título de la obra', 'Título de la obra', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'u', 'Filiación', 'Filiación', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('700', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('705', 'a', 'Personal name', 'Personal name', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('705', 'b', 'Numeration', 'Numeration', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('705', 'c', 'Titles and other words associated with a name', 'Titles and other words associated with a name', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
@@ -2102,55 +2329,58 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('705', 'r', 'Key for music', 'Key for music', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('705', 's', 'Version', 'Version', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('705', 't', 'Title of a work', 'Title of a work', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', '3', 'Materials specified', 'Materials specified', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', '4', 'Relator code', 'Relator code', 1, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
-               ('710', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', '6', 'Linkage', 'Linkage', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','7','','','','0','0', '', '', '', NULL),
+               ('710', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', '4', 'Código de función', 'Código de función', 1, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
+               ('710', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', '6', 'Enlace', 'Enlace', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('710', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 7, '', '', '', 0, -5, '', '', '', NULL),
-               ('710', 'a', 'Corporate name or jurisdiction name as entry element', 'Corporate name or jurisdiction name as entry element', 0, 0, '', 7, '', 'CORPO_NAME', '', NULL, 0, '', '', '', NULL),
-               ('710', 'b', 'Subordinate unit', 'Subordinate unit', 1, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
-               ('710', 'c', 'Location of meeting', 'Location of meeting', 0, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
-               ('710', 'd', 'Date of meeting or treaty signing', 'Date of meeting or treaty signing', 1, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
-               ('710', 'e', 'Relator term', 'Relator term', 1, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
-               ('710', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'h', 'Medium', 'Medium', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'n', 'Number of part/section/meeting', 'Number of part/section/meeting', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'r', 'Key for music', 'Key for music', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 's', 'Version', 'Version', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 't', 'Title of a work', 'Title of a work', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'u', 'Affiliation', 'Affiliation', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('710', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('711', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', '4', 'Relator code', 'Relator code', 1, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('711', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('710', 'a', 'Nombre de entidad o nombre de jurisdicción como elemento inicial', 'Nombre de entidad o nombre de jurisdicción como elemento inicial', 0, 0, '', 7, '', 'CORPO_NAME', '', NULL, 0, '', '', '', NULL),
+               ('710', 'b', 'Unidad subordinada', 'Unidad subordinada', 1, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
+               ('710', 'c', 'Sede del congreso', 'Sede del congreso', 0, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
+               ('710', 'd', 'Fecha del congreso o de la firma de un tratado', 'Fecha del congreso o de la firma de un tratado', 1, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
+               ('710', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 7, '', '', '', NULL, 0, '', '', '', NULL),
+               ('710', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'i', 'Información sobre la relación', 'Información sobre la relación','1','0','','7','','','','0','-6','','','', NULL),
+               ('710', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'n', 'Número del congreso o número de parte o sección de la obra', 'Número del congreso o número de parte o sección de la obra', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'o', 'Arreglo', 'Arreglo', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'r', 'Tonalidad', 'Tonalidad', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 's', 'Versión', 'Versión', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 't', 'Título de la obra', 'Título de la obra', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'u', 'Filiación', 'Filiación', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('710', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('711', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','7','','','','0','0', '', '', '', NULL),
+               ('711', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', '4', 'Código de función', 'Código de función', 1, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('711', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('711', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 7, '', '', '', 0, -5, '', '', '', NULL),
-               ('711', 'a', 'Meeting name or jurisdiction name as entry element', 'Meeting name or jurisdiction name as entry element', 0, 0, NULL, 7, NULL, 'MEETI_NAME', '', NULL, 0, '', '', '', NULL),
-               ('711', 'b', 'Number (BK CF MP MU SE VM MX) [OBSOLETE]', 'Number (BK CF MP MU SE VM MX) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 'c', 'Location of meeting', 'Location of meeting', 0, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('711', 'd', 'Date of meeting', 'Date of meeting', 0, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('711', 'e', 'Subordinate unit', 'Subordinate unit', 1, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('711', 'f', 'Date of a work', 'Date of a work', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 'h', 'Medium', 'Medium', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 'j', 'Relator term', 'Relator term', 1, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('711', 'k', 'Form subheading', 'Form subheading', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 'l', 'Language of a work', 'Language of a work', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 'n', 'Number of part/section/meeting', 'Number of part/section/meeting', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 'q', 'Name of meeting following jurisdiction name entry element', 'Name of meeting following jurisdiction name entry element', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 's', 'Version', 'Version', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 't', 'Title of a work', 'Title of a work', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 'u', 'Affiliation', 'Affiliation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('711', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 'a', 'Nombre de congreso o nombre de jurisdicción como elemento inicial', 'Nombre de congreso o nombre de jurisdicción como elemento inicial', 0, 0, NULL, 7, NULL, 'MEETI_NAME', '', NULL, 0, '', '', '', NULL),
+               ('711', 'c', 'Sede del congreso', 'Sede del congreso', 0, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('711', 'd', 'Fecha del congreso', 'Fecha del congreso', 0, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('711', 'e', 'Unidad subordinada', 'Unidad subordinada', 1, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('711', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 'h', 'Tipo de material', 'Tipo de material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 'i', 'Información sobre la relación', 'Información sobre la relación','1','0','','7','','','','0','0','','','', NULL),
+               ('711', 'j', 'Término indicativo de función', 'Término indicativo de función', 1, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('711', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 'n', 'Número del congreso o número de parte o sección de la obra', 'Número del congreso o número de parte o sección de la obra', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 'q', 'Nombre del congreso a continuación de la jurisdicción como elemento inicial', 'Nombre del congreso a continuación de la jurisdicción como elemento inicial', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 's', 'Versión', 'Versión', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 't', 'Título de la obra', 'Título de la obra', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 'u', 'Filiación', 'Filiación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('711', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('715', '%', '% (RLIN)', '% (RLIN)', 0, 0, '', 7, '', '', '', 0, -6, '', '', '', NULL),
                ('715', 'a', 'Corporate name or jurisdiction name', 'Corporate name or jurisdiction name', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('715', 'b', 'Subordinate unit', 'Subordinate unit', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
@@ -2166,61 +2396,73 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('715', 's', 'Version', 'Version', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('715', 't', 'Title of a work', 'Title of a work', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('715', 'u', 'Nonprinting information', 'Nonprinting information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('720', '4', 'Relator code', 'Relator code', 1, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('720', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('720', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('720', 'a', 'Name', 'Name', 0, 0, '', 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('720', 'e', 'Relator term', 'Relator term', 1, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('730', '3', 'Materials specified', 'Materials specified', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', '6', 'Linkage', 'Linkage', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('720', '4', 'Código de función', 'Código de función', 1, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('720', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('720', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('720', 'a', 'Nombre', 'Nombre', 0, 0, '', 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('720', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('730', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','7','','','','0','0', '', '', '', NULL),
+               ('730', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', '6', 'Enlace', 'Enlace', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('730', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 7, '', '', '', 0, -5, '', '', '', NULL),
-               ('730', 'a', 'Uniform title', 'Uniform title', 0, 0, '', 7, '', 'UNIF_TITLE', '', NULL, -1, '', '', '', NULL),
-               ('730', 'd', 'Date of treaty signing', 'Date of treaty signing', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', 'h', 'Medium', 'Medium', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
-               ('730', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
-               ('730', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', 'r', 'Key for music', 'Key for music', 0, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
-               ('730', 's', 'Version', 'Version', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', 't', 'Title of a work', 'Title of a work', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('730', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('740', '5', 'Institution to which field applies', 'Institution to which field applies', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('740', '6', 'Linkage', 'Linkage', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('740', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('740', 'a', 'Uncontrolled related/analytical title', 'Uncontrolled related/analytical title', 0, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
-               ('740', 'h', 'Medium', 'Medium', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('740', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('740', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('752', '2', 'Source of heading or term', 'Source of heading or term', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('752', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('752', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('752', 'a', 'Country or larger entity', 'Country or larger entity', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('752', 'b', 'First-order political jurisdiction', 'First-order political jurisdiction', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('752', 'c', 'Intermediate political jurisdiction', 'Intermediate political jurisdiction', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('752', 'd', 'City', 'City', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('752', 'f', 'City subsection', 'City subsection', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('752', 'g', 'Other nonjurisdictional geographic region and feature', 'Other nonjurisdictional geographic region and feature', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('752', 'h', 'Extraterrestrial area', 'Extraterrestrial area', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('753', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('753', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('753', 'a', 'Make and model of machine', 'Make and model of machine', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('753', 'b', 'Programming language', 'Programming language', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('753', 'c', 'Operating system', 'Operating system', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('754', '2', 'Source of taxonomic identification', 'Source of taxonomic identification', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('754', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('754', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('754', 'a', 'Taxonomic name', 'Taxonomic name', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('754', 'c', 'Taxonomic category', 'Taxonomic category', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('754', 'd', 'Common or alternative name', 'Common or alternative name', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('754', 'x', 'Non-public note', 'Non-public note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('754', 'z', 'Public note', 'Public note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('730', 'a', 'Título uniforme', 'Título uniforme', 0, 0, '', 7, '', 'UNIF_TITLE', '', NULL, -1, '', '', '', NULL),
+               ('730', 'd', 'Fecha de la firma de un tratado', 'Fecha de la firma de un tratado', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', 'i', 'Información sobre la relación', 'Información sobre la relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('730', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
+               ('730', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
+               ('730', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', 'o', 'Mención de arreglo', 'Mención de arreglo', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', 'r', 'Tonalidad', 'Tonalidad', 0, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
+               ('730', 's', 'Versión', 'Versión', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', 't', 'Título de la obra', 'Título de la obra', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('730', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('740', '5', 'Institución que aplica el campo', 'Institución que aplica el campo', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('740', '6', 'Enlace', 'Enlace', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('740', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('740', 'a', 'Título relacionado o analítico no controlado', 'Título relacionado o analítico no controlado', 0, 0, '', 7, '', '', '', NULL, -1, '', '', '', NULL),
+               ('740', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('740', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('740', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
+               ('751', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','7','','','','0','0', '', '', '', NULL),
+               ('751', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término','0','0','','7','','','','0','0', '', '', '', NULL),
+               ('751', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','7','','','','0','0', '', '', '', NULL),
+               ('751', '4', 'Código de función', 'Código de función','1','0','','7','','','','0','0', '', '', '', NULL),
+               ('751', '6', 'Enlace', 'Enlace','0','0','','7','','','','0','0', '', '', '', NULL),
+               ('751', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','7','','','','0','0', '', '', '', NULL),
+               ('751', 'a', 'Nombre geográfico', 'Nombre geográfico','0','0','','7','','','','0','0', '', '', '', NULL),
+               ('751', 'e', 'Término indicativo de función', 'Término indicativo de función','1','0','','7','','','','0','0', '', '', '', NULL),
+               ('752', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','7','','','','0','0', '', '', '', NULL),
+               ('752', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('752', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('752', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('752', 'a', 'País o entidad superior', 'País o entidad superior', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('752', 'b', 'Jurisdicción política de primer nivel', 'Jurisdicción política de primer nivel', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('752', 'c', 'Jurisdicción política intermedia', 'Jurisdicción política intermedia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('752', 'd', 'Ciudad', 'Ciudad', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('752', 'f', 'Subdivisión de ciudad', 'Subdivisión de ciudad', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('752', 'g', 'Otras regiones o rasgos geográficos no jurisdiccionales', 'Otras regiones o rasgos geográficos no jurisdiccionales', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('752', 'h', 'Área extraterrestre', 'Área extraterrestre', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('753', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('753', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('753', 'a', 'Marca y modelo de la máquina', 'Marca y modelo de la máquina', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('753', 'b', 'Lenguaje de programación', 'Lenguaje de programación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('753', 'c', 'Sistema operativo', 'Sistema operativo', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('754', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','7','','','','0','0','','','', NULL),
+               ('754', '2', 'Fuente de la identificación taxonómica', 'Fuente de la identificación taxonómica', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('754', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('754', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('754', 'a', 'Nombre taxonómico', 'Nombre taxonómico', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('754', 'c', 'Categoría taxonómica', 'Categoría taxonómica', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('754', 'd', 'Nombre común o alternativo', 'Nombre común o alternativo', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('754', 'x', 'Nota interna', 'Nota interna', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('754', 'z', 'Nota pública', 'Nota pública', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('755', '2', 'Source of taxonomic identification', 'Source of taxonomic identification', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('755', '3', 'Materials specified', 'Materials specified', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('755', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
@@ -2229,342 +2471,346 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('755', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('755', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('755', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('760', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('760', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('760', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('762', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'q', 'Parallel title (BK SE)  [OBSOLETE]', 'Parallel title (BK SE)  [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('765', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('767', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', '8', 'Field link and sequence number', 'Field link and sequence number ', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('770', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('772', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'p', 'Abbreviated title', 'Abbreviated title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('773', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('774', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'e', 'Language code', 'Language code', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'f', 'Country code', 'Country code', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('775', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('776', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('777', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('780', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('785', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'j', 'Period of content', 'Period of content', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'p', 'Abbreviated title', 'Abbreviated title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('786', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', '6', 'Linkage', 'Linkage', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', '7', 'Control subfield', 'Control subfield', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'a', 'Main entry heading', 'Main entry heading', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'b', 'Edition', 'Edition', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'c', 'Qualifying information', 'Qualifying information', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'd', 'Place, publisher, and date of publication', 'Place, publisher, and date of publication', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'g', 'Relationship information', 'Relationship information', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'h', 'Physical description', 'Physical description', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'i', 'Display text', 'Display text', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'k', 'Series data for related item', 'Series data for related item', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'm', 'Material-specific details', 'Material-specific details', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'n', 'Note', 'Note', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'o', 'Other item identifier', 'Other item identifier', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'q', 'Parallel title (BK SE) [OBSOLETE]', 'Parallel title (BK SE) [OBSOLETE]', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'r', 'Report number', 'Report number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 's', 'Uniform title', 'Uniform title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 't', 'Title', 'Title', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'u', 'Standard Technical Report Number', 'Standard Technical Report Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'w', 'Record control number', 'Record control number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'y', 'CODEN designation', 'CODEN designation', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('787', 'z', 'International Standard Book Number', 'International Standard Book Number', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('760', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('760', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('760', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('762', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('762', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('765', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('765', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('767', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('767', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('770', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('770', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('772', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('772', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('773', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'p', 'Título abreviado', 'Título abreviado', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('773', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('774', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('774', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('775', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'e', 'Código de lengua', 'Código de lengua', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'f', 'Código de país', 'Código de país', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('775', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('776', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('776', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('777', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('777', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('780', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('780', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('785', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('785', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('786', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'j', 'Periodo de duración del contenido', 'Periodo de duración del contenido', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'p', 'Título abreviado', 'Título abreviado', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'v', 'Contribución de la fuente', 'Contribución de la fuente','0','0','','7','','','','0','-6', '', '', '', NULL),
+               ('786', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('786', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', '4', 'Código de relación', 'Código de relación','1','0','','7','','','','0','-6', '', '', '', NULL),
+               ('787', '6', 'Enlace', 'Enlace', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', '7', 'Subcampo de control', 'Subcampo de control', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'a', 'Encabezamiento principal', 'Encabezamiento principal', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'b', 'Edición', 'Edición', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'c', 'Información adicional', 'Información adicional', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'd', 'Lugar  editor y fecha de publicación', 'Lugar  editor y fecha de publicación', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'g', 'Parte(s) relacionada(s)', 'Parte(s) relacionada(s)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'h', 'Descripción física', 'Descripción física', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'i', 'Información sobre la relación', 'Información sobre la relación', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'k', 'Datos de la serie del documento relacionado', 'Datos de la serie del documento relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'm', 'Detalles específicos del material', 'Detalles específicos del material', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'n', 'Nota', 'Nota', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'o', 'Otro identificador del documento', 'Otro identificador del documento', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'r', 'Número de informe', 'Número de informe', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 's', 'Título uniforme', 'Título uniforme', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 't', 'Título', 'Título', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'u', 'Número Normalizado de Informe Técnico (ISRN)', 'Número Normalizado de Informe Técnico (ISRN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'w', 'Número de control del registro relacionado', 'Número de control del registro relacionado', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'y', 'CODEN', 'CODEN', 0, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('787', 'z', 'Número Internacional Normalizado para Libros (ISBN)', 'Número Internacional Normalizado para Libros (ISBN)', 1, 0, NULL, 7, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('789', '%', '%', '%', 0, 0, '', 7, '', '', '', 0, -6, '', '', '', NULL),
                ('789', '2', '2', '2', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('789', '3', '3', '3', 1, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
@@ -2699,101 +2945,113 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('799', 's', 'Version', 'Version', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('799', 't', 'Title of a work', 'Title of a work', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
                ('799', 'x', 'International Standard Serial Number', 'International Standard Serial Number', 0, 0, '', 7, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', '4', 'Relator code', 'Relator code', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('800', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','8','','','','0','0', '', '', '', NULL),
+               ('800', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','8','','','','0','-1', '', '', '', NULL),
+               ('800', '4', 'Código de función', 'Código de función', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('800', '5', 'Institución que aplica el campo', 'Institución que aplica el campo','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('800', '6', 'Enlace', 'Enlace', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
                ('800', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 8, '', '', '', 0, -5, '', '', '', NULL),
-               ('800', 'a', 'Personal name', 'Personal name', 0, 0, '', 8, '', 'PERSO_NAME', '', NULL, -1, '', '', '', NULL),
-               ('800', 'b', 'Numeration', 'Numeration', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('800', 'c', 'Titles and other words associated with a name', 'Titles and other words associated with a name', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('800', 'd', 'Dates associated with a name', 'Dates associated with a name', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('800', 'e', 'Relator term', 'Relator term', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('800', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'h', 'Medium', 'Medium', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'j', 'Attribution qualifier', 'Attribution qualifier', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'q', 'Fuller form of name', 'Fuller form of name', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('800', 'r', 'Key for music', 'Key for music', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 's', 'Version', 'Version', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 't', 'Title of a work', 'Title of a work', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'u', 'Affiliation', 'Affiliation', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'v', 'Volume/sequential designation', 'Volume/sequential designation', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('800', 'w', 'Bibliographic record control number', 'Bibliographic record control number', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('810', '4', 'Relator code', 'Relator code', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('810', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'a', 'Nombre de persona', 'Nombre de persona', 0, 0, '', 8, '', 'PERSO_NAME', '', NULL, -1, '', '', '', NULL),
+               ('800', 'b', 'Numeración', 'Numeración', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('800', 'c', 'Títulos y otros términos asociadas al nombre', 'Títulos y otros términos asociadas al nombre', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('800', 'd', 'Fechas asociadas al nombre', 'Fechas asociadas al nombre', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('800', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('800', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'j', 'Calificador de la atribución', 'Calificador de la atribución', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'o', 'Arreglo', 'Arreglo', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'q', 'Forma desarrollada del nombre', 'Forma desarrollada del nombre', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('800', 'r', 'Tonalidad', 'Tonalidad', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 's', 'Versión', 'Versión', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 't', 'Título de la obra', 'Título de la obra', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'u', 'Filiación', 'Filiación', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'v', 'Designación de volumen o secuencia', 'Designación de volumen o secuencia', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('800', 'w', 'Número de control del registro bibliográfico', 'Número de control del registro bibliográfico', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('800', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)','0','0','','8','','','','0','-6', '', '', '', NULL),
+               ('810', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','8','','','','0','0', '', '', '', NULL),
+               ('810', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','8','','','','0','0', '', '', '', NULL),
+               ('810', '4', 'Código de función', 'Código de función', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('810', '5', 'Institución que aplica el campo', 'Institución que aplica el campo','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('810', '6', 'Enlace', 'Enlace', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
                ('810', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 8, '', '', '', 0, -5, '', '', '', NULL),
-               ('810', 'a', 'Corporate name or jurisdiction name as entry element', 'Corporate name or jurisdiction name as entry element', 0, 0, '', 8, '', 'CORPO_NAME', '', NULL, -1, '', '', '', NULL),
-               ('810', 'b', 'Subordinate unit', 'Subordinate unit', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('810', 'c', 'Location of meeting', 'Location of meeting', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('810', 'd', 'Date of meeting or treaty signing', 'Date of meeting or treaty signing', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('810', 'e', 'Relator term', 'Relator term', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('810', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'h', 'Medium', 'Medium', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'n', 'Number of part/section/meeting', 'Number of part/section/meeting', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'r', 'Key for music', 'Key for music', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 's', 'Version', 'Version', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 't', 'Title of a work', 'Title of a work', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'u', 'Affiliation', 'Affiliation', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'v', 'Volume/sequential designation', 'Volume/sequential designation', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('810', 'w', 'Bibliographic record control number', 'Bibliographic record control number', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', '4', 'Relator code', 'Relator code', 1, 0, NULL, 8, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('811', '6', 'Linkage', 'Linkage', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', '8', 'Field link and sequence number ', 'Field link and sequence number ', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('810', 'a', 'Nombre de entidad o nombre de jurisdicción como elemento inicial', 'Nombre de entidad o nombre de jurisdicción como elemento inicial', 0, 0, '', 8, '', 'CORPO_NAME', '', NULL, -1, '', '', '', NULL),
+               ('810', 'b', 'Unidad subordinada', 'Unidad subordinada', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('810', 'c', 'Sede del congreso', 'Sede del congreso', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('810', 'd', 'Fecha del congreso o de la firma de un tratado', 'Fecha del congreso o de la firma de un tratado', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('810', 'e', 'Término indicativo de función', 'Término indicativo de función', 1, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('810', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'n', 'Número del congreso o número de parte o sección de la obra', 'Número del congreso o número de parte o sección de la obra', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'o', 'Arreglo', 'Arreglo', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'r', 'Tonalidad', 'Tonalidad', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 's', 'Versión', 'Versión', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 't', 'Título de la obra', 'Título de la obra', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'u', 'Filiación', 'Filiación', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'v', 'Designación de volumen o secuencia', 'Designación de volumen o secuencia', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('810', 'w', 'Número de control del registro bibliográfico', 'Número de control del registro bibliográfico', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('810', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)','0','0','','8','','','','0','-6', '', '', '', NULL),
+               ('811', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','8','','','','0','0', '', '', '', NULL),
+               ('811', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','8','','','','0','0', '', '', '', NULL),
+               ('811', '4', 'Código de función', 'Código de función', 1, 0, NULL, 8, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('811', '5', 'Institución que aplica el campo', 'Institución que aplica el campo','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('811', '6', 'Enlace', 'Enlace', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('811', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 8, '', '', '', 0, -5, '', '', '', NULL),
-               ('811', 'a', 'Meeting name or jurisdiction name as entry element', 'Meeting name or jurisdiction name as entry element', 0, 0, NULL, 8, NULL, 'MEETI_NAME', '', NULL, -1, '', '', '', NULL),
-               ('811', 'b', 'Number (BK CF MP MU SE VM MX) [OBSOLETE]', 'Number (BK CF MP MU SE VM MX) [OBSOLETE]', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'c', 'Location of meeting', 'Location of meeting', 0, 0, NULL, 8, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('811', 'd', 'Date of meeting', 'Date of meeting', 0, 0, NULL, 8, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('811', 'e', 'Subordinate unit', 'Subordinate unit', 1, 0, NULL, 8, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('811', 'f', 'Date of a work', 'Date of a work', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'h', 'Medium', 'Medium', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'j', 'Relator term', 'Relator term', 1, 0, NULL, 8, NULL, NULL, '', NULL, -1, '', '', '', NULL),
-               ('811', 'k', 'Form subheading', 'Form subheading', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'l', 'Language of a work', 'Language of a work', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'n', 'Number of part/section/meeting', 'Number of part/section/meeting', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'q', 'Name of meeting following jurisdiction name entry element', 'Name of meeting following jurisdiction name entry element', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 's', 'Version', 'Version', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 't', 'Title of a work', 'Title of a work', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'u', 'Affiliation', 'Affiliation', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'v', 'Volume/sequential designation', 'Volume/sequential designation', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('811', 'w', 'Bibliographic record control number', 'Bibliographic record control number', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('830', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('811', 'a', 'Nombre de congreso o nombre de jurisdicción como elemento inicial', 'Nombre de congreso o nombre de jurisdicción como elemento inicial', 0, 0, NULL, 8, NULL, 'MEETI_NAME', '', NULL, -1, '', '', '', NULL),
+               ('811', 'c', 'Sede del congreso', 'Sede del congreso', 0, 0, NULL, 8, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('811', 'd', 'Fecha del congreso', 'Fecha del congreso', 0, 0, NULL, 8, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('811', 'e', 'Unidad subordinada', 'Unidad subordinada', 1, 0, NULL, 8, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('811', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'h', 'Tipo de material', 'Tipo de material', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'j', 'Término indicativo de función', 'Término indicativo de función', 1, 0, NULL, 8, NULL, NULL, '', NULL, -1, '', '', '', NULL),
+               ('811', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'n', 'Número del congreso o número de parte o sección de la obra', 'Número del congreso o número de parte o sección de la obra', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'q', 'Nombre del congreso a continuación de la jurisdicción como elemento inicial', 'Nombre del congreso a continuación de la jurisdicción como elemento inicial', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 's', 'Versión', 'Versión', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 't', 'Título de la obra', 'Título de la obra', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'u', 'Filiación', 'Filiación', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'v', 'Designación de volumen o secuencia', 'Designación de volumen o secuencia', 0, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'w', 'Número de control del registro bibliográfico', 'Número de control del registro bibliográfico', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('811', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)','0','0','','8','','','','0','-6', '', '', '', NULL),
+               ('830', '0', 'Número de control del registro de autoridad', 'Número de control del registro de autoridad','1','0','','8','','','','0','0', '', '', '', NULL),
+               ('830', '3', 'Especificación de materiales', 'Especificación de materiales','0','0','','8','','','','0','0', '', '', '', NULL),
+               ('830', '5', 'Institución que aplica el campo', 'Institución que aplica el campo','1','0','','8','','','','0','0', '', '', '', NULL),
+               ('830', '6', 'Enlace', 'Enlace', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
                ('830', '9', '9 (RLIN)', '9 (RLIN)', 0, 0, '', 8, '', '', '', 0, -5, '', '', '', NULL),
-               ('830', 'a', 'Uniform title', 'Uniform title', 0, 0, '', 8, '', 'UNIF_TITLE', '', NULL, -1, '', '', '', NULL),
-               ('830', 'd', 'Date of treaty signing', 'Date of treaty signing', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'h', 'Medium', 'Medium', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('830', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'r', 'Key for music', 'Key for music', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('830', 's', 'Version', 'Version', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
-               ('830', 't', 'Title of a work', 'Title of a work', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'v', 'Volume number/sequential designation', 'Volume number/sequential designation', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('830', 'w', 'Bibliographic record control number', 'Bibliographic record control number', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('840', 'a', 'Title', 'Title', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('840', 'h', 'Medium', 'Medium', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('840', 'v', 'Volume number/sequential designation', 'Volume number/sequential designation', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'a', 'Título uniforme', 'Título uniforme', 0, 0, '', 8, '', 'UNIF_TITLE', '', NULL, -1, '', '', '', NULL),
+               ('830', 'd', 'Fecha de la firma de un tratado', 'Fecha de la firma de un tratado', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'f', 'Fecha de publicación', 'Fecha de publicación', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'h', 'Tipo de material', 'Tipo de material', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'l', 'Lengua de la obra', 'Lengua de la obra', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('830', 'm', 'Medio de interpretación', 'Medio de interpretación', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'n', 'Número de parte o sección de la obra', 'Número de parte o sección de la obra', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'o', 'Arreglo', 'Arreglo', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'p', 'Nombre de parte o sección de la obra', 'Nombre de parte o sección de la obra', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'r', 'Tonalidad', 'Tonalidad', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('830', 's', 'Versión', 'Versión', 0, 0, '', 8, '', '', '', NULL, -1, '', '', '', NULL),
+               ('830', 't', 'Título de la obra', 'Título de la obra', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'v', 'Designación de volumen o secuencia', 'Designación de volumen o secuencia', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
+               ('830', 'w', 'Número de control del registro bibliográfico', 'Número de control del registro bibliográfico', 1, 0, NULL, 8, NULL, NULL, '', NULL, -6, '', '', '', NULL),
+               ('830', 'x', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)', 'Número Internacional Normalizado para Publicaciones Seriadas (ISSN)','0','0','','8','','','','0','-6','','','', NULL),
                ('841', 'a', 'Type of record', 'Type of record', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
                ('841', 'b', 'Fixed-length data elements', 'Fixed-length data elements', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
                ('841', 'e', 'Encoding level', 'Encoding level', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
@@ -2823,11 +3081,9 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('845', 'b', 'Jurisdiction', 'Jurisdiction', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
                ('845', 'c', 'Authorization', 'Authorization', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
                ('845', 'd', 'Authorized users', 'Authorized users', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
-               ('850', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
-               ('850', 'a', 'Holding institution', 'Holding institution', 1, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
-               ('850', 'b', 'Holdings (NR) (MU VM SE) [OBSOLETE]', 'Holdings (NR) (MU VM SE) [OBSOLETE]', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
-               ('850', 'd', 'Inclusive dates (NR) (MU VM SE) [OBSOLETE]', 'Inclusive dates (NR) (MU VM SE) [OBSOLETE]', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
-               ('850', 'e', 'Retention statement (NR) (CF MU VM SE) [OBSOLETE]', 'Retention statement (NR) (CF MU VM SE) [OBSOLETE]', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
+               ('845', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier','1','0','','8','','','','0','5','','','', NULL),
+               ('850', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
+               ('850', 'a', 'Institución que posee los fondos', 'Institución que posee los fondos', 1, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
                ('851', '3', 'Materials specified', 'Materials specified', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
                ('851', '6', 'Linkage', 'Linkage', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
                ('851', 'a', 'Name (custodian or owner)', 'Name (custodian or owner)', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
@@ -2837,33 +3093,34 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('851', 'e', 'Location of units', 'Location of units', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
                ('851', 'f', 'Item number', 'Item number', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
                ('851', 'g', 'Repository location code', 'Repository location code', 0, 0, NULL, 8, NULL, NULL, '', NULL, 5, '', '', '', NULL),
-               ('852', '2', 'Source of classification or shelving scheme', 'Source of classification or shelving scheme', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', '3', 'Materials specified', 'Materials specified', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', '8', 'Sequence number', 'Sequence number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'a', 'Location', 'Location', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'b', 'Sublocation or collection', 'Sublocation or collection', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'c', 'Shelving location', 'Shelving location', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'e', 'Address', 'Address', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'f', 'Coded location qualifier', 'Coded location qualifier', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'g', 'Non-coded location qualifier', 'Non-coded location qualifier', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'h', 'Classification part', 'Classification part', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'i', 'Item part', 'Item part', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'j', 'Shelving control number', 'Shelving control number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'k', 'Call number prefix', 'Call number prefix', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'l', 'Shelving form of title', 'Shelving form of title', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'm', 'Call number suffix', 'Call number suffix', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'n', 'Country code', 'Country code', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'p', 'Piece designation', 'Piece designation', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'q', 'Piece physical condition', 'Piece physical condition', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 's', 'Copyright article-fee code', 'Copyright article-fee code', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 't', 'Copy number', 'Copy number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 8, '', '', '', 1, 5, '', '', '', NULL),
-               ('852', 'x', 'Nonpublic note', 'Nonpublic note', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('852', 'z', 'Public note', 'Public note', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', '2', 'Fuente del sistema de clasificación o colocación', 'Fuente del sistema de clasificación o colocación', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', '6', 'Enlace', 'Enlace', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'a', 'Localización', 'Localización', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'b', 'Sublocalización o colección', 'Sublocalización o colección', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'c', 'Ubicación en estantería', 'Ubicación en estantería', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'e', 'Dirección', 'Dirección', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'f', 'Información codificada de la localización en otra ubicación', 'Información codificada de la localización en otra ubicación', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'g', 'Información no codificada de la localización en otra ubicación', 'Información no codificada de la localización en otra ubicación', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'h', 'Parte de la signatura que corresponde a la clasificación', 'Parte de la signatura que corresponde a la clasificación', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'i', 'Parte de la signatura que identifica al ejemplar', 'Parte de la signatura que identifica al ejemplar', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'j', 'Número de control en estantería', 'Número de control en estantería', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'k', 'Prefijo de la signatura', 'Prefijo de la signatura', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'l', 'Forma del título por la que se ordena', 'Forma del título por la que se ordena', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'm', 'Sufijo de la signatura', 'Sufijo de la signatura', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'n', 'Código del país', 'Código del país', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'p', 'Designación de la unidad física', 'Designación de la unidad física', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'q', 'Condición de la unidad física', 'Condición de la unidad física', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 's', 'Código de copyright sobre la tarifa del artículo', 'Código de copyright sobre la tarifa del artículo', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 't', 'Número de copia', 'Número de copia', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'u', 'Identificador Uniforme del Recurso (URI)', 'Identificador Uniforme del Recurso (URI)', 1, 0, '', 8, '', '', '', 1, 5, '', '', '', NULL),
+               ('852', 'x', 'Nota no pública', 'Nota no pública', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('852', 'z', 'Nota pública', 'Nota pública', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('853', '2', 'Source of caption abbreviation', 'Source of caption abbreviation','1','0','','8','','','','0','5', '', '', '', NULL),
                ('853', '3', 'Materials specified', 'Materials specified', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('853', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('853', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('853', '8', 'Field link and sequence number', 'Field link and sequence number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('853', 'a', 'First level of enumeration', 'First level of enumeration', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('853', 'b', 'Second level of enumeration', 'Second level of enumeration', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('853', 'c', 'Third level of enumeration', 'Third level of enumeration', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
@@ -2878,6 +3135,7 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('853', 'l', 'Fourth level of chronology', 'Fourth level of chronology', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('853', 'm', 'Alternative numbering scheme, chronology', 'Alternative numbering scheme, chronology', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('853', 'n', 'Pattern note', 'Pattern note', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('853', 'o', 'Type of unit', 'Type of unit','1','0','','8','','','','0','5', '', '', '', NULL),
                ('853', 'p', 'Number of pieces per issuance', 'Number of pieces per issuance', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('853', 't', 'Copy', 'Copy', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('853', 'u', 'Bibliographic units per next higher level', 'Bibliographic units per next higher level', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
@@ -2886,9 +3144,10 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('853', 'x', 'Calendar change', 'Calendar change', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('853', 'y', 'Regularity pattern', 'Regularity pattern', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('853', 'z', 'Numbering scheme', 'Numbering scheme', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('854', '2', 'Source of caption abbreviation', 'Source of caption abbreviation','1','0','','8','','','','0','5', '', '', '', NULL),
                ('854', '3', 'Materials specified', 'Materials specified', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('854', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('854', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('854', '8', 'Field link and sequence number', 'Field link and sequence number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('854', 'a', 'First level of enumeration', 'First level of enumeration', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('854', 'b', 'Second level of enumeration', 'Second level of enumeration', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('854', 'c', 'Third level of enumeration', 'Third level of enumeration', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
@@ -2903,6 +3162,7 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('854', 'l', 'Fourth level of chronology', 'Fourth level of chronology', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('854', 'm', 'Alternative numbering scheme, chronology', 'Alternative numbering scheme, chronology', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('854', 'n', 'Pattern note', 'Pattern note', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('854', 'o', 'Type of unit', 'Type of unit','1','0','','8','','','','0','5', '', '', '', NULL),
                ('854', 'p', 'Number of pieces per issuance', 'Number of pieces per issuance', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('854', 't', 'Copy', 'Copy', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('854', 'u', 'Bibliographic units per next higher level', 'Bibliographic units per next higher level', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
@@ -2911,6 +3171,7 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('854', 'x', 'Calendar change', 'Calendar change', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('854', 'y', 'Regularity pattern', 'Regularity pattern', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('854', 'z', 'Numbering scheme', 'Numbering scheme', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('855', '2', 'Source of caption abbreviation', 'Source of caption abbreviation','1','0','','8','','','','0','5', '', '', '', NULL),
                ('855', '3', 'Materials specified', 'Materials specified', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('855', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('855', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
@@ -2936,34 +3197,34 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('855', 'x', 'Calendar change', 'Calendar change', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('855', 'y', 'Regularity pattern', 'Regularity pattern', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('855', 'z', 'Numbering scheme', 'Numbering scheme', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('856', '2', 'Access method', 'Access method', 0, 0, '', 8, '', '', '', 0, -6, '', '', '', NULL),
-               ('856', '3', 'Materials specified', 'Materials specified', 0, 0, '', 8, '', '', '', 0, 0, '', '', '', NULL),
-               ('856', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', 0, -6, '', '', '', NULL),
-               ('856', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 8, '', '', '', 0, -6, '', '', '', NULL),
-               ('856', 'a', 'Host name', 'Host name', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'b', 'Access number', 'Access number', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'c', 'Compression information', 'Compression information', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'd', 'Path', 'Path', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'f', 'Electronic name', 'Electronic name', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'h', 'Processor of request', 'Processor of request', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'i', 'Instruction', 'Instruction', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'j', 'Bits per second', 'Bits per second', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'k', 'Password', 'Password', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'l', 'Logon', 'Logon', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'm', 'Contact for access assistance', 'Contact for access assistance', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'n', 'Name of location of host in subfield', 'Name of location of host in subfield', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'o', 'Operating system', 'Operating system', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'p', 'Port', 'Port', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'q', 'Electronic format type', 'Electronic format type', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'r', 'Settings', 'Settings', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 's', 'File size', 'File size', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 't', 'Terminal emulation', 'Terminal emulation', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, 'biblioitems.url', 8, '', '', '', 1, 0, '', '', '', NULL),
-               ('856', 'v', 'Hours access method available', 'Hours access method available', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'w', 'Record control number', 'Record control number', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
-               ('856', 'x', 'Nonpublic note', 'Nonpublic note', 1, 0, '', 8, '', '', '', 0, 1, '', '', '', NULL),
-               ('856', 'y', 'Link text', 'Link text', 1, 0, '', 8, '', '', '', 0, 0, '', '', '', NULL),
-               ('856', 'z', 'Public note', 'Public note', 1, 0, '', 8, '', '', '', 0, 0, '', '', '', NULL),
+               ('856', '2', 'Método de acceso', 'Método de acceso', 0, 0, '', 8, '', '', '', 0, -6, '', '', '', NULL),
+               ('856', '3', 'Especificación de materiales', 'Especificación de materiales', 0, 0, '', 8, '', '', '', 0, 0, '', '', '', NULL),
+               ('856', '6', 'Enlace', 'Enlace', 0, 0, '', 8, '', '', '', 0, -6, '', '', '', NULL),
+               ('856', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia', 1, 0, '', 8, '', '', '', 0, -6, '', '', '', NULL),
+               ('856', 'a', 'Nombre del host', 'Nombre del host', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'b', 'Número de acceso', 'Número de acceso', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'c', 'Información sobre la compresión', 'Información sobre la compresión', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'd', 'Ruta', 'Ruta', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'f', 'Nombre electrónico', 'Nombre electrónico', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'h', 'Procesador de la petición', 'Procesador de la petición', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'i', 'Instrucción', 'Instrucción', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'j', 'Bits por segundo', 'Bits por segundo', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'k', 'Contraseña', 'Contraseña', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'l', 'Proceso de conexión (Logon)', 'Proceso de conexión (Logon)', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'm', 'Contacto para facilitar el acceso', 'Contacto para facilitar el acceso', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'n', 'Nombre de la localización del host', 'Nombre de la localización del host', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'o', 'Sistema operativo', 'Sistema operativo', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'p', 'Puerto', 'Puerto', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'q', 'Tipo de formato electrónico', 'Tipo de formato electrónico', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'r', 'Parámetros', 'Parámetros', 0, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 's', 'Tamaño del fichero', 'Tamaño del fichero', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 't', 'Emulación del terminal', 'Emulación del terminal', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'u', 'Identificador Uniforme del Recurso (URI)', 'Identificador Uniforme del Recurso (URI)', 1, 0, 'biblioitems.url', 8, '', '', '', 1, 0, '', '', '', NULL),
+               ('856', 'v', 'Horario en del acceso está disponible', 'Horario en del acceso está disponible', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'w', 'Número de control del registro', 'Número de control del registro', 1, 0, '', 8, '', '', '', 0, -1, '', '', '', NULL),
+               ('856', 'x', 'Nota no pública', 'Nota no pública', 1, 0, '', 8, '', '', '', 0, 1, '', '', '', NULL),
+               ('856', 'y', 'Texto del enlace', 'Texto del enlace', 1, 0, '', 8, '', '', '', 0, 0, '', '', '', NULL),
+               ('856', 'z', 'Nota pública', 'Nota pública', 1, 0, '', 8, '', '', '', 0, 0, '', '', '', NULL),
                ('859', 'b', 'Operator\'s initials, OID (RLIN)', 'Operator\'s initials, OID (RLIN)', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('859', 'c', 'Cataloger\'s initials, CIN (RLIN)', 'Cataloger\'s initials, CIN (RLIN)', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('859', 'd', 'TDC (RLIN)', 'TDC (RLIN)', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
@@ -2972,19 +3233,95 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('859', 'r', 'REG (RLIN)', 'REG (RLIN)', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('859', 'v', 'VER (RLIN)', 'VER (RLIN)', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('859', 'x', 'LDEL (RLIN)', 'LDEL (RLIN)', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
+               ('863', '6', 'Linkage ', 'Linkage ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', '8', 'Field link and sequence number', 'Field link and sequence number','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'a', 'First level of enumeration', 'First level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'b', 'Second level of enumeration ', 'Second level of enumeration ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'c', 'Third level of enumeration', 'Third level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'd', 'Fourth level of enumeration', 'Fourth level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'e', 'Fifth level of enumeration', 'Fifth level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'f', 'Sixth level of enumeration', 'Sixth level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'g', 'Alternative numbering scheme, first level of enumeration', 'Alternative numbering scheme, first level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'h', 'Alternative numbering scheme, second level of enumeration', 'Alternative numbering scheme, second level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'i', 'First level of chronology ', 'First level of chronology ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'j', 'Second level of chronology', 'Second level of chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'k', 'Third level of chronology', 'Third level of chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'l', 'Fourth level of chronology', 'Fourth level of chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'm', 'Alternative numbering scheme, chronology', 'Alternative numbering scheme, chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'n', 'Converted Gregorian year', 'Converted Gregorian year','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'o', 'Type of unit', 'Type of unit','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'p', 'Piece designation', 'Piece designation','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'q', 'Piece physical condition', 'Piece physical condition','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 's', 'Copyright article-fee code ', 'Copyright article-fee code ','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 't', 'Copy number', 'Copy number','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'w', 'Break indicator ', 'Break indicator ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'x', 'Nonpublic note', 'Nonpublic note','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('863', 'z', 'Public note', 'Public note','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', '6', 'Linkage ', 'Linkage ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', '8', 'Field link and sequence number', 'Field link and sequence number','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'a', 'First level of enumeration', 'First level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'b', 'Second level of enumeration ', 'Second level of enumeration ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'c', 'Third level of enumeration', 'Third level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'd', 'Fourth level of enumeration', 'Fourth level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'e', 'Fifth level of enumeration', 'Fifth level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'f', 'Sixth level of enumeration', 'Sixth level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'g', 'Alternative numbering scheme, first level of enumeration', 'Alternative numbering scheme, first level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'h', 'Alternative numbering scheme, second level of enumeration', 'Alternative numbering scheme, second level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'i', 'First level of chronology ', 'First level of chronology ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'j', 'Second level of chronology', 'Second level of chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'k', 'Third level of chronology', 'Third level of chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'l', 'Fourth level of chronology', 'Fourth level of chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'm', 'Alternative numbering scheme, chronology', 'Alternative numbering scheme, chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'n', 'Converted Gregorian year', 'Converted Gregorian year','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'o', 'Type of unit', 'Type of unit','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'p', 'Piece designation', 'Piece designation','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'q', 'Piece physical condition', 'Piece physical condition','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 's', 'Copyright article-fee code ', 'Copyright article-fee code ','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 't', 'Copy number', 'Copy number','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'w', 'Break indicator ', 'Break indicator ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'x', 'Nonpublic note', 'Nonpublic note','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('864', 'z', 'Public note', 'Public note','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', '6', 'Linkage ', 'Linkage ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', '8', 'Field link and sequence number', 'Field link and sequence number','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'a', 'First level of enumeration', 'First level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'b', 'Second level of enumeration ', 'Second level of enumeration ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'c', 'Third level of enumeration', 'Third level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'd', 'Fourth level of enumeration', 'Fourth level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'e', 'Fifth level of enumeration', 'Fifth level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'f', 'Sixth level of enumeration', 'Sixth level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'g', 'Alternative numbering scheme, first level of enumeration', 'Alternative numbering scheme, first level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'h', 'Alternative numbering scheme, second level of enumeration', 'Alternative numbering scheme, second level of enumeration','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'i', 'First level of chronology ', 'First level of chronology ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'j', 'Second level of chronology', 'Second level of chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'k', 'Third level of chronology', 'Third level of chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'l', 'Fourth level of chronology', 'Fourth level of chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'm', 'Alternative numbering scheme, chronology', 'Alternative numbering scheme, chronology','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'n', 'Converted Gregorian year', 'Converted Gregorian year','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'o', 'Type of unit', 'Type of unit','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'p', 'Piece designation', 'Piece designation','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'q', 'Piece physical condition', 'Piece physical condition','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 's', 'Copyright article-fee code ', 'Copyright article-fee code ','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 't', 'Copy number', 'Copy number','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'v', 'Issuing date', 'Issuing date','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'w', 'Break indicator ', 'Break indicator ','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'x', 'Nonpublic note', 'Nonpublic note','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('865', 'z', 'Public note', 'Public note','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('866', '2', 'Source of notation', 'Source of notation','0','0','','8','','','','0','5', '', '', '', NULL),
                ('866', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('866', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('866', 'a', 'Textual string', 'Textual string', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
+               ('866', 'a', 'Textual holdings', 'Textual holdings', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('866', 'x', 'Nonpublic note', 'Nonpublic note', 1, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('866', 'z', 'Public note', 'Public note', 1, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
+               ('867', '2', 'Source of notation', 'Source of notation','0','0','','8','','','','0','5', '', '', '', NULL),
                ('867', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('867', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('867', 'a', 'Textual string', 'Textual string', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
+               ('867', 'a', 'Textual holdings', 'Textual holdings', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('867', 'x', 'Nonpublic note', 'Nonpublic note', 1, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('867', 'z', 'Public note', 'Public note', 1, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
+               ('868', '2', 'Source of notation', 'Source of notation','0','0','','8','','','','0','5', '', '', '', NULL),
                ('868', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('868', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('868', 'a', 'Textual string', 'Textual string', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
+               ('868', 'a', 'Textual holdings', 'Textual holdings', 0, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('868', 'x', 'Nonpublic note', 'Nonpublic note', 1, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('868', 'z', 'Public note', 'Public note', 1, 0, '', 8, '', '', '', 0, 5, '', '', '', NULL),
                ('870', '4', 'Relator code', 'Relator code', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
@@ -3055,7 +3392,7 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('873', 't', 'Title of a work', 'Title of a work', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
                ('876', '3', 'Materials specified', 'Materials specified', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('876', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('876', '8', 'Sequence number', 'Sequence number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('876', '8', 'Field link and sequence number', 'Field link and sequence number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('876', 'a', 'Internal item number', 'Internal item number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('876', 'b', 'Invalid or canceled internal item number', 'Invalid or canceled internal item number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('876', 'c', 'Cost', 'Cost', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
@@ -3071,7 +3408,7 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('876', 'z', 'Public note', 'Public note', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('877', '3', 'Materials specified', 'Materials specified', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('877', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('877', '8', 'Sequence number', 'Sequence number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('877', '8', 'Field link and sequence number', 'Field link and sequence number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('877', 'a', 'Internal item number', 'Internal item number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('877', 'b', 'Invalid or canceled internal item number', 'Invalid or canceled internal item number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('877', 'c', 'Cost', 'Cost', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
@@ -3087,7 +3424,7 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('877', 'z', 'Public note', 'Public note', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('878', '3', 'Materials specified', 'Materials specified', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('878', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('878', '8', 'Sequence number', 'Sequence number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
+               ('878', '8', 'Field link and sequence number', 'Field link and sequence number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('878', 'a', 'Internal item number', 'Internal item number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('878', 'b', 'Invalid or canceled internal item number', 'Invalid or canceled internal item number', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('878', 'c', 'Cost', 'Cost', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
@@ -3101,78 +3438,94 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('878', 't', 'Copy number', 'Copy number', 0, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('878', 'x', 'Nonpublic note', 'Nonpublic note', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
                ('878', 'z', 'Public note', 'Public note', 1, 0, '', 8, '', '', '', NULL, 5, '', '', '', NULL),
-               ('880', '2', '2', '2', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', '3', '3', '3', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', '4', '4', '4', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', '5', '5', '5', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', '7', '7', '7', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', '8', '8', '8', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', '9', '9', '9', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'a', 'a', 'a', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'b', 'b', 'b', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'c', 'c', 'c', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'd', 'd', 'd', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'e', 'e', 'e', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'f', 'f', 'f', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'g', 'g', 'g', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'h', 'h', 'h', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'i', 'i', 'i', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'j', 'j', 'j', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'k', 'k', 'k', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'l', 'l', 'l', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'm', 'm', 'm', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'n', 'n', 'n', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'o', 'o', 'o', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'p', 'p', 'p', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'q', 'q', 'q', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'r', 'r', 'r', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 's', 's', 's', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 't', 't', 't', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'u', 'u', 'u', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'v', 'v', 'v', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'w', 'w', 'w', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'x', 'x', 'x', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'y', 'y', 'y', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('880', 'z', 'z', 'z', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', '0', '0', '0', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', '1', '1', '1', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', '2', '2', '2', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', '3', '3', '3', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', '4', '4', '4', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', '5', '5', '5', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', '6', '6', '6', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', '7', '7', '7', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', '8', '8', '8', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', '9', '9', '9', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'a', 'a', 'a', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'b', 'b', 'b', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'c', 'c', 'c', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'd', 'd', 'd', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'e', 'e', 'e', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'f', 'f', 'f', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'g', 'g', 'g', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'h', 'h', 'h', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'i', 'i', 'i', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'j', 'j', 'j', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'k', 'k', 'k', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'l', 'l', 'l', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'm', 'm', 'm', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'n', 'n', 'n', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'o', 'o', 'o', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'p', 'p', 'p', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'q', 'q', 'q', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'r', 'r', 'r', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 's', 's', 's', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 't', 't', 't', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'u', 'u', 'u', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'v', 'v', 'v', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'w', 'w', 'w', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'x', 'x', 'x', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'y', 'y', 'y', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('886', 'z', 'z', 'z', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
-               ('887', '2', 'Source of data', 'Source of data', 0, 0, NULL, 8, NULL, NULL, '', NULL, 0, '', '', '', NULL),
-               ('887', 'a', 'Content of non-MARC field', 'Content of non-MARC field', 0, 0, NULL, 8, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('880', '0', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', '1', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', '2', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', '3', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', '4', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', '5', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', '6', 'Enlace', 'Enlace','0','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', '7', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', '8', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', '9', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'a', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'b', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'c', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'd', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'e', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'f', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'g', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'h', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'i', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'j', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'k', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'l', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'm', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'n', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'o', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'p', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'q', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'r', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 's', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 't', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'u', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'v', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'w', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'x', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'y', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('880', 'z', 'El mismo del campo asociado', 'El mismo del campo asociado','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('882', '6', 'Enlace', 'Enlace','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('882', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('882', 'a', 'Título que sustituye al registro eliminado', 'Título que sustituye al registro eliminado','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('882', 'i', 'Texto explicativo', 'Texto explicativo','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('882', 'w', 'Número de control del registro bibliográfico que sustituye al eliminado', 'Número de control del registro bibliográfico que sustituye al eliminado','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('883', '0', '- Enlace', '- Enlace','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('883', '8', 'Enlace entre campos y número de secuencia', 'Enlace entre campos y número de secuencia','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('883', 'a', 'Proceso de generación', 'Proceso de generación','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('883', 'c', 'Valor de confianza', 'Valor de confianza','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('883', 'd', 'Fecha de generación', 'Fecha de generación','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('883', 'q', 'Agencia de generación', 'Agencia de generación','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('883', 'u', 'Identificador Uniforme del Recurso (URI)', 'Identificador Uniforme del Recurso (URI)','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('883', 'w', 'Número de control del registro bibliográfico', 'Número de control del registro bibliográfico','1','0','','8','','','','0','5', '', '', '', NULL),
+               ('883', 'x', 'Fecha de fin de validez', 'Fecha de fin de validez','0','0','','8','','','','0','5', '', '', '', NULL),
+               ('886', '0', '0', '0','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', '1', '1', '1','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', '2', 'Fuente de los datos', 'Fuente de los datos','0','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', '3', '3', '3','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', '4', '4', '4','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', '5', '5', '5','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', '6', '6', '6','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', '7', '7', '7','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', '8', '8', '8','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', '9', '9', '9','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'a', 'Etiqueta del campo de otro formato MARC', 'Etiqueta del campo de otro formato MARC','0','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'b', 'Contenido del campo de otro formato MARC', 'Contenido del campo de otro formato MARC','0','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'c', 'c', 'c','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'd', 'd', 'd','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'e', 'e', 'e','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'f', 'f', 'f','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'g', 'g', 'g','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'h', 'h', 'h','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'i', 'i', 'i','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'j', 'j', 'j','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'k', 'k', 'k','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'l', 'l', 'l','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'm', 'm', 'm','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'n', 'n', 'n','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'o', 'o', 'o','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'p', 'p', 'p','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'q', 'q', 'q','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'r', 'r', 'r','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 's', 's', 's','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 't', 't', 't','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'u', 'u', 'u','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'v', 'v', 'v','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'w', 'w', 'w','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'x', 'x', 'x','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'y', 'y', 'y','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('886', 'z', 'z', 'z','1','0','','8','','','','0','-6', '', '', '', NULL),
+               ('887', '2', 'Fuente de los datos', 'Fuente de los datos', 0, 0, NULL, 8, NULL, NULL, '', NULL, 0, '', '', '', NULL),
+               ('887', 'a', 'Contenido del campo no-MARC', 'Contenido del campo no-MARC', 0, 0, NULL, 8, NULL, NULL, '', NULL, 0, '', '', '', NULL),
                ('896', '%', '% (RLIN)', '% (RLIN)', 0, 0, '', 8, '', '', '', 0, -6, '', '', '', NULL),
                ('896', '4', 'Relator code', 'Relator code', 1, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
                ('896', '6', 'Linkage', 'Linkage', 0, 0, '', 8, '', '', '', NULL, -6, '', '', '', NULL),
@@ -3587,21 +3940,21 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('940', 's', 'Version', 'Version', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
                ('941', 'a', 'Romanized title', 'Romanized title', 0, 0, NULL, 9, NULL, NULL, '', NULL, -6, '', '', '', NULL),
                ('941', 'h', 'Medium', 'Medium', 0, 0, NULL, 9, NULL, NULL, '', NULL, -6, '', '', '', NULL),
-               ('943', '6', 'Linkage', 'Linkage', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'a', 'Uniform title', 'Unifor title', 0, 0, '', 9, '', '', '', 1, 5, '', '', '130', NULL),
-               ('943', 'd', 'Date of treaty signing', 'Date of treaty signing', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'f', 'Date of a work', 'Date of a work', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'g', 'Miscellaneous information', 'Miscellaneous information', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'h', 'Medium', 'Medium', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'k', 'Form subheading', 'Form subheading', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'l', 'Language of a work', 'Language of a work', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'm', 'Medium of performance for music', 'Medium of performance for music', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'n', 'Number of part/section of a work', 'Number of part/section of a work', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'o', 'Arranged statement for music', 'Arranged statement for music', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'p', 'Name of part/section of a work', 'Name of part/section of a work', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 'r', 'Key for music', 'Key for music', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('943', 's', 'Version', 'Version', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', '6', 'Enlace', 'Enlace', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', '8', 'Vínculo de campo y número de secuencia', 'Vínculo de campo y número de secuencia', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'a', 'Título uniforme', 'Título uniforme', 0, 0, '', 9, '', '', '', 1, 5, '', '', '130', NULL),
+               ('943', 'd', 'Fecha de firma de un tratado', 'Fecha de firma de un tratado', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'f', 'Fecha de una obra', 'Fecha de una obra', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'g', 'Información miscelánea', 'Información miscelánea', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'h', 'Medio físico', 'Medio físico', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'k', 'Subencabezamiento de forma', 'Subencabezamiento de forma', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'l', 'Idioma de una obra', 'Idioma de una obra', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'm', 'Medio de ejecución musical', 'Medio de ejecución musical', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'n', 'Número de la parte/sección de la obra', 'Número de la parte/sección de la obra', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'o', 'Mención de arreglo para la música', 'Mención de arreglo para la música', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'p', 'Nombre de una parte/sección de una obra', 'Nombre de una parte/sección de una obra', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 'r', 'Clave para la música', 'Clave para la música', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('943', 's', 'Versión', 'Versión', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
                ('945', '0', '0', '0', 1, 0, '', 9, '', '', '', NULL, -6, '', '', '', NULL),
                ('945', '1', '1', '1', 1, 0, '', 9, '', '', '', NULL, -6, '', '', '', NULL),
                ('945', '2', '2', '2', 1, 0, '', 9, '', '', '', NULL, -6, '', '', '', NULL),
@@ -3782,70 +4135,70 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('949', 'x', 'x', 'x', 1, 0, '', 9, '', '', '', NULL, -6, '', '', '', NULL),
                ('949', 'y', 'y', 'y', 1, 0, '', 9, '', '', '', NULL, -6, '', '', '', NULL),
                ('949', 'z', 'z', 'z', 1, 0, '', 9, '', '', '', NULL, -6, '', '', '', NULL),
-               ('950', 'a', 'Classification number, LCAL (RLIN)', 'Classification number, LCAL (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'b', 'Book number/undivided call number, LCAL (RLIN)', 'Book number/undivided call number, LCAL (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'd', 'Additional free-text stamp above the call number, LCAL (RLIN)', 'Additional free-text stamp above the call number, LCAL (RLIN)', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'e', 'Additional free-text or profiled stamp below the call number, LCAL (RLIN)', 'Additional free-text or profiled stamp below the call number, LCAL (RLIN)', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'f', 'Location-level footnote, LFNT (RLIN)', 'Location-level footnote, LFNT (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'h', 'Location-level output transaction history, LHST (RLIN)', 'Location-level output transaction history, LHST (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'i', 'Location-level extra card request, LEXT (RLIN)', 'Location-level extra card request, LEXT (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'l', 'Permanent shelving location, LOC (RLIN)', 'Permanent shelving location, LOC (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'n', 'Location-level additional note, LANT (RLIN)', 'Location-level additional note, LANT (RLIN)', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'p', 'Location-level pathfinder, LPTH (RLIN)', 'Location-level pathfinder, LPTH (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 't', 'Location-level field suppression, LFSP (RLIN)', 'Location-level field suppression, LFSP (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'u', 'Non-printing notes, LANT (RLIN)', 'Non-printing notes, LANT (RLIN)', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'v', 'Volumes, LVOL (RLIN)', 'Volumes, LVOL (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'w', 'Subscription status code, LANT (RLIN)', 'Subscription status code, LANT (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'y', 'Date, LVOL (RLIN)', 'Date, LVOL (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('950', 'z', 'Retention, LVOL (RLIN)', 'Retention, LVOL (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('951', '2', 'Source of heading or term', 'Source of heading or term', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('951', '3', 'Materials specified', 'Materials specified', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('951', '6', 'Linkage', 'Linkage', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('951', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('951', 'a', 'Geographic name', 'Geographic name', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('951', 'b', 'Geographic name following place entry element [OBSOLETE]', 'Geographic name following place entry element [OBSOLETE]', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('951', 'v', 'Form subdivision', 'Form subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('951', 'x', 'General subdivision', 'General subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('951', 'y', 'Chronological subdivision', 'Chronological subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('951', 'z', 'Geographic subdivision', 'Geographic subdivision', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
-               ('955', 'a', 'Classification number, CCAL (RLIN)', 'Classification number, CCAL (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('955', 'b', 'Book number/undivided call number, CCAL (RLIN)', 'Book number/undivided call number, CCAL (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('955', 'c', 'Copy information and material description, CCAL + MDES (RLIN)', 'Copy information and material description, CCAL + MDES (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('955', 'h', 'Copy status--for earlier dates, CST (RLIN)', 'Copy status--for earlier dates, CST (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('955', 'i', 'Copy status, CST (RLIN)', 'Copy status, CST (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('955', 'l', 'Permanent shelving location, LOC (RLIN)', 'Permanent shelving location, LOC (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('955', 'q', 'Aquisitions control number, HNT (RLIN)', 'Aquisitions control number, HNT (RLIN)', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('955', 'r', 'Circulation control number, HNT (RLIN)', 'Circulation control number, HNT (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('955', 's', 'Shelflist note, HNT (RLIN)', 'Shelflist note, HNT (RLIN)', 1, 0, '', 9, '', '', '', 1, 5, '', '', '', NULL),
-               ('955', 'u', 'Non-printing notes, HNT (RLIN)', 'Non-printing notes, HNT (RLIN)', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('956', '2', 'Access method', 'Access method', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', '3', 'Materials specified', 'Materials specified', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', '6', 'Linkage', 'Linkage', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', '8', 'Field link and sequence number', 'Field link and sequence number', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'a', 'Host name', 'Host name', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'b', 'Access number', 'Access number', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'c', 'Compression information', 'Compression information', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'd', 'Path', 'Path', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'f', 'Electronic name', 'Electronic name', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'h', 'Processor of request', 'Processor of request', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'i', 'Instruction', 'Instruction', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'j', 'Bits per second', 'Bits per second', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'k', 'Password', 'Password', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'l', 'Logon', 'Logon', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'm', 'Contact for access assistance', 'Contact for access assistance', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'n', 'Name of location of host in subfield', 'Name of location of host in subfield', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'o', 'Operating system', 'Operating system', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'p', 'Port', 'Port', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'q', 'Electronic format type', 'Electronic format type', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'r', 'Settings', 'Settings', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 's', 'File size', 'File size', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 't', 'Terminal emulation', 'Terminal emulation', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'u', 'Uniform Resource Identifier', 'Uniform Resource Identifier', 1, 0, '', 9, '', '', '', 1, -6, '', '', '', NULL),
-               ('956', 'v', 'Hours access method available', 'Hours access method available', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'w', 'Record control number', 'Record control number', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'x', 'Nonpublic note', 'Nonpublic note', 1, 0, '', 9, '', '', '', 0, 6, '', '', '', NULL),
-               ('956', 'y', 'Link text', 'Link text', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('956', 'z', 'Public note', 'Public note', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('950', 'a', 'Número de clasificación, LCLA (RLIN)', 'Número de clasificación, LCLA (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'b', 'Número de libro/signatura integra', 'Número de libro/signatura integra', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'd', 'Texto libre adicional de sellado de la signatura', 'Texto libre adicional de sellado de la signatura', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'e', 'Texto libre adicional o perfil de sellado seguido  a la signatura', 'Texto libre adicional o perfil de sellado seguido  a la signatura', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'f', 'Nivel de localización del pie de página', 'Nivel de localización del pie de página', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'h', 'Nivel de localización de salida de transacción histórica', 'Nivel de localización de salida de transacción histórica', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'i', 'Nivel de localización de solicitud extra de tarjeta', 'Nivel de localización de solicitud extra de tarjeta', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'l', 'localización permanente en estantería', 'localización permanente en estantería', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'n', 'Nivel de localización adicional de nota', 'Nivel de localización adicional de nota', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'p', 'Nivel de localización del explorador', 'Nivel de localización del explorador', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 't', 'Nivel de localización de campo suprimido', 'Nivel de localización de campo suprimido', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'u', 'Notas no impresas', 'Notas no impresas', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'v', 'Volúmenes', 'Volúmenes', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'w', 'Código estado de subscripción', 'Código estado de subscripción', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'y', 'Fecha', 'Fecha', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('950', 'z', 'Retención', 'Retención', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('951', '2', 'Fuente del encabezamiento o término', 'Fuente del encabezamiento o término', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('951', '3', 'Materiales especificados', 'Materiales especificados', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('951', '6', 'Enlace', 'Enlace', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('951', '8', 'Vínculo de campo y Número de secuencia', 'Vínculo de campo y Número de secuencia', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('951', 'a', 'Nombre geográfico', 'Nombre geográfico', 0, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('951', 'b', 'Nombre geográfico como elemento de entrada [OBSOLETE]', 'Nombre geográfico como elemento de entrada [OBSOLETE]', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('951', 'v', 'Subdivisión de forma', 'Subdivisión de forma', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('951', 'x', 'Subdivisión general', 'Subdivisión general', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('951', 'y', 'Subdivisión cronológica', 'Subdivisión cronológica', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('951', 'z', 'Subdivisión geográfica', 'Subdivisión geográfica', 1, 0, '', 6, '', '', '', NULL, -6, '', '', '', NULL),
+               ('955', 'a', 'Número de clasificación', 'Número de clasificación', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('955', 'b', 'Número de libro/número de trabajo integro', 'Número de libro/número de trabajo integro', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('955', 'c', 'Información de copia y material de descripción', 'Información de copia y material de descripción', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('955', 'h', 'Estado de la copia—para fechas anteriores', 'Estado de la copia—para fechas anteriores', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('955', 'i', 'Estado de copia', 'Estado de copia', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('955', 'l', 'Localización permanente en la estantería', 'Localización permanente en la estantería', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('955', 'q', 'Número de control de adquisición', 'Número de control de adquisición', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('955', 'r', 'Número de control de circulación', 'Número de control de circulación', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('955', 's', 'Nota de lista de estantería', 'Nota de lista de estantería', 1, 0, '', 9, '', '', '', 1, 5, '', '', '', NULL),
+               ('955', 'u', 'Nota de no impresión', 'Nota de no impresión', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('956', '2', 'Método de acceso', 'Método de acceso', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', '3', 'Materiales especificados', 'Materiales especificados', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', '6', 'Enlace', 'Enlace', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', '8', 'Vínculo de campo y Número de secuencia', 'Vínculo de campo y Número de secuencia', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'a', 'Nombre de equipo', 'Nombre de equipo', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'b', 'Número de acceso', 'Número de acceso', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'c', 'Información sobre compresión', 'Información sobre compresión', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'd', 'Ruta', 'Ruta', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'f', 'Nombre electrónico', 'Nombre electrónico', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'h', 'Procesador de petición', 'Procesador de petición', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'i', 'Instrucción', 'Instrucción', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'j', 'Bits por segundo', 'Bits por segundo', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'k', 'Contraseña', 'Contraseña', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'l', 'Comenzar sesión', 'Comenzar sesión', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'm', 'Contacto de ayuda para el acceso', 'Contacto de ayuda para el acceso', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'n', 'Nombre de localización de fuente en el subcampo', 'Nombre de localización de fuente en el subcampo', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'o', 'Sistema operativo', 'Sistema operativo', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'p', 'Puerto', 'Puerto', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'q', 'Tipo de formato electrónico', 'Tipo de formato electrónico', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'r', 'Configuraciones', 'Configuraciones', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 's', 'Tamaño de archivo', 'Tamaño de archivo', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 't', 'Emulación del terminal', 'Emulación del terminal', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'u', 'Identificador uniforme de recurso', 'Identificador uniforme de recurso', 1, 0, '', 9, '', '', '', 1, -6, '', '', '', NULL),
+               ('956', 'v', 'Método de horas de acceso disponible', 'Método de horas de acceso disponible', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'w', 'Número de control del registro', 'Número de control del registro', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'x', 'Nota  no pública', 'Nota  no pública', 1, 0, '', 9, '', '', '', 0, 6, '', '', '', NULL),
+               ('956', 'y', 'Texto de enlace', 'Texto de enlace', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('956', 'z', 'Nota pública', 'Nota pública', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
                ('960', '3', 'Materials specified, MATL', 'Materials specified, MATL', 0, 0, '', 9, '', '', '', NULL, -6, '', '', '', NULL),
                ('960', 'a', 'Physical location, PLOC (RLIN)', 'Physical location, PLOC (RLIN)', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
                ('967', 'a', 'GNR (RLIN)', 'GNR (RLIN)', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
@@ -3944,7 +4297,7 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('987', 'a', 'Romanization/conversion identifier', 'Romanization/conversion identifier', 0, 0, '', 9, '', '', '', NULL, -6, '', '', '', NULL),
                ('987', 'b', 'Agency that converted, created or reviewed', 'Agency that converted, created or reviewed', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
                ('987', 'c', 'Date of conversion or review', 'Date of conversion or review', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('987', 'd', 'Status code', 'Status code ', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('987', 'd', 'Status code', 'Status code', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
                ('987', 'e', 'Version of conversion program used', 'Version of conversion program used', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
                ('987', 'f', 'Note', 'Note', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
                ('990', 'a', 'Link information for 9XX fields', 'Link information for 9XX fields', 1, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
@@ -3958,19 +4311,19 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('995', '6', 'Copy number [LOCAL, KOHA]', 'Copy number [LOCAL, KOHA]', 0, 0, '', 9, '', '', '', NULL, 5, '', '', '', NULL),
                ('995', '7', 'Uniform Resource Identifier [LOCAL, KOHA]', 'Uniform Resource Identifier [LOCAL, KOHA]', 1, 0, '', 9, '', '', '', 1, 5, '', '', '', NULL),
                ('995', '8', 'Koha collection [LOCAL, KOHA]', 'Koha collection [LOCAL, KOHA]', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('995', '9', 'Internal item number (Koha itemnumber, autogenerated) [LOCAL, KOHA]', 'Internal itemnumber (Koha itemnumber) [LOCAL, KOHA]', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('995', 'a', 'Origin of the item (home branch) (free text)', 'Origin of item (home branch) (free text)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('995', 'b', 'Origin of item (home branch) (coded)', 'Origin of item (home branch (coded)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('995', '9', 'Internal item number (Koha itemnumber, autogenerated) [LOCAL, KOHA]', 'Internal item number (Koha itemnumber, autogenerated) [LOCAL, KOHA]', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('995', 'a', 'Origin of the item (home branch) (free text)', 'Origin of the item (home branch) (free text)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('995', 'b', 'Origin of item (home branch) (coded)', 'Origin of item (home branch) (coded)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'c', 'Lending or holding organisation (holding branch) (free text)', 'Lending or holding organisation (holding branch) (free text)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'd', 'Lending or holding organisation (holding branch) code', 'Lending or holding organisation (holding branch) code', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('995', 'e', 'Genre detail', 'Genre', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('995', 'e', 'Genre detail', 'Genre detail', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'f', 'Barcode', 'Barcode', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'g', 'Barcode prefix', 'Barcode prefix', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'h', 'Barcode incrementation', 'Barcode incrementation', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'i', 'Barcode suffix', 'Barcode suffix', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'j', 'Section', 'Section', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'k', 'Call number (full call number)', 'Call number (full call number)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
-               ('995', 'l', 'Numbering (volume or other part)', 'Numbering (bound volume or other part)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
+               ('995', 'l', 'Numbering (volume or other part)', 'Numbering (volume or other part)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'm', 'Date of loan or deposit', 'Date of loan or deposit', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'n', 'Expiration of loan date', 'Expiration of loan date', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('995', 'o', 'Circulation type (not for loan)', 'Circulation type (not for loan)', 1, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
@@ -3987,7 +4340,7 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
                ('995', 'z', 'Recipient parent organisation, free text', 'Recipient parent organisation, free text', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('998', 'b', 'Operator\'s initials, OID (RLIN)', 'Operator\'s initials, OID (RLIN)', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
                ('998', 'c', 'Cataloger\'s initials, CIN (RLIN)', 'Cataloger\'s initials, CIN (RLIN)', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
-               ('998', 'd', 'First date, FD (RLIN)', 'First Date, FD (RLIN)', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
+               ('998', 'd', 'First date, FD (RLIN)', 'First date, FD (RLIN)', 0, 0, '', 9, '', '', '', 0, -6, '', '', '', NULL),
                ('998', 'i', 'RINS (RLIN)', 'RINS (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('998', 'l', 'LI (RLIN)', 'LI (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
                ('998', 'n', 'NUC (RLIN)', 'NUC (RLIN)', 0, 0, '', 9, '', '', '', 0, 5, '', '', '', NULL),
@@ -3998,4 +4351,4 @@ INSERT INTO `marc_subfield_structure` (`tagfield`, `tagsubfield`, `liblibrarian`
 
 
 UPDATE `marc_subfield_structure` SET maxlength=24 WHERE tagfield='000';
-UPDATE `marc_subfield_structure` SET maxlength=40 WHERE tagfield='008';
\ No newline at end of file
+UPDATE `marc_subfield_structure` SET maxlength=40 WHERE tagfield='008';
index ad91561..4b786b6 100644 (file)
@@ -1,7 +1,7 @@
 INSERT IGNORE INTO `letter`
 (module, code, name, title, content)
 VALUES
-('circulation','ODUE','Avis de retard','Document en retard','Cher(e) <<borrowers.firstname>> <<borrowers.surname>>,\n\nSelon nos informations actuelles, vous avez des documents signalés en retard dans votre compte.La Bibliothèque n\'applique pas les pénalités, mais nous vous invitons à retourner ou renouveler ces documents au plus vite dans la Bibliothèque suivante.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nTéléphone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nCourriel: <<branches.branchemail>>\n\nSi vous possédez un identifiant et un mot de passe pour vous connecter à notre catalogue en ligne,vous pouvez depuis celui-ci prolonger la durée de prêt des documents. Si les documents ont plus de 3à jours de retard, vous ne pourrez plus utiliser votre carte d\'adhérent tant que les documents ne seront pas rendus.\n\nLe(s) document(s) actuellement en retard:\n\n<item>"<<biblio.title>>" de <<biblio.author>>, <<items.itemcallnumber>>, Code barres: <<items.barcode>> Pénalité: <fine>GBP</fine></item>\n\nAvec nos remerciements.\n\n<<branches.branchname>> La banque de prêt\n'),
+('circulation','ODUE','Avis de retard','Document en retard','Cher(e) <<borrowers.firstname>> <<borrowers.surname>>,\n\nSelon nos informations actuelles, vous avez des documents signalés en retard dans votre compte.La Bibliothèque n\'applique pas les pénalités, mais nous vous invitons à retourner ou renouveler ces documents au plus vite dans la Bibliothèque suivante.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nTéléphone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nCourriel: <<branches.branchemail>>\n\nSi vous possédez un identifiant et un mot de passe pour vous connecter à notre catalogue en ligne,vous pouvez depuis celui-ci prolonger la durée de prêt des documents. Si les documents ont plus de 3à jours de retard, vous ne pourrez plus utiliser votre carte d\'adhérent tant que les documents ne seront pas rendus.\n\nLe(s) document(s) actuellement en retard:\n\n<item>"<<biblio.title>>" de <<biblio.author>>, <<items.itemcallnumber>>, Code barres: <<items.barcode>> Pénalité: <<items.fine>></item>\n\nAvec nos remerciements.\n\n<<branches.branchname>> La banque de prêt\n'),
 ('claimacquisition','ACQCLAIM','Réclamation Acquisitions','Document non reçu','<<aqbooksellers.name>>\r\n<<aqbooksellers.address1>>\r\n<<aqbooksellers.address2>>\r\n<<aqbooksellers.address3>>\r\n<<aqbooksellers.address4>>\r\n<<aqbooksellers.phone>>\r\n\r\n<order>Commande <<aqorders.ordernumber>> (<<biblio.title>>) (<<aqorders.quantity>> ordered) ($<<aqorders.listprice>> each) pas encore reçue.</order>'),
 ('serial','RLIST','Liste de routage','Fascicule de périodique disponible','<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nLe numéro suivant est disponible:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)\r\n\r\nVous pouvez venir le retirer quand vous voulez.'),
 ('members','ACCTDETAILS','Nouveau compte adhérent','Votre nouveau compte adhérent.','Bonjour <<borrowers.title>> <<borrowers.firstname>> <<borrowers.surname>>.\r\n\r\nLes informations de votre nouveau compte sont:\r\n\r\nIdentifiant:  <<borrowers.userid>>\r\nMot de passe: <<borrowers.password>>\r\n\r\nSi vous avez des questions au sujet de votre nouveau compte, merci de prendre contact à l\'acceuil de la Bibliothèque.\r\n\r\nMerci,\r\nLa Bibliothèque\r\nkohaadmin@yoursite.org'),
index caa354b..0d0f2cf 100644 (file)
@@ -466,6 +466,28 @@ VALUES( 'es', 'language', 'en', 'Spanish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'es', 'language', 'fr', 'Espagnol');
 
+-- Spanish, Catalan
+INSERT INTO language_subtag_registry( subtag, type, description, added)
+VALUES ( 'ca', 'language', 'Catalan','2013-01-12' );
+
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'ca','cat');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'es', 'Catalán');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'en', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'fr', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'ca', 'Català');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'de', 'Katalanisch');
+
 -- Swedish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'sv', 'language', 'Swedish','2005-10-16' );
index 5b45d32..afdae5d 100644 (file)
@@ -1,5 +1,5 @@
 INSERT INTO letter (module, code, name, title, content)
-VALUES ('circulation','ODUE','Overdue Notice','Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <fine>GBP</fine></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
+VALUES ('circulation','ODUE','Overdue Notice','Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <<items.fine>></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
 ('claimacquisition','ACQCLAIM','Acquisition Claim','Item Not Received','<<aqbooksellers.name>>\r\n<<aqbooksellers.address1>>\r\n<<aqbooksellers.address2>>\r\n<<aqbooksellers.address3>>\r\n<<aqbooksellers.address4>>\r\n<<aqbooksellers.phone>>\r\n\r\n<order>Ordernumber <<aqorders.ordernumber>> (<<aqorders.title>>) (<<aqorders.quantity>> ordered) ($<<aqorders.listprice>> each) has not been received.</order>'),
 ('serial','RLIST','Routing List','Serial is now available','<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nThe following issue is now available:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)\r\n\r\nPlease pick it up at your convenience.'),
 ('members','ACCTDETAILS','Account Details Template - DEFAULT','Your new Koha account details.','Hello <<borrowers.title>> <<borrowers.firstname>> <<borrowers.surname>>.\r\n\r\nYour new Koha account details are:\r\n\r\nUser:  <<borrowers.userid>>\r\nPassword: <<borrowers.password>>\r\n\r\nIf you have any problems or questions regarding your account, please contact your Koha Administrator.\r\n\r\nThank you,\r\nKoha Administrator\r\nkohaadmin@yoursite.org'), 
@@ -104,4 +104,4 @@ Date due: <<issues.date_due>><br />
 <ul>
    <li><<items.barcode>></li>
    <li><<items.itemcallnumber>></li>
-</ul>', 1);
\ No newline at end of file
+</ul>', 1);
index a8029d5..db92311 100644 (file)
@@ -531,6 +531,28 @@ VALUES( 'es', 'language', 'en', 'Spanish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'es', 'language', 'fr', 'Espagnol');
 
+-- Spanish, Catalan
+INSERT INTO language_subtag_registry( subtag, type, description, added)
+VALUES ( 'ca', 'language', 'Catalan','2013-01-12' );
+
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'ca','cat');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'es', 'Catalán');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'en', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'fr', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'ca', 'Català');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'de', 'Katalanisch');
+
 -- Swedish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'sv', 'language', 'Swedish','2005-10-16' );
index e56248a..24097ed 100644 (file)
@@ -340,7 +340,9 @@ CREATE TABLE `branchcategories` ( -- information related to library/branch group
   `categoryname` varchar(32), -- name of the library/branch group
   `codedescription` mediumtext, -- longer description of the library/branch group
   `categorytype` varchar(16), -- says whether this is a search group or a properties group
-  PRIMARY KEY  (`categorycode`)
+  `show_in_pulldown` tinyint(1) NOT NULL DEFAULT '0', -- says this group should be in the opac libararies pulldown if it is enabled
+  PRIMARY KEY  (`categorycode`),
+  KEY `show_in_pulldown` (`show_in_pulldown`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
@@ -1017,6 +1019,7 @@ CREATE TABLE `issuingrules` ( -- circulation and fine rules
   `hardduedate` date default NULL, -- hard due date
   `hardduedatecompare` tinyint NOT NULL default "0", -- type of hard due date (1 = after, 0 = on, -1 = before)
   `renewalsallowed` smallint(6) NOT NULL default "0", -- how many renewals are allowed
+  `renewalperiod` int(4) default NULL, -- renewal period in the unit set in issuingrules.lengthunit
   `reservesallowed` smallint(6) NOT NULL default "0", -- how many holds are allowed
   `branchcode` varchar(10) NOT NULL default '', -- the branch this rule is for (branches.branchcode)
   overduefinescap decimal default NULL, -- the maximum amount of an overdue fine
@@ -1559,17 +1562,17 @@ CREATE TABLE `patronimage` ( -- information related to patron images
 -- so MyISAM is better in this case
 
 DROP TABLE IF EXISTS `pending_offline_operations`;
-CREATE TABLE `pending_offline_operations` (
-  `operationid` int(11) NOT NULL AUTO_INCREMENT,
-  `userid` varchar(30) NOT NULL,
-  `branchcode` varchar(10) NOT NULL,
+CREATE TABLE pending_offline_operations (
+  operationid int(11) NOT NULL AUTO_INCREMENT,
+  userid varchar(30) NOT NULL,
+  branchcode varchar(10) NOT NULL,
   `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
   `action` varchar(10) NOT NULL,
-  `barcode` varchar(20) NOT NULL,
-  `cardnumber` varchar(16) DEFAULT NULL,
-  PRIMARY KEY (`operationid`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-
+  barcode varchar(20) DEFAULT NULL,
+  cardnumber varchar(16) DEFAULT NULL,
+  amount decimal(28,6) DEFAULT NULL,
+  PRIMARY KEY (operationid)
+) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
 
 
 --
@@ -1908,6 +1911,7 @@ CREATE TABLE `subscription` (
   `graceperiod` int(11) NOT NULL default '0',
   `enddate` date default NULL,
   `closed` INT(1) NOT NULL DEFAULT 0,
+  `reneweddate` date default NULL,
   PRIMARY KEY  (`subscriptionid`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -2772,8 +2776,6 @@ CREATE TABLE `aqorders` ( -- information related to the basket line items
   `notes` mediumtext, -- notes related to this order line
   `supplierreference` mediumtext, -- not used? always NULL
   `purchaseordernumber` mediumtext, -- not used? always NULL
-  `subscription` tinyint(1) default NULL, -- not used? always NULL
-  `serialid` varchar(30) default NULL, -- not used? always NULL
   `basketno` int(11) default NULL, -- links this order line to a specific basket (aqbasket.basketno)
   `biblioitemnumber` int(11) default NULL, -- links this order line the biblioitems table (biblioitems.biblioitemnumber)
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, -- the date and time this order line was last modified
@@ -2791,6 +2793,7 @@ CREATE TABLE `aqorders` ( -- information related to the basket line items
   `uncertainprice` tinyint(1), -- was this price uncertain (1 for yes, 0 for no)
   `claims_count` int(11) default 0, -- count of claim letters generated
   `claimed_date` date default NULL, -- last date a claim was generated
+  `subscriptionid` int(11) default NULL, -- links this order line to a subscription (subscription.subscriptionid)
   parent_ordernumber int(11) default NULL, -- ordernumber of parent order line, or same as ordernumber if no parent
   PRIMARY KEY  (`ordernumber`),
   KEY `basketno` (`basketno`),
@@ -2798,7 +2801,8 @@ CREATE TABLE `aqorders` ( -- information related to the basket line items
   KEY `budget_id` (`budget_id`),
   CONSTRAINT `aqorders_ibfk_1` FOREIGN KEY (`basketno`) REFERENCES `aqbasket` (`basketno`) ON DELETE CASCADE ON UPDATE CASCADE,
   CONSTRAINT `aqorders_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE SET NULL ON UPDATE CASCADE,
-  CONSTRAINT aqorders_ibfk_3 FOREIGN KEY (invoiceid) REFERENCES aqinvoices (invoiceid) ON DELETE SET NULL ON UPDATE CASCADE
+  CONSTRAINT aqorders_ibfk_3 FOREIGN KEY (invoiceid) REFERENCES aqinvoices (invoiceid) ON DELETE SET NULL ON UPDATE CASCADE,
+  CONSTRAINT `aqorders_subscriptionid` FOREIGN KEY (`subscriptionid`) REFERENCES `subscription` (`subscriptionid`) ON DELETE CASCADE ON UPDATE CASCADE
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 
index 9c3e5e2..6c401a5 100644 (file)
@@ -20,7 +20,7 @@
 -- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 
 INSERT INTO `letter` (module, code, name, title, content) 
-VALUES ('circulation','ODUE','Purring','Purring på dokument','<<borrowers.firstname>> <<borrowers.surname>>,\n\nDu har lån som skulle vært levert. Biblioteket krever ikke inn gebyrer, men vennligst lever eller forny lånet/lånene ved biblioteket.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nTelefon: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nE-post: <<branches.branchemail>>\n\nDersom du har et passord og lånet/lånene kan fornyes kan du gjøre dette på nettet. Dersom du overskrider lånetiden med mer enn 30 dager vil lånekortet bli sperret.\n\nFølgende lån har gått over tiden:\n\n<item>"<<biblio.title>>" av <<biblio.author>>, <<items.itemcallnumber>>, Strekkode: <<items.barcode>> Gebyr: <fine>GBP</fine></item>\n\nPå forhånd takk.\n\n<<branches.branchname>>\n'),
+VALUES ('circulation','ODUE','Purring','Purring på dokument','<<borrowers.firstname>> <<borrowers.surname>>,\n\nDu har lån som skulle vært levert. Biblioteket krever ikke inn gebyrer, men vennligst lever eller forny lånet/lånene ved biblioteket.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nTelefon: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nE-post: <<branches.branchemail>>\n\nDersom du har et passord og lånet/lånene kan fornyes kan du gjøre dette på nettet. Dersom du overskrider lånetiden med mer enn 30 dager vil lånekortet bli sperret.\n\nFølgende lån har gått over tiden:\n\n<item>"<<biblio.title>>" av <<biblio.author>>, <<items.itemcallnumber>>, Strekkode: <<items.barcode>> Gebyr: <<items.fine>></item>\n\nPå forhånd takk.\n\n<<branches.branchname>>\n'),
 ('claimacquisition','ACQCLAIM','Periodikapurring','Eksemplar ikke mottatt','<<aqbooksellers.name>>\r\n<<aqbooksellers.address1>>\r\n<<aqbooksellers.address2>>\r\n<<aqbooksellers.address3>>\r\n<<aqbooksellers.address4>>\r\n<<aqbooksellers.phone>>\r\n\r\n<order>Bestillingsnummer <<aqorders.ordernumber>> (<<aqorders.title>>) (<<aqorders.quantity>> ordered) ($<<aqorders.listprice>> each) har ikke blitt mottatt.</order>'),
 ('serial','RLIST','Sirkulasjon','Et dokument er nå tilgjengelig','<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nDette dokumentet er tilgjengelig:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)\r\n\r\nVennligst kom og hent det når det passer.'),
 ('members','ACCTDETAILS','Mal for kontodetaljer - STANDARD','Dine nye kontodetaljer i Koha.','Hei <<borrowers.title>> <<borrowers.firstname>> <<borrowers.surname>>.\r\n\r\nDine nye detaljer er:\r\n\r\nBruker:  <<borrowers.userid>>\r\nPassord: <<borrowers.password>>\r\n\r\nDersom det oppstår problemer, vennligst kontakt biblioteket.\r\n\r\nVennlig hilsen,\r\nBiblioteket\r\nkohaadmin@yoursite.org'), 
@@ -28,6 +28,7 @@ VALUES ('circulation','ODUE','Purring','Purring på dokument','<<borrowers.first
 ('circulation','DUEDGST','Innleveringspåminnelse (sammendrag)','Innleveringspåminnelse','Du har <<count>> dokumenter som skulle vært levert.'), 
 ('circulation','PREDUE','Forhåndspåminnelse','Forhåndspåminnelse','<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nDette dokumentet må snart leveres:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)'), 
 ('circulation','PREDUEDGST','Forhåndspåminnelse (sammendrag)','Forhåndspåminnelse','Du har lånt <<count>> dokumenter som snart må leveres.'),
+('circulation','RENEWAL','Fornying','Fornyinger','Følgende lån har blitt fornyet:\r\n----\r\n<<biblio.title>>\r\n----\r\n'),
 ('reserves', 'HOLD', 'Hentemelding', 'Hentemelding fra <<branches.branchname>>', '<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nEt reservert dokument er klart til henting fra <<reserves.waitingdate>>:\r\n\r\nTittel: <<biblio.title>>\r\nForfatter: <<biblio.author>>\r\nEksemplar: <<items.copynumber>>\r\nHentested: <<branches.branchname>>\r\n<<branches.branchaddress1>>\r\n<<branches.branchaddress2>>\r\n<<branches.branchaddress3>>\r\n<<branches.branchcity>> <<branches.branchzip>>'),
 ('reserves', 'HOLD_PRINT', 'Hentemelding (på papir)', 'Hentemelding', '<<branches.branchname>>\r\n<<branches.branchaddress1>>\r\n<<branches.branchaddress2>>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>>\r\n<<borrowers.address>>\r\n<<borrowers.city>> <<borrowers.zipcode>>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<<borrowers.firstname>> <<borrowers.surname>> <<borrowers.cardnumber>>\r\n\r\nDu har et reservert dokument som kan hentes fra  <<reserves.waitingdate>>:\r\n\r\nTittel: <<biblio.title>>\r\nForfatter: <<biblio.author>>\r\nEksemplar: <<items.copynumber>>\r\n'),
 ('circulation','CHECKIN','Innlevering','Melding om innlevering','Følgende dokument har blitt innlevert:\r\n----\r\n<<biblio.title>>\r\n----\r\nVennlig hilsen\r\nBiblioteket'),
@@ -37,4 +38,103 @@ VALUES ('circulation','ODUE','Purring','Purring på dokument','<<borrowers.first
 ('suggestions','AVAILABLE','Foreslått dokument tilgjengelig', 'Foreslått dokument tilgjengelig','<<borrowers.firstname>> <<borrowers.surname>>,\n\nDu har foreslått at biblioteket kjøper inn <<suggestions.title>> av <<suggestions.author>>.\n\nVi har gleden av å informere deg om at dokumentet nå er innlemmet i samlingen.\n\nEr det noe du lurer på, vennligst kontakt oss på <<branches.branchemail>>.\n\nVennlig hilsen,\n\n<<branches.branchname>>'),
 ('suggestions','ORDERED','Innkjøpsforslag i bestilling', 'Innkjøpsforslag i bestilling','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nDu har foreslått at biblioteket kjøper inn <<suggestions.title>> av <<suggestions.author>>.\n\nVi har gleden av å informere deg om at dokumentet du foreslo nå er i bestilling.\n\nDu vil få en ny melding når dokumentet er tilgjengelig.\n\nEr det noe du lurer på, vennligst kontakt oss på <<branches.branchemail>>.\n\nVennlig hilsen,\n\n<<branches.branchname>>'),
 ('suggestions','REJECTED','Innkjøpsforslag avslått', 'Innkjøpsforslag avslått','<<borrowers.firstname>> <<borrowers.surname>>,\n\nDu har foreslått at biblioteket kjøper inn <<suggestions.title>> av <<suggestions.author>>.\n\nBiblioteket har vurdert innkjøpsforslaget ditt i dag, og bestemt seg for å ikke ta det til følge.\n\nBegrunnelse: <<suggestions.reason>>\n\nEr det noe du lurer på, vennligst kontakt oss på <<branches.branchemail>>.\n\nVennlig hilsen,\n\n<<branches.branchname>>');
-INSERT INTO `letter` (module, code, name, title, content) VALUES ('circulation','RENEWAL','Item Renewal','Renewals','The following items have been renew:\r\n----\r\n<<biblio.title>>\r\n----\r\nThank you for visiting <<branches.branchname>>.');
+INSERT INTO `letter` (module, code, name, title, content, is_html)
+VALUES ('circulation','ISSUESLIP','Utlån','Utlån', '<h3><<branches.branchname>></h3>
+Utlånt til <<borrowers.title>> <<borrowers.firstname>> <<borrowers.initials>> <<borrowers.surname>> <br />
+(<<borrowers.cardnumber>>) <br />
+
+<<today>><br />
+
+<h4>Utlånt</h4>
+<checkedout>
+<p>
+<<biblio.title>> <br />
+Strekkode: <<items.barcode>><br />
+Innleveringsfrist: <<issues.date_due>><br />
+</p>
+</checkedout>
+
+<h4>Forfalte lån</h4>
+<overdue>
+<p>
+<<biblio.title>> <br />
+Strekkode: <<items.barcode>><br />
+Innleveringsfrist: <<issues.date_due>><br />
+</p>
+</overdue>
+
+<hr>
+
+<h4 style="text-align: center; font-style:italic;">Nyheter</h4>
+<news>
+<div class="newsitem">
+<h5 style="margin-bottom: 1px; margin-top: 1px"><b><<opac_news.title>></b></h5>
+<p style="margin-bottom: 1px; margin-top: 1px"><<opac_news.new>></p>
+<p class="newsfooter" style="font-size: 8pt; font-style:italic; margin-bottom: 1px; margin-top: 1px">Publisert <<opac_news.timestamp>></p>
+<hr />
+</div>
+</news>', 1),
+('circulation','ISSUEQSLIP','Utlån (enkel)','Utlån (enkel)', '<h3><<branches.branchname>></h3>
+Utlånt til <<borrowers.title>> <<borrowers.firstname>> <<borrowers.initials>> <<borrowers.surname>> <br />
+(<<borrowers.cardnumber>>) <br />
+
+<<today>><br />
+
+<h4>Utlånt i dag</h4>
+<checkedout>
+<p>
+<<biblio.title>> <br />
+Strekkode: <<items.barcode>><br />
+Innleveringsfrist: <<issues.date_due>><br />
+</p>
+</checkedout>', 1),
+('circulation','RESERVESLIP','Reservasjon','Reservasjon', '<h5>Dato: <<today>></h5>
+
+<h3> Overfør til/Reservasjon hos <<branches.branchname>></h3>
+
+<h3><<borrowers.surname>>, <<borrowers.firstname>></h3>
+
+<ul>
+    <li><<borrowers.cardnumber>></li>
+    <li><<borrowers.phone>></li>
+    <li> <<borrowers.address>><br />
+         <<borrowers.address2>><br />
+         <<borrowers.city >>  <<borrowers.zipcode>>
+    </li>
+    <li><<borrowers.email>></li>
+</ul>
+<br />
+<h3>RESERVERT</h3>
+<h4><<biblio.title>></h4>
+<h5><<biblio.author>></h5>
+<ul>
+   <li><<items.barcode>></li>
+   <li><<items.itemcallnumber>></li>
+   <li><<reserves.waitingdate>></li>
+</ul>
+<p>Kommentarer:
+<pre><<reserves.reservenotes>></pre>
+</p>
+', 1),
+('circulation','TRANSFERSLIP','Overføringslapp','Overføringslapp', '<h5>Dato: <<today>></h5>
+
+<h3>Overføres til <<branches.branchname>></h3>
+
+<h3>EKSEMPLAR</h3>
+<h4><<biblio.title>></h4>
+<h5><<biblio.author>></h5>
+<ul>
+   <li><<items.barcode>></li>
+   <li><<items.itemcallnumber>></li>
+</ul>', 1);
+
+INSERT INTO `letter` (`module`,`code`,`branchcode`,`name`,`is_html`,`title`,`content`)
+VALUES (
+'members',  'OPAC_REG_VERIFY',  '',  'Verifikasjon av egenregistrering i publikumskatalogen',  '1',  'Verifiser registreringen din',  'Hei!
+
+D har blitt registrert som bruker av biblioteket. Verifiser epostadressen din ved å klikke på lenka nedenfor:
+
+http://<<OPACBaseURL>>/cgi-bin/koha/opac-registration-verify.pl?token=<<borrower_modifications.verification_token>>
+
+Dersom du ikke har bedt om å bli registret som bruker av biblioteket kan du se bort fra denne engangsmeldingen. Forespørselen vil snart gå ut på dato.'
+);
index dd04af4..f4d5409 100644 (file)
@@ -556,6 +556,28 @@ VALUES( 'es', 'language', 'en', 'Spanish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'es', 'language', 'fr', 'Espagnol');
 
+-- Spanish, Catalan
+INSERT INTO language_subtag_registry( subtag, type, description, added)
+VALUES ( 'ca', 'language', 'Catalan','2013-01-12' );
+
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'ca','cat');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'es', 'Catalán');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'en', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'fr', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'ca', 'Català');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'de', 'Katalanisch');
+
 -- Swedish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'sv', 'language', 'Swedish','2005-10-16' );
index 3deeae2..e37ae73 100644 (file)
@@ -66,8 +66,15 @@ INSERT INTO `authorised_values` (category, authorised_value, lib) VALUES ('RESTR
 INSERT INTO `authorised_values` (category, authorised_value, lib) VALUES ('MANUAL_INV','Kopiavgift','0,25');
 
 -- custom borrower notes
-INSERT INTO `authorised_values` (category, authorised_value, lib) VALUES ('BOR_NOTES','ADDR','Address Notes');
+INSERT INTO `authorised_values` (category, authorised_value, lib) VALUES ('BOR_NOTES','ADDR','Addresse-noter');
 
 -- OPAC Suggestions reasons
 INSERT INTO authorised_values (category,authorised_value,lib,lib_opac) VALUES ('OPAC_SUG','damaged','Eksemplaret på hylla er skadet','Eksemplaret på hylla er skadet');
 INSERT INTO authorised_values (category,authorised_value,lib,lib_opac) VALUES ('OPAC_SUG','bestseller','Kommende tittel av populær forfatter','Kommende tittel av populær forfatter');
+
+-- Report groups
+INSERT INTO authorised_values (category, authorised_value, lib) VALUES ('REPORT_GROUP', 'CIRC', 'Sirkulasjon');
+INSERT INTO authorised_values (category, authorised_value, lib) VALUES ('REPORT_GROUP', 'CAT', 'Katalog');
+INSERT INTO authorised_values (category, authorised_value, lib) VALUES ('REPORT_GROUP', 'PAT', 'Lånere');
+INSERT INTO authorised_values (category, authorised_value, lib) VALUES ('REPORT_GROUP', 'ACQ', 'Innkjøp');
+INSERT INTO authorised_values (category, authorised_value, lib) VALUES ('REPORT_GROUP', 'ACC', 'Gebyrer');
index 7bba81b..b1af0f3 100644 (file)
@@ -1,6 +1,6 @@
 INSERT INTO z3950servers (host, port, db, userid, password, name, id, checked, rank, syntax, timeout, icon, position, type, encoding, description) VALUES
 ('lx2.loc.gov',210,'LCDB','','','LIBRARY OF CONGRESS',1,0,0,'USMARC',0,NULL,'primary','zed','utf8',''),
-('z3950.bibsys.no',2100,'BIBSYS','','','BIBSYS',12,1,1,'NORMARC',0,NULL,'primary','zed','ISO_6937',''),
-('z3950.nb.no',2100,'Norbok','','','NORBOK',13,0,0,'NORMARC',0,NULL,'primary','zed','ISO_6937',''),
-('z3950.nb.no',2100,'Sambok','','','SAMBOK',14,0,0,'NORMARC',0,NULL,'primary','zed','ISO_6937',''),
-('z3950.deich.folkebibl.no',210,'data','','','DEICHMAN',15,0,0,'NORMARC',0,NULL,'primary','zed','ISO_6937','');
+('z3950.bibsys.no',2100,'BIBSYS','','','BIBSYS',12,1,1,'NORMARC',0,NULL,'primary','zed','ISO_8859-1',''),
+('z3950.nb.no',2100,'Norbok','','','NORBOK',13,0,0,'NORMARC',0,NULL,'primary','zed','ISO_8859-1',''),
+('z3950.nb.no',2100,'Sambok','','','SAMBOK',14,0,0,'NORMARC',0,NULL,'primary','zed','ISO_8859-1',''),
+('z3950.deich.folkebibl.no',210,'data','','','DEICHMAN',15,0,0,'NORMARC',0,NULL,'primary','zed','ISO_8859-1','');
index 69812fd..cd487d4 100644 (file)
@@ -1,7 +1,7 @@
 INSERT INTO `letter` (module, code, name, title, content) 
 VALUES 
 ('circulation','ODUE','Overdue Notice',
-'Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <fine>GBP</fine></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
+'Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <<items.fine>></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
 ('claimacquisition','ACQCLAIM','Acquisition Claim','Item Not Received','<<aqbooksellers.name>>\r\n<<aqbooksellers.address1>>\r\n<<aqbooksellers.address2>>\r\n<<aqbooksellers.address3>>\r\n<<aqbooksellers.address4>>\r\n<<aqbooksellers.phone>>\r\n\r\n<order>Ordernumber <<aqorders.ordernumber>> (<<biblio.title>>) (<<aqorders.quantity>> ordered) ($<<aqorders.listprice>> each) has not been received.</order>'),
 ('serial','RLIST','Routing List','Serial is now available','<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nThe following issue is now available:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)\r\n\r\nPlease pick it up at your convenience.'),
 ('members','ACCTDETAILS','Account Details Template - DEFAULT','Your new Koha account details.','Hello <<borrowers.title>> <<borrowers.firstname>> <<borrowers.surname>>.\r\n\r\nYour new Koha account details are:\r\n\r\nUser:  <<borrowers.userid>>\r\nPassword: <<borrowers.password>>\r\n\r\nIf you have any problems or questions regarding your account, please contact your Koha Administrator.\r\n\r\nThank you,\r\nKoha Administrator\r\nkohaadmin@yoursite.org'), 
index b246a7c..d27be70 100644 (file)
@@ -529,6 +529,28 @@ VALUES( 'es', 'language', 'en', 'Spanish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'es', 'language', 'fr', 'Espagnol');
 
+-- Spanish, Catalan
+INSERT INTO language_subtag_registry( subtag, type, description, added)
+VALUES ( 'ca', 'language', 'Catalan','2013-01-12' );
+
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'ca','cat');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'es', 'Catalán');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'en', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'fr', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'ca', 'Català');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'de', 'Katalanisch');
+
 -- Swedish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'sv', 'language', 'Swedish','2005-10-16' );
index 358783e..9c1f259 100644 (file)
@@ -1,5 +1,5 @@
 INSERT INTO `letter` (module, code, name, title, content) 
-VALUES ('circulation','ODUE','Overdue Notice','Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <fine>GBP</fine></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
+VALUES ('circulation','ODUE','Overdue Notice','Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <<items.fine>></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
 ('claimacquisition','ACQCLAIM','Acquisition Claim','Item Not Received','<<aqbooksellers.name>>\r\n<<aqbooksellers.address1>>\r\n<<aqbooksellers.address2>>\r\n<<aqbooksellers.address3>>\r\n<<aqbooksellers.address4>>\r\n<<aqbooksellers.phone>>\r\n\r\n<order>Ordernumber <<aqorders.ordernumber>> (<<biblio.title>>) (<<aqorders.quantity>> ordered) ($<<aqorders.listprice>> each) has not been received.</order>'),
 ('serial','RLIST','Routing List','Serial is now available','<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nThe following issue is now available:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)\r\n\r\nPlease pick it up at your convenience.'),
 ('members','ACCTDETAILS','Account Details Template - DEFAULT','Your new Koha account details.','Hello <<borrowers.title>> <<borrowers.firstname>> <<borrowers.surname>>.\r\n\r\nYour new Koha account details are:\r\n\r\nUser:  <<borrowers.userid>>\r\nPassword: <<borrowers.password>>\r\n\r\nIf you have any problems or questions regarding your account, please contact your Koha Administrator.\r\n\r\nThank you,\r\nKoha Administrator\r\nkohaadmin@yoursite.org'), 
index 4121a59..f494bab 100644 (file)
@@ -529,6 +529,28 @@ VALUES( 'es', 'language', 'en', 'Spanish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'es', 'language', 'fr', 'Espagnol');
 
+-- Spanish, Catalan
+INSERT INTO language_subtag_registry( subtag, type, description, added)
+VALUES ( 'ca', 'language', 'Catalan','2013-01-12' );
+
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'ca','cat');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'es', 'Catalán');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'en', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'fr', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'ca', 'Català');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'de', 'Katalanisch');
+
 -- Swedish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'sv', 'language', 'Swedish','2005-10-16' );
index 2408425..5d536c5 100644 (file)
@@ -418,6 +418,8 @@ INSERT IGNORE INTO systempreferences (variable,value,explanation,options,type) V
 INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('UseQueryParser', '0', 'If enabled, try to use QueryParser for queries.', NULL, 'YesNo');
 INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('FinesIncludeGracePeriod','1','If enabled, fines calculations will include the grace period.',NULL,'YesNo');
 INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('UNIMARCAuthorsFacetsSeparator',', ', 'UNIMARC authors facets separator', NULL, 'short');
-INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('UseKohaPlugins','1','Enable or disable the ability to use Koha Plugins.','','YesNo');
+INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('UseKohaPlugins','0','Enable or disable the ability to use Koha Plugins.','','YesNo');
 INSERT INTO systempreferences (variable,value,options,explanation,type) VALUES ('TimeFormat','24hr','12hr|24hr','Defines the global time format for visual output.','Choice');
 INSERT INTO systempreferences (variable,value,options,explanation,type) VALUES('DisplayIconsXSLT', '1', '', 'If ON, displays the format, audience, and material type icons in XSLT MARC21 results and detail pages.', 'YesNo');
+INSERT INTO systempreferences (variable,value,options,explanation,type) VALUES ('HighlightOwnItemsOnOPAC','0','','If on, and a patron is logged into the OPAC, items from his or her home library will be emphasized and shown first in search results and item details.','YesNo');
+INSERT INTO systempreferences (variable,value,options,explanation,type) VALUES ('HighlightOwnItemsOnOPACWhich','PatronBranch','PatronBranch|OpacURLBranch','Decides which branch''s items to emphasize. If PatronBranch, emphasize the logged in user''s library''s items. If OpacURLBranch, highlight the items of the Apache var BRANCHCODE defined in Koha''s Apache configuration file.','Choice')
index b7e67c5..8b61186 100644 (file)
@@ -1,5 +1,5 @@
 INSERT INTO `letter` (module, code, name, title, content) 
-VALUES ('circulation','ODUE','Overdue Notice','Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <fine>GBP</fine></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
+VALUES ('circulation','ODUE','Overdue Notice','Item Overdue','Dear <<borrowers.firstname>> <<borrowers.surname>>,\n\nAccording to our current records, you have items that are overdue.Your library does not charge late fines, but please return or renew them at the branch below as soon as possible.\n\n<<branches.branchname>>\n<<branches.branchaddress1>>\n<<branches.branchaddress2>> <<branches.branchaddress3>>\nPhone: <<branches.branchphone>>\nFax: <<branches.branchfax>>\nEmail: <<branches.branchemail>>\n\nIf you have registered a password with the library, and you have a renewal available, you may renew online. If an item becomes more than 30 days overdue, you will be unable to use your library card until the item is returned.\n\nThe following item(s) is/are currently overdue:\n\n<item>"<<biblio.title>>" by <<biblio.author>>, <<items.itemcallnumber>>, Barcode: <<items.barcode>> Fine: <<items.fine>></item>\n\nThank-you for your prompt attention to this matter.\n\n<<branches.branchname>> Staff\n'),
 ('claimacquisition','ACQCLAIM','Acquisition Claim','Item Not Received','<<aqbooksellers.name>>\r\n<<aqbooksellers.address1>>\r\n<<aqbooksellers.address2>>\r\n<<aqbooksellers.address3>>\r\n<<aqbooksellers.address4>>\r\n<<aqbooksellers.phone>>\r\n\r\n<order>Ordernumber <<aqorders.ordernumber>> (<<biblio.title>>) (<<aqorders.quantity>> ordered) ($<<aqorders.listprice>> each) has not been received.</order>'),
 ('serial','RLIST','Routing List','Serial is now available','<<borrowers.firstname>> <<borrowers.surname>>,\r\n\r\nThe following issue is now available:\r\n\r\n<<biblio.title>>, <<biblio.author>> (<<items.barcode>>)\r\n\r\nPlease pick it up at your convenience.'),
 ('members','ACCTDETAILS','Account Details Template - DEFAULT','Your new Koha account details.','Hello <<borrowers.title>> <<borrowers.firstname>> <<borrowers.surname>>.\r\n\r\nYour new Koha account details are:\r\n\r\nUser:  <<borrowers.userid>>\r\nPassword: <<borrowers.password>>\r\n\r\nIf you have any problems or questions regarding your account, please contact your Koha Administrator.\r\n\r\nThank you,\r\nKoha Administrator\r\nkohaadmin@yoursite.org'), 
index 4121a59..f494bab 100644 (file)
@@ -529,6 +529,28 @@ VALUES( 'es', 'language', 'en', 'Spanish');
 INSERT INTO language_descriptions(subtag, type, lang, description)
 VALUES( 'es', 'language', 'fr', 'Espagnol');
 
+-- Spanish, Catalan
+INSERT INTO language_subtag_registry( subtag, type, description, added)
+VALUES ( 'ca', 'language', 'Catalan','2013-01-12' );
+
+INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code)
+VALUES( 'ca','cat');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'es', 'Catalán');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'en', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'fr', 'Catalan');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'ca', 'Català');
+
+INSERT INTO language_descriptions(subtag, type, lang, description)
+VALUES( 'ca', 'language', 'de', 'Katalanisch');
+
 -- Swedish
 INSERT INTO language_subtag_registry( subtag, type, description, added)
 VALUES ( 'sv', 'language', 'Swedish','2005-10-16' );
index 8a6a5b8..7c97a51 100755 (executable)
@@ -5828,8 +5828,6 @@ if(C4::Context->preference("Version") < TransformToNum($DBversion) ) {
     SetVersion($DBversion);
 }
 
-
-
 $DBversion = "3.09.00.050";
 if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
     $dbh->do("ALTER TABLE authorised_values MODIFY category varchar(16) NOT NULL DEFAULT '';");
@@ -6349,43 +6347,43 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
 $DBversion = "3.11.00.016";
 if ( CheckVersion($DBversion) ) {
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="<b>Required for staff login.</b> Staff access, allows viewing of catalogue in staff client." where flag="catalogue";
+        UPDATE userflags SET flagdesc="<b>Required for staff login.</b> Staff access, allows viewing of catalogue in staff client." where flagdesc="Modify login / permissions for staff users";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Edit Authorities" where flag="editauthorities";
+        UPDATE userflags SET flagdesc="Edit Authorities" where flagdesc="Allow to edit authorities";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Allow access to the reports module" where flag="reports";
+        UPDATE userflags SET flagdesc="Allow access to the reports module" where flagdesc="Allow to access to the reports module";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Set library management parameters (deprecated)" where flag="management";
+        UPDATE userflags SET flagdesc="Set library management parameters (deprecated)" where flagdesc="Set library management parameters";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Manage serial subscriptions" where flag="serials";
+        UPDATE userflags SET flagdesc="Manage serial subscriptions" where flagdesc="Allow to manage serials subscriptions";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Manage patrons fines and fees" where flag="updatecharges";
+        UPDATE userflags SET flagdesc="Manage patrons fines and fees" where flagdesc="Update borrower charges";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Check out and check in items" where flag="circulate";
+        UPDATE userflags SET flagdesc="Check out and check in items" where flagdesc="Circulate books";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Manage Koha system settings (Administration panel)" where flag="parameters";
+        UPDATE userflags SET flagdesc="Manage Koha system settings (Administration panel)" where flagdesc="Set Koha system parameters";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Add or modify patrons" where flag="borrowers";
+        UPDATE userflags SET flagdesc="Add or modify patrons" where flagdesc="Add or modify borrowers";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Use all tools (expand for granular tools permissions)" where flag="tools";
+        UPDATE userflags SET flagdesc="Use all tools (expand for granular tools permissions)" where flagdesc="Use tools (export, import, barcodes)";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Allow staff members to modify permissions for other staff members" where flag="staffaccess";
+        UPDATE userflags SET flagdesc="Allow staff members to modify permissions for other staff members" where flagdesc="Set user permissions";
         });
    $dbh->do(q{
-        UPDATE userflags SET flagdesc="Perform batch modification of patrons" where flag="edit_patrons";
+        UPDATE permissions SET description="Perform batch modification of patrons" where description="Perform batch modifivation of patrons";
         });
 
-   print "Upgrade to $DBversion done (Bug 9382 - refresh permission descriptions to make more sense)\n";
+   print "Upgrade to $DBversion done (Bug 9382 (updated with bug 9745) - refresh permission descriptions to make more sense)\n";
    SetVersion ($DBversion);
 }
 
@@ -6407,14 +6405,14 @@ if ( CheckVersion($DBversion) ) {
 }
 
 $DBversion = "3.11.00.019";
-if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
+if ( CheckVersion($DBversion) ) {
     $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('UNIMARCAuthorityField100', 'afrey50      ba0', NULL, NULL, 'Textarea')");
     print "Upgrade to $DBversion done (Bug 9145 - Add syspref UNIMARCAuthorityField100)\n";
     SetVersion ($DBversion);
 }
 
 $DBversion = "3.11.00.020";
-if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {
+if ( CheckVersion($DBversion) ) {
     $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('UNIMARCField100Language', 'fre','UNIMARC field 100 default language',NULL,'short')");
     print "Upgrade to $DBversion done (Bug 8347 - Koha forces UNIMARC 100 field code language to 'fre')\n";
     SetVersion($DBversion);
@@ -6526,7 +6524,7 @@ if ( CheckVersion($DBversion) ) {
 }
 
 $DBversion = "3.11.00.100";
-if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
+if ( CheckVersion($DBversion) ) {
     print "Upgrade to $DBversion done (3.12-alpha release)\n";
     SetVersion ($DBversion);
 }
@@ -6558,7 +6556,7 @@ if ( CheckVersion($DBversion) ) {
 }
 
 $DBversion = "3.11.00.104";
-if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
+if ( CheckVersion($DBversion) ) {
     print "Upgrade to $DBversion done (3.12-alpha2 release)\n";
     SetVersion ($DBversion);
 }
@@ -6631,7 +6629,7 @@ if ( CheckVersion($DBversion) ) {
 
 
 $DBversion = "3.11.00.106";
-if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {
+if ( CheckVersion($DBversion) ) {
     $dbh->do("INSERT INTO userflags (bit, flag, flagdesc, defaulton) VALUES ('19', 'plugins', 'Koha plugins', '0')");
     $dbh->do("INSERT INTO permissions (module_bit, code, description) VALUES
               ('19', 'manage', 'Manage plugins ( install / uninstall )'),
@@ -6639,7 +6637,7 @@ if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {
               ('19', 'report', 'Use report plugins'),
               ('19', 'configure', 'Configure plugins')
             ");
-    $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('UseKohaPlugins','1','Enable or disable the ability to use Koha Plugins.','','YesNo')");
+    $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('UseKohaPlugins','0','Enable or disable the ability to use Koha Plugins.','','YesNo')");
 
     $dbh->do("
         CREATE TABLE IF NOT EXISTS plugin_data (
@@ -6678,6 +6676,100 @@ if ( CheckVersion($DBversion) ) {
    SetVersion ($DBversion);
 }
 
+$DBversion = "3.11.00.110";
+if ( CheckVersion($DBversion) ) {
+    $dbh->do("ALTER TABLE pending_offline_operations CHANGE barcode barcode VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL");
+    $dbh->do("ALTER TABLE pending_offline_operations ADD amount DECIMAL( 28, 6 ) NULL DEFAULT NULL");
+    print "Upgrade to $DBversion done (Bug 8220 - Allow koc uploads to go to process queue)\n";
+    SetVersion ($DBversion);
+}
+
+$DBversion = "3.11.00.111";
+if ( CheckVersion($DBversion) ) {
+    my $sth = $dbh->prepare("
+        SELECT module, code, branchcode, content
+        FROM letter
+        WHERE content LIKE '%<fine>%'
+    ");
+    $sth->execute;
+    my $sth_update = $dbh->prepare("UPDATE letter SET content = ? WHERE module = ? AND code = ? AND branchcode = ?");
+    while(my $row = $sth->fetchrow_hashref){
+        $row->{content} =~ s/<fine>\w+<\/fine>/<<items.fine>>/;
+        $sth_update->execute($row->{content}, $row->{module}, $row->{code}, $row->{branchcode});
+    }
+    print "Upgrade to $DBversion done (use new <<items.fine>> syntax in notices)\n";
+    SetVersion($DBversion);
+}
+
+$DBversion = "3.11.00.112";
+if ( CheckVersion($DBversion) ) {
+    $dbh->do(qq{
+        ALTER TABLE issuingrules ADD COLUMN renewalperiod int(4) DEFAULT NULL AFTER renewalsallowed
+    });
+    $dbh->do(qq{
+        UPDATE issuingrules SET renewalperiod = issuelength
+    });
+    print "Upgrade to $DBversion done (Bug 8365: Add colum issuingrules.renewalperiod)\n";
+    SetVersion ($DBversion);
+}
+
+$DBversion = "3.11.00.113";
+if ( CheckVersion($DBversion) ) {
+    $dbh->do(q{
+        ALTER TABLE branchcategories ADD show_in_pulldown BOOLEAN NOT NULL DEFAULT '0',
+        ADD INDEX ( show_in_pulldown )
+    });
+    print "Upgrade to $DBversion done (Bug 9257 - Add groups to normal search pulldown)\n";
+    SetVersion ($DBversion);
+}
+
+$DBversion = "3.11.00.115";
+if ( CheckVersion($DBversion) ) {
+    $dbh->do("INSERT INTO systempreferences (variable,value,options,explanation,type) VALUES ('HighlightOwnItemsOnOPAC','0','','If on, and a patron is logged into the OPAC, items from his or her home library will be emphasized and shown first in search results and item details.','YesNo')");
+    $dbh->do("INSERT INTO systempreferences (variable,value,options,explanation,type) VALUES ('HighlightOwnItemsOnOPACWhich','PatronBranch','PatronBranch|OpacURLBranch','Decides which branch''s items to emphasize. If PatronBranch, emphasize the logged in user''s library''s items. If OpacURLBranch, highlight the items of the Apache var BRANCHCODE defined in Koha''s Apache configuration file.','Choice')");
+    print "Upgrade to $DBversion done (Bug 7740: Add syspref HighlightOwnItemsOnOPAC)\n";
+    SetVersion ($DBversion);
+}
+
+$DBversion = "3.11.00.116";
+if ( CheckVersion($DBversion) ) {
+    $dbh->do(q{ALTER TABLE aqorders DROP COLUMN serialid;});
+    $dbh->do(q{ALTER TABLE aqorders DROP COLUMN subscription;});
+    $dbh->do(q{ALTER TABLE aqorders ADD COLUMN subscriptionid INT(11) DEFAULT NULL;});
+    $dbh->do(q{ALTER TABLE aqorders ADD CONSTRAINT aqorders_subscriptionid FOREIGN KEY (subscriptionid) REFERENCES subscription (subscriptionid) ON DELETE CASCADE ON UPDATE CASCADE;});
+    $dbh->do(q{ALTER TABLE subscription ADD COLUMN reneweddate DATE DEFAULT NULL;});
+    print "Upgrade to $DBversion done (Bug 5343: table aqorders: DROP serialid and subscription fields and ADD subscriptionid, table subscription: ADD reneweddate)\n";
+    SetVersion ($DBversion);
+}
+
+$DBversion = "3.11.00.200";
+if ( CheckVersion($DBversion) ) {
+    print "Upgrade to $DBversion done (3.12-beta1 release)\n";
+    SetVersion ($DBversion);
+}
+
+$DBversion = "3.11.00.201";
+if ( CheckVersion($DBversion) ) {
+    $dbh->do("UPDATE z3950servers SET encoding = 'ISO_8859-1' WHERE name = 'BIBSYS' AND host LIKE 'z3950.bibsys.no'");
+    $dbh->do("UPDATE z3950servers SET encoding = 'ISO_8859-1' WHERE name = 'NORBOK' AND host LIKE 'z3950.nb.no'");
+    $dbh->do("UPDATE z3950servers SET encoding = 'ISO_8859-1' WHERE name = 'SAMBOK' AND host LIKE 'z3950.nb.no'");
+    $dbh->do("UPDATE z3950servers SET encoding = 'ISO_8859-1' WHERE name = 'DEICHMAN' AND host like 'z3950.deich.folkebibl.no'");
+    print "Upgrade to $DBversion done (Bug 9498 - Update encoding for Norwegian sample Z39.50 servers)\n";
+    SetVersion($DBversion);
+}
+
+$DBversion = "3.11.00.202";
+if ( CheckVersion($DBversion) ) {
+   $dbh->do("INSERT INTO language_subtag_registry( subtag, type, description, added) VALUES ( 'ca', 'language', 'Catalan','2013-01-12' )");
+   $dbh->do("INSERT INTO language_rfc4646_to_iso639(rfc4646_subtag,iso639_2_code) VALUES( 'ca','cat')");
+   $dbh->do("INSERT INTO language_descriptions(subtag, type, lang, description) VALUES( 'ca', 'language', 'es', 'Catalán')");
+   $dbh->do("INSERT INTO language_descriptions(subtag, type, lang, description) VALUES( 'ca', 'language', 'en', 'Catalan')");
+   $dbh->do("INSERT INTO language_descriptions(subtag, type, lang, description) VALUES( 'ca', 'language', 'fr', 'Catalan')");
+   $dbh->do("INSERT INTO language_descriptions(subtag, type, lang, description) VALUES( 'ca', 'language', 'ca', 'Català')");
+   $dbh->do("INSERT INTO language_descriptions(subtag, type, lang, description) VALUES( 'ca', 'language', 'de', 'Katalanisch')");
+   print "Upgrade to $DBversion done (Bug 9381: Add Catalan laguage)\n";
+   SetVersion ($DBversion);
+}
 
 
 =head1 FUNCTIONS
diff --git a/koha-tmpl/intranet-tmpl/lib/jquery/plugins/jquery.validate.min.js b/koha-tmpl/intranet-tmpl/lib/jquery/plugins/jquery.validate.min.js
new file mode 100644 (file)
index 0000000..85afad5
--- /dev/null
@@ -0,0 +1,4 @@
+/*! jQuery Validation Plugin - v1.10.0 - 9/7/2012
+* https://github.com/jzaefferer/jquery-validation
+* Copyright (c) 2012 Jörn Zaefferer; Licensed MIT, GPL */
+(function(a){a.extend(a.fn,{validate:function(b){if(!this.length){b&&b.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing");return}var c=a.data(this[0],"validator");return c?c:(this.attr("novalidate","novalidate"),c=new a.validator(b,this[0]),a.data(this[0],"validator",c),c.settings.onsubmit&&(this.validateDelegate(":submit","click",function(b){c.settings.submitHandler&&(c.submitButton=b.target),a(b.target).hasClass("cancel")&&(c.cancelSubmit=!0)}),this.submit(function(b){function d(){var d;return c.settings.submitHandler?(c.submitButton&&(d=a("<input type='hidden'/>").attr("name",c.submitButton.name).val(c.submitButton.value).appendTo(c.currentForm)),c.settings.submitHandler.call(c,c.currentForm,b),c.submitButton&&d.remove(),!1):!0}return c.settings.debug&&b.preventDefault(),c.cancelSubmit?(c.cancelSubmit=!1,d()):c.form()?c.pendingRequest?(c.formSubmitted=!0,!1):d():(c.focusInvalid(),!1)})),c)},valid:function(){if(a(this[0]).is("form"))return this.validate().form();var b=!0,c=a(this[0].form).validate();return this.each(function(){b&=c.element(this)}),b},removeAttrs:function(b){var c={},d=this;return a.each(b.split(/\s/),function(a,b){c[b]=d.attr(b),d.removeAttr(b)}),c},rules:function(b,c){var d=this[0];if(b){var e=a.data(d.form,"validator").settings,f=e.rules,g=a.validator.staticRules(d);switch(b){case"add":a.extend(g,a.validator.normalizeRule(c)),f[d.name]=g,c.messages&&(e.messages[d.name]=a.extend(e.messages[d.name],c.messages));break;case"remove":if(!c)return delete f[d.name],g;var h={};return a.each(c.split(/\s/),function(a,b){h[b]=g[b],delete g[b]}),h}}var i=a.validator.normalizeRules(a.extend({},a.validator.metadataRules(d),a.validator.classRules(d),a.validator.attributeRules(d),a.validator.staticRules(d)),d);if(i.required){var j=i.required;delete i.required,i=a.extend({required:j},i)}return i}}),a.extend(a.expr[":"],{blank:function(b){return!a.trim(""+b.value)},filled:function(b){return!!a.trim(""+b.value)},unchecked:function(a){return!a.checked}}),a.validator=function(b,c){this.settings=a.extend(!0,{},a.validator.defaults,b),this.currentForm=c,this.init()},a.validator.format=function(b,c){return arguments.length===1?function(){var c=a.makeArray(arguments);return c.unshift(b),a.validator.format.apply(this,c)}:(arguments.length>2&&c.constructor!==Array&&(c=a.makeArray(arguments).slice(1)),c.constructor!==Array&&(c=[c]),a.each(c,function(a,c){b=b.replace(new RegExp("\\{"+a+"\\}","g"),c)}),b)},a.extend(a.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:!0,errorContainer:a([]),errorLabelContainer:a([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(a,b){this.lastActive=a,this.settings.focusCleanup&&!this.blockFocusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,a,this.settings.errorClass,this.settings.validClass),this.addWrapper(this.errorsFor(a)).hide())},onfocusout:function(a,b){!this.checkable(a)&&(a.name in this.submitted||!this.optional(a))&&this.element(a)},onkeyup:function(a,b){if(b.which===9&&this.elementValue(a)==="")return;(a.name in this.submitted||a===this.lastActive)&&this.element(a)},onclick:function(a,b){a.name in this.submitted?this.element(a):a.parentNode.name in this.submitted&&this.element(a.parentNode)},highlight:function(b,c,d){b.type==="radio"?this.findByName(b.name).addClass(c).removeClass(d):a(b).addClass(c).removeClass(d)},unhighlight:function(b,c,d){b.type==="radio"?this.findByName(b.name).removeClass(c).addClass(d):a(b).removeClass(c).addClass(d)}},setDefaults:function(b){a.extend(a.validator.defaults,b)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",maxlength:a.validator.format("Please enter no more than {0} characters."),minlength:a.validator.format("Please enter at least {0} characters."),rangelength:a.validator.format("Please enter a value between {0} and {1} characters long."),range:a.validator.format("Please enter a value between {0} and {1}."),max:a.validator.format("Please enter a value less than or equal to {0}."),min:a.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:!1,prototype:{init:function(){function d(b){var c=a.data(this[0].form,"validator"),d="on"+b.type.replace(/^validate/,"");c.settings[d]&&c.settings[d].call(c,this[0],b)}this.labelContainer=a(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||a(this.currentForm),this.containers=a(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var b=this.groups={};a.each(this.settings.groups,function(c,d){a.each(d.split(/\s/),function(a,d){b[d]=c})});var c=this.settings.rules;a.each(c,function(b,d){c[b]=a.validator.normalizeRule(d)}),a(this.currentForm).validateDelegate(":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'] ","focusin focusout keyup",d).validateDelegate("[type='radio'], [type='checkbox'], select, option","click",d),this.settings.invalidHandler&&a(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler)},form:function(){return this.checkForm(),a.extend(this.submitted,this.errorMap),this.invalid=a.extend({},this.errorMap),this.valid()||a(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var a=0,b=this.currentElements=this.elements();b[a];a++)this.check(b[a]);return this.valid()},element:function(b){b=this.validationTargetFor(this.clean(b)),this.lastElement=b,this.prepareElement(b),this.currentElements=a(b);var c=this.check(b)!==!1;return c?delete this.invalid[b.name]:this.invalid[b.name]=!0,this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),c},showErrors:function(b){if(b){a.extend(this.errorMap,b),this.errorList=[];for(var c in b)this.errorList.push({message:b[c],element:this.findByName(c)[0]});this.successList=a.grep(this.successList,function(a){return!(a.name in b)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){a.fn.resetForm&&a(this.currentForm).resetForm(),this.submitted={},this.lastElement=null,this.prepareForm(),this.hideErrors(),this.elements().removeClass(this.settings.errorClass).removeData("previousValue")},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(a){var b=0;for(var c in a)b++;return b},hideErrors:function(){this.addWrapper(this.toHide).hide()},valid:function(){return this.size()===0},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{a(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(b){}},findLastActive:function(){var b=this.lastActive;return b&&a.grep(this.errorList,function(a){return a.element.name===b.name}).length===1&&b},elements:function(){var b=this,c={};return a(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){return!this.name&&b.settings.debug&&window.console&&console.error("%o has no name assigned",this),this.name in c||!b.objectLength(a(this).rules())?!1:(c[this.name]=!0,!0)})},clean:function(b){return a(b)[0]},errors:function(){var b=this.settings.errorClass.replace(" ",".");return a(this.settings.errorElement+"."+b,this.errorContext)},reset:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=a([]),this.toHide=a([]),this.currentElements=a([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(a){this.reset(),this.toHide=this.errorsFor(a)},elementValue:function(b){var c=a(b).attr("type"),d=a(b).val();return c==="radio"||c==="checkbox"?a('input[name="'+a(b).attr("name")+'"]:checked').val():typeof d=="string"?d.replace(/\r/g,""):d},check:function(b){b=this.validationTargetFor(this.clean(b));var c=a(b).rules(),d=!1,e=this.elementValue(b),f;for(var g in c){var h={method:g,parameters:c[g]};try{f=a.validator.methods[g].call(this,e,b,h.parameters);if(f==="dependency-mismatch"){d=!0;continue}d=!1;if(f==="pending"){this.toHide=this.toHide.not(this.errorsFor(b));return}if(!f)return this.formatAndAdd(b,h),!1}catch(i){throw this.settings.debug&&window.console&&console.log("exception occured when checking element "+b.id+", check the '"+h.method+"' method",i),i}}if(d)return;return this.objectLength(c)&&this.successList.push(b),!0},customMetaMessage:function(b,c){if(!a.metadata)return;var d=this.settings.meta?a(b).metadata()[this.settings.meta]:a(b).metadata();return d&&d.messages&&d.messages[c]},customDataMessage:function(b,c){return a(b).data("msg-"+c.toLowerCase())||b.attributes&&a(b).attr("data-msg-"+c.toLowerCase())},customMessage:function(a,b){var c=this.settings.messages[a];return c&&(c.constructor===String?c:c[b])},findDefined:function(){for(var a=0;a<arguments.length;a++)if(arguments[a]!==undefined)return arguments[a];return undefined},defaultMessage:function(b,c){return this.findDefined(this.customMessage(b.name,c),this.customDataMessage(b,c),this.customMetaMessage(b,c),!this.settings.ignoreTitle&&b.title||undefined,a.validator.messages[c],"<strong>Warning: No message defined for "+b.name+"</strong>")},formatAndAdd:function(b,c){var d=this.defaultMessage(b,c.method),e=/\$?\{(\d+)\}/g;typeof d=="function"?d=d.call(this,c.parameters,b):e.test(d)&&(d=a.validator.format(d.replace(e,"{$1}"),c.parameters)),this.errorList.push({message:d,element:b}),this.errorMap[b.name]=d,this.submitted[b.name]=d},addWrapper:function(a){return this.settings.wrapper&&(a=a.add(a.parent(this.settings.wrapper))),a},defaultShowErrors:function(){var a,b;for(a=0;this.errorList[a];a++){var c=this.errorList[a];this.settings.highlight&&this.settings.highlight.call(this,c.element,this.settings.errorClass,this.settings.validClass),this.showLabel(c.element,c.message)}this.errorList.length&&(this.toShow=this.toShow.add(this.containers));if(this.settings.success)for(a=0;this.successList[a];a++)this.showLabel(this.successList[a]);if(this.settings.unhighlight)for(a=0,b=this.validElements();b[a];a++)this.settings.unhighlight.call(this,b[a],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return a(this.errorList).map(function(){return this.element})},showLabel:function(b,c){var d=this.errorsFor(b);d.length?(d.removeClass(this.settings.validClass).addClass(this.settings.errorClass),d.attr("generated")&&d.html(c)):(d=a("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(b),generated:!0}).addClass(this.settings.errorClass).html(c||""),this.settings.wrapper&&(d=d.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.append(d).length||(this.settings.errorPlacement?this.settings.errorPlacement(d,a(b)):d.insertAfter(b))),!c&&this.settings.success&&(d.text(""),typeof this.settings.success=="string"?d.addClass(this.settings.success):this.settings.success(d,b)),this.toShow=this.toShow.add(d)},errorsFor:function(b){var c=this.idOrName(b);return this.errors().filter(function(){return a(this).attr("for")===c})},idOrName:function(a){return this.groups[a.name]||(this.checkable(a)?a.name:a.id||a.name)},validationTargetFor:function(a){return this.checkable(a)&&(a=this.findByName(a.name).not(this.settings.ignore)[0]),a},checkable:function(a){return/radio|checkbox/i.test(a.type)},findByName:function(b){return a(this.currentForm).find('[name="'+b+'"]')},getLength:function(b,c){switch(c.nodeName.toLowerCase()){case"select":return a("option:selected",c).length;case"input":if(this.checkable(c))return this.findByName(c.name).filter(":checked").length}return b.length},depend:function(a,b){return this.dependTypes[typeof a]?this.dependTypes[typeof a](a,b):!0},dependTypes:{"boolean":function(a,b){return a},string:function(b,c){return!!a(b,c.form).length},"function":function(a,b){return a(b)}},optional:function(b){var c=this.elementValue(b);return!a.validator.methods.required.call(this,c,b)&&"dependency-mismatch"},startRequest:function(a){this.pending[a.name]||(this.pendingRequest++,this.pending[a.name]=!0)},stopRequest:function(b,c){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[b.name],c&&this.pendingRequest===0&&this.formSubmitted&&this.form()?(a(this.currentForm).submit(),this.formSubmitted=!1):!c&&this.pendingRequest===0&&this.formSubmitted&&(a(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(b){return a.data(b,"previousValue")||a.data(b,"previousValue",{old:null,valid:!0,message:this.defaultMessage(b,"remote")})}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(b,c){b.constructor===String?this.classRuleSettings[b]=c:a.extend(this.classRuleSettings,b)},classRules:function(b){var c={},d=a(b).attr("class");return d&&a.each(d.split(" "),function(){this in a.validator.classRuleSettings&&a.extend(c,a.validator.classRuleSettings[this])}),c},attributeRules:function(b){var c={},d=a(b);for(var e in a.validator.methods){var f;e==="required"?(f=d.get(0).getAttribute(e),f===""&&(f=!0),f=!!f):f=d.attr(e),f?c[e]=f:d[0].getAttribute("type")===e&&(c[e]=!0)}return c.maxlength&&/-1|2147483647|524288/.test(c.maxlength)&&delete c.maxlength,c},metadataRules:function(b){if(!a.metadata)return{};var c=a.data(b.form,"validator").settings.meta;return c?a(b).metadata()[c]:a(b).metadata()},staticRules:function(b){var c={},d=a.data(b.form,"validator");return d.settings.rules&&(c=a.validator.normalizeRule(d.settings.rules[b.name])||{}),c},normalizeRules:function(b,c){return a.each(b,function(d,e){if(e===!1){delete b[d];return}if(e.param||e.depends){var f=!0;switch(typeof e.depends){case"string":f=!!a(e.depends,c.form).length;break;case"function":f=e.depends.call(c,c)}f?b[d]=e.param!==undefined?e.param:!0:delete b[d]}}),a.each(b,function(d,e){b[d]=a.isFunction(e)?e(c):e}),a.each(["minlength","maxlength","min","max"],function(){b[this]&&(b[this]=Number(b[this]))}),a.each(["rangelength","range"],function(){b[this]&&(b[this]=[Number(b[this][0]),Number(b[this][1])])}),a.validator.autoCreateRanges&&(b.min&&b.max&&(b.range=[b.min,b.max],delete b.min,delete b.max),b.minlength&&b.maxlength&&(b.rangelength=[b.minlength,b.maxlength],delete b.minlength,delete b.maxlength)),b.messages&&delete b.messages,b},normalizeRule:function(b){if(typeof b=="string"){var c={};a.each(b.split(/\s/),function(){c[this]=!0}),b=c}return b},addMethod:function(b,c,d){a.validator.methods[b]=c,a.validator.messages[b]=d!==undefined?d:a.validator.messages[b],c.length<3&&a.validator.addClassRules(b,a.validator.normalizeRule(b))},methods:{required:function(b,c,d){if(!this.depend(d,c))return"dependency-mismatch";if(c.nodeName.toLowerCase()==="select"){var e=a(c).val();return e&&e.length>0}return this.checkable(c)?this.getLength(b,c)>0:a.trim(b).length>0},remote:function(b,c,d){if(this.optional(c))return"dependency-mismatch";var e=this.previousValue(c);this.settings.messages[c.name]||(this.settings.messages[c.name]={}),e.originalMessage=this.settings.messages[c.name].remote,this.settings.messages[c.name].remote=e.message,d=typeof d=="string"&&{url:d}||d;if(this.pending[c.name])return"pending";if(e.old===b)return e.valid;e.old=b;var f=this;this.startRequest(c);var g={};return g[c.name]=b,a.ajax(a.extend(!0,{url:d,mode:"abort",port:"validate"+c.name,dataType:"json",data:g,success:function(d){f.settings.messages[c.name].remote=e.originalMessage;var g=d===!0||d==="true";if(g){var h=f.formSubmitted;f.prepareElement(c),f.formSubmitted=h,f.successList.push(c),delete f.invalid[c.name],f.showErrors()}else{var i={},j=d||f.defaultMessage(c,"remote");i[c.name]=e.message=a.isFunction(j)?j(b):j,f.invalid[c.name]=!0,f.showErrors(i)}e.valid=g,f.stopRequest(c,g)}},d)),"pending"},minlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||e>=d},maxlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||e<=d},rangelength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||e>=d[0]&&e<=d[1]},min:function(a,b,c){return this.optional(b)||a>=c},max:function(a,b,c){return this.optional(b)||a<=c},range:function(a,b,c){return this.optional(b)||a>=c[0]&&a<=c[1]},email:function(a,b){return this.optional(b)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(a)},url:function(a,b){return this.optional(b)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(a)},date:function(a,b){return this.optional(b)||!/Invalid|NaN/.test(new Date(a))},dateISO:function(a,b){return this.optional(b)||/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/.test(a)},number:function(a,b){return this.optional(b)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(a)},digits:function(a,b){return this.optional(b)||/^\d+$/.test(a)},creditcard:function(a,b){if(this.optional(b))return"dependency-mismatch";if(/[^0-9 \-]+/.test(a))return!1;var c=0,d=0,e=!1;a=a.replace(/\D/g,"");for(var f=a.length-1;f>=0;f--){var g=a.charAt(f);d=parseInt(g,10),e&&(d*=2)>9&&(d-=9),c+=d,e=!e}return c%10===0},equalTo:function(b,c,d){var e=a(d);return this.settings.onfocusout&&e.unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){a(c).valid()}),b===e.val()}}}),a.format=a.validator.format})(jQuery),function(a){var b={};if(a.ajaxPrefilter)a.ajaxPrefilter(function(a,c,d){var e=a.port;a.mode==="abort"&&(b[e]&&b[e].abort(),b[e]=d)});else{var c=a.ajax;a.ajax=function(d){var e=("mode"in d?d:a.ajaxSettings).mode,f=("port"in d?d:a.ajaxSettings).port;return e==="abort"?(b[f]&&b[f].abort(),b[f]=c.apply(this,arguments)):c.apply(this,arguments)}}}(jQuery),function(a){!jQuery.event.special.focusin&&!jQuery.event.special.focusout&&document.addEventListener&&a.each({focus:"focusin",blur:"focusout"},function(b,c){function d(b){return b=a.event.fix(b),b.type=c,a.event.handle.call(this,b)}a.event.special[c]={setup:function(){this.addEventListener(b,d,!0)},teardown:function(){this.removeEventListener(b,d,!0)},handler:function(b){var d=arguments;return d[0]=a.event.fix(b),d[0].type=c,a.event.handle.apply(this,d)}}}),a.extend(a.fn,{validateDelegate:function(b,c,d){return this.bind(c,function(c){var e=a(c.target);if(e.is(b))return d.apply(e,arguments)})}})}(jQuery)
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/langs/en.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/langs/en.js
new file mode 100644 (file)
index 0000000..19324f7
--- /dev/null
@@ -0,0 +1 @@
+tinyMCE.addI18n({en:{common:{"more_colors":"More Colors...","invalid_data":"Error: Invalid values entered, these are marked in red.","popup_blocked":"Sorry, but we have noticed that your popup-blocker has disabled a window that provides application functionality. You will need to disable popup blocking on this site in order to fully utilize this tool.","clipboard_no_support":"Currently not supported by your browser, use keyboard shortcuts instead.","clipboard_msg":"Copy/Cut/Paste is not available in Mozilla and Firefox.\nDo you want more information about this issue?","not_set":"-- Not Set --","class_name":"Class",browse:"Browse",close:"Close",cancel:"Cancel",update:"Update",insert:"Insert",apply:"Apply","edit_confirm":"Do you want to use the WYSIWYG mode for this textarea?","invalid_data_number":"{#field} must be a number","invalid_data_min":"{#field} must be a number greater than {#min}","invalid_data_size":"{#field} must be a number or percentage",value:"(value)"},contextmenu:{full:"Full",right:"Right",center:"Center",left:"Left",align:"Alignment"},insertdatetime:{"day_short":"Sun,Mon,Tue,Wed,Thu,Fri,Sat,Sun","day_long":"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday","months_short":"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec","months_long":"January,February,March,April,May,June,July,August,September,October,November,December","inserttime_desc":"Insert Time","insertdate_desc":"Insert Date","time_fmt":"%H:%M:%S","date_fmt":"%Y-%m-%d"},print:{"print_desc":"Print"},preview:{"preview_desc":"Preview"},directionality:{"rtl_desc":"Direction Right to Left","ltr_desc":"Direction Left to Right"},layer:{content:"New layer...","absolute_desc":"Toggle Absolute Positioning","backward_desc":"Move Backward","forward_desc":"Move Forward","insertlayer_desc":"Insert New Layer"},save:{"save_desc":"Save","cancel_desc":"Cancel All Changes"},nonbreaking:{"nonbreaking_desc":"Insert Non-Breaking Space Character"},iespell:{download:"ieSpell not detected. Do you want to install it now?","iespell_desc":"Check Spelling"},advhr:{"delta_height":"","delta_width":"","advhr_desc":"Insert Horizontal Line"},emotions:{"delta_height":"","delta_width":"","emotions_desc":"Emotions"},searchreplace:{"replace_desc":"Find/Replace","delta_width":"","delta_height":"","search_desc":"Find"},advimage:{"delta_width":"","image_desc":"Insert/Edit Image","delta_height":""},advlink:{"delta_height":"","delta_width":"","link_desc":"Insert/Edit Link"},xhtmlxtras:{"attribs_delta_height":"","attribs_delta_width":"","ins_delta_height":"","ins_delta_width":"","del_delta_height":"","del_delta_width":"","acronym_delta_height":"","acronym_delta_width":"","abbr_delta_height":"","abbr_delta_width":"","cite_delta_height":"","cite_delta_width":"","attribs_desc":"Insert/Edit Attributes","ins_desc":"Insertion","del_desc":"Deletion","acronym_desc":"Acronym","abbr_desc":"Abbreviation","cite_desc":"Citation"},style:{"delta_height":"","delta_width":"",desc:"Edit CSS Style"},paste:{"plaintext_mode_stick":"Paste is now in plain text mode. Click again to toggle back to regular paste mode.","plaintext_mode":"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.","selectall_desc":"Select All","paste_word_desc":"Paste from Word","paste_text_desc":"Paste as Plain Text"},"paste_dlg":{"word_title":"Use Ctrl+V on your keyboard to paste the text into the window.","text_linebreaks":"Keep Linebreaks","text_title":"Use Ctrl+V on your keyboard to paste the text into the window."},table:{"merge_cells_delta_height":"","merge_cells_delta_width":"","table_delta_height":"","table_delta_width":"","cellprops_delta_height":"","cellprops_delta_width":"","rowprops_delta_height":"","rowprops_delta_width":"",cell:"Cell",col:"Column",row:"Row",del:"Delete Table","copy_row_desc":"Copy Table Row","cut_row_desc":"Cut Table Row","paste_row_after_desc":"Paste Table Row After","paste_row_before_desc":"Paste Table Row Before","props_desc":"Table Properties","cell_desc":"Table Cell Properties","row_desc":"Table Row Properties","merge_cells_desc":"Merge Table Cells","split_cells_desc":"Split Merged Table Cells","delete_col_desc":"Delete Column","col_after_desc":"Insert Column After","col_before_desc":"Insert Column Before","delete_row_desc":"Delete Row","row_after_desc":"Insert Row After","row_before_desc":"Insert Row Before",desc:"Insert/Edit Table"},autosave:{"warning_message":"If you restore the saved content, you will lose all the content that is currently in the editor.\n\nAre you sure you want to restore the saved content?","restore_content":"Restore auto-saved content.","unload_msg":"The changes you made will be lost if you navigate away from this page."},fullscreen:{desc:"Toggle Full Screen Mode"},media:{"delta_height":"","delta_width":"",edit:"Edit Embedded Media",desc:"Insert/Edit Embedded Media"},fullpage:{desc:"Document Properties","delta_width":"","delta_height":""},template:{desc:"Insert Predefined Template Content"},visualchars:{desc:"Show/Hide Visual Control Characters"},spellchecker:{desc:"Toggle Spell Checker",menu:"Spell Checker Settings","ignore_word":"Ignore Word","ignore_words":"Ignore All",langs:"Languages",wait:"Please wait...",sug:"Suggestions","no_sug":"No Suggestions","no_mpell":"No misspellings found.","learn_word":"Learn word"},pagebreak:{desc:"Insert Page Break for Printing"},advlist:{types:"Types",def:"Default","lower_alpha":"Lower Alpha","lower_greek":"Lower Greek","lower_roman":"Lower Roman","upper_alpha":"Upper Alpha","upper_roman":"Upper Roman",circle:"Circle",disc:"Disc",square:"Square"},colors:{"333300":"Dark olive","993300":"Burnt orange","000000":"Black","003300":"Dark green","003366":"Dark azure","000080":"Navy Blue","333399":"Indigo","333333":"Very dark gray","800000":"Maroon",FF6600:"Orange","808000":"Olive","008000":"Green","008080":"Teal","0000FF":"Blue","666699":"Grayish blue","808080":"Gray",FF0000:"Red",FF9900:"Amber","99CC00":"Yellow green","339966":"Sea green","33CCCC":"Turquoise","3366FF":"Royal blue","800080":"Purple","999999":"Medium gray",FF00FF:"Magenta",FFCC00:"Gold",FFFF00:"Yellow","00FF00":"Lime","00FFFF":"Aqua","00CCFF":"Sky blue","993366":"Brown",C0C0C0:"Silver",FF99CC:"Pink",FFCC99:"Peach",FFFF99:"Light yellow",CCFFCC:"Pale green",CCFFFF:"Pale cyan","99CCFF":"Light sky blue",CC99FF:"Plum",FFFFFF:"White"},aria:{"rich_text_area":"Rich Text Area"},wordcount:{words:"Words:"},visualblocks:{desc:'Show/hide block elements'}}});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/license.txt b/koha-tmpl/intranet-tmpl/lib/tiny_mce/license.txt
new file mode 100644 (file)
index 0000000..9c6a6cc
--- /dev/null
@@ -0,0 +1,502 @@
+                 GNU LESSER GENERAL PUBLIC LICENSE
+                      Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL.  It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+                           Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+  This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it.  You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+  When we speak of free software, we are referring to freedom of use,
+not price.  Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+  To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights.  These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+  For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you.  You must make sure that they, too, receive or can get the source
+code.  If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it.  And you must show them these terms so they know their rights.
+
+  We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+  To protect each distributor, we want to make it very clear that
+there is no warranty for the free library.  Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+  Finally, software patents pose a constant threat to the existence of
+any free program.  We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder.  Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+  Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License.  This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License.  We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+  When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library.  The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom.  The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+  We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License.  It also provides other free software developers Less
+of an advantage over competing non-free programs.  These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries.  However, the Lesser license provides advantages in certain
+special circumstances.
+
+  For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard.  To achieve this, non-free programs must be
+allowed to use the library.  A more frequent case is that a free
+library does the same job as widely used non-free libraries.  In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+  In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software.  For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+  Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.  Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library".  The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+                 GNU LESSER GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+  A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+  The "Library", below, refers to any such software library or work
+which has been distributed under these terms.  A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language.  (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+  "Source code" for a work means the preferred form of the work for
+making modifications to it.  For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+  Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it).  Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+  1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+  You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+  2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) The modified work must itself be a software library.
+
+    b) You must cause the files modified to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    c) You must cause the whole of the work to be licensed at no
+    charge to all third parties under the terms of this License.
+
+    d) If a facility in the modified Library refers to a function or a
+    table of data to be supplied by an application program that uses
+    the facility, other than as an argument passed when the facility
+    is invoked, then you must make a good faith effort to ensure that,
+    in the event an application does not supply such function or
+    table, the facility still operates, and performs whatever part of
+    its purpose remains meaningful.
+
+    (For example, a function in a library to compute square roots has
+    a purpose that is entirely well-defined independent of the
+    application.  Therefore, Subsection 2d requires that any
+    application-supplied function or table used by this function must
+    be optional: if the application does not supply it, the square
+    root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library.  To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License.  (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.)  Do not make any other change in
+these notices.
+
+  Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+  This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+  4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+  If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library".  Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+  However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library".  The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+  When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library.  The
+threshold for this to be true is not precisely defined by law.
+
+  If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work.  (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+  Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+  6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+  You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License.  You must supply a copy of this License.  If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License.  Also, you must do one
+of these things:
+
+    a) Accompany the work with the complete corresponding
+    machine-readable source code for the Library including whatever
+    changes were used in the work (which must be distributed under
+    Sections 1 and 2 above); and, if the work is an executable linked
+    with the Library, with the complete machine-readable "work that
+    uses the Library", as object code and/or source code, so that the
+    user can modify the Library and then relink to produce a modified
+    executable containing the modified Library.  (It is understood
+    that the user who changes the contents of definitions files in the
+    Library will not necessarily be able to recompile the application
+    to use the modified definitions.)
+
+    b) Use a suitable shared library mechanism for linking with the
+    Library.  A suitable mechanism is one that (1) uses at run time a
+    copy of the library already present on the user's computer system,
+    rather than copying library functions into the executable, and (2)
+    will operate properly with a modified version of the library, if
+    the user installs one, as long as the modified version is
+    interface-compatible with the version that the work was made with.
+
+    c) Accompany the work with a written offer, valid for at
+    least three years, to give the same user the materials
+    specified in Subsection 6a, above, for a charge no more
+    than the cost of performing this distribution.
+
+    d) If distribution of the work is made by offering access to copy
+    from a designated place, offer equivalent access to copy the above
+    specified materials from the same place.
+
+    e) Verify that the user has already received a copy of these
+    materials or that you have already sent this user a copy.
+
+  For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it.  However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+  It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system.  Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+  7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+    a) Accompany the combined library with a copy of the same work
+    based on the Library, uncombined with any other library
+    facilities.  This must be distributed under the terms of the
+    Sections above.
+
+    b) Give prominent notice with the combined library of the fact
+    that part of it is a work based on the Library, and explaining
+    where to find the accompanying uncombined form of the same work.
+
+  8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License.  Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License.  However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+  9. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Library or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+  10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+  11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded.  In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+  13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation.  If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+  14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission.  For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this.  Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+                           NO WARRANTY
+
+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+                    END OF TERMS AND CONDITIONS
+
+           How to Apply These Terms to Your New Libraries
+
+  If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change.  You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+  To apply these terms, attach the following notices to the library.  It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the library's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This library is free software; you can redistribute it and/or
+    modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+    version 2.1 of the License, or (at your option) any later version.
+
+    This library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+    Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public
+    License along with this library; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the
+  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+  <signature of Ty Coon>, 1 April 1990
+  Ty Coon, President of Vice
+
+That's all there is to it!
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/css/advhr.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/css/advhr.css
new file mode 100644 (file)
index 0000000..3fe369c
--- /dev/null
@@ -0,0 +1,5 @@
+input.radio {border:1px none #000; background:transparent; vertical-align:middle;}
+.panel_wrapper div.current {height:80px;}
+#width {width:50px; vertical-align:middle;}
+#width2 {width:50px; vertical-align:middle;}
+#size {width:100px;}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/editor_plugin.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/editor_plugin.js
new file mode 100644 (file)
index 0000000..4d3b062
--- /dev/null
@@ -0,0 +1 @@
+(function(){tinymce.create("tinymce.plugins.AdvancedHRPlugin",{init:function(a,b){a.addCommand("mceAdvancedHr",function(){a.windowManager.open({file:b+"/rule.htm",width:250+parseInt(a.getLang("advhr.delta_width",0)),height:160+parseInt(a.getLang("advhr.delta_height",0)),inline:1},{plugin_url:b})});a.addButton("advhr",{title:"advhr.advhr_desc",cmd:"mceAdvancedHr"});a.onNodeChange.add(function(d,c,e){c.setActive("advhr",e.nodeName=="HR")});a.onClick.add(function(c,d){d=d.target;if(d.nodeName==="HR"){c.selection.select(d)}})},getInfo:function(){return{longname:"Advanced HR",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advhr",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advhr",tinymce.plugins.AdvancedHRPlugin)})();
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/js/rule.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/js/rule.js
new file mode 100644 (file)
index 0000000..a60c35f
--- /dev/null
@@ -0,0 +1,43 @@
+var AdvHRDialog = {
+       init : function(ed) {
+               var dom = ed.dom, f = document.forms[0], n = ed.selection.getNode(), w;
+
+               w = dom.getAttrib(n, 'width');
+               f.width.value = w ? parseInt(w) : (dom.getStyle('width') || '');
+               f.size.value = dom.getAttrib(n, 'size') || parseInt(dom.getStyle('height')) || '';
+               f.noshade.checked = !!dom.getAttrib(n, 'noshade') || !!dom.getStyle('border-width');
+               selectByValue(f, 'width2', w.indexOf('%') != -1 ? '%' : 'px');
+       },
+
+       update : function() {
+               var ed = tinyMCEPopup.editor, h, f = document.forms[0], st = '';
+
+               h = '<hr';
+
+               if (f.size.value) {
+                       h += ' size="' + f.size.value + '"';
+                       st += ' height:' + f.size.value + 'px;';
+               }
+
+               if (f.width.value) {
+                       h += ' width="' + f.width.value + (f.width2.value == '%' ? '%' : '') + '"';
+                       st += ' width:' + f.width.value + (f.width2.value == '%' ? '%' : 'px') + ';';
+               }
+
+               if (f.noshade.checked) {
+                       h += ' noshade="noshade"';
+                       st += ' border-width: 1px; border-style: solid; border-color: #CCCCCC; color: #ffffff;';
+               }
+
+               if (ed.settings.inline_styles)
+                       h += ' style="' + tinymce.trim(st) + '"';
+
+               h += ' />';
+
+               ed.execCommand("mceInsertContent", false, h);
+               tinyMCEPopup.close();
+       }
+};
+
+tinyMCEPopup.requireLangPack();
+tinyMCEPopup.onInit.add(AdvHRDialog.init, AdvHRDialog);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/langs/en_dlg.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/langs/en_dlg.js
new file mode 100644 (file)
index 0000000..0c3bf15
--- /dev/null
@@ -0,0 +1 @@
+tinyMCE.addI18n('en.advhr_dlg',{size:"Height",noshade:"No Shadow",width:"Width",normal:"Normal",widthunits:"Units"});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/rule.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advhr/rule.htm
new file mode 100644 (file)
index 0000000..11d3651
--- /dev/null
@@ -0,0 +1,58 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#advhr.advhr_desc}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="js/rule.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js"></script>
+       <link href="css/advhr.css" rel="stylesheet" type="text/css" />
+</head>
+<body role="application">
+<form onsubmit="AdvHRDialog.update();return false;" action="#">
+       <div class="tabs">
+               <ul>
+                       <li id="general_tab" class="current" aria-controls="general_panel"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#advhr.advhr_desc}</a></span></li>
+               </ul>
+       </div>
+
+       <div class="panel_wrapper">
+               <div id="general_panel" class="panel current">
+                       <table role="presentation" border="0" cellpadding="4" cellspacing="0">
+                                       <tr role="group" aria-labelledby="width_label">
+                                               <td><label id="width_label" for="width">{#advhr_dlg.width}</label></td>
+                                               <td class="nowrap">
+                                                       <input id="width" name="width" type="text" value="" class="mceFocus" />
+                                                       <span style="display:none;" id="width_unit_label">{#advhr_dlg.widthunits}</span>
+                                                       <select name="width2" id="width2" aria-labelledby="width_unit_label">
+                                                               <option value="">px</option>
+                                                               <option value="%">%</option>
+                                                       </select>
+                                               </td>
+                                       </tr>
+                                       <tr>
+                                               <td><label for="size">{#advhr_dlg.size}</label></td>
+                                               <td><select id="size" name="size">
+                                                       <option value="">{#advhr_dlg.normal}</option>
+                                                       <option value="1">1</option>
+                                                       <option value="2">2</option>
+                                                       <option value="3">3</option>
+                                                       <option value="4">4</option>
+                                                       <option value="5">5</option>
+                                               </select></td>
+                                       </tr>
+                                       <tr>
+                                               <td><label for="noshade">{#advhr_dlg.noshade}</label></td>
+                                               <td><input type="checkbox" name="noshade" id="noshade" class="radio" /></td>
+                                       </tr>
+                       </table>
+               </div>
+       </div>
+
+       <div class="mceActionPanel">
+               <input type="submit" id="insert" name="insert" value="{#insert}" />
+               <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
+       </div>
+</form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/css/advlink.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/css/advlink.css
new file mode 100644 (file)
index 0000000..66c6549
--- /dev/null
@@ -0,0 +1,8 @@
+.mceLinkList, .mceAnchorList, #targetlist {width:280px;}
+.mceActionPanel {margin-top:7px;}
+.panel_wrapper div.current {height:320px;}
+#classlist, #title, #href {width:280px;}
+#popupurl, #popupname {width:200px;}
+#popupwidth, #popupheight, #popupleft, #popuptop {width:30px;vertical-align:middle;text-align:center;}
+#id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {width:200px;}
+#events_panel input {width:200px;}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/editor_plugin.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/editor_plugin.js
new file mode 100644 (file)
index 0000000..983fe5a
--- /dev/null
@@ -0,0 +1 @@
+(function(){tinymce.create("tinymce.plugins.AdvancedLinkPlugin",{init:function(a,b){this.editor=a;a.addCommand("mceAdvLink",function(){var c=a.selection;if(c.isCollapsed()&&!a.dom.getParent(c.getNode(),"A")){return}a.windowManager.open({file:b+"/link.htm",width:480+parseInt(a.getLang("advlink.delta_width",0)),height:400+parseInt(a.getLang("advlink.delta_height",0)),inline:1},{plugin_url:b})});a.addButton("link",{title:"advlink.link_desc",cmd:"mceAdvLink"});a.addShortcut("ctrl+k","advlink.advlink_desc","mceAdvLink");a.onNodeChange.add(function(d,c,f,e){c.setDisabled("link",e&&f.nodeName!="A");c.setActive("link",f.nodeName=="A"&&!f.name)})},getInfo:function(){return{longname:"Advanced link",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advlink",tinymce.plugins.AdvancedLinkPlugin)})();
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/js/advlink.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/js/advlink.js
new file mode 100644 (file)
index 0000000..5bf8070
--- /dev/null
@@ -0,0 +1,543 @@
+/* Functions for the advlink plugin popup */
+
+tinyMCEPopup.requireLangPack();
+
+var templates = {
+       "window.open" : "window.open('${url}','${target}','${options}')"
+};
+
+function preinit() {
+       var url;
+
+       if (url = tinyMCEPopup.getParam("external_link_list_url"))
+               document.write('<script language="javascript" type="text/javascript" src="' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '"></script>');
+}
+
+function changeClass() {
+       var f = document.forms[0];
+
+       f.classes.value = getSelectValue(f, 'classlist');
+}
+
+function init() {
+       tinyMCEPopup.resizeToInnerSize();
+
+       var formObj = document.forms[0];
+       var inst = tinyMCEPopup.editor;
+       var elm = inst.selection.getNode();
+       var action = "insert";
+       var html;
+
+       document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','advlink');
+       document.getElementById('popupurlbrowsercontainer').innerHTML = getBrowserHTML('popupurlbrowser','popupurl','file','advlink');
+       document.getElementById('targetlistcontainer').innerHTML = getTargetListHTML('targetlist','target');
+
+       // Link list
+       html = getLinkListHTML('linklisthref','href');
+       if (html == "")
+               document.getElementById("linklisthrefrow").style.display = 'none';
+       else
+               document.getElementById("linklisthrefcontainer").innerHTML = html;
+
+       // Anchor list
+       html = getAnchorListHTML('anchorlist','href');
+       if (html == "")
+               document.getElementById("anchorlistrow").style.display = 'none';
+       else
+               document.getElementById("anchorlistcontainer").innerHTML = html;
+
+       // Resize some elements
+       if (isVisible('hrefbrowser'))
+               document.getElementById('href').style.width = '260px';
+
+       if (isVisible('popupurlbrowser'))
+               document.getElementById('popupurl').style.width = '180px';
+
+       elm = inst.dom.getParent(elm, "A");
+       if (elm == null) {
+               var prospect = inst.dom.create("p", null, inst.selection.getContent());
+               if (prospect.childNodes.length === 1) {
+                       elm = prospect.firstChild;
+               }
+       }
+
+       if (elm != null && elm.nodeName == "A")
+               action = "update";
+
+       formObj.insert.value = tinyMCEPopup.getLang(action, 'Insert', true);
+
+       setPopupControlsDisabled(true);
+
+       if (action == "update") {
+               var href = inst.dom.getAttrib(elm, 'href');
+               var onclick = inst.dom.getAttrib(elm, 'onclick');
+               var linkTarget = inst.dom.getAttrib(elm, 'target') ? inst.dom.getAttrib(elm, 'target') : "_self";
+
+               // Setup form data
+               setFormValue('href', href);
+               setFormValue('title', inst.dom.getAttrib(elm, 'title'));
+               setFormValue('id', inst.dom.getAttrib(elm, 'id'));
+               setFormValue('style', inst.dom.getAttrib(elm, "style"));
+               setFormValue('rel', inst.dom.getAttrib(elm, 'rel'));
+               setFormValue('rev', inst.dom.getAttrib(elm, 'rev'));
+               setFormValue('charset', inst.dom.getAttrib(elm, 'charset'));
+               setFormValue('hreflang', inst.dom.getAttrib(elm, 'hreflang'));
+               setFormValue('dir', inst.dom.getAttrib(elm, 'dir'));
+               setFormValue('lang', inst.dom.getAttrib(elm, 'lang'));
+               setFormValue('tabindex', inst.dom.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != "undefined" ? elm.tabindex : ""));
+               setFormValue('accesskey', inst.dom.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != "undefined" ? elm.accesskey : ""));
+               setFormValue('type', inst.dom.getAttrib(elm, 'type'));
+               setFormValue('onfocus', inst.dom.getAttrib(elm, 'onfocus'));
+               setFormValue('onblur', inst.dom.getAttrib(elm, 'onblur'));
+               setFormValue('onclick', onclick);
+               setFormValue('ondblclick', inst.dom.getAttrib(elm, 'ondblclick'));
+               setFormValue('onmousedown', inst.dom.getAttrib(elm, 'onmousedown'));
+               setFormValue('onmouseup', inst.dom.getAttrib(elm, 'onmouseup'));
+               setFormValue('onmouseover', inst.dom.getAttrib(elm, 'onmouseover'));
+               setFormValue('onmousemove', inst.dom.getAttrib(elm, 'onmousemove'));
+               setFormValue('onmouseout', inst.dom.getAttrib(elm, 'onmouseout'));
+               setFormValue('onkeypress', inst.dom.getAttrib(elm, 'onkeypress'));
+               setFormValue('onkeydown', inst.dom.getAttrib(elm, 'onkeydown'));
+               setFormValue('onkeyup', inst.dom.getAttrib(elm, 'onkeyup'));
+               setFormValue('target', linkTarget);
+               setFormValue('classes', inst.dom.getAttrib(elm, 'class'));
+
+               // Parse onclick data
+               if (onclick != null && onclick.indexOf('window.open') != -1)
+                       parseWindowOpen(onclick);
+               else
+                       parseFunction(onclick);
+
+               // Select by the values
+               selectByValue(formObj, 'dir', inst.dom.getAttrib(elm, 'dir'));
+               selectByValue(formObj, 'rel', inst.dom.getAttrib(elm, 'rel'));
+               selectByValue(formObj, 'rev', inst.dom.getAttrib(elm, 'rev'));
+               selectByValue(formObj, 'linklisthref', href);
+
+               if (href.charAt(0) == '#')
+                       selectByValue(formObj, 'anchorlist', href);
+
+               addClassesToList('classlist', 'advlink_styles');
+
+               selectByValue(formObj, 'classlist', inst.dom.getAttrib(elm, 'class'), true);
+               selectByValue(formObj, 'targetlist', linkTarget, true);
+       } else
+               addClassesToList('classlist', 'advlink_styles');
+}
+
+function checkPrefix(n) {
+       if (n.value && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_email')))
+               n.value = 'mailto:' + n.value;
+
+       if (/^\s*www\./i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_external')))
+               n.value = 'http://' + n.value;
+}
+
+function setFormValue(name, value) {
+       document.forms[0].elements[name].value = value;
+}
+
+function parseWindowOpen(onclick) {
+       var formObj = document.forms[0];
+
+       // Preprocess center code
+       if (onclick.indexOf('return false;') != -1) {
+               formObj.popupreturn.checked = true;
+               onclick = onclick.replace('return false;', '');
+       } else
+               formObj.popupreturn.checked = false;
+
+       var onClickData = parseLink(onclick);
+
+       if (onClickData != null) {
+               formObj.ispopup.checked = true;
+               setPopupControlsDisabled(false);
+
+               var onClickWindowOptions = parseOptions(onClickData['options']);
+               var url = onClickData['url'];
+
+               formObj.popupname.value = onClickData['target'];
+               formObj.popupurl.value = url;
+               formObj.popupwidth.value = getOption(onClickWindowOptions, 'width');
+               formObj.popupheight.value = getOption(onClickWindowOptions, 'height');
+
+               formObj.popupleft.value = getOption(onClickWindowOptions, 'left');
+               formObj.popuptop.value = getOption(onClickWindowOptions, 'top');
+
+               if (formObj.popupleft.value.indexOf('screen') != -1)
+                       formObj.popupleft.value = "c";
+
+               if (formObj.popuptop.value.indexOf('screen') != -1)
+                       formObj.popuptop.value = "c";
+
+               formObj.popuplocation.checked = getOption(onClickWindowOptions, 'location') == "yes";
+               formObj.popupscrollbars.checked = getOption(onClickWindowOptions, 'scrollbars') == "yes";
+               formObj.popupmenubar.checked = getOption(onClickWindowOptions, 'menubar') == "yes";
+               formObj.popupresizable.checked = getOption(onClickWindowOptions, 'resizable') == "yes";
+               formObj.popuptoolbar.checked = getOption(onClickWindowOptions, 'toolbar') == "yes";
+               formObj.popupstatus.checked = getOption(onClickWindowOptions, 'status') == "yes";
+               formObj.popupdependent.checked = getOption(onClickWindowOptions, 'dependent') == "yes";
+
+               buildOnClick();
+       }
+}
+
+function parseFunction(onclick) {
+       var formObj = document.forms[0];
+       var onClickData = parseLink(onclick);
+
+       // TODO: Add stuff here
+}
+
+function getOption(opts, name) {
+       return typeof(opts[name]) == "undefined" ? "" : opts[name];
+}
+
+function setPopupControlsDisabled(state) {
+       var formObj = document.forms[0];
+
+       formObj.popupname.disabled = state;
+       formObj.popupurl.disabled = state;
+       formObj.popupwidth.disabled = state;
+       formObj.popupheight.disabled = state;
+       formObj.popupleft.disabled = state;
+       formObj.popuptop.disabled = state;
+       formObj.popuplocation.disabled = state;
+       formObj.popupscrollbars.disabled = state;
+       formObj.popupmenubar.disabled = state;
+       formObj.popupresizable.disabled = state;
+       formObj.popuptoolbar.disabled = state;
+       formObj.popupstatus.disabled = state;
+       formObj.popupreturn.disabled = state;
+       formObj.popupdependent.disabled = state;
+
+       setBrowserDisabled('popupurlbrowser', state);
+}
+
+function parseLink(link) {
+       link = link.replace(new RegExp('&#39;', 'g'), "'");
+
+       var fnName = link.replace(new RegExp("\\s*([A-Za-z0-9\.]*)\\s*\\(.*", "gi"), "$1");
+
+       // Is function name a template function
+       var template = templates[fnName];
+       if (template) {
+               // Build regexp
+               var variableNames = template.match(new RegExp("'?\\$\\{[A-Za-z0-9\.]*\\}'?", "gi"));
+               var regExp = "\\s*[A-Za-z0-9\.]*\\s*\\(";
+               var replaceStr = "";
+               for (var i=0; i<variableNames.length; i++) {
+                       // Is string value
+                       if (variableNames[i].indexOf("'${") != -1)
+                               regExp += "'(.*)'";
+                       else // Number value
+                               regExp += "([0-9]*)";
+
+                       replaceStr += "$" + (i+1);
+
+                       // Cleanup variable name
+                       variableNames[i] = variableNames[i].replace(new RegExp("[^A-Za-z0-9]", "gi"), "");
+
+                       if (i != variableNames.length-1) {
+                               regExp += "\\s*,\\s*";
+                               replaceStr += "<delim>";
+                       } else
+                               regExp += ".*";
+               }
+
+               regExp += "\\);?";
+
+               // Build variable array
+               var variables = [];
+               variables["_function"] = fnName;
+               var variableValues = link.replace(new RegExp(regExp, "gi"), replaceStr).split('<delim>');
+               for (var i=0; i<variableNames.length; i++)
+                       variables[variableNames[i]] = variableValues[i];
+
+               return variables;
+       }
+
+       return null;
+}
+
+function parseOptions(opts) {
+       if (opts == null || opts == "")
+               return [];
+
+       // Cleanup the options
+       opts = opts.toLowerCase();
+       opts = opts.replace(/;/g, ",");
+       opts = opts.replace(/[^0-9a-z=,]/g, "");
+
+       var optionChunks = opts.split(',');
+       var options = [];
+
+       for (var i=0; i<optionChunks.length; i++) {
+               var parts = optionChunks[i].split('=');
+
+               if (parts.length == 2)
+                       options[parts[0]] = parts[1];
+       }
+
+       return options;
+}
+
+function buildOnClick() {
+       var formObj = document.forms[0];
+
+       if (!formObj.ispopup.checked) {
+               formObj.onclick.value = "";
+               return;
+       }
+
+       var onclick = "window.open('";
+       var url = formObj.popupurl.value;
+
+       onclick += url + "','";
+       onclick += formObj.popupname.value + "','";
+
+       if (formObj.popuplocation.checked)
+               onclick += "location=yes,";
+
+       if (formObj.popupscrollbars.checked)
+               onclick += "scrollbars=yes,";
+
+       if (formObj.popupmenubar.checked)
+               onclick += "menubar=yes,";
+
+       if (formObj.popupresizable.checked)
+               onclick += "resizable=yes,";
+
+       if (formObj.popuptoolbar.checked)
+               onclick += "toolbar=yes,";
+
+       if (formObj.popupstatus.checked)
+               onclick += "status=yes,";
+
+       if (formObj.popupdependent.checked)
+               onclick += "dependent=yes,";
+
+       if (formObj.popupwidth.value != "")
+               onclick += "width=" + formObj.popupwidth.value + ",";
+
+       if (formObj.popupheight.value != "")
+               onclick += "height=" + formObj.popupheight.value + ",";
+
+       if (formObj.popupleft.value != "") {
+               if (formObj.popupleft.value != "c")
+                       onclick += "left=" + formObj.popupleft.value + ",";
+               else
+                       onclick += "left='+(screen.availWidth/2-" + (formObj.popupwidth.value/2) + ")+',";
+       }
+
+       if (formObj.popuptop.value != "") {
+               if (formObj.popuptop.value != "c")
+                       onclick += "top=" + formObj.popuptop.value + ",";
+               else
+                       onclick += "top='+(screen.availHeight/2-" + (formObj.popupheight.value/2) + ")+',";
+       }
+
+       if (onclick.charAt(onclick.length-1) == ',')
+               onclick = onclick.substring(0, onclick.length-1);
+
+       onclick += "');";
+
+       if (formObj.popupreturn.checked)
+               onclick += "return false;";
+
+       // tinyMCE.debug(onclick);
+
+       formObj.onclick.value = onclick;
+
+       if (formObj.href.value == "")
+               formObj.href.value = url;
+}
+
+function setAttrib(elm, attrib, value) {
+       var formObj = document.forms[0];
+       var valueElm = formObj.elements[attrib.toLowerCase()];
+       var dom = tinyMCEPopup.editor.dom;
+
+       if (typeof(value) == "undefined" || value == null) {
+               value = "";
+
+               if (valueElm)
+                       value = valueElm.value;
+       }
+
+       // Clean up the style
+       if (attrib == 'style')
+               value = dom.serializeStyle(dom.parseStyle(value), 'a');
+
+       dom.setAttrib(elm, attrib, value);
+}
+
+function getAnchorListHTML(id, target) {
+       var ed = tinyMCEPopup.editor, nodes = ed.dom.select('a'), name, i, len, html = "";
+
+       for (i=0, len=nodes.length; i<len; i++) {
+               if ((name = ed.dom.getAttrib(nodes[i], "name")) != "")
+                       html += '<option value="#' + name + '">' + name + '</option>';
+
+               if ((name = nodes[i].id) != "" && !nodes[i].href)
+                       html += '<option value="#' + name + '">' + name + '</option>';
+       }
+
+       if (html == "")
+               return "";
+
+       html = '<select id="' + id + '" name="' + id + '" class="mceAnchorList"'
+               + ' onchange="this.form.' + target + '.value=this.options[this.selectedIndex].value"'
+               + '>'
+               + '<option value="">---</option>'
+               + html
+               + '</select>';
+
+       return html;
+}
+
+function insertAction() {
+       var inst = tinyMCEPopup.editor;
+       var elm, elementArray, i;
+
+       elm = inst.selection.getNode();
+       checkPrefix(document.forms[0].href);
+
+       elm = inst.dom.getParent(elm, "A");
+
+       // Remove element if there is no href
+       if (!document.forms[0].href.value) {
+               i = inst.selection.getBookmark();
+               inst.dom.remove(elm, 1);
+               inst.selection.moveToBookmark(i);
+               tinyMCEPopup.execCommand("mceEndUndoLevel");
+               tinyMCEPopup.close();
+               return;
+       }
+
+       // Create new anchor elements
+       if (elm == null) {
+               inst.getDoc().execCommand("unlink", false, null);
+               tinyMCEPopup.execCommand("mceInsertLink", false, "#mce_temp_url#", {skip_undo : 1});
+
+               elementArray = tinymce.grep(inst.dom.select("a"), function(n) {return inst.dom.getAttrib(n, 'href') == '#mce_temp_url#';});
+               for (i=0; i<elementArray.length; i++)
+                       setAllAttribs(elm = elementArray[i]);
+       } else
+               setAllAttribs(elm);
+
+       // Don't move caret if selection was image
+       if (elm.childNodes.length != 1 || elm.firstChild.nodeName != 'IMG') {
+               inst.focus();
+               inst.selection.select(elm);
+               inst.selection.collapse(0);
+               tinyMCEPopup.storeSelection();
+       }
+
+       tinyMCEPopup.execCommand("mceEndUndoLevel");
+       tinyMCEPopup.close();
+}
+
+function setAllAttribs(elm) {
+       var formObj = document.forms[0];
+       var href = formObj.href.value.replace(/ /g, '%20');
+       var target = getSelectValue(formObj, 'targetlist');
+
+       setAttrib(elm, 'href', href);
+       setAttrib(elm, 'title');
+       setAttrib(elm, 'target', target == '_self' ? '' : target);
+       setAttrib(elm, 'id');
+       setAttrib(elm, 'style');
+       setAttrib(elm, 'class', getSelectValue(formObj, 'classlist'));
+       setAttrib(elm, 'rel');
+       setAttrib(elm, 'rev');
+       setAttrib(elm, 'charset');
+       setAttrib(elm, 'hreflang');
+       setAttrib(elm, 'dir');
+       setAttrib(elm, 'lang');
+       setAttrib(elm, 'tabindex');
+       setAttrib(elm, 'accesskey');
+       setAttrib(elm, 'type');
+       setAttrib(elm, 'onfocus');
+       setAttrib(elm, 'onblur');
+       setAttrib(elm, 'onclick');
+       setAttrib(elm, 'ondblclick');
+       setAttrib(elm, 'onmousedown');
+       setAttrib(elm, 'onmouseup');
+       setAttrib(elm, 'onmouseover');
+       setAttrib(elm, 'onmousemove');
+       setAttrib(elm, 'onmouseout');
+       setAttrib(elm, 'onkeypress');
+       setAttrib(elm, 'onkeydown');
+       setAttrib(elm, 'onkeyup');
+
+       // Refresh in old MSIE
+       if (tinyMCE.isMSIE5)
+               elm.outerHTML = elm.outerHTML;
+}
+
+function getSelectValue(form_obj, field_name) {
+       var elm = form_obj.elements[field_name];
+
+       if (!elm || elm.options == null || elm.selectedIndex == -1)
+               return "";
+
+       return elm.options[elm.selectedIndex].value;
+}
+
+function getLinkListHTML(elm_id, target_form_element, onchange_func) {
+       if (typeof(tinyMCELinkList) == "undefined" || tinyMCELinkList.length == 0)
+               return "";
+
+       var html = "";
+
+       html += '<select id="' + elm_id + '" name="' + elm_id + '"';
+       html += ' class="mceLinkList" onchange="this.form.' + target_form_element + '.value=';
+       html += 'this.options[this.selectedIndex].value;';
+
+       if (typeof(onchange_func) != "undefined")
+               html += onchange_func + '(\'' + target_form_element + '\',this.options[this.selectedIndex].text,this.options[this.selectedIndex].value);';
+
+       html += '"><option value="">---</option>';
+
+       for (var i=0; i<tinyMCELinkList.length; i++)
+               html += '<option value="' + tinyMCELinkList[i][1] + '">' + tinyMCELinkList[i][0] + '</option>';
+
+       html += '</select>';
+
+       return html;
+
+       // tinyMCE.debug('-- image list start --', html, '-- image list end --');
+}
+
+function getTargetListHTML(elm_id, target_form_element) {
+       var targets = tinyMCEPopup.getParam('theme_advanced_link_targets', '').split(';');
+       var html = '';
+
+       html += '<select id="' + elm_id + '" name="' + elm_id + '" onchange="this.form.' + target_form_element + '.value=';
+       html += 'this.options[this.selectedIndex].value;">';
+       html += '<option value="_self">' + tinyMCEPopup.getLang('advlink_dlg.target_same') + '</option>';
+       html += '<option value="_blank">' + tinyMCEPopup.getLang('advlink_dlg.target_blank') + ' (_blank)</option>';
+       html += '<option value="_parent">' + tinyMCEPopup.getLang('advlink_dlg.target_parent') + ' (_parent)</option>';
+       html += '<option value="_top">' + tinyMCEPopup.getLang('advlink_dlg.target_top') + ' (_top)</option>';
+
+       for (var i=0; i<targets.length; i++) {
+               var key, value;
+
+               if (targets[i] == "")
+                       continue;
+
+               key = targets[i].split('=')[0];
+               value = targets[i].split('=')[1];
+
+               html += '<option value="' + key + '">' + value + ' (' + key + ')</option>';
+       }
+
+       html += '</select>';
+
+       return html;
+}
+
+// While loading
+preinit();
+tinyMCEPopup.onInit.add(init);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/langs/en_dlg.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/langs/en_dlg.js
new file mode 100644 (file)
index 0000000..3169a56
--- /dev/null
@@ -0,0 +1 @@
+tinyMCE.addI18n('en.advlink_dlg',{"target_name":"Target Name",classes:"Classes",style:"Style",id:"ID","popup_position":"Position (X/Y)",langdir:"Language Direction","popup_size":"Size","popup_dependent":"Dependent (Mozilla/Firefox Only)","popup_resizable":"Make Window Resizable","popup_location":"Show Location Bar","popup_menubar":"Show Menu Bar","popup_toolbar":"Show Toolbars","popup_statusbar":"Show Status Bar","popup_scrollbars":"Show Scrollbars","popup_return":"Insert \'return false\'","popup_name":"Window Name","popup_url":"Popup URL",popup:"JavaScript Popup","target_blank":"Open in New Window","target_top":"Open in Top Frame (Replaces All Frames)","target_parent":"Open in Parent Window/Frame","target_same":"Open in This Window/Frame","anchor_names":"Anchors","popup_opts":"Options","advanced_props":"Advanced Properties","event_props":"Events","popup_props":"Popup Properties","general_props":"General Properties","advanced_tab":"Advanced","events_tab":"Events","popup_tab":"Popup","general_tab":"General",list:"Link List","is_external":"The URL you entered seems to be an external link. Do you want to add the required http:// prefix?","is_email":"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",titlefield:"Title",target:"Target",url:"Link URL",title:"Insert/Edit Link","link_list":"Link List",rtl:"Right to Left",ltr:"Left to Right",accesskey:"AccessKey",tabindex:"TabIndex",rev:"Relationship Target to Page",rel:"Relationship Page to Target",mime:"Target MIME Type",encoding:"Target Character Encoding",langcode:"Language Code","target_langcode":"Target Language",width:"Width",height:"Height"});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/link.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/advlink/link.htm
new file mode 100644 (file)
index 0000000..937e894
--- /dev/null
@@ -0,0 +1,338 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#advlink_dlg.title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js"></script>
+       <script type="text/javascript" src="../../utils/validate.js"></script>
+       <script type="text/javascript" src="js/advlink.js"></script>
+       <link href="css/advlink.css" rel="stylesheet" type="text/css" />
+</head>
+<body id="advlink" style="display: none" role="application" onload="javascript:mcTabs.displayTab('general_tab','general_panel', true);" aria-labelledby="app_label">
+       <span class="mceVoiceLabel" id="app_label" style="display:none;">{#advlink_dlg.title}</span>
+       <form onsubmit="insertAction();return false;" action="#">
+               <div class="tabs" role="presentation">
+                       <ul>
+                               <li id="general_tab" class="current" aria-controls="general_panel" ><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#advlink_dlg.general_tab}</a></span></li>
+                               <li id="popup_tab" aria-controls="popup_panel" ><span><a href="javascript:mcTabs.displayTab('popup_tab','popup_panel');" onmousedown="return false;">{#advlink_dlg.popup_tab}</a></span></li>
+                               <li id="events_tab" aria-controls="events_panel"><span><a href="javascript:mcTabs.displayTab('events_tab','events_panel');" onmousedown="return false;">{#advlink_dlg.events_tab}</a></span></li>
+                               <li id="advanced_tab" aria-controls="advanced_panel"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{#advlink_dlg.advanced_tab}</a></span></li>
+                       </ul>
+               </div>
+
+               <div class="panel_wrapper" role="presentation">
+                       <div id="general_panel" class="panel current">
+                               <fieldset>
+                                       <legend>{#advlink_dlg.general_props}</legend>
+
+                                       <table border="0" cellpadding="4" cellspacing="0" role="presentation">
+                                               <tr>
+                                                       <td class="nowrap"><label id="hreflabel" for="href">{#advlink_dlg.url}</label></td>
+                                                               <td><table border="0" cellspacing="0" cellpadding="0">
+                                                       <tr>
+                                                               <td><input id="href" name="href" type="text" class="mceFocus" value="" onchange="selectByValue(this.form,'linklisthref',this.value);" aria-required="true" /></td>
+                                                               <td id="hrefbrowsercontainer">&nbsp;</td>
+                                                       </tr>
+                                                       </table></td>
+                                               </tr>
+                                               <tr id="linklisthrefrow">
+                                                       <td class="column1"><label for="linklisthref">{#advlink_dlg.list}</label></td>
+                                                       <td colspan="2" id="linklisthrefcontainer"><select id="linklisthref"><option value=""></option></select></td>
+                                               </tr>
+                                               <tr id="anchorlistrow">
+                                                       <td class="column1"><label for="anchorlist">{#advlink_dlg.anchor_names}</label></td>
+                                                       <td colspan="2" id="anchorlistcontainer"><select id="anchorlist"><option value=""></option></select></td>
+                                               </tr>
+                                               <tr>
+                                                       <td><label id="targetlistlabel" for="targetlist">{#advlink_dlg.target}</label></td>
+                                                       <td id="targetlistcontainer"><select id="targetlist"><option value=""></option></select></td>
+                                               </tr>
+                                               <tr>
+                                                       <td class="nowrap"><label id="titlelabel" for="title">{#advlink_dlg.titlefield}</label></td>
+                                                       <td><input id="title" name="title" type="text" value="" /></td>
+                                               </tr>
+                                               <tr>
+                                                       <td><label id="classlabel" for="classlist">{#class_name}</label></td>
+                                                       <td>
+                                                                <select id="classlist" name="classlist" onchange="changeClass();">
+                                                                       <option value="" selected="selected">{#not_set}</option>
+                                                                </select>
+                                                       </td>
+                                               </tr>
+                                       </table>
+                               </fieldset>
+                       </div>
+
+                       <div id="popup_panel" class="panel">
+                               <fieldset>
+                                       <legend>{#advlink_dlg.popup_props}</legend>
+
+                                       <input type="checkbox" id="ispopup" name="ispopup" class="radio" onclick="setPopupControlsDisabled(!this.checked);buildOnClick();" />
+                                       <label id="ispopuplabel" for="ispopup">{#advlink_dlg.popup}</label>
+
+                                       <table border="0" cellpadding="0" cellspacing="4" role="presentation" >
+                                               <tr>
+                                                       <td class="nowrap"><label for="popupurl">{#advlink_dlg.popup_url}</label>&nbsp;</td>
+                                                       <td>
+                                                               <table border="0" cellspacing="0" cellpadding="0">
+                                                                       <tr>
+                                                                               <td><input type="text" name="popupurl" id="popupurl" value="" onchange="buildOnClick();" /></td>
+                                                                               <td id="popupurlbrowsercontainer">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+                                               <tr>
+                                                       <td class="nowrap"><label for="popupname">{#advlink_dlg.popup_name}</label>&nbsp;</td>
+                                                       <td><input type="text" name="popupname" id="popupname" value="" onchange="buildOnClick();" /></td>
+                                               </tr>
+                                               <tr role="group" aria-labelledby="popup_size_label">
+                                                       <td class="nowrap"><label id="popup_size_label">{#advlink_dlg.popup_size}</label>&nbsp;</td>
+                                                       <td class="nowrap">
+                                                               <span style="display:none" id="width_voiceLabel">{#advlink_dlg.width}</span>
+                                                               <input type="text" id="popupwidth" name="popupwidth" value="" onchange="buildOnClick();" aria-labelledby="width_voiceLabel" /> x
+                                                               <span style="display:none" id="height_voiceLabel">{#advlink_dlg.height}</span>
+                                                               <input type="text" id="popupheight" name="popupheight" value="" onchange="buildOnClick();" aria-labelledby="height_voiceLabel" /> px
+                                                       </td>
+                                               </tr>
+                                               <tr role="group" aria-labelledby="popup_position_label center_hint">
+                                                       <td class="nowrap" id="labelleft"><label id="popup_position_label">{#advlink_dlg.popup_position}</label>&nbsp;</td>
+                                                       <td class="nowrap">
+                                                               <span style="display:none" id="x_voiceLabel">X</span>
+                                                               <input type="text" id="popupleft" name="popupleft" value="" onchange="buildOnClick();" aria-labelledby="x_voiceLabel" /> /
+                                                               <span style="display:none" id="y_voiceLabel">Y</span>
+                                                               <input type="text" id="popuptop" name="popuptop" value="" onchange="buildOnClick();" aria-labelledby="y_voiceLabel" /> <span id="center_hint">(c /c = center)</span>
+                                                       </td>
+                                               </tr>
+                                       </table>
+
+                                       <fieldset>
+                                               <legend>{#advlink_dlg.popup_opts}</legend>
+
+                                               <table border="0" cellpadding="0" cellspacing="4" role="presentation" >
+                                                       <tr>
+                                                               <td><input type="checkbox" id="popuplocation" name="popuplocation" class="checkbox" onchange="buildOnClick();" /></td>
+                                                               <td class="nowrap"><label id="popuplocationlabel" for="popuplocation">{#advlink_dlg.popup_location}</label></td>
+                                                               <td><input type="checkbox" id="popupscrollbars" name="popupscrollbars" class="checkbox" onchange="buildOnClick();" /></td>
+                                                               <td class="nowrap"><label id="popupscrollbarslabel" for="popupscrollbars">{#advlink_dlg.popup_scrollbars}</label></td>
+                                                       </tr>
+                                                       <tr>
+                                                               <td><input type="checkbox" id="popupmenubar" name="popupmenubar" class="checkbox" onchange="buildOnClick();" /></td>
+                                                               <td class="nowrap"><label id="popupmenubarlabel" for="popupmenubar">{#advlink_dlg.popup_menubar}</label></td>
+                                                               <td><input type="checkbox" id="popupresizable" name="popupresizable" class="checkbox" onchange="buildOnClick();" /></td>
+                                                               <td class="nowrap"><label id="popupresizablelabel" for="popupresizable">{#advlink_dlg.popup_resizable}</label></td>
+                                                       </tr>
+                                                       <tr>
+                                                               <td><input type="checkbox" id="popuptoolbar" name="popuptoolbar" class="checkbox" onchange="buildOnClick();" /></td>
+                                                               <td class="nowrap"><label id="popuptoolbarlabel" for="popuptoolbar">{#advlink_dlg.popup_toolbar}</label></td>
+                                                               <td><input type="checkbox" id="popupdependent" name="popupdependent" class="checkbox" onchange="buildOnClick();" /></td>
+                                                               <td class="nowrap"><label id="popupdependentlabel" for="popupdependent">{#advlink_dlg.popup_dependent}</label></td>
+                                                       </tr>
+                                                       <tr>
+                                                               <td><input type="checkbox" id="popupstatus" name="popupstatus" class="checkbox" onchange="buildOnClick();" /></td>
+                                                               <td class="nowrap"><label id="popupstatuslabel" for="popupstatus">{#advlink_dlg.popup_statusbar}</label></td>
+                                                               <td><input type="checkbox" id="popupreturn" name="popupreturn" class="checkbox" onchange="buildOnClick();" checked="checked" /></td>
+                                                               <td class="nowrap"><label id="popupreturnlabel" for="popupreturn">{#advlink_dlg.popup_return}</label></td>
+                                                       </tr>
+                                               </table>
+                                       </fieldset>
+                               </fieldset>
+                       </div>
+
+                       <div id="advanced_panel" class="panel">
+                       <fieldset>
+                                       <legend>{#advlink_dlg.advanced_props}</legend>
+
+                                       <table border="0" cellpadding="0" cellspacing="4" role="presentation" >
+                                               <tr>
+                                                       <td class="column1"><label id="idlabel" for="id">{#advlink_dlg.id}</label></td>
+                                                       <td><input id="id" name="id" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label id="stylelabel" for="style">{#advlink_dlg.style}</label></td>
+                                                       <td><input type="text" id="style" name="style" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label id="classeslabel" for="classes">{#advlink_dlg.classes}</label></td>
+                                                       <td><input type="text" id="classes" name="classes" value="" onchange="selectByValue(this.form,'classlist',this.value,true);" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label id="targetlabel" for="target">{#advlink_dlg.target_name}</label></td>
+                                                       <td><input type="text" id="target" name="target" value="" onchange="selectByValue(this.form,'targetlist',this.value,true);" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label id="dirlabel" for="dir">{#advlink_dlg.langdir}</label></td>
+                                                       <td>
+                                                               <select id="dir" name="dir">
+                                                                               <option value="">{#not_set}</option>
+                                                                               <option value="ltr">{#advlink_dlg.ltr}</option>
+                                                                               <option value="rtl">{#advlink_dlg.rtl}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label id="hreflanglabel" for="hreflang">{#advlink_dlg.target_langcode}</label></td>
+                                                       <td><input type="text" id="hreflang" name="hreflang" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label id="langlabel" for="lang">{#advlink_dlg.langcode}</label></td>
+                                                       <td>
+                                                               <input id="lang" name="lang" type="text" value="" />
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label id="charsetlabel" for="charset">{#advlink_dlg.encoding}</label></td>
+                                                       <td><input type="text" id="charset" name="charset" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label id="typelabel" for="type">{#advlink_dlg.mime}</label></td>
+                                                       <td><input type="text" id="type" name="type" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label id="rellabel" for="rel">{#advlink_dlg.rel}</label></td>
+                                                       <td><select id="rel" name="rel">
+                                                                       <option value="">{#not_set}</option>
+                                                                       <option value="lightbox">Lightbox</option>
+                                                                       <option value="alternate">Alternate</option>
+                                                                       <option value="designates">Designates</option>
+                                                                       <option value="stylesheet">Stylesheet</option>
+                                                                       <option value="start">Start</option>
+                                                                       <option value="next">Next</option>
+                                                                       <option value="prev">Prev</option>
+                                                                       <option value="contents">Contents</option>
+                                                                       <option value="index">Index</option>
+                                                                       <option value="glossary">Glossary</option>
+                                                                       <option value="copyright">Copyright</option>
+                                                                       <option value="chapter">Chapter</option>
+                                                                       <option value="subsection">Subsection</option>
+                                                                       <option value="appendix">Appendix</option>
+                                                                       <option value="help">Help</option>
+                                                                       <option value="bookmark">Bookmark</option>
+                                                                       <option value="nofollow">No Follow</option>
+                                                                       <option value="tag">Tag</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label id="revlabel" for="rev">{#advlink_dlg.rev}</label></td>
+                                                       <td><select id="rev" name="rev">
+                                                                       <option value="">{#not_set}</option>
+                                                                       <option value="alternate">Alternate</option>
+                                                                       <option value="designates">Designates</option>
+                                                                       <option value="stylesheet">Stylesheet</option>
+                                                                       <option value="start">Start</option>
+                                                                       <option value="next">Next</option>
+                                                                       <option value="prev">Prev</option>
+                                                                       <option value="contents">Contents</option>
+                                                                       <option value="index">Index</option>
+                                                                       <option value="glossary">Glossary</option>
+                                                                       <option value="copyright">Copyright</option>
+                                                                       <option value="chapter">Chapter</option>
+                                                                       <option value="subsection">Subsection</option>
+                                                                       <option value="appendix">Appendix</option>
+                                                                       <option value="help">Help</option>
+                                                                       <option value="bookmark">Bookmark</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label id="tabindexlabel" for="tabindex">{#advlink_dlg.tabindex}</label></td>
+                                                       <td><input type="text" id="tabindex" name="tabindex" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label id="accesskeylabel" for="accesskey">{#advlink_dlg.accesskey}</label></td>
+                                                       <td><input type="text" id="accesskey" name="accesskey" value="" /></td>
+                                               </tr>
+                                       </table>
+                               </fieldset>
+                       </div>
+
+                       <div id="events_panel" class="panel">
+                       <fieldset>
+                                       <legend>{#advlink_dlg.event_props}</legend>
+
+                                       <table border="0" cellpadding="0" cellspacing="4" role="presentation" >
+                                               <tr>
+                                                       <td class="column1"><label for="onfocus">onfocus</label></td>
+                                                       <td><input id="onfocus" name="onfocus" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="onblur">onblur</label></td>
+                                                       <td><input id="onblur" name="onblur" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="onclick">onclick</label></td>
+                                                       <td><input id="onclick" name="onclick" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="ondblclick">ondblclick</label></td>
+                                                       <td><input id="ondblclick" name="ondblclick" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="onmousedown">onmousedown</label></td>
+                                                       <td><input id="onmousedown" name="onmousedown" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="onmouseup">onmouseup</label></td>
+                                                       <td><input id="onmouseup" name="onmouseup" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="onmouseover">onmouseover</label></td>
+                                                       <td><input id="onmouseover" name="onmouseover" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="onmousemove">onmousemove</label></td>
+                                                       <td><input id="onmousemove" name="onmousemove" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="onmouseout">onmouseout</label></td>
+                                                       <td><input id="onmouseout" name="onmouseout" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="onkeypress">onkeypress</label></td>
+                                                       <td><input id="onkeypress" name="onkeypress" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="onkeydown">onkeydown</label></td>
+                                                       <td><input id="onkeydown" name="onkeydown" type="text" value="" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="onkeyup">onkeyup</label></td>
+                                                       <td><input id="onkeyup" name="onkeyup" type="text" value="" /></td>
+                                               </tr>
+                                       </table>
+                               </fieldset>
+                       </div>
+               </div>
+
+               <div class="mceActionPanel">
+                       <input type="submit" id="insert" name="insert" value="{#insert}" />
+                       <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
+               </div>
+       </form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/contextmenu/editor_plugin.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/contextmenu/editor_plugin.js
new file mode 100644 (file)
index 0000000..2ed042c
--- /dev/null
@@ -0,0 +1 @@
+(function(){var a=tinymce.dom.Event,c=tinymce.each,b=tinymce.DOM;tinymce.create("tinymce.plugins.ContextMenu",{init:function(f){var i=this,g,d,j,e;i.editor=f;d=f.settings.contextmenu_never_use_native;i.onContextMenu=new tinymce.util.Dispatcher(this);e=function(k){h(f,k)};g=f.onContextMenu.add(function(k,l){if((j!==0?j:l.ctrlKey)&&!d){return}a.cancel(l);if(l.target.nodeName=="IMG"){k.selection.select(l.target)}i._getMenu(k).showMenu(l.clientX||l.pageX,l.clientY||l.pageY);a.add(k.getDoc(),"click",e);k.nodeChanged()});f.onRemove.add(function(){if(i._menu){i._menu.removeAll()}});function h(k,l){j=0;if(l&&l.button==2){j=l.ctrlKey;return}if(i._menu){i._menu.removeAll();i._menu.destroy();a.remove(k.getDoc(),"click",e);i._menu=null}}f.onMouseDown.add(h);f.onKeyDown.add(h);f.onKeyDown.add(function(k,l){if(l.shiftKey&&!l.ctrlKey&&!l.altKey&&l.keyCode===121){a.cancel(l);g(k,l)}})},getInfo:function(){return{longname:"Contextmenu",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_getMenu:function(e){var g=this,d=g._menu,j=e.selection,f=j.isCollapsed(),h=j.getNode()||e.getBody(),i,k;if(d){d.removeAll();d.destroy()}k=b.getPos(e.getContentAreaContainer());d=e.controlManager.createDropMenu("contextmenu",{offset_x:k.x+e.getParam("contextmenu_offset_x",0),offset_y:k.y+e.getParam("contextmenu_offset_y",0),constrain:1,keyboard_focus:true});g._menu=d;d.add({title:"advanced.cut_desc",icon:"cut",cmd:"Cut"}).setDisabled(f);d.add({title:"advanced.copy_desc",icon:"copy",cmd:"Copy"}).setDisabled(f);d.add({title:"advanced.paste_desc",icon:"paste",cmd:"Paste"});if((h.nodeName=="A"&&!e.dom.getAttrib(h,"name"))||!f){d.addSeparator();d.add({title:"advanced.link_desc",icon:"link",cmd:e.plugins.advlink?"mceAdvLink":"mceLink",ui:true});d.add({title:"advanced.unlink_desc",icon:"unlink",cmd:"UnLink"})}d.addSeparator();d.add({title:"advanced.image_desc",icon:"image",cmd:e.plugins.advimage?"mceAdvImage":"mceImage",ui:true});d.addSeparator();i=d.addMenu({title:"contextmenu.align"});i.add({title:"contextmenu.left",icon:"justifyleft",cmd:"JustifyLeft"});i.add({title:"contextmenu.center",icon:"justifycenter",cmd:"JustifyCenter"});i.add({title:"contextmenu.right",icon:"justifyright",cmd:"JustifyRight"});i.add({title:"contextmenu.full",icon:"justifyfull",cmd:"JustifyFull"});g.onContextMenu.dispatch(g,d,h,f);return d}});tinymce.PluginManager.add("contextmenu",tinymce.plugins.ContextMenu)})();
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/print/editor_plugin.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/print/editor_plugin.js
new file mode 100644 (file)
index 0000000..b5b3a55
--- /dev/null
@@ -0,0 +1 @@
+(function(){tinymce.create("tinymce.plugins.Print",{init:function(a,b){a.addCommand("mcePrint",function(){a.getWin().print()});a.addButton("print",{title:"print.print_desc",cmd:"mcePrint"})},getInfo:function(){return{longname:"Print",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/print",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("print",tinymce.plugins.Print)})();
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/save/editor_plugin.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/save/editor_plugin.js
new file mode 100644 (file)
index 0000000..8e93996
--- /dev/null
@@ -0,0 +1 @@
+(function(){tinymce.create("tinymce.plugins.Save",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceSave",c._save,c);a.addCommand("mceCancel",c._cancel,c);a.addButton("save",{title:"save.save_desc",cmd:"mceSave"});a.addButton("cancel",{title:"save.cancel_desc",cmd:"mceCancel"});a.onNodeChange.add(c._nodeChange,c);a.addShortcut("ctrl+s",a.getLang("save.save_desc"),"mceSave")},getInfo:function(){return{longname:"Save",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/save",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_nodeChange:function(b,a,c){var b=this.editor;if(b.getParam("save_enablewhendirty")){a.setDisabled("save",!b.isDirty());a.setDisabled("cancel",!b.isDirty())}},_save:function(){var c=this.editor,a,e,d,b;a=tinymce.DOM.get(c.id).form||tinymce.DOM.getParent(c.id,"form");if(c.getParam("save_enablewhendirty")&&!c.isDirty()){return}tinyMCE.triggerSave();if(e=c.getParam("save_onsavecallback")){if(c.execCallback("save_onsavecallback",c)){c.startContent=tinymce.trim(c.getContent({format:"raw"}));c.nodeChanged()}return}if(a){c.isNotDirty=true;if(a.onsubmit==null||a.onsubmit()!=false){a.submit()}c.nodeChanged()}else{c.windowManager.alert("Error: No form element found.")}},_cancel:function(){var a=this.editor,c,b=tinymce.trim(a.startContent);if(c=a.getParam("save_oncancelcallback")){a.execCallback("save_oncancelcallback",a);return}a.setContent(b);a.undoManager.clear();a.nodeChanged()}});tinymce.PluginManager.add("save",tinymce.plugins.Save)})();
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/css/searchreplace.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/css/searchreplace.css
new file mode 100644 (file)
index 0000000..3e2eaf3
--- /dev/null
@@ -0,0 +1,6 @@
+.panel_wrapper {height:85px;}
+.panel_wrapper div.current {height:85px;}
+
+/* IE */
+* html .panel_wrapper {height:100px;}
+* html .panel_wrapper div.current {height:100px;}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/editor_plugin.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/editor_plugin.js
new file mode 100644 (file)
index 0000000..165bc12
--- /dev/null
@@ -0,0 +1 @@
+(function(){tinymce.create("tinymce.plugins.SearchReplacePlugin",{init:function(a,c){function b(d){window.focus();a.windowManager.open({file:c+"/searchreplace.htm",width:420+parseInt(a.getLang("searchreplace.delta_width",0)),height:170+parseInt(a.getLang("searchreplace.delta_height",0)),inline:1,auto_focus:0},{mode:d,search_string:a.selection.getContent({format:"text"}),plugin_url:c})}a.addCommand("mceSearch",function(){b("search")});a.addCommand("mceReplace",function(){b("replace")});a.addButton("search",{title:"searchreplace.search_desc",cmd:"mceSearch"});a.addButton("replace",{title:"searchreplace.replace_desc",cmd:"mceReplace"});a.addShortcut("ctrl+f","searchreplace.search_desc","mceSearch")},getInfo:function(){return{longname:"Search/Replace",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("searchreplace",tinymce.plugins.SearchReplacePlugin)})();
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/js/searchreplace.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/js/searchreplace.js
new file mode 100644 (file)
index 0000000..5021f58
--- /dev/null
@@ -0,0 +1,142 @@
+tinyMCEPopup.requireLangPack();
+
+var SearchReplaceDialog = {
+       init : function(ed) {
+               var t = this, f = document.forms[0], m = tinyMCEPopup.getWindowArg("mode");
+
+               t.switchMode(m);
+
+               f[m + '_panel_searchstring'].value = tinyMCEPopup.getWindowArg("search_string");
+
+               // Focus input field
+               f[m + '_panel_searchstring'].focus();
+
+               mcTabs.onChange.add(function(tab_id, panel_id) {
+                       t.switchMode(tab_id.substring(0, tab_id.indexOf('_')));
+               });
+       },
+
+       switchMode : function(m) {
+               var f, lm = this.lastMode;
+
+               if (lm != m) {
+                       f = document.forms[0];
+
+                       if (lm) {
+                               f[m + '_panel_searchstring'].value = f[lm + '_panel_searchstring'].value;
+                               f[m + '_panel_backwardsu'].checked = f[lm + '_panel_backwardsu'].checked;
+                               f[m + '_panel_backwardsd'].checked = f[lm + '_panel_backwardsd'].checked;
+                               f[m + '_panel_casesensitivebox'].checked = f[lm + '_panel_casesensitivebox'].checked;
+                       }
+
+                       mcTabs.displayTab(m + '_tab',  m + '_panel');
+                       document.getElementById("replaceBtn").style.display = (m == "replace") ? "inline" : "none";
+                       document.getElementById("replaceAllBtn").style.display = (m == "replace") ? "inline" : "none";
+                       this.lastMode = m;
+               }
+       },
+
+       searchNext : function(a) {
+               var ed = tinyMCEPopup.editor, se = ed.selection, r = se.getRng(), f, m = this.lastMode, s, b, fl = 0, w = ed.getWin(), wm = ed.windowManager, fo = 0;
+
+               // Get input
+               f = document.forms[0];
+               s = f[m + '_panel_searchstring'].value;
+               b = f[m + '_panel_backwardsu'].checked;
+               ca = f[m + '_panel_casesensitivebox'].checked;
+               rs = f['replace_panel_replacestring'].value;
+
+               if (tinymce.isIE) {
+                       r = ed.getDoc().selection.createRange();
+               }
+
+               if (s == '')
+                       return;
+
+               function fix() {
+                       // Correct Firefox graphics glitches
+                       // TODO: Verify if this is actually needed any more, maybe it was for very old FF versions?
+                       r = se.getRng().cloneRange();
+                       ed.getDoc().execCommand('SelectAll', false, null);
+                       se.setRng(r);
+               };
+
+               function replace() {
+                       ed.selection.setContent(rs); // Needs to be duplicated due to selection bug in IE
+               };
+
+               // IE flags
+               if (ca)
+                       fl = fl | 4;
+
+               switch (a) {
+                       case 'all':
+                               // Move caret to beginning of text
+                               ed.execCommand('SelectAll');
+                               ed.selection.collapse(true);
+
+                               if (tinymce.isIE) {
+                                       ed.focus();
+                                       r = ed.getDoc().selection.createRange();
+
+                                       while (r.findText(s, b ? -1 : 1, fl)) {
+                                               r.scrollIntoView();
+                                               r.select();
+                                               replace();
+                                               fo = 1;
+
+                                               if (b) {
+                                                       r.moveEnd("character", -(rs.length)); // Otherwise will loop forever
+                                               }
+                                       }
+
+                                       tinyMCEPopup.storeSelection();
+                               } else {
+                                       while (w.find(s, ca, b, false, false, false, false)) {
+                                               replace();
+                                               fo = 1;
+                                       }
+                               }
+
+                               if (fo)
+                                       tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.allreplaced'));
+                               else
+                                       tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound'));
+
+                               return;
+
+                       case 'current':
+                               if (!ed.selection.isCollapsed())
+                                       replace();
+
+                               break;
+               }
+
+               se.collapse(b);
+               r = se.getRng();
+
+               // Whats the point
+               if (!s)
+                       return;
+
+               if (tinymce.isIE) {
+                       ed.focus();
+                       r = ed.getDoc().selection.createRange();
+
+                       if (r.findText(s, b ? -1 : 1, fl)) {
+                               r.scrollIntoView();
+                               r.select();
+                       } else
+                               tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound'));
+
+                       tinyMCEPopup.storeSelection();
+               } else {
+                       if (!w.find(s, ca, b, false, false, false, false))
+                               tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound'));
+                       else
+                               fix();
+               }
+       }
+};
+
+tinyMCEPopup.onInit.add(SearchReplaceDialog.init, SearchReplaceDialog);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/langs/en_dlg.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/langs/en_dlg.js
new file mode 100644 (file)
index 0000000..8a65900
--- /dev/null
@@ -0,0 +1 @@
+tinyMCE.addI18n('en.searchreplace_dlg',{findwhat:"Find What",replacewith:"Replace with",direction:"Direction",up:"Up",down:"Down",mcase:"Match Case",findnext:"Find Next",allreplaced:"All occurrences of the search string were replaced.","searchnext_desc":"Find Again",notfound:"The search has been completed. The search string could not be found.","search_title":"Find","replace_title":"Find/Replace",replaceall:"Replace All",replace:"Replace"});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/searchreplace.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/searchreplace/searchreplace.htm
new file mode 100644 (file)
index 0000000..f5bafc4
--- /dev/null
@@ -0,0 +1,100 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#searchreplace_dlg.replace_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js"></script>
+       <script type="text/javascript" src="js/searchreplace.js"></script>
+       <link rel="stylesheet" type="text/css" href="css/searchreplace.css" />
+</head>
+<body style="display:none;" role="application" aria-labelledby="app_title">
+<span id="app_title" style="display:none">{#searchreplace_dlg.replace_title}</span>
+<form onsubmit="SearchReplaceDialog.searchNext('none');return false;" action="#">
+       <div class="tabs">
+               <ul>
+                       <li id="search_tab" aria-controls="search_panel"><span><a href="javascript:SearchReplaceDialog.switchMode('search');" onmousedown="return false;">{#searchreplace.search_desc}</a></span></li>
+                       <li id="replace_tab" aria-controls="replace_panel"><span><a href="javascript:SearchReplaceDialog.switchMode('replace');" onmousedown="return false;">{#searchreplace_dlg.replace}</a></span></li>
+               </ul>
+       </div>
+
+       <div class="panel_wrapper">
+               <div id="search_panel" class="panel">
+                       <table role="presentation" border="0" cellspacing="0" cellpadding="2">
+                               <tr>
+                                       <td><label for="search_panel_searchstring">{#searchreplace_dlg.findwhat}</label></td>
+                                       <td><input type="text" id="search_panel_searchstring" name="search_panel_searchstring" style="width: 200px" aria-required="true" /></td>
+                               </tr>
+                               <tr>
+                                       <td colspan="2">
+                                               <table role="presentation" border="0" cellspacing="0" cellpadding="0" class="direction">
+                                                       <tr role="group" aria-labelledby="search_panel_backwards_label">
+                                                               <td><label id="search_panel_backwards_label">{#searchreplace_dlg.direction}</label></td>
+                                                               <td><input id="search_panel_backwardsu" name="search_panel_backwards" class="radio" type="radio" /></td>
+                                                               <td><label for="search_panel_backwardsu">{#searchreplace_dlg.up}</label></td>
+                                                               <td><input id="search_panel_backwardsd" name="search_panel_backwards" class="radio" type="radio" checked="checked" /></td>
+                                                               <td><label for="search_panel_backwardsd">{#searchreplace_dlg.down}</label></td>
+                                                       </tr>
+                                               </table>
+                                       </td>
+                               </tr>
+                               <tr>
+                                       <td colspan="2">
+                                               <table role="presentation" border="0" cellspacing="0" cellpadding="0">
+                                                       <tr>
+                                                               <td><input id="search_panel_casesensitivebox" name="search_panel_casesensitivebox" class="checkbox" type="checkbox" /></td>
+                                                               <td><label for="search_panel_casesensitivebox">{#searchreplace_dlg.mcase}</label></td>
+                                                       </tr>
+                                               </table>
+                                       </td>
+                               </tr>
+                       </table>
+               </div>
+
+               <div id="replace_panel" class="panel">
+                       <table role="presentation" border="0" cellspacing="0" cellpadding="2">
+                               <tr>
+                                       <td><label for="replace_panel_searchstring">{#searchreplace_dlg.findwhat}</label></td>
+                                       <td><input type="text" id="replace_panel_searchstring" name="replace_panel_searchstring" style="width: 200px" aria-required="true" /></td>
+                               </tr>
+                               <tr>
+                                       <td><label for="replace_panel_replacestring">{#searchreplace_dlg.replacewith}</label></td>
+                                       <td><input type="text" id="replace_panel_replacestring" name="replace_panel_replacestring" style="width: 200px" aria-required="true" /></td>
+                               </tr>
+                               <tr>
+                                       <td colspan="2">
+                                               <table role="presentation" border="0" cellspacing="0" cellpadding="0" class="direction">
+                                                       <tr role="group" aria-labelledby="replace_panel_dir_label">
+                                                               <td><label id="replace_panel_dir_label">{#searchreplace_dlg.direction}</label></td>
+                                                               <td><input id="replace_panel_backwardsu" name="replace_panel_backwards" class="radio" type="radio" /></td>
+                                                               <td><label for="replace_panel_backwardsu">{#searchreplace_dlg.up}</label></td>
+                                                               <td><input id="replace_panel_backwardsd" name="replace_panel_backwards" class="radio" type="radio" checked="checked" /></td>
+                                                               <td><label for="replace_panel_backwardsd">{#searchreplace_dlg.down}</label></td>
+                                                       </tr>
+                                               </table>
+                                       </td>
+                               </tr>
+                               <tr>
+                                       <td colspan="2">
+                                               <table role="presentation" border="0" cellspacing="0" cellpadding="0">
+                                                       <tr>
+                                                               <td><input id="replace_panel_casesensitivebox" name="replace_panel_casesensitivebox" class="checkbox" type="checkbox" /></td>
+                                                               <td><label for="replace_panel_casesensitivebox">{#searchreplace_dlg.mcase}</label></td>
+                                                       </tr>
+                                               </table>
+                                       </td>
+                               </tr>
+                       </table>
+               </div>
+
+       </div>
+
+       <div class="mceActionPanel">
+               <input type="submit" id="insert" name="insert" value="{#searchreplace_dlg.findnext}" />
+               <input type="button" class="button" id="replaceBtn" name="replaceBtn" value="{#searchreplace_dlg.replace}" onclick="SearchReplaceDialog.searchNext('current');" />
+               <input type="button" class="button" id="replaceAllBtn" name="replaceAllBtn" value="{#searchreplace_dlg.replaceall}" onclick="SearchReplaceDialog.searchNext('all');" />
+               <input type="button" id="cancel" name="close" value="{#close}" onclick="tinyMCEPopup.close();" />
+       </div>
+</form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/cell.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/cell.htm
new file mode 100644 (file)
index 0000000..428b1d6
--- /dev/null
@@ -0,0 +1,180 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#table_dlg.cell_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js"></script>
+       <script type="text/javascript" src="../../utils/validate.js"></script>
+       <script type="text/javascript" src="../../utils/editable_selects.js"></script>
+       <script type="text/javascript" src="js/cell.js"></script>
+       <link href="css/cell.css" rel="stylesheet" type="text/css" />
+</head>
+<body id="tablecell" style="display: none" role="application">
+       <form onsubmit="updateAction();return false;" action="#">
+               <div class="tabs">
+                       <ul>
+                               <li id="general_tab" class="current" aria-controls="general_panel"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#table_dlg.general_tab}</a></span></li>
+                               <li id="advanced_tab" aria-controls="advanced_panel"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{#table_dlg.advanced_tab}</a></span></li>
+                       </ul>
+               </div>
+
+               <div class="panel_wrapper">
+                       <div id="general_panel" class="panel current">
+                               <fieldset>
+                                       <legend>{#table_dlg.general_props}</legend>
+
+                                       <table role="presentation" border="0" cellpadding="4" cellspacing="0">
+                                               <tr>
+                                                       <td><label for="align">{#table_dlg.align}</label></td>
+                                                       <td>
+                                                               <select id="align" name="align" class="mceFocus">
+                                                                       <option value="">{#not_set}</option>
+                                                                       <option value="center">{#table_dlg.align_middle}</option>
+                                                                       <option value="left">{#table_dlg.align_left}</option>
+                                                                       <option value="right">{#table_dlg.align_right}</option>
+                                                               </select>
+                                                       </td>
+
+                                                       <td><label for="celltype">{#table_dlg.cell_type}</label></td>
+                                                       <td>
+                                                               <select id="celltype" name="celltype">
+                                                                       <option value="td">{#table_dlg.td}</option>
+                                                                       <option value="th">{#table_dlg.th}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label for="valign">{#table_dlg.valign}</label></td>
+                                                       <td>
+                                                               <select id="valign" name="valign">
+                                                                       <option value="">{#not_set}</option>
+                                                                       <option value="top">{#table_dlg.align_top}</option>
+                                                                       <option value="middle">{#table_dlg.align_middle}</option>
+                                                                       <option value="bottom">{#table_dlg.align_bottom}</option>
+                                                               </select>
+                                                       </td>
+
+                                                       <td><label for="scope">{#table_dlg.scope}</label></td>
+                                                       <td>
+                                                               <select id="scope" name="scope">
+                                                                       <option value="">{#not_set}</option>
+                                                                       <option value="col">{#table.col}</option>
+                                                                       <option value="row">{#table.row}</option>
+                                                                       <option value="rowgroup">{#table_dlg.rowgroup}</option>
+                                                                       <option value="colgroup">{#table_dlg.colgroup}</option>
+                                                               </select>
+                                                       </td>
+
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label for="width">{#table_dlg.width}</label></td>
+                                                       <td><input id="width" name="width" type="text" value="" size="7" maxlength="7" onchange="changedSize();" class="size" /></td>
+
+                                                       <td><label for="height">{#table_dlg.height}</label></td>
+                                                       <td><input id="height" name="height" type="text" value="" size="7" maxlength="7" onchange="changedSize();" class="size" /></td>
+                                               </tr>
+
+                                               <tr id="styleSelectRow">
+                                                       <td><label for="class">{#class_name}</label></td>
+                                                       <td colspan="3">
+                                                               <select id="class" name="class" class="mceEditableSelect">
+                                                                       <option value="" selected="selected">{#not_set}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+                                       </table>
+                               </fieldset>
+                       </div>
+
+                       <div id="advanced_panel" class="panel">
+                               <fieldset>
+                                       <legend>{#table_dlg.advanced_props}</legend>
+
+                                       <table role="presentation" border="0" cellpadding="0" cellspacing="4">
+                                               <tr>
+                                                       <td class="column1"><label for="id">{#table_dlg.id}</label></td>
+                                                       <td><input id="id" name="id" type="text" value="" style="width: 200px" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label for="style">{#table_dlg.style}</label></td>
+                                                       <td><input type="text" id="style" name="style" value="" style="width: 200px;" onchange="changedStyle();" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="dir">{#table_dlg.langdir}</label></td>
+                                                       <td>
+                                                               <select id="dir" name="dir" style="width: 200px">
+                                                                               <option value="">{#not_set}</option>
+                                                                               <option value="ltr">{#table_dlg.ltr}</option>
+                                                                               <option value="rtl">{#table_dlg.rtl}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="lang">{#table_dlg.langcode}</label></td>
+                                                       <td>
+                                                               <input id="lang" name="lang" type="text" value="" style="width: 200px" />
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="backgroundimage">{#table_dlg.bgimage}</label></td>
+                                                       <td>
+                                                               <table role="presentation" border="0" cellpadding="0" cellspacing="0">
+                                                                       <tr>
+                                                                               <td><input id="backgroundimage" name="backgroundimage" type="text" value="" style="width: 200px" onchange="changedBackgroundImage();" /></td>
+                                                                               <td id="backgroundimagebrowsercontainer">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+
+                                               <tr role="group" aria-labelledby="bordercolor_label">
+                                                       <td class="column1"><label id="bordercolor_label" for="bordercolor">{#table_dlg.bordercolor}</label></td>
+                                                       <td>
+                                                               <table role="presentation" border="0" cellpadding="0" cellspacing="0">
+                                                                       <tr>
+                                                                               <td><input id="bordercolor" name="bordercolor" type="text" value="" size="9" onchange="updateColor('bordercolor_pick','bordercolor');changedColor();" /></td>
+                                                                               <td id="bordercolor_pickcontainer">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+
+                                               <tr role="group" aria-labelledby="bgcolor_label">
+                                                       <td class="column1"><label id="bgcolor_label" for="bgcolor">{#table_dlg.bgcolor}</label></td>
+                                                       <td>
+                                                               <table role="presentation" border="0" cellpadding="0" cellspacing="0">
+                                                                       <tr>
+                                                                               <td><input id="bgcolor" name="bgcolor" type="text" value="" size="9" onchange="updateColor('bgcolor_pick','bgcolor');changedColor();" /></td>
+                                                                               <td id="bgcolor_pickcontainer">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+                                       </table>
+                               </fieldset>
+                       </div>
+               </div>
+
+               <div class="mceActionPanel">
+                       <div>
+                               <select id="action" name="action">
+                                       <option value="cell">{#table_dlg.cell_cell}</option>
+                                       <option value="row">{#table_dlg.cell_row}</option>
+                                       <option value="col">{#table_dlg.cell_col}</option>
+                                       <option value="all">{#table_dlg.cell_all}</option>
+                               </select>
+                       </div>
+
+                       <input type="submit" id="insert" name="insert" value="{#update}" />
+                       <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
+               </div>
+       </form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/css/cell.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/css/cell.css
new file mode 100644 (file)
index 0000000..a47cc1a
--- /dev/null
@@ -0,0 +1,17 @@
+/* CSS file for cell dialog in the table plugin */
+
+.panel_wrapper div.current {
+       height: 200px;
+}
+
+.advfield {
+       width: 200px;
+}
+
+#action {
+       margin-bottom: 3px;
+}
+
+#class {
+       width: 150px;
+}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/css/row.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/css/row.css
new file mode 100644 (file)
index 0000000..986105e
--- /dev/null
@@ -0,0 +1,25 @@
+/* CSS file for row dialog in the table plugin */
+
+.panel_wrapper div.current {
+       height: 200px;
+}
+
+.advfield {
+       width: 200px;
+}
+
+#action {
+       margin-bottom: 3px;
+}
+
+#rowtype,#align,#valign,#class,#height {
+       width: 150px;
+}
+
+#height {
+       width: 50px;
+}
+
+.col2 {
+       padding-left: 20px;
+}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/css/table.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/css/table.css
new file mode 100644 (file)
index 0000000..8f10783
--- /dev/null
@@ -0,0 +1,13 @@
+/* CSS file for table dialog in the table plugin */
+
+.panel_wrapper div.current {
+       height: 245px;
+}
+
+.advfield {
+       width: 200px;
+}
+
+#class {
+       width: 150px;
+}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/editor_plugin.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/editor_plugin.js
new file mode 100644 (file)
index 0000000..4a35a5e
--- /dev/null
@@ -0,0 +1 @@
+(function(d){var e=d.each;function c(g,h){var j=h.ownerDocument,f=j.createRange(),k;f.setStartBefore(h);f.setEnd(g.endContainer,g.endOffset);k=j.createElement("body");k.appendChild(f.cloneContents());return k.innerHTML.replace(/<(br|img|object|embed|input|textarea)[^>]*>/gi,"-").replace(/<[^>]+>/g,"").length==0}function a(g,f){return parseInt(g.getAttribute(f)||1)}function b(H,G,K){var g,L,D,o;t();o=G.getParent(K.getStart(),"th,td");if(o){L=F(o);D=I();o=z(L.x,L.y)}function A(N,M){N=N.cloneNode(M);N.removeAttribute("id");return N}function t(){var M=0;g=[];e(["thead","tbody","tfoot"],function(N){var O=G.select("> "+N+" tr",H);e(O,function(P,Q){Q+=M;e(G.select("> td, > th",P),function(W,R){var S,T,U,V;if(g[Q]){while(g[Q][R]){R++}}U=a(W,"rowspan");V=a(W,"colspan");for(T=Q;T<Q+U;T++){if(!g[T]){g[T]=[]}for(S=R;S<R+V;S++){g[T][S]={part:N,real:T==Q&&S==R,elm:W,rowspan:U,colspan:V}}}})});M+=O.length})}function z(M,O){var N;N=g[O];if(N){return N[M]}}function s(O,M,N){if(O){N=parseInt(N);if(N===1){O.removeAttribute(M,1)}else{O.setAttribute(M,N,1)}}}function j(M){return M&&(G.hasClass(M.elm,"mceSelected")||M==o)}function k(){var M=[];e(H.rows,function(N){e(N.cells,function(O){if(G.hasClass(O,"mceSelected")||O==o.elm){M.push(N);return false}})});return M}function r(){var M=G.createRng();M.setStartAfter(H);M.setEndAfter(H);K.setRng(M);G.remove(H)}function f(M){var N;d.walk(M,function(P){var O;if(P.nodeType==3){e(G.getParents(P.parentNode,null,M).reverse(),function(Q){Q=A(Q,false);if(!N){N=O=Q}else{if(O){O.appendChild(Q)}}O=Q});if(O){O.innerHTML=d.isIE?"&nbsp;":'<br data-mce-bogus="1" />'}return false}},"childNodes");M=A(M,false);s(M,"rowSpan",1);s(M,"colSpan",1);if(N){M.appendChild(N)}else{if(!d.isIE){M.innerHTML='<br data-mce-bogus="1" />'}}return M}function q(){var M=G.createRng();e(G.select("tr",H),function(N){if(N.cells.length==0){G.remove(N)}});if(G.select("tr",H).length==0){M.setStartAfter(H);M.setEndAfter(H);K.setRng(M);G.remove(H);return}e(G.select("thead,tbody,tfoot",H),function(N){if(N.rows.length==0){G.remove(N)}});t();row=g[Math.min(g.length-1,L.y)];if(row){K.select(row[Math.min(row.length-1,L.x)].elm,true);K.collapse(true)}}function u(S,Q,U,R){var P,N,M,O,T;P=g[Q][S].elm.parentNode;for(M=1;M<=U;M++){P=G.getNext(P,"tr");if(P){for(N=S;N>=0;N--){T=g[Q+M][N].elm;if(T.parentNode==P){for(O=1;O<=R;O++){G.insertAfter(f(T),T)}break}}if(N==-1){for(O=1;O<=R;O++){P.insertBefore(f(P.cells[0]),P.cells[0])}}}}}function C(){e(g,function(M,N){e(M,function(P,O){var S,R,T,Q;if(j(P)){P=P.elm;S=a(P,"colspan");R=a(P,"rowspan");if(S>1||R>1){s(P,"rowSpan",1);s(P,"colSpan",1);for(Q=0;Q<S-1;Q++){G.insertAfter(f(P),P)}u(O,N,R-1,S)}}})})}function p(V,S,Y){var P,O,X,W,U,R,T,M,V,N,Q;if(V){pos=F(V);P=pos.x;O=pos.y;X=P+(S-1);W=O+(Y-1)}else{L=D=null;e(g,function(Z,aa){e(Z,function(ac,ab){if(j(ac)){if(!L){L={x:ab,y:aa}}D={x:ab,y:aa}}})});P=L.x;O=L.y;X=D.x;W=D.y}T=z(P,O);M=z(X,W);if(T&&M&&T.part==M.part){C();t();T=z(P,O).elm;s(T,"colSpan",(X-P)+1);s(T,"rowSpan",(W-O)+1);for(R=O;R<=W;R++){for(U=P;U<=X;U++){if(!g[R]||!g[R][U]){continue}V=g[R][U].elm;if(V!=T){N=d.grep(V.childNodes);e(N,function(Z){T.appendChild(Z)});if(N.length){N=d.grep(T.childNodes);Q=0;e(N,function(Z){if(Z.nodeName=="BR"&&G.getAttrib(Z,"data-mce-bogus")&&Q++<N.length-1){T.removeChild(Z)}})}G.remove(V)}}}q()}}function l(Q){var M,S,P,R,T,U,N,V,O;e(g,function(W,X){e(W,function(Z,Y){if(j(Z)){Z=Z.elm;T=Z.parentNode;U=A(T,false);M=X;if(Q){return false}}});if(Q){return !M}});for(R=0;R<g[0].length;R++){if(!g[M][R]){continue}S=g[M][R].elm;if(S!=P){if(!Q){O=a(S,"rowspan");if(O>1){s(S,"rowSpan",O+1);continue}}else{if(M>0&&g[M-1][R]){V=g[M-1][R].elm;O=a(V,"rowSpan");if(O>1){s(V,"rowSpan",O+1);continue}}}N=f(S);s(N,"colSpan",S.colSpan);U.appendChild(N);P=S}}if(U.hasChildNodes()){if(!Q){G.insertAfter(U,T)}else{T.parentNode.insertBefore(U,T)}}}function h(N){var O,M;e(g,function(P,Q){e(P,function(S,R){if(j(S)){O=R;if(N){return false}}});if(N){return !O}});e(g,function(S,T){var P,Q,R;if(!S[O]){return}P=S[O].elm;if(P!=M){R=a(P,"colspan");Q=a(P,"rowspan");if(R==1){if(!N){G.insertAfter(f(P),P);u(O,T,Q-1,R)}else{P.parentNode.insertBefore(f(P),P);u(O,T,Q-1,R)}}else{s(P,"colSpan",P.colSpan+1)}M=P}})}function n(){var M=[];e(g,function(N,O){e(N,function(Q,P){if(j(Q)&&d.inArray(M,P)===-1){e(g,function(T){var R=T[P].elm,S;S=a(R,"colSpan");if(S>1){s(R,"colSpan",S-1)}else{G.remove(R)}});M.push(P)}})});q()}function m(){var N;function M(Q){var P,R,O;P=G.getNext(Q,"tr");e(Q.cells,function(S){var T=a(S,"rowSpan");if(T>1){s(S,"rowSpan",T-1);R=F(S);u(R.x,R.y,1,1)}});R=F(Q.cells[0]);e(g[R.y],function(S){var T;S=S.elm;if(S!=O){T=a(S,"rowSpan");if(T<=1){G.remove(S)}else{s(S,"rowSpan",T-1)}O=S}})}N=k();e(N.reverse(),function(O){M(O)});q()}function E(){var M=k();G.remove(M);q();return M}function J(){var M=k();e(M,function(O,N){M[N]=A(O,true)});return M}function B(O,N){if(!O){return}var P=k(),M=P[N?0:P.length-1],Q=M.cells.length;e(g,function(S){var R;Q=0;e(S,function(U,T){if(U.real){Q+=U.colspan}if(U.elm.parentNode==M){R=1}});if(R){return false}});if(!N){O.reverse()}e(O,function(T){var S=T.cells.length,R;for(i=0;i<S;i++){R=T.cells[i];s(R,"colSpan",1);s(R,"rowSpan",1)}for(i=S;i<Q;i++){T.appendChild(f(T.cells[S-1]))}for(i=Q;i<S;i++){G.remove(T.cells[i])}if(N){M.parentNode.insertBefore(T,M)}else{G.insertAfter(T,M)}});G.removeClass(G.select("td.mceSelected,th.mceSelected"),"mceSelected")}function F(M){var N;e(g,function(O,P){e(O,function(R,Q){if(R.elm==M){N={x:Q,y:P};return false}});return !N});return N}function w(M){L=F(M)}function I(){var O,N,M;N=M=0;e(g,function(P,Q){e(P,function(S,R){var U,T;if(j(S)){S=g[Q][R];if(R>N){N=R}if(Q>M){M=Q}if(S.real){U=S.colspan-1;T=S.rowspan-1;if(U){if(R+U>N){N=R+U}}if(T){if(Q+T>M){M=Q+T}}}}})});return{x:N,y:M}}function v(S){var P,O,U,T,N,M,Q,R;D=F(S);if(L&&D){P=Math.min(L.x,D.x);O=Math.min(L.y,D.y);U=Math.max(L.x,D.x);T=Math.max(L.y,D.y);N=U;M=T;for(y=O;y<=M;y++){S=g[y][P];if(!S.real){if(P-(S.colspan-1)<P){P-=S.colspan-1}}}for(x=P;x<=N;x++){S=g[O][x];if(!S.real){if(O-(S.rowspan-1)<O){O-=S.rowspan-1}}}for(y=O;y<=T;y++){for(x=P;x<=U;x++){S=g[y][x];if(S.real){Q=S.colspan-1;R=S.rowspan-1;if(Q){if(x+Q>N){N=x+Q}}if(R){if(y+R>M){M=y+R}}}}}G.removeClass(G.select("td.mceSelected,th.mceSelected"),"mceSelected");for(y=O;y<=M;y++){for(x=P;x<=N;x++){if(g[y][x]){G.addClass(g[y][x].elm,"mceSelected")}}}}}d.extend(this,{deleteTable:r,split:C,merge:p,insertRow:l,insertCol:h,deleteCols:n,deleteRows:m,cutRows:E,copyRows:J,pasteRows:B,getPos:F,setStartCell:w,setEndCell:v})}d.create("tinymce.plugins.TablePlugin",{init:function(g,h){var f,m,j=true;function l(p){var o=g.selection,n=g.dom.getParent(p||o.getNode(),"table");if(n){return new b(n,g.dom,o)}}function k(){g.getBody().style.webkitUserSelect="";if(j){g.dom.removeClass(g.dom.select("td.mceSelected,th.mceSelected"),"mceSelected");j=false}}e([["table","table.desc","mceInsertTable",true],["delete_table","table.del","mceTableDelete"],["delete_col","table.delete_col_desc","mceTableDeleteCol"],["delete_row","table.delete_row_desc","mceTableDeleteRow"],["col_after","table.col_after_desc","mceTableInsertColAfter"],["col_before","table.col_before_desc","mceTableInsertColBefore"],["row_after","table.row_after_desc","mceTableInsertRowAfter"],["row_before","table.row_before_desc","mceTableInsertRowBefore"],["row_props","table.row_desc","mceTableRowProps",true],["cell_props","table.cell_desc","mceTableCellProps",true],["split_cells","table.split_cells_desc","mceTableSplitCells",true],["merge_cells","table.merge_cells_desc","mceTableMergeCells",true]],function(n){g.addButton(n[0],{title:n[1],cmd:n[2],ui:n[3]})});if(!d.isIE){g.onClick.add(function(n,o){o=o.target;if(o.nodeName==="TABLE"){n.selection.select(o);n.nodeChanged()}})}g.onPreProcess.add(function(o,p){var n,q,r,t=o.dom,s;n=t.select("table",p.node);q=n.length;while(q--){r=n[q];t.setAttrib(r,"data-mce-style","");if((s=t.getAttrib(r,"width"))){t.setStyle(r,"width",s);t.setAttrib(r,"width","")}if((s=t.getAttrib(r,"height"))){t.setStyle(r,"height",s);t.setAttrib(r,"height","")}}});g.onNodeChange.add(function(q,o,s){var r;s=q.selection.getStart();r=q.dom.getParent(s,"td,th,caption");o.setActive("table",s.nodeName==="TABLE"||!!r);if(r&&r.nodeName==="CAPTION"){r=0}o.setDisabled("delete_table",!r);o.setDisabled("delete_col",!r);o.setDisabled("delete_table",!r);o.setDisabled("delete_row",!r);o.setDisabled("col_after",!r);o.setDisabled("col_before",!r);o.setDisabled("row_after",!r);o.setDisabled("row_before",!r);o.setDisabled("row_props",!r);o.setDisabled("cell_props",!r);o.setDisabled("split_cells",!r);o.setDisabled("merge_cells",!r)});g.onInit.add(function(r){var p,t,q=r.dom,u;f=r.windowManager;r.onMouseDown.add(function(w,z){if(z.button!=2){k();t=q.getParent(z.target,"td,th");p=q.getParent(t,"table")}});q.bind(r.getDoc(),"mouseover",function(C){var A,z,B=C.target;if(t&&(u||B!=t)&&(B.nodeName=="TD"||B.nodeName=="TH")){z=q.getParent(B,"table");if(z==p){if(!u){u=l(z);u.setStartCell(t);r.getBody().style.webkitUserSelect="none"}u.setEndCell(B);j=true}A=r.selection.getSel();try{if(A.removeAllRanges){A.removeAllRanges()}else{A.empty()}}catch(w){}C.preventDefault()}});r.onMouseUp.add(function(F,G){var z,B=F.selection,H,I=B.getSel(),w,C,A,E;if(t){if(u){F.getBody().style.webkitUserSelect=""}function D(J,L){var K=new d.dom.TreeWalker(J,J);do{if(J.nodeType==3&&d.trim(J.nodeValue).length!=0){if(L){z.setStart(J,0)}else{z.setEnd(J,J.nodeValue.length)}return}if(J.nodeName=="BR"){if(L){z.setStartBefore(J)}else{z.setEndBefore(J)}return}}while(J=(L?K.next():K.prev()))}H=q.select("td.mceSelected,th.mceSelected");if(H.length>0){z=q.createRng();C=H[0];E=H[H.length-1];z.setStartBefore(C);z.setEndAfter(C);D(C,1);w=new d.dom.TreeWalker(C,q.getParent(H[0],"table"));do{if(C.nodeName=="TD"||C.nodeName=="TH"){if(!q.hasClass(C,"mceSelected")){break}A=C}}while(C=w.next());D(A);B.setRng(z)}F.nodeChanged();t=u=p=null}});r.onKeyUp.add(function(w,z){k()});r.onKeyDown.add(function(w,z){n(w)});r.onMouseDown.add(function(w,z){if(z.button!=2){n(w)}});function o(D,z,A,F){var B=3,G=D.dom.getParent(z.startContainer,"TABLE"),C,w,E;if(G){C=G.parentNode}w=z.startContainer.nodeType==B&&z.startOffset==0&&z.endOffset==0&&F&&(A.nodeName=="TR"||A==C);E=(A.nodeName=="TD"||A.nodeName=="TH")&&!F;return w||E}function n(A){if(!d.isWebKit){return}var z=A.selection.getRng();var C=A.selection.getNode();var B=A.dom.getParent(z.startContainer,"TD,TH");if(!o(A,z,C,B)){return}if(!B){B=C}var w=B.lastChild;while(w.lastChild){w=w.lastChild}z.setEnd(w,w.nodeValue.length);A.selection.setRng(z)}r.plugins.table.fixTableCellSelection=n;if(r&&r.plugins.contextmenu){r.plugins.contextmenu.onContextMenu.add(function(A,w,C){var D,B=r.selection,z=B.getNode()||r.getBody();if(r.dom.getParent(C,"td")||r.dom.getParent(C,"th")||r.dom.select("td.mceSelected,th.mceSelected").length){w.removeAll();if(z.nodeName=="A"&&!r.dom.getAttrib(z,"name")){w.add({title:"advanced.link_desc",icon:"link",cmd:r.plugins.advlink?"mceAdvLink":"mceLink",ui:true});w.add({title:"advanced.unlink_desc",icon:"unlink",cmd:"UnLink"});w.addSeparator()}if(z.nodeName=="IMG"&&z.className.indexOf("mceItem")==-1){w.add({title:"advanced.image_desc",icon:"image",cmd:r.plugins.advimage?"mceAdvImage":"mceImage",ui:true});w.addSeparator()}w.add({title:"table.desc",icon:"table",cmd:"mceInsertTable",value:{action:"insert"}});w.add({title:"table.props_desc",icon:"table_props",cmd:"mceInsertTable"});w.add({title:"table.del",icon:"delete_table",cmd:"mceTableDelete"});w.addSeparator();D=w.addMenu({title:"table.cell"});D.add({title:"table.cell_desc",icon:"cell_props",cmd:"mceTableCellProps"});D.add({title:"table.split_cells_desc",icon:"split_cells",cmd:"mceTableSplitCells"});D.add({title:"table.merge_cells_desc",icon:"merge_cells",cmd:"mceTableMergeCells"});D=w.addMenu({title:"table.row"});D.add({title:"table.row_desc",icon:"row_props",cmd:"mceTableRowProps"});D.add({title:"table.row_before_desc",icon:"row_before",cmd:"mceTableInsertRowBefore"});D.add({title:"table.row_after_desc",icon:"row_after",cmd:"mceTableInsertRowAfter"});D.add({title:"table.delete_row_desc",icon:"delete_row",cmd:"mceTableDeleteRow"});D.addSeparator();D.add({title:"table.cut_row_desc",icon:"cut",cmd:"mceTableCutRow"});D.add({title:"table.copy_row_desc",icon:"copy",cmd:"mceTableCopyRow"});D.add({title:"table.paste_row_before_desc",icon:"paste",cmd:"mceTablePasteRowBefore"}).setDisabled(!m);D.add({title:"table.paste_row_after_desc",icon:"paste",cmd:"mceTablePasteRowAfter"}).setDisabled(!m);D=w.addMenu({title:"table.col"});D.add({title:"table.col_before_desc",icon:"col_before",cmd:"mceTableInsertColBefore"});D.add({title:"table.col_after_desc",icon:"col_after",cmd:"mceTableInsertColAfter"});D.add({title:"table.delete_col_desc",icon:"delete_col",cmd:"mceTableDeleteCol"})}else{w.add({title:"table.desc",icon:"table",cmd:"mceInsertTable"})}})}if(d.isWebKit){function v(C,N){var L=d.VK;var Q=N.keyCode;function O(Y,U,S){var T=Y?"previousSibling":"nextSibling";var Z=C.dom.getParent(U,"tr");var X=Z[T];if(X){z(C,U,X,Y);d.dom.Event.cancel(S);return true}else{var aa=C.dom.getParent(Z,"table");var W=Z.parentNode;var R=W.nodeName.toLowerCase();if(R==="tbody"||R===(Y?"tfoot":"thead")){var V=w(Y,aa,W,"tbody");if(V!==null){return K(Y,V,U,S)}}return M(Y,Z,T,aa,S)}}function w(V,T,U,X){var S=C.dom.select(">"+X,T);var R=S.indexOf(U);if(V&&R===0||!V&&R===S.length-1){return B(V,T)}else{if(R===-1){var W=U.tagName.toLowerCase()==="thead"?0:S.length-1;return S[W]}else{return S[R+(V?-1:1)]}}}function B(U,T){var S=U?"thead":"tfoot";var R=C.dom.select(">"+S,T);return R.length!==0?R[0]:null}function K(V,T,S,U){var R=J(T,V);R&&z(C,S,R,V);d.dom.Event.cancel(U);return true}function M(Y,U,R,X,W){var S=X[R];if(S){F(S);return true}else{var V=C.dom.getParent(X,"td,th");if(V){return O(Y,V,W)}else{var T=J(U,!Y);F(T);return d.dom.Event.cancel(W)}}}function J(S,R){var T=S&&S[R?"lastChild":"firstChild"];return T&&T.nodeName==="BR"?C.dom.getParent(T,"td,th"):T}function F(R){C.selection.setCursorLocation(R,0)}function A(){return Q==L.UP||Q==L.DOWN}function D(R){var T=R.selection.getNode();var S=R.dom.getParent(T,"tr");return S!==null}function P(S){var R=0;var T=S;while(T.previousSibling){T=T.previousSibling;R=R+a(T,"colspan")}return R}function E(T,R){var U=0;var S=0;e(T.children,function(V,W){U=U+a(V,"colspan");S=W;if(U>R){return false}});return S}function z(T,W,Y,V){var X=P(T.dom.getParent(W,"td,th"));var S=E(Y,X);var R=Y.childNodes[S];var U=J(R,V);F(U||R)}function H(R){var T=C.selection.getNode();var U=C.dom.getParent(T,"td,th");var S=C.dom.getParent(R,"td,th");return U&&U!==S&&I(U,S)}function I(S,R){return C.dom.getParent(S,"TABLE")===C.dom.getParent(R,"TABLE")}if(A()&&D(C)){var G=C.selection.getNode();setTimeout(function(){if(H(G)){O(!N.shiftKey&&Q===L.UP,G,N)}},0)}}r.onKeyDown.add(v)}function s(){var w;for(w=r.getBody().lastChild;w&&w.nodeType==3&&!w.nodeValue.length;w=w.previousSibling){}if(w&&w.nodeName=="TABLE"){if(r.settings.forced_root_block){r.dom.add(r.getBody(),r.settings.forced_root_block,null,d.isIE?"&nbsp;":'<br data-mce-bogus="1" />')}else{r.dom.add(r.getBody(),"br",{"data-mce-bogus":"1"})}}}if(d.isGecko){r.onKeyDown.add(function(z,B){var w,A,C=z.dom;if(B.keyCode==37||B.keyCode==38){w=z.selection.getRng();A=C.getParent(w.startContainer,"table");if(A&&z.getBody().firstChild==A){if(c(w,A)){w=C.createRng();w.setStartBefore(A);w.setEndBefore(A);z.selection.setRng(w);B.preventDefault()}}}})}r.onKeyUp.add(s);r.onSetContent.add(s);r.onVisualAid.add(s);r.onPreProcess.add(function(w,A){var z=A.node.lastChild;if(z&&(z.nodeName=="BR"||(z.childNodes.length==1&&(z.firstChild.nodeName=="BR"||z.firstChild.nodeValue=="\u00a0")))&&z.previousSibling&&z.previousSibling.nodeName=="TABLE"){w.dom.remove(z)}});s();r.startContent=r.getContent({format:"raw"})});e({mceTableSplitCells:function(n){n.split()},mceTableMergeCells:function(o){var p,q,n;n=g.dom.getParent(g.selection.getNode(),"th,td");if(n){p=n.rowSpan;q=n.colSpan}if(!g.dom.select("td.mceSelected,th.mceSelected").length){f.open({url:h+"/merge_cells.htm",width:240+parseInt(g.getLang("table.merge_cells_delta_width",0)),height:110+parseInt(g.getLang("table.merge_cells_delta_height",0)),inline:1},{rows:p,cols:q,onaction:function(r){o.merge(n,r.cols,r.rows)},plugin_url:h})}else{o.merge()}},mceTableInsertRowBefore:function(n){n.insertRow(true)},mceTableInsertRowAfter:function(n){n.insertRow()},mceTableInsertColBefore:function(n){n.insertCol(true)},mceTableInsertColAfter:function(n){n.insertCol()},mceTableDeleteCol:function(n){n.deleteCols()},mceTableDeleteRow:function(n){n.deleteRows()},mceTableCutRow:function(n){m=n.cutRows()},mceTableCopyRow:function(n){m=n.copyRows()},mceTablePasteRowBefore:function(n){n.pasteRows(m,true)},mceTablePasteRowAfter:function(n){n.pasteRows(m)},mceTableDelete:function(n){n.deleteTable()}},function(o,n){g.addCommand(n,function(){var p=l();if(p){o(p);g.execCommand("mceRepaint");k()}})});e({mceInsertTable:function(n){f.open({url:h+"/table.htm",width:400+parseInt(g.getLang("table.table_delta_width",0)),height:320+parseInt(g.getLang("table.table_delta_height",0)),inline:1},{plugin_url:h,action:n?n.action:0})},mceTableRowProps:function(){f.open({url:h+"/row.htm",width:400+parseInt(g.getLang("table.rowprops_delta_width",0)),height:295+parseInt(g.getLang("table.rowprops_delta_height",0)),inline:1},{plugin_url:h})},mceTableCellProps:function(){f.open({url:h+"/cell.htm",width:400+parseInt(g.getLang("table.cellprops_delta_width",0)),height:295+parseInt(g.getLang("table.cellprops_delta_height",0)),inline:1},{plugin_url:h})}},function(o,n){g.addCommand(n,function(p,q){o(q)})})}});d.PluginManager.add("table",d.plugins.TablePlugin)})(tinymce);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/cell.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/cell.js
new file mode 100644 (file)
index 0000000..6f77e67
--- /dev/null
@@ -0,0 +1,319 @@
+tinyMCEPopup.requireLangPack();
+
+var ed;
+
+function init() {
+       ed = tinyMCEPopup.editor;
+       tinyMCEPopup.resizeToInnerSize();
+
+       document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');
+       document.getElementById('bordercolor_pickcontainer').innerHTML = getColorPickerHTML('bordercolor_pick','bordercolor');
+       document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor')
+
+       var inst = ed;
+       var tdElm = ed.dom.getParent(ed.selection.getStart(), "td,th");
+       var formObj = document.forms[0];
+       var st = ed.dom.parseStyle(ed.dom.getAttrib(tdElm, "style"));
+
+       // Get table cell data
+       var celltype = tdElm.nodeName.toLowerCase();
+       var align = ed.dom.getAttrib(tdElm, 'align');
+       var valign = ed.dom.getAttrib(tdElm, 'valign');
+       var width = trimSize(getStyle(tdElm, 'width', 'width'));
+       var height = trimSize(getStyle(tdElm, 'height', 'height'));
+       var bordercolor = convertRGBToHex(getStyle(tdElm, 'bordercolor', 'borderLeftColor'));
+       var bgcolor = convertRGBToHex(getStyle(tdElm, 'bgcolor', 'backgroundColor'));
+       var className = ed.dom.getAttrib(tdElm, 'class');
+       var backgroundimage = getStyle(tdElm, 'background', 'backgroundImage').replace(new RegExp("url\\(['\"]?([^'\"]*)['\"]?\\)", 'gi'), "$1");
+       var id = ed.dom.getAttrib(tdElm, 'id');
+       var lang = ed.dom.getAttrib(tdElm, 'lang');
+       var dir = ed.dom.getAttrib(tdElm, 'dir');
+       var scope = ed.dom.getAttrib(tdElm, 'scope');
+
+       // Setup form
+       addClassesToList('class', 'table_cell_styles');
+       TinyMCE_EditableSelects.init();
+
+       if (!ed.dom.hasClass(tdElm, 'mceSelected')) {
+               formObj.bordercolor.value = bordercolor;
+               formObj.bgcolor.value = bgcolor;
+               formObj.backgroundimage.value = backgroundimage;
+               formObj.width.value = width;
+               formObj.height.value = height;
+               formObj.id.value = id;
+               formObj.lang.value = lang;
+               formObj.style.value = ed.dom.serializeStyle(st);
+               selectByValue(formObj, 'align', align);
+               selectByValue(formObj, 'valign', valign);
+               selectByValue(formObj, 'class', className, true, true);
+               selectByValue(formObj, 'celltype', celltype);
+               selectByValue(formObj, 'dir', dir);
+               selectByValue(formObj, 'scope', scope);
+
+               // Resize some elements
+               if (isVisible('backgroundimagebrowser'))
+                       document.getElementById('backgroundimage').style.width = '180px';
+
+               updateColor('bordercolor_pick', 'bordercolor');
+               updateColor('bgcolor_pick', 'bgcolor');
+       } else
+               tinyMCEPopup.dom.hide('action');
+}
+
+function updateAction() {
+       var el, inst = ed, tdElm, trElm, tableElm, formObj = document.forms[0];
+
+       if (!AutoValidator.validate(formObj)) {
+               tinyMCEPopup.alert(AutoValidator.getErrorMessages(formObj).join('. ') + '.');
+               return false;
+       }
+
+       tinyMCEPopup.restoreSelection();
+       el = ed.selection.getStart();
+       tdElm = ed.dom.getParent(el, "td,th");
+       trElm = ed.dom.getParent(el, "tr");
+       tableElm = ed.dom.getParent(el, "table");
+
+       // Cell is selected
+       if (ed.dom.hasClass(tdElm, 'mceSelected')) {
+               // Update all selected sells
+               tinymce.each(ed.dom.select('td.mceSelected,th.mceSelected'), function(td) {
+                       updateCell(td);
+               });
+
+               ed.addVisual();
+               ed.nodeChanged();
+               inst.execCommand('mceEndUndoLevel');
+               tinyMCEPopup.close();
+               return;
+       }
+
+       switch (getSelectValue(formObj, 'action')) {
+               case "cell":
+                       var celltype = getSelectValue(formObj, 'celltype');
+                       var scope = getSelectValue(formObj, 'scope');
+
+                       function doUpdate(s) {
+                               if (s) {
+                                       updateCell(tdElm);
+
+                                       ed.addVisual();
+                                       ed.nodeChanged();
+                                       inst.execCommand('mceEndUndoLevel');
+                                       tinyMCEPopup.close();
+                               }
+                       };
+
+                       if (ed.getParam("accessibility_warnings", 1)) {
+                               if (celltype == "th" && scope == "")
+                                       tinyMCEPopup.confirm(ed.getLang('table_dlg.missing_scope', '', true), doUpdate);
+                               else
+                                       doUpdate(1);
+
+                               return;
+                       }
+
+                       updateCell(tdElm);
+                       break;
+
+               case "row":
+                       var cell = trElm.firstChild;
+
+                       if (cell.nodeName != "TD" && cell.nodeName != "TH")
+                               cell = nextCell(cell);
+
+                       do {
+                               cell = updateCell(cell, true);
+                       } while ((cell = nextCell(cell)) != null);
+
+                       break;
+
+               case "col":
+                       var curr, col = 0, cell = trElm.firstChild, rows = tableElm.getElementsByTagName("tr");
+
+                       if (cell.nodeName != "TD" && cell.nodeName != "TH")
+                               cell = nextCell(cell);
+
+                       do {
+                               if (cell == tdElm)
+                                       break;
+                               col += cell.getAttribute("colspan")?cell.getAttribute("colspan"):1;
+                       } while ((cell = nextCell(cell)) != null);
+
+                       for (var i=0; i<rows.length; i++) {
+                               cell = rows[i].firstChild;
+
+                               if (cell.nodeName != "TD" && cell.nodeName != "TH")
+                                       cell = nextCell(cell);
+
+                               curr = 0;
+                               do {
+                                       if (curr == col) {
+                                               cell = updateCell(cell, true);
+                                               break;
+                                       }
+                                       curr += cell.getAttribute("colspan")?cell.getAttribute("colspan"):1;
+                               } while ((cell = nextCell(cell)) != null);
+                       }
+
+                       break;
+
+               case "all":
+                       var rows = tableElm.getElementsByTagName("tr");
+
+                       for (var i=0; i<rows.length; i++) {
+                               var cell = rows[i].firstChild;
+
+                               if (cell.nodeName != "TD" && cell.nodeName != "TH")
+                                       cell = nextCell(cell);
+
+                               do {
+                                       cell = updateCell(cell, true);
+                               } while ((cell = nextCell(cell)) != null);
+                       }
+
+                       break;
+       }
+
+       ed.addVisual();
+       ed.nodeChanged();
+       inst.execCommand('mceEndUndoLevel');
+       tinyMCEPopup.close();
+}
+
+function nextCell(elm) {
+       while ((elm = elm.nextSibling) != null) {
+               if (elm.nodeName == "TD" || elm.nodeName == "TH")
+                       return elm;
+       }
+
+       return null;
+}
+
+function updateCell(td, skip_id) {
+       var inst = ed;
+       var formObj = document.forms[0];
+       var curCellType = td.nodeName.toLowerCase();
+       var celltype = getSelectValue(formObj, 'celltype');
+       var doc = inst.getDoc();
+       var dom = ed.dom;
+
+       if (!skip_id)
+               dom.setAttrib(td, 'id', formObj.id.value);
+
+       dom.setAttrib(td, 'align', formObj.align.value);
+       dom.setAttrib(td, 'vAlign', formObj.valign.value);
+       dom.setAttrib(td, 'lang', formObj.lang.value);
+       dom.setAttrib(td, 'dir', getSelectValue(formObj, 'dir'));
+       dom.setAttrib(td, 'style', ed.dom.serializeStyle(ed.dom.parseStyle(formObj.style.value)));
+       dom.setAttrib(td, 'scope', formObj.scope.value);
+       dom.setAttrib(td, 'class', getSelectValue(formObj, 'class'));
+
+       // Clear deprecated attributes
+       ed.dom.setAttrib(td, 'width', '');
+       ed.dom.setAttrib(td, 'height', '');
+       ed.dom.setAttrib(td, 'bgColor', '');
+       ed.dom.setAttrib(td, 'borderColor', '');
+       ed.dom.setAttrib(td, 'background', '');
+
+       // Set styles
+       td.style.width = getCSSSize(formObj.width.value);
+       td.style.height = getCSSSize(formObj.height.value);
+       if (formObj.bordercolor.value != "") {
+               td.style.borderColor = formObj.bordercolor.value;
+               td.style.borderStyle = td.style.borderStyle == "" ? "solid" : td.style.borderStyle;
+               td.style.borderWidth = td.style.borderWidth == "" ? "1px" : td.style.borderWidth;
+       } else
+               td.style.borderColor = '';
+
+       td.style.backgroundColor = formObj.bgcolor.value;
+
+       if (formObj.backgroundimage.value != "")
+               td.style.backgroundImage = "url('" + formObj.backgroundimage.value + "')";
+       else
+               td.style.backgroundImage = '';
+
+       if (curCellType != celltype) {
+               // changing to a different node type
+               var newCell = doc.createElement(celltype);
+
+               for (var c=0; c<td.childNodes.length; c++)
+                       newCell.appendChild(td.childNodes[c].cloneNode(1));
+
+               for (var a=0; a<td.attributes.length; a++)
+                       ed.dom.setAttrib(newCell, td.attributes[a].name, ed.dom.getAttrib(td, td.attributes[a].name));
+
+               td.parentNode.replaceChild(newCell, td);
+               td = newCell;
+       }
+
+       dom.setAttrib(td, 'style', dom.serializeStyle(dom.parseStyle(td.style.cssText)));
+
+       return td;
+}
+
+function changedBackgroundImage() {
+       var formObj = document.forms[0];
+       var st = ed.dom.parseStyle(formObj.style.value);
+
+       st['background-image'] = "url('" + formObj.backgroundimage.value + "')";
+
+       formObj.style.value = ed.dom.serializeStyle(st);
+}
+
+function changedSize() {
+       var formObj = document.forms[0];
+       var st = ed.dom.parseStyle(formObj.style.value);
+
+       var width = formObj.width.value;
+       if (width != "")
+               st['width'] = getCSSSize(width);
+       else
+               st['width'] = "";
+
+       var height = formObj.height.value;
+       if (height != "")
+               st['height'] = getCSSSize(height);
+       else
+               st['height'] = "";
+
+       formObj.style.value = ed.dom.serializeStyle(st);
+}
+
+function changedColor() {
+       var formObj = document.forms[0];
+       var st = ed.dom.parseStyle(formObj.style.value);
+
+       st['background-color'] = formObj.bgcolor.value;
+       st['border-color'] = formObj.bordercolor.value;
+
+       formObj.style.value = ed.dom.serializeStyle(st);
+}
+
+function changedStyle() {
+       var formObj = document.forms[0];
+       var st = ed.dom.parseStyle(formObj.style.value);
+
+       if (st['background-image'])
+               formObj.backgroundimage.value = st['background-image'].replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");
+       else
+               formObj.backgroundimage.value = '';
+
+       if (st['width'])
+               formObj.width.value = trimSize(st['width']);
+
+       if (st['height'])
+               formObj.height.value = trimSize(st['height']);
+
+       if (st['background-color']) {
+               formObj.bgcolor.value = st['background-color'];
+               updateColor('bgcolor_pick','bgcolor');
+       }
+
+       if (st['border-color']) {
+               formObj.bordercolor.value = st['border-color'];
+               updateColor('bordercolor_pick','bordercolor');
+       }
+}
+
+tinyMCEPopup.onInit.add(init);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/merge_cells.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/merge_cells.js
new file mode 100644 (file)
index 0000000..fc2a048
--- /dev/null
@@ -0,0 +1,27 @@
+tinyMCEPopup.requireLangPack();
+
+var MergeCellsDialog = {
+       init : function() {
+               var f = document.forms[0];
+
+               f.numcols.value = tinyMCEPopup.getWindowArg('cols', 1);
+               f.numrows.value = tinyMCEPopup.getWindowArg('rows', 1);
+       },
+
+       merge : function() {
+               var func, f = document.forms[0];
+
+               tinyMCEPopup.restoreSelection();
+
+               func = tinyMCEPopup.getWindowArg('onaction');
+
+               func({
+                       cols : f.numcols.value,
+                       rows : f.numrows.value
+               });
+
+               tinyMCEPopup.close();
+       }
+};
+
+tinyMCEPopup.onInit.add(MergeCellsDialog.init, MergeCellsDialog);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/row.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/row.js
new file mode 100644 (file)
index 0000000..503d9ef
--- /dev/null
@@ -0,0 +1,254 @@
+tinyMCEPopup.requireLangPack();
+
+function init() {
+       tinyMCEPopup.resizeToInnerSize();
+
+       document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');
+       document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');
+
+       var inst = tinyMCEPopup.editor;
+       var dom = inst.dom;
+       var trElm = dom.getParent(inst.selection.getStart(), "tr");
+       var formObj = document.forms[0];
+       var st = dom.parseStyle(dom.getAttrib(trElm, "style"));
+
+       // Get table row data
+       var rowtype = trElm.parentNode.nodeName.toLowerCase();
+       var align = dom.getAttrib(trElm, 'align');
+       var valign = dom.getAttrib(trElm, 'valign');
+       var height = trimSize(getStyle(trElm, 'height', 'height'));
+       var className = dom.getAttrib(trElm, 'class');
+       var bgcolor = convertRGBToHex(getStyle(trElm, 'bgcolor', 'backgroundColor'));
+       var backgroundimage = getStyle(trElm, 'background', 'backgroundImage').replace(new RegExp("url\\(['\"]?([^'\"]*)['\"]?\\)", 'gi'), "$1");
+       var id = dom.getAttrib(trElm, 'id');
+       var lang = dom.getAttrib(trElm, 'lang');
+       var dir = dom.getAttrib(trElm, 'dir');
+
+       selectByValue(formObj, 'rowtype', rowtype);
+       setActionforRowType(formObj, rowtype);
+
+       // Any cells selected
+       if (dom.select('td.mceSelected,th.mceSelected', trElm).length == 0) {
+               // Setup form
+               addClassesToList('class', 'table_row_styles');
+               TinyMCE_EditableSelects.init();
+
+               formObj.bgcolor.value = bgcolor;
+               formObj.backgroundimage.value = backgroundimage;
+               formObj.height.value = height;
+               formObj.id.value = id;
+               formObj.lang.value = lang;
+               formObj.style.value = dom.serializeStyle(st);
+               selectByValue(formObj, 'align', align);
+               selectByValue(formObj, 'valign', valign);
+               selectByValue(formObj, 'class', className, true, true);
+               selectByValue(formObj, 'dir', dir);
+
+               // Resize some elements
+               if (isVisible('backgroundimagebrowser'))
+                       document.getElementById('backgroundimage').style.width = '180px';
+
+               updateColor('bgcolor_pick', 'bgcolor');
+       } else
+               tinyMCEPopup.dom.hide('action');
+}
+
+function updateAction() {
+       var inst = tinyMCEPopup.editor, dom = inst.dom, trElm, tableElm, formObj = document.forms[0];
+       var action = getSelectValue(formObj, 'action');
+
+       if (!AutoValidator.validate(formObj)) {
+               tinyMCEPopup.alert(AutoValidator.getErrorMessages(formObj).join('. ') + '.');
+               return false;
+       }
+
+       tinyMCEPopup.restoreSelection();
+       trElm = dom.getParent(inst.selection.getStart(), "tr");
+       tableElm = dom.getParent(inst.selection.getStart(), "table");
+
+       // Update all selected rows
+       if (dom.select('td.mceSelected,th.mceSelected', trElm).length > 0) {
+               tinymce.each(tableElm.rows, function(tr) {
+                       var i;
+
+                       for (i = 0; i < tr.cells.length; i++) {
+                               if (dom.hasClass(tr.cells[i], 'mceSelected')) {
+                                       updateRow(tr, true);
+                                       return;
+                               }
+                       }
+               });
+
+               inst.addVisual();
+               inst.nodeChanged();
+               inst.execCommand('mceEndUndoLevel');
+               tinyMCEPopup.close();
+               return;
+       }
+
+       switch (action) {
+               case "row":
+                       updateRow(trElm);
+                       break;
+
+               case "all":
+                       var rows = tableElm.getElementsByTagName("tr");
+
+                       for (var i=0; i<rows.length; i++)
+                               updateRow(rows[i], true);
+
+                       break;
+
+               case "odd":
+               case "even":
+                       var rows = tableElm.getElementsByTagName("tr");
+
+                       for (var i=0; i<rows.length; i++) {
+                               if ((i % 2 == 0 && action == "odd") || (i % 2 != 0 && action == "even"))
+                                       updateRow(rows[i], true, true);
+                       }
+
+                       break;
+       }
+
+       inst.addVisual();
+       inst.nodeChanged();
+       inst.execCommand('mceEndUndoLevel');
+       tinyMCEPopup.close();
+}
+
+function updateRow(tr_elm, skip_id, skip_parent) {
+       var inst = tinyMCEPopup.editor;
+       var formObj = document.forms[0];
+       var dom = inst.dom;
+       var curRowType = tr_elm.parentNode.nodeName.toLowerCase();
+       var rowtype = getSelectValue(formObj, 'rowtype');
+       var doc = inst.getDoc();
+
+       // Update row element
+       if (!skip_id)
+               dom.setAttrib(tr_elm, 'id', formObj.id.value);
+
+       dom.setAttrib(tr_elm, 'align', getSelectValue(formObj, 'align'));
+       dom.setAttrib(tr_elm, 'vAlign', getSelectValue(formObj, 'valign'));
+       dom.setAttrib(tr_elm, 'lang', formObj.lang.value);
+       dom.setAttrib(tr_elm, 'dir', getSelectValue(formObj, 'dir'));
+       dom.setAttrib(tr_elm, 'style', dom.serializeStyle(dom.parseStyle(formObj.style.value)));
+       dom.setAttrib(tr_elm, 'class', getSelectValue(formObj, 'class'));
+
+       // Clear deprecated attributes
+       dom.setAttrib(tr_elm, 'background', '');
+       dom.setAttrib(tr_elm, 'bgColor', '');
+       dom.setAttrib(tr_elm, 'height', '');
+
+       // Set styles
+       tr_elm.style.height = getCSSSize(formObj.height.value);
+       tr_elm.style.backgroundColor = formObj.bgcolor.value;
+
+       if (formObj.backgroundimage.value != "")
+               tr_elm.style.backgroundImage = "url('" + formObj.backgroundimage.value + "')";
+       else
+               tr_elm.style.backgroundImage = '';
+
+       // Setup new rowtype
+       if (curRowType != rowtype && !skip_parent) {
+               // first, clone the node we are working on
+               var newRow = tr_elm.cloneNode(1);
+
+               // next, find the parent of its new destination (creating it if necessary)
+               var theTable = dom.getParent(tr_elm, "table");
+               var dest = rowtype;
+               var newParent = null;
+               for (var i = 0; i < theTable.childNodes.length; i++) {
+                       if (theTable.childNodes[i].nodeName.toLowerCase() == dest)
+                               newParent = theTable.childNodes[i];
+               }
+
+               if (newParent == null) {
+                       newParent = doc.createElement(dest);
+
+                       if (theTable.firstChild.nodeName == 'CAPTION')
+                               inst.dom.insertAfter(newParent, theTable.firstChild);
+                       else
+                               theTable.insertBefore(newParent, theTable.firstChild);
+               }
+
+               // append the row to the new parent
+               newParent.appendChild(newRow);
+
+               // remove the original
+               tr_elm.parentNode.removeChild(tr_elm);
+
+               // set tr_elm to the new node
+               tr_elm = newRow;
+       }
+
+       dom.setAttrib(tr_elm, 'style', dom.serializeStyle(dom.parseStyle(tr_elm.style.cssText)));
+}
+
+function changedBackgroundImage() {
+       var formObj = document.forms[0], dom = tinyMCEPopup.editor.dom;
+       var st = dom.parseStyle(formObj.style.value);
+
+       st['background-image'] = "url('" + formObj.backgroundimage.value + "')";
+
+       formObj.style.value = dom.serializeStyle(st);
+}
+
+function changedStyle() {
+       var formObj = document.forms[0], dom = tinyMCEPopup.editor.dom;
+       var st = dom.parseStyle(formObj.style.value);
+
+       if (st['background-image'])
+               formObj.backgroundimage.value = st['background-image'].replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");
+       else
+               formObj.backgroundimage.value = '';
+
+       if (st['height'])
+               formObj.height.value = trimSize(st['height']);
+
+       if (st['background-color']) {
+               formObj.bgcolor.value = st['background-color'];
+               updateColor('bgcolor_pick','bgcolor');
+       }
+}
+
+function changedSize() {
+       var formObj = document.forms[0], dom = tinyMCEPopup.editor.dom;
+       var st = dom.parseStyle(formObj.style.value);
+
+       var height = formObj.height.value;
+       if (height != "")
+               st['height'] = getCSSSize(height);
+       else
+               st['height'] = "";
+
+       formObj.style.value = dom.serializeStyle(st);
+}
+
+function changedColor() {
+       var formObj = document.forms[0], dom = tinyMCEPopup.editor.dom;
+       var st = dom.parseStyle(formObj.style.value);
+
+       st['background-color'] = formObj.bgcolor.value;
+
+       formObj.style.value = dom.serializeStyle(st);
+}
+
+function changedRowType() {
+       var formObj = document.forms[0];
+       var rowtype = getSelectValue(formObj, 'rowtype');
+
+       setActionforRowType(formObj, rowtype);
+
+}
+
+function setActionforRowType(formObj, rowtype) {
+       if (rowtype === "tbody") {
+               formObj.action.disabled = false;
+       } else {
+               selectByValue(formObj, 'action', "row");
+               formObj.action.disabled = true;
+       }
+}
+tinyMCEPopup.onInit.add(init);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/table.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/js/table.js
new file mode 100644 (file)
index 0000000..a401d39
--- /dev/null
@@ -0,0 +1,501 @@
+tinyMCEPopup.requireLangPack();
+
+var action, orgTableWidth, orgTableHeight, dom = tinyMCEPopup.editor.dom;
+
+function insertTable() {
+       var formObj = document.forms[0];
+       var inst = tinyMCEPopup.editor, dom = inst.dom;
+       var cols = 2, rows = 2, border = 0, cellpadding = -1, cellspacing = -1, align, width, height, className, caption, frame, rules;
+       var html = '', capEl, elm;
+       var cellLimit, rowLimit, colLimit;
+
+       tinyMCEPopup.restoreSelection();
+
+       if (!AutoValidator.validate(formObj)) {
+               tinyMCEPopup.alert(AutoValidator.getErrorMessages(formObj).join('. ') + '.');
+               return false;
+       }
+
+       elm = dom.getParent(inst.selection.getNode(), 'table');
+
+       // Get form data
+       cols = formObj.elements['cols'].value;
+       rows = formObj.elements['rows'].value;
+       border = formObj.elements['border'].value != "" ? formObj.elements['border'].value : 0;
+       cellpadding = formObj.elements['cellpadding'].value != "" ? formObj.elements['cellpadding'].value : "";
+       cellspacing = formObj.elements['cellspacing'].value != "" ? formObj.elements['cellspacing'].value : "";
+       align = getSelectValue(formObj, "align");
+       frame = getSelectValue(formObj, "tframe");
+       rules = getSelectValue(formObj, "rules");
+       width = formObj.elements['width'].value;
+       height = formObj.elements['height'].value;
+       bordercolor = formObj.elements['bordercolor'].value;
+       bgcolor = formObj.elements['bgcolor'].value;
+       className = getSelectValue(formObj, "class");
+       id = formObj.elements['id'].value;
+       summary = formObj.elements['summary'].value;
+       style = formObj.elements['style'].value;
+       dir = formObj.elements['dir'].value;
+       lang = formObj.elements['lang'].value;
+       background = formObj.elements['backgroundimage'].value;
+       caption = formObj.elements['caption'].checked;
+
+       cellLimit = tinyMCEPopup.getParam('table_cell_limit', false);
+       rowLimit = tinyMCEPopup.getParam('table_row_limit', false);
+       colLimit = tinyMCEPopup.getParam('table_col_limit', false);
+
+       // Validate table size
+       if (colLimit && cols > colLimit) {
+               tinyMCEPopup.alert(inst.getLang('table_dlg.col_limit').replace(/\{\$cols\}/g, colLimit));
+               return false;
+       } else if (rowLimit && rows > rowLimit) {
+               tinyMCEPopup.alert(inst.getLang('table_dlg.row_limit').replace(/\{\$rows\}/g, rowLimit));
+               return false;
+       } else if (cellLimit && cols * rows > cellLimit) {
+               tinyMCEPopup.alert(inst.getLang('table_dlg.cell_limit').replace(/\{\$cells\}/g, cellLimit));
+               return false;
+       }
+
+       // Update table
+       if (action == "update") {
+               dom.setAttrib(elm, 'cellPadding', cellpadding, true);
+               dom.setAttrib(elm, 'cellSpacing', cellspacing, true);
+
+               if (!isCssSize(border)) {
+                       dom.setAttrib(elm, 'border', border);
+               } else {
+                       dom.setAttrib(elm, 'border', '');
+               }
+
+               if (border == '') {
+                       dom.setStyle(elm, 'border-width', '');
+                       dom.setStyle(elm, 'border', '');
+                       dom.setAttrib(elm, 'border', '');
+               }
+
+               dom.setAttrib(elm, 'align', align);
+               dom.setAttrib(elm, 'frame', frame);
+               dom.setAttrib(elm, 'rules', rules);
+               dom.setAttrib(elm, 'class', className);
+               dom.setAttrib(elm, 'style', style);
+               dom.setAttrib(elm, 'id', id);
+               dom.setAttrib(elm, 'summary', summary);
+               dom.setAttrib(elm, 'dir', dir);
+               dom.setAttrib(elm, 'lang', lang);
+
+               capEl = inst.dom.select('caption', elm)[0];
+
+               if (capEl && !caption)
+                       capEl.parentNode.removeChild(capEl);
+
+               if (!capEl && caption) {
+                       capEl = elm.ownerDocument.createElement('caption');
+
+                       if (!tinymce.isIE)
+                               capEl.innerHTML = '<br data-mce-bogus="1"/>';
+
+                       elm.insertBefore(capEl, elm.firstChild);
+               }
+
+               if (width && inst.settings.inline_styles) {
+                       dom.setStyle(elm, 'width', width);
+                       dom.setAttrib(elm, 'width', '');
+               } else {
+                       dom.setAttrib(elm, 'width', width, true);
+                       dom.setStyle(elm, 'width', '');
+               }
+
+               // Remove these since they are not valid XHTML
+               dom.setAttrib(elm, 'borderColor', '');
+               dom.setAttrib(elm, 'bgColor', '');
+               dom.setAttrib(elm, 'background', '');
+
+               if (height && inst.settings.inline_styles) {
+                       dom.setStyle(elm, 'height', height);
+                       dom.setAttrib(elm, 'height', '');
+               } else {
+                       dom.setAttrib(elm, 'height', height, true);
+                       dom.setStyle(elm, 'height', '');
+               }
+
+               if (background != '')
+                       elm.style.backgroundImage = "url('" + background + "')";
+               else
+                       elm.style.backgroundImage = '';
+
+/*             if (tinyMCEPopup.getParam("inline_styles")) {
+                       if (width != '')
+                               elm.style.width = getCSSSize(width);
+               }*/
+
+               if (bordercolor != "") {
+                       elm.style.borderColor = bordercolor;
+                       elm.style.borderStyle = elm.style.borderStyle == "" ? "solid" : elm.style.borderStyle;
+                       elm.style.borderWidth = cssSize(border);
+               } else
+                       elm.style.borderColor = '';
+
+               elm.style.backgroundColor = bgcolor;
+               elm.style.height = getCSSSize(height);
+
+               inst.addVisual();
+
+               // Fix for stange MSIE align bug
+               //elm.outerHTML = elm.outerHTML;
+
+               inst.nodeChanged();
+               inst.execCommand('mceEndUndoLevel', false, {}, {skip_undo: true});
+
+               // Repaint if dimensions changed
+               if (formObj.width.value != orgTableWidth || formObj.height.value != orgTableHeight)
+                       inst.execCommand('mceRepaint');
+
+               tinyMCEPopup.close();
+               return true;
+       }
+
+       // Create new table
+       html += '<table';
+
+       html += makeAttrib('id', id);
+       if (!isCssSize(border)) {
+               html += makeAttrib('border', border);
+       }
+
+       html += makeAttrib('cellpadding', cellpadding);
+       html += makeAttrib('cellspacing', cellspacing);
+       html += makeAttrib('data-mce-new', '1');
+
+       if (width && inst.settings.inline_styles) {
+               if (style)
+                       style += '; ';
+
+               // Force px
+               if (/^[0-9\.]+$/.test(width))
+                       width += 'px';
+
+               style += 'width: ' + width;
+       } else
+               html += makeAttrib('width', width);
+
+/*     if (height) {
+               if (style)
+                       style += '; ';
+
+               style += 'height: ' + height;
+       }*/
+
+       //html += makeAttrib('height', height);
+       //html += makeAttrib('bordercolor', bordercolor);
+       //html += makeAttrib('bgcolor', bgcolor);
+       html += makeAttrib('align', align);
+       html += makeAttrib('frame', frame);
+       html += makeAttrib('rules', rules);
+       html += makeAttrib('class', className);
+       html += makeAttrib('style', style);
+       html += makeAttrib('summary', summary);
+       html += makeAttrib('dir', dir);
+       html += makeAttrib('lang', lang);
+       html += '>';
+
+       if (caption) {
+               if (!tinymce.isIE)
+                       html += '<caption><br data-mce-bogus="1"/></caption>';
+               else
+                       html += '<caption></caption>';
+       }
+
+       for (var y=0; y<rows; y++) {
+               html += "<tr>";
+
+               for (var x=0; x<cols; x++) {
+                       if (!tinymce.isIE)
+                               html += '<td><br data-mce-bogus="1"/></td>';
+                       else
+                               html += '<td></td>';
+               }
+
+               html += "</tr>";
+       }
+
+       html += "</table>";
+
+       // Move table
+       if (inst.settings.fix_table_elements) {
+               var patt = '';
+
+               inst.focus();
+               inst.selection.setContent('<br class="_mce_marker" />');
+
+               tinymce.each('h1,h2,h3,h4,h5,h6,p'.split(','), function(n) {
+                       if (patt)
+                               patt += ',';
+
+                       patt += n + ' ._mce_marker';
+               });
+
+               tinymce.each(inst.dom.select(patt), function(n) {
+                       inst.dom.split(inst.dom.getParent(n, 'h1,h2,h3,h4,h5,h6,p'), n);
+               });
+
+               dom.setOuterHTML(dom.select('br._mce_marker')[0], html);
+       } else
+               inst.execCommand('mceInsertContent', false, html);
+
+       tinymce.each(dom.select('table[data-mce-new]'), function(node) {
+               var tdorth = dom.select('td,th', node);
+
+               // Fixes a bug in IE where the caret cannot be placed after the table if the table is at the end of the document
+               if (tinymce.isIE && node.nextSibling == null) {
+                       if (inst.settings.forced_root_block)
+                               dom.insertAfter(dom.create(inst.settings.forced_root_block), node);
+                       else
+                               dom.insertAfter(dom.create('br', {'data-mce-bogus': '1'}), node);
+               }
+
+               try {
+                       // IE9 might fail to do this selection
+                       inst.selection.setCursorLocation(tdorth[0], 0);
+               } catch (ex) {
+                       // Ignore
+               }
+
+               dom.setAttrib(node, 'data-mce-new', '');
+       });
+
+       inst.addVisual();
+       inst.execCommand('mceEndUndoLevel', false, {}, {skip_undo: true});
+
+       tinyMCEPopup.close();
+}
+
+function makeAttrib(attrib, value) {
+       var formObj = document.forms[0];
+       var valueElm = formObj.elements[attrib];
+
+       if (typeof(value) == "undefined" || value == null) {
+               value = "";
+
+               if (valueElm)
+                       value = valueElm.value;
+       }
+
+       if (value == "")
+               return "";
+
+       // XML encode it
+       value = value.replace(/&/g, '&amp;');
+       value = value.replace(/\"/g, '&quot;');
+       value = value.replace(/</g, '&lt;');
+       value = value.replace(/>/g, '&gt;');
+
+       return ' ' + attrib + '="' + value + '"';
+}
+
+function init() {
+       tinyMCEPopup.resizeToInnerSize();
+
+       document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');
+       document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');
+       document.getElementById('bordercolor_pickcontainer').innerHTML = getColorPickerHTML('bordercolor_pick','bordercolor');
+       document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');
+
+       var cols = 2, rows = 2, border = tinyMCEPopup.getParam('table_default_border', '0'), cellpadding = tinyMCEPopup.getParam('table_default_cellpadding', ''), cellspacing = tinyMCEPopup.getParam('table_default_cellspacing', '');
+       var align = "", width = "", height = "", bordercolor = "", bgcolor = "", className = "";
+       var id = "", summary = "", style = "", dir = "", lang = "", background = "", bgcolor = "", bordercolor = "", rules = "", frame = "";
+       var inst = tinyMCEPopup.editor, dom = inst.dom;
+       var formObj = document.forms[0];
+       var elm = dom.getParent(inst.selection.getNode(), "table");
+
+       // Hide advanced fields that isn't available in the schema
+       tinymce.each("summary id rules dir style frame".split(" "), function(name) {
+               var tr = tinyMCEPopup.dom.getParent(name, "tr") || tinyMCEPopup.dom.getParent("t" + name, "tr");
+
+               if (tr && !tinyMCEPopup.editor.schema.isValid("table", name)) {
+                       tr.style.display = 'none';
+               }
+       });
+
+       action = tinyMCEPopup.getWindowArg('action');
+
+       if (!action)
+               action = elm ? "update" : "insert";
+
+       if (elm && action != "insert") {
+               var rowsAr = elm.rows;
+               var cols = 0;
+               for (var i=0; i<rowsAr.length; i++)
+                       if (rowsAr[i].cells.length > cols)
+                               cols = rowsAr[i].cells.length;
+
+               cols = cols;
+               rows = rowsAr.length;
+
+               st = dom.parseStyle(dom.getAttrib(elm, "style"));
+               border = trimSize(getStyle(elm, 'border', 'borderWidth'));
+               cellpadding = dom.getAttrib(elm, 'cellpadding', "");
+               cellspacing = dom.getAttrib(elm, 'cellspacing', "");
+               width = trimSize(getStyle(elm, 'width', 'width'));
+               height = trimSize(getStyle(elm, 'height', 'height'));
+               bordercolor = convertRGBToHex(getStyle(elm, 'bordercolor', 'borderLeftColor'));
+               bgcolor = convertRGBToHex(getStyle(elm, 'bgcolor', 'backgroundColor'));
+               align = dom.getAttrib(elm, 'align', align);
+               frame = dom.getAttrib(elm, 'frame');
+               rules = dom.getAttrib(elm, 'rules');
+               className = tinymce.trim(dom.getAttrib(elm, 'class').replace(/mceItem.+/g, ''));
+               id = dom.getAttrib(elm, 'id');
+               summary = dom.getAttrib(elm, 'summary');
+               style = dom.serializeStyle(st);
+               dir = dom.getAttrib(elm, 'dir');
+               lang = dom.getAttrib(elm, 'lang');
+               background = getStyle(elm, 'background', 'backgroundImage').replace(new RegExp("url\\(['\"]?([^'\"]*)['\"]?\\)", 'gi'), "$1");
+               formObj.caption.checked = elm.getElementsByTagName('caption').length > 0;
+
+               orgTableWidth = width;
+               orgTableHeight = height;
+
+               action = "update";
+               formObj.insert.value = inst.getLang('update');
+       }
+
+       addClassesToList('class', "table_styles");
+       TinyMCE_EditableSelects.init();
+
+       // Update form
+       selectByValue(formObj, 'align', align);
+       selectByValue(formObj, 'tframe', frame);
+       selectByValue(formObj, 'rules', rules);
+       selectByValue(formObj, 'class', className, true, true);
+       formObj.cols.value = cols;
+       formObj.rows.value = rows;
+       formObj.border.value = border;
+       formObj.cellpadding.value = cellpadding;
+       formObj.cellspacing.value = cellspacing;
+       formObj.width.value = width;
+       formObj.height.value = height;
+       formObj.bordercolor.value = bordercolor;
+       formObj.bgcolor.value = bgcolor;
+       formObj.id.value = id;
+       formObj.summary.value = summary;
+       formObj.style.value = style;
+       formObj.dir.value = dir;
+       formObj.lang.value = lang;
+       formObj.backgroundimage.value = background;
+
+       updateColor('bordercolor_pick', 'bordercolor');
+       updateColor('bgcolor_pick', 'bgcolor');
+
+       // Resize some elements
+       if (isVisible('backgroundimagebrowser'))
+               document.getElementById('backgroundimage').style.width = '180px';
+
+       // Disable some fields in update mode
+       if (action == "update") {
+               formObj.cols.disabled = true;
+               formObj.rows.disabled = true;
+       }
+}
+
+function changedSize() {
+       var formObj = document.forms[0];
+       var st = dom.parseStyle(formObj.style.value);
+
+/*     var width = formObj.width.value;
+       if (width != "")
+               st['width'] = tinyMCEPopup.getParam("inline_styles") ? getCSSSize(width) : "";
+       else
+               st['width'] = "";*/
+
+       var height = formObj.height.value;
+       if (height != "")
+               st['height'] = getCSSSize(height);
+       else
+               st['height'] = "";
+
+       formObj.style.value = dom.serializeStyle(st);
+}
+
+function isCssSize(value) {
+       return /^[0-9.]+(%|in|cm|mm|em|ex|pt|pc|px)$/.test(value);
+}
+
+function cssSize(value, def) {
+       value = tinymce.trim(value || def);
+
+       if (!isCssSize(value)) {
+               return parseInt(value, 10) + 'px';
+       }
+
+       return value;
+}
+
+function changedBackgroundImage() {
+       var formObj = document.forms[0];
+       var st = dom.parseStyle(formObj.style.value);
+
+       st['background-image'] = "url('" + formObj.backgroundimage.value + "')";
+
+       formObj.style.value = dom.serializeStyle(st);
+}
+
+function changedBorder() {
+       var formObj = document.forms[0];
+       var st = dom.parseStyle(formObj.style.value);
+
+       // Update border width if the element has a color
+       if (formObj.border.value != "" && (isCssSize(formObj.border.value) || formObj.bordercolor.value != ""))
+               st['border-width'] = cssSize(formObj.border.value);
+       else {
+               if (!formObj.border.value) {
+                       st['border'] = '';
+                       st['border-width'] = '';
+               }
+       }
+
+       formObj.style.value = dom.serializeStyle(st);
+}
+
+function changedColor() {
+       var formObj = document.forms[0];
+       var st = dom.parseStyle(formObj.style.value);
+
+       st['background-color'] = formObj.bgcolor.value;
+
+       if (formObj.bordercolor.value != "") {
+               st['border-color'] = formObj.bordercolor.value;
+
+               // Add border-width if it's missing
+               if (!st['border-width'])
+                       st['border-width'] = cssSize(formObj.border.value, 1);
+       }
+
+       formObj.style.value = dom.serializeStyle(st);
+}
+
+function changedStyle() {
+       var formObj = document.forms[0];
+       var st = dom.parseStyle(formObj.style.value);
+
+       if (st['background-image'])
+               formObj.backgroundimage.value = st['background-image'].replace(new RegExp("url\\(['\"]?([^'\"]*)['\"]?\\)", 'gi'), "$1");
+       else
+               formObj.backgroundimage.value = '';
+
+       if (st['width'])
+               formObj.width.value = trimSize(st['width']);
+
+       if (st['height'])
+               formObj.height.value = trimSize(st['height']);
+
+       if (st['background-color']) {
+               formObj.bgcolor.value = st['background-color'];
+               updateColor('bgcolor_pick','bgcolor');
+       }
+
+       if (st['border-color']) {
+               formObj.bordercolor.value = st['border-color'];
+               updateColor('bordercolor_pick','bordercolor');
+       }
+}
+
+tinyMCEPopup.onInit.add(init);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/langs/en_dlg.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/langs/en_dlg.js
new file mode 100644 (file)
index 0000000..463e09e
--- /dev/null
@@ -0,0 +1 @@
+tinyMCE.addI18n('en.table_dlg',{"rules_border":"border","rules_box":"box","rules_vsides":"vsides","rules_rhs":"rhs","rules_lhs":"lhs","rules_hsides":"hsides","rules_below":"below","rules_above":"above","rules_void":"void",rules:"Rules","frame_all":"all","frame_cols":"cols","frame_rows":"rows","frame_groups":"groups","frame_none":"none",frame:"Frame",caption:"Table Caption","missing_scope":"Are you sure you want to continue without specifying a scope for this table header cell. Without it, it may be difficult for some users with disabilities to understand the content or data displayed of the table.","cell_limit":"You\'ve exceeded the maximum number of cells of {$cells}.","row_limit":"You\'ve exceeded the maximum number of rows of {$rows}.","col_limit":"You\'ve exceeded the maximum number of columns of {$cols}.",colgroup:"Col Group",rowgroup:"Row Group",scope:"Scope",tfoot:"Footer",tbody:"Body",thead:"Header","row_all":"Update All Rows in Table","row_even":"Update Even Rows in Table","row_odd":"Update Odd Rows in Table","row_row":"Update Current Row","cell_all":"Update All Cells in Table","cell_row":"Update All Cells in Row","cell_cell":"Update Current Cell",th:"Header",td:"Data",summary:"Summary",bgimage:"Background Image",rtl:"Right to Left",ltr:"Left to Right",mime:"Target MIME Type",langcode:"Language Code",langdir:"Language Direction",style:"Style",id:"ID","merge_cells_title":"Merge Table Cells",bgcolor:"Background Color",bordercolor:"Border Color","align_bottom":"Bottom","align_top":"Top",valign:"Vertical Alignment","cell_type":"Cell Type","cell_title":"Table Cell Properties","row_title":"Table Row Properties","align_middle":"Center","align_right":"Right","align_left":"Left","align_default":"Default",align:"Alignment",border:"Border",cellpadding:"Cell Padding",cellspacing:"Cell Spacing",rows:"Rows",cols:"Columns",height:"Height",width:"Width",title:"Insert/Edit Table",rowtype:"Row Type","advanced_props":"Advanced Properties","general_props":"General Properties","advanced_tab":"Advanced","general_tab":"General","cell_col":"Update all cells in column"});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/merge_cells.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/merge_cells.htm
new file mode 100644 (file)
index 0000000..788acf6
--- /dev/null
@@ -0,0 +1,32 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#table_dlg.merge_cells_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="../../utils/validate.js"></script>
+       <script type="text/javascript" src="js/merge_cells.js"></script>
+</head>
+<body style="margin: 8px" role="application">
+<form onsubmit="MergeCellsDialog.merge();return false;" action="#">
+       <fieldset>
+               <legend>{#table_dlg.merge_cells_title}</legend>
+               <table role="presentation" border="0" cellpadding="0" cellspacing="3" width="100%">
+                       <tr>
+                               <td><label for="numcols">{#table_dlg.cols}</label>:</td>
+                               <td align="right"><input type="text" id="numcols" name="numcols" value="" class="number min1 mceFocus" style="width: 30px" aria-required="true" /></td>
+                       </tr>
+                       <tr>
+                               <td><label for="numrows">{#table_dlg.rows}</label>:</td>
+                               <td align="right"><input type="text" id="numrows" name="numrows" value="" class="number min1" style="width: 30px" aria-required="true" /></td>
+                       </tr>
+               </table>
+       </fieldset>
+
+       <div class="mceActionPanel">
+               <input type="submit" id="insert" name="insert" value="{#update}" />
+               <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
+       </div>
+</form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/row.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/row.htm
new file mode 100644 (file)
index 0000000..7b46137
--- /dev/null
@@ -0,0 +1,158 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#table_dlg.row_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js"></script>
+       <script type="text/javascript" src="../../utils/validate.js"></script>
+       <script type="text/javascript" src="../../utils/editable_selects.js"></script>
+       <script type="text/javascript" src="js/row.js"></script>
+       <link href="css/row.css" rel="stylesheet" type="text/css" />
+</head>
+<body id="tablerow" style="display: none" role="application">
+       <form onsubmit="updateAction();return false;" action="#">
+               <div class="tabs">
+                       <ul>
+                               <li id="general_tab" class="current" aria-controls="general_panel"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#table_dlg.general_tab}</a></span></li>
+                               <li id="advanced_tab" aria-controls="advanced_panel"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{#table_dlg.advanced_tab}</a></span></li>
+                       </ul>
+               </div>
+
+               <div class="panel_wrapper">
+                       <div id="general_panel" class="panel current">
+                               <fieldset>
+                                       <legend>{#table_dlg.general_props}</legend>
+
+                                       <table role="presentation" border="0" cellpadding="4" cellspacing="0">
+                                               <tr>
+                                                       <td><label for="rowtype">{#table_dlg.rowtype}</label></td>
+                                                       <td class="col2">
+                                                               <select id="rowtype" name="rowtype" class="mceFocus" onChange="changedRowType();">
+                                                                       <option value="thead">{#table_dlg.thead}</option>
+                                                                       <option value="tbody">{#table_dlg.tbody}</option>
+                                                                       <option value="tfoot">{#table_dlg.tfoot}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label for="align">{#table_dlg.align}</label></td>
+                                                       <td class="col2">
+                                                               <select id="align" name="align">
+                                                                       <option value="">{#not_set}</option>
+                                                                       <option value="center">{#table_dlg.align_middle}</option>
+                                                                       <option value="left">{#table_dlg.align_left}</option>
+                                                                       <option value="right">{#table_dlg.align_right}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label for="valign">{#table_dlg.valign}</label></td>
+                                                       <td class="col2">
+                                                               <select id="valign" name="valign">
+                                                                       <option value="">{#not_set}</option>
+                                                                       <option value="top">{#table_dlg.align_top}</option>
+                                                                       <option value="middle">{#table_dlg.align_middle}</option>
+                                                                       <option value="bottom">{#table_dlg.align_bottom}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr id="styleSelectRow">
+                                                       <td><label for="class">{#class_name}</label></td>
+                                                       <td class="col2">
+                                                               <select id="class" name="class" class="mceEditableSelect">
+                                                                       <option value="" selected="selected">{#not_set}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label for="height">{#table_dlg.height}</label></td>
+                                                       <td class="col2"><input name="height" type="text" id="height" value="" size="7" maxlength="7" onchange="changedSize();" class="size" /></td>
+                                               </tr>
+                                       </table>
+                               </fieldset>
+                       </div>
+
+                       <div id="advanced_panel" class="panel">
+                               <fieldset>
+                                       <legend>{#table_dlg.advanced_props}</legend>
+
+                                       <table role="presentation" border="0" cellpadding="0" cellspacing="4">
+                                               <tr>
+                                                       <td class="column1"><label for="id">{#table_dlg.id}</label></td>
+                                                       <td><input id="id" name="id" type="text" value="" style="width: 200px" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label for="style">{#table_dlg.style}</label></td>
+                                                       <td><input type="text" id="style" name="style" value="" style="width: 200px;" onchange="changedStyle();" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="dir">{#table_dlg.langdir}</label></td>
+                                                       <td>
+                                                               <select id="dir" name="dir" style="width: 200px">
+                                                                               <option value="">{#not_set}</option>
+                                                                               <option value="ltr">{#table_dlg.ltr}</option>
+                                                                               <option value="rtl">{#table_dlg.rtl}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="lang">{#table_dlg.langcode}</label></td>
+                                                       <td>
+                                                               <input id="lang" name="lang" type="text" value="" style="width: 200px" />
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="backgroundimage">{#table_dlg.bgimage}</label></td>
+                                                       <td>
+                                                               <table role="presentation" border="0" cellpadding="0" cellspacing="0">
+                                                                       <tr>
+                                                                               <td><input id="backgroundimage" name="backgroundimage" type="text" value="" style="width: 200px" onchange="changedBackgroundImage();" /></td>
+                                                                               <td id="backgroundimagebrowsercontainer">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="bgcolor" id="bgcolor_label">{#table_dlg.bgcolor}</label></td>
+                                                       <td>
+                                                               <span role="group" aria-labelledby="bgcolor_label">
+                                                               <table role="presentation" border="0" cellpadding="0" cellspacing="0">
+                                                                       <tr>
+                                                                               <td><input id="bgcolor" name="bgcolor" type="text" value="" size="9" onchange="updateColor('bgcolor_pick','bgcolor');changedColor();" /></td>
+                                                                               <td id="bgcolor_pickcontainer">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                               </span>
+                                                       </td>
+                                               </tr>
+                                       </table>
+                               </fieldset>
+                       </div>
+               </div>
+
+               <div class="mceActionPanel">
+                       <div>
+                               <select id="action" name="action">
+                                       <option value="row">{#table_dlg.row_row}</option>
+                                       <option value="odd">{#table_dlg.row_odd}</option>
+                                       <option value="even">{#table_dlg.row_even}</option>
+                                       <option value="all">{#table_dlg.row_all}</option>
+                               </select>
+                       </div>
+
+                       <input type="submit" id="insert" name="insert" value="{#update}" />
+                       <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
+               </div>
+       </form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/table.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/plugins/table/table.htm
new file mode 100644 (file)
index 0000000..c4610bb
--- /dev/null
@@ -0,0 +1,188 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#table_dlg.title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js"></script>
+       <script type="text/javascript" src="../../utils/validate.js"></script>
+       <script type="text/javascript" src="../../utils/editable_selects.js"></script>
+       <script type="text/javascript" src="js/table.js"></script>
+       <link href="css/table.css" rel="stylesheet" type="text/css" />
+</head>
+<body id="table" style="display: none" role="application" aria-labelledby="app_title">
+       <span style="display:none;" id="app_title">{#table_dlg.title}</span>
+       <form onsubmit="insertTable();return false;" action="#">
+               <div class="tabs">
+                       <ul>
+                               <li id="general_tab" aria-controls="general_panel" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#table_dlg.general_tab}</a></span></li>
+                               <li id="advanced_tab" aria-controls="advanced_panel"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{#table_dlg.advanced_tab}</a></span></li>
+                       </ul>
+               </div>
+
+               <div class="panel_wrapper">
+                       <div id="general_panel" class="panel current">
+                               <fieldset>
+                                       <legend>{#table_dlg.general_props}</legend>
+                                       <table role="presentation" border="0" cellpadding="4" cellspacing="0" width="100%">
+                                               <tr>
+                                                       <td><label id="colslabel" for="cols">{#table_dlg.cols}</label></td>
+                                                       <td><input id="cols" name="cols" type="text" value="" size="3" maxlength="3" class="required number min1 mceFocus" aria-required="true" /></td>
+                                                       <td><label id="rowslabel" for="rows">{#table_dlg.rows}</label></td>
+                                                       <td><input id="rows" name="rows" type="text" value="" size="3" maxlength="3" class="required number min1" aria-required="true" /></td>
+                                               </tr>
+                                               <tr>
+                                                       <td><label id="cellpaddinglabel" for="cellpadding">{#table_dlg.cellpadding}</label></td>
+                                                       <td><input id="cellpadding" name="cellpadding" type="text" value="" size="3" maxlength="3" class="number" /></td>
+                                                       <td><label id="cellspacinglabel" for="cellspacing">{#table_dlg.cellspacing}</label></td>
+                                                       <td><input id="cellspacing" name="cellspacing" type="text" value="" size="3" maxlength="3" class="number" /></td>
+                                               </tr>
+                                               <tr>
+                                                       <td><label id="alignlabel" for="align">{#table_dlg.align}</label></td>
+                                                       <td><select id="align" name="align">
+                                                               <option value="">{#not_set}</option>
+                                                               <option value="center">{#table_dlg.align_middle}</option>
+                                                               <option value="left">{#table_dlg.align_left}</option>
+                                                               <option value="right">{#table_dlg.align_right}</option>
+                                                       </select></td>
+                                                       <td><label id="borderlabel" for="border">{#table_dlg.border}</label></td>
+                                                       <td><input id="border" name="border" type="text" value="" size="3" maxlength="5" onchange="changedBorder();" class="size" /></td>
+                                               </tr>
+                                               <tr id="width_row">
+                                                       <td><label id="widthlabel" for="width">{#table_dlg.width}</label></td>
+                                                       <td><input name="width" type="text" id="width" value="" size="7" maxlength="7" onchange="changedSize();" class="size" /></td>
+                                                       <td><label id="heightlabel" for="height">{#table_dlg.height}</label></td>
+                                                       <td><input name="height" type="text" id="height" value="" size="7" maxlength="7" onchange="changedSize();" class="size" /></td>
+                                               </tr>
+                                               <tr id="styleSelectRow" >
+                                                       <td><label id="classlabel" for="class">{#class_name}</label></td>
+                                                       <td colspan="3" >
+                                                        <select id="class" name="class" class="mceEditableSelect">
+                                                               <option value="" selected="selected">{#not_set}</option>
+                                                        </select></td>
+                                               </tr>
+                                               <tr>
+                                                       <td class="column1" ><label for="caption">{#table_dlg.caption}</label></td>
+                                                       <td><input id="caption" name="caption" type="checkbox" class="checkbox" value="true" /></td>
+                                               </tr>
+                                       </table>
+                               </fieldset>
+                       </div>
+
+                       <div id="advanced_panel" class="panel">
+                               <fieldset>
+                                       <legend>{#table_dlg.advanced_props}</legend>
+
+                                       <table role="presentation" border="0" cellpadding="0" cellspacing="4">
+                                               <tr>
+                                                       <td class="column1"><label for="id">{#table_dlg.id}</label></td>
+                                                       <td><input id="id" name="id" type="text" value="" class="advfield" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="summary">{#table_dlg.summary}</label></td>
+                                                       <td><input id="summary" name="summary" type="text" value="" class="advfield" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label for="style">{#table_dlg.style}</label></td>
+                                                       <td><input type="text" id="style" name="style" value="" class="advfield" onchange="changedStyle();" /></td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label id="langlabel" for="lang">{#table_dlg.langcode}</label></td>
+                                                       <td>
+                                                               <input id="lang" name="lang" type="text" value="" class="advfield" />
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="backgroundimage">{#table_dlg.bgimage}</label></td>
+                                                       <td>
+                                                               <table role="presentation" aria-labelledby="backgroundimage_label" border="0" cellpadding="0" cellspacing="0">
+                                                                       <tr>
+                                                                               <td><input id="backgroundimage" name="backgroundimage" type="text" value="" class="advfield" onchange="changedBackgroundImage();" /></td>
+                                                                               <td id="backgroundimagebrowsercontainer">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="tframe">{#table_dlg.frame}</label></td>
+                                                       <td>
+                                                               <select id="tframe" name="tframe" class="advfield">
+                                                                               <option value="">{#not_set}</option>
+                                                                               <option value="void">{#table_dlg.rules_void}</option>
+                                                                               <option value="above">{#table_dlg.rules_above}</option>
+                                                                               <option value="below">{#table_dlg.rules_below}</option>
+                                                                               <option value="hsides">{#table_dlg.rules_hsides}</option>
+                                                                               <option value="lhs">{#table_dlg.rules_lhs}</option>
+                                                                               <option value="rhs">{#table_dlg.rules_rhs}</option>
+                                                                               <option value="vsides">{#table_dlg.rules_vsides}</option>
+                                                                               <option value="box">{#table_dlg.rules_box}</option>
+                                                                               <option value="border">{#table_dlg.rules_border}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="rules">{#table_dlg.rules}</label></td>
+                                                       <td>
+                                                               <select id="rules" name="rules" class="advfield">
+                                                                               <option value="">{#not_set}</option>
+                                                                               <option value="none">{#table_dlg.frame_none}</option>
+                                                                               <option value="groups">{#table_dlg.frame_groups}</option>
+                                                                               <option value="rows">{#table_dlg.frame_rows}</option>
+                                                                               <option value="cols">{#table_dlg.frame_cols}</option>
+                                                                               <option value="all">{#table_dlg.frame_all}</option>
+                                                                       </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td class="column1"><label for="dir">{#table_dlg.langdir}</label></td>
+                                                       <td>
+                                                               <select id="dir" name="dir" class="advfield">
+                                                                               <option value="">{#not_set}</option>
+                                                                               <option value="ltr">{#table_dlg.ltr}</option>
+                                                                               <option value="rtl">{#table_dlg.rtl}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+
+                                               <tr role="group" aria-labelledby="bordercolor_label">
+                                                       <td class="column1"><label id="bordercolor_label" for="bordercolor">{#table_dlg.bordercolor}</label></td>
+                                                       <td>
+                                                               <table role="presentation" border="0" cellpadding="0" cellspacing="0">
+                                                                       <tr>
+                                                                               <td><input id="bordercolor" name="bordercolor" type="text" value="" size="9" onchange="updateColor('bordercolor_pick','bordercolor');changedColor();" /></td>
+                                                                               <td id="bordercolor_pickcontainer">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+
+                                               <tr role="group" aria-labelledby="bgcolor_label">
+                                                       <td class="column1"><label id="bgcolor_label" for="bgcolor">{#table_dlg.bgcolor}</label></td>
+                                                       <td>
+                                                               <table role="presentation" border="0" cellpadding="0" cellspacing="0">
+                                                                       <tr>
+                                                                               <td><input id="bgcolor" name="bgcolor" type="text" value="" size="9" onchange="updateColor('bgcolor_pick','bgcolor');changedColor();" /></td>
+                                                                               <td id="bgcolor_pickcontainer">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+                                       </table>
+                               </fieldset>
+                       </div>
+               </div>
+
+               <div class="mceActionPanel">
+                       <input type="submit" id="insert" name="insert" value="{#insert}" />
+                       <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
+               </div>
+       </form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/about.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/about.htm
new file mode 100644 (file)
index 0000000..9b85d0b
--- /dev/null
@@ -0,0 +1,52 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#advanced_dlg.about_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="js/about.js"></script>
+</head>
+<body id="about" style="display: none">
+               <div class="tabs">
+                       <ul>
+                               <li id="general_tab" class="current" aria-controls="general_panel"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#advanced_dlg.about_general}</a></span></li>
+                               <li id="help_tab" style="display:none" aria-hidden="true" aria-controls="help_panel"><span><a href="javascript:mcTabs.displayTab('help_tab','help_panel');" onmousedown="return false;">{#advanced_dlg.about_help}</a></span></li>
+                               <li id="plugins_tab" aria-controls="plugins_panel"><span><a href="javascript:mcTabs.displayTab('plugins_tab','plugins_panel');" onmousedown="return false;">{#advanced_dlg.about_plugins}</a></span></li>
+                       </ul>
+               </div>
+
+               <div class="panel_wrapper">
+                       <div id="general_panel" class="panel current">
+                               <h3>{#advanced_dlg.about_title}</h3>
+                               <p>Version: <span id="version"></span> (<span id="date"></span>)</p>
+                               <p>TinyMCE is a platform independent web based Javascript HTML WYSIWYG editor control released as Open Source under <a href="../../license.txt" target="_blank">LGPL</a>
+                               by Moxiecode Systems AB. It has the ability to convert HTML TEXTAREA fields or other HTML elements to editor instances.</p>
+                               <p>Copyright &copy; 2003-2008, <a href="http://www.moxiecode.com" target="_blank">Moxiecode Systems AB</a>, All rights reserved.</p>
+                               <p>For more information about this software visit the <a href="http://tinymce.moxiecode.com" target="_blank">TinyMCE website</a>.</p>
+
+                               <div id="buttoncontainer">
+                                       <a href="http://www.moxiecode.com" target="_blank"><img src="http://tinymce.moxiecode.com/images/gotmoxie.png" alt="Got Moxie?" border="0" /></a>
+                               </div>
+                       </div>
+
+                       <div id="plugins_panel" class="panel">
+                               <div id="pluginscontainer">
+                                       <h3>{#advanced_dlg.about_loaded}</h3>
+
+                                       <div id="plugintablecontainer">
+                                       </div>
+
+                                       <p>&nbsp;</p>
+                               </div>
+                       </div>
+
+                       <div id="help_panel" class="panel noscroll" style="overflow: visible;">
+                               <div id="iframecontainer"></div>
+                       </div>
+               </div>
+
+               <div class="mceActionPanel">
+                       <input type="button" id="cancel" name="cancel" value="{#close}" onclick="tinyMCEPopup.close();" />
+               </div>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/anchor.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/anchor.htm
new file mode 100644 (file)
index 0000000..dc53312
--- /dev/null
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#advanced_dlg.anchor_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="js/anchor.js"></script>
+</head>
+<body style="display: none" role="application" aria-labelledby="app_title">
+<form onsubmit="AnchorDialog.update();return false;" action="#">
+       <table border="0" cellpadding="4" cellspacing="0" role="presentation">
+               <tr>
+                       <td colspan="2" class="title" id="app_title">{#advanced_dlg.anchor_title}</td>
+               </tr>
+               <tr>
+                       <td class="nowrap"><label for="anchorName">{#advanced_dlg.anchor_name}:</label></td>
+                       <td><input name="anchorName" type="text" class="mceFocus" id="anchorName" value="" style="width: 200px" aria-required="true" /></td>
+               </tr>
+       </table>
+
+       <div class="mceActionPanel">
+               <input type="submit" id="insert" name="insert" value="{#update}" />
+               <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
+       </div>
+</form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/charmap.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/charmap.htm
new file mode 100644 (file)
index 0000000..0dee28d
--- /dev/null
@@ -0,0 +1,55 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#advanced_dlg.charmap_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="js/charmap.js"></script>
+</head>
+<body id="charmap" style="display:none" role="application">
+<table align="center" border="0" cellspacing="0" cellpadding="2" role="presentation">
+       <tr>
+               <td colspan="2" class="title" ><label for="charmapView" id="charmap_label">{#advanced_dlg.charmap_title}</label></td>
+       </tr>
+       <tr>
+               <td id="charmapView" rowspan="2" align="left" valign="top">
+                       <!-- Chars will be rendered here -->
+               </td>
+               <td width="100" align="center" valign="top">
+                       <table border="0" cellpadding="0" cellspacing="0" width="100" style="height:100px" role="presentation">
+                               <tr>
+                                       <td id="codeV">&nbsp;</td>
+                               </tr>
+                               <tr>
+                                       <td id="codeN">&nbsp;</td>
+                               </tr>
+                       </table>
+               </td>
+       </tr>
+       <tr>
+               <td valign="bottom" style="padding-bottom: 3px;">
+                       <table width="100" align="center" border="0" cellpadding="2" cellspacing="0" role="presentation">
+                               <tr>
+                                       <td align="center" style="border-left: 1px solid #666699; border-top: 1px solid #666699; border-right: 1px solid #666699;"><label for="codeA">HTML-Code</label></td>
+                               </tr>
+                               <tr>
+                                       <td style="font-size: 16px; font-weight: bold; border-left: 1px solid #666699; border-bottom: 1px solid #666699; border-right: 1px solid #666699;" id="codeA" align="center">&nbsp;</td>
+                               </tr>
+                               <tr>
+                                       <td style="font-size: 1px;">&nbsp;</td>
+                               </tr>
+                               <tr>
+                                       <td align="center" style="border-left: 1px solid #666699; border-top: 1px solid #666699; border-right: 1px solid #666699;"><label for="codeB">NUM-Code</label></td>
+                               </tr>
+                               <tr>
+                                       <td style="font-size: 16px; font-weight: bold; border-left: 1px solid #666699; border-bottom: 1px solid #666699; border-right: 1px solid #666699;" id="codeB" align="center">&nbsp;</td>
+                               </tr>
+                       </table>
+               </td>
+       </tr>
+       <tr>
+               <td colspan="2" id="charmap_usage">{#advanced_dlg.charmap_usage}</td>
+       </tr>
+
+</table>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/color_picker.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/color_picker.htm
new file mode 100644 (file)
index 0000000..66633d0
--- /dev/null
@@ -0,0 +1,70 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#advanced_dlg.colorpicker_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="js/color_picker.js"></script>
+</head>
+<body id="colorpicker" style="display: none" role="application" aria-labelledby="app_label">
+       <span class="mceVoiceLabel" id="app_label" style="display:none;">{#advanced_dlg.colorpicker_title}</span>
+<form onsubmit="insertAction();return false" action="#">
+       <div class="tabs">
+               <ul>
+                       <li id="picker_tab" aria-controls="picker_panel" class="current"><span><a href="javascript:mcTabs.displayTab('picker_tab','picker_panel');" onmousedown="return false;">{#advanced_dlg.colorpicker_picker_tab}</a></span></li>
+                       <li id="rgb_tab" aria-controls="rgb_panel"><span><a href="javascript:;" onclick="mcTabs.displayTab('rgb_tab','rgb_panel');" onmousedown="return false;">{#advanced_dlg.colorpicker_palette_tab}</a></span></li>
+                       <li id="named_tab" aria-controls="named_panel"><span><a  href="javascript:;" onclick="javascript:mcTabs.displayTab('named_tab','named_panel');" onmousedown="return false;">{#advanced_dlg.colorpicker_named_tab}</a></span></li>
+               </ul>
+       </div>
+
+       <div class="panel_wrapper">
+               <div id="picker_panel" class="panel current">
+                       <fieldset>
+                               <legend>{#advanced_dlg.colorpicker_picker_title}</legend>
+                               <div id="picker">
+                                       <img id="colors" src="img/colorpicker.jpg" onclick="computeColor(event)" onmousedown="isMouseDown = true;return false;" onmouseup="isMouseDown = false;" onmousemove="if (isMouseDown && isMouseOver) computeColor(event); return false;" onmouseover="isMouseOver=true;" onmouseout="isMouseOver=false;" alt="" />
+
+                                       <div id="light">
+                                               <!-- Will be filled with divs -->
+                                       </div>
+
+                                       <br style="clear: both" />
+                               </div>
+                       </fieldset>
+               </div>
+
+               <div id="rgb_panel" class="panel">
+                       <fieldset>
+                               <legend id="webcolors_title">{#advanced_dlg.colorpicker_palette_title}</legend>
+                               <div id="webcolors">
+                                       <!-- Gets filled with web safe colors-->
+                               </div>
+
+                               <br style="clear: both" />
+                       </fieldset>
+               </div>
+
+               <div id="named_panel" class="panel">
+                       <fieldset id="named_picker_label">
+                               <legend id="named_title">{#advanced_dlg.colorpicker_named_title}</legend>
+                               <div id="namedcolors" role="listbox" tabindex="0" aria-labelledby="named_picker_label">
+                                       <!-- Gets filled with named colors-->
+                               </div>
+
+                               <br style="clear: both" />
+
+                               <div id="colornamecontainer">
+                                       {#advanced_dlg.colorpicker_name} <span id="colorname"></span>
+                               </div>
+                       </fieldset>
+               </div>
+       </div>
+
+       <div class="mceActionPanel">
+               <input type="submit" id="insert" name="insert" value="{#apply}" />
+               <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();"/>
+               <div id="preview_wrapper"><div id="previewblock"><label for="color">{#advanced_dlg.colorpicker_color}</label> <input id="color" type="text" size="8" class="text mceFocus" aria-required="true" /></div><span id="preview"></span></div>
+       </div>
+</form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/editor_template.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/editor_template.js
new file mode 100644 (file)
index 0000000..4b8d563
--- /dev/null
@@ -0,0 +1 @@
+(function(h){var i=h.DOM,g=h.dom.Event,c=h.extend,f=h.each,a=h.util.Cookie,e,d=h.explode;function b(p,m){var k,l,o=p.dom,j="",n,r;previewStyles=p.settings.preview_styles;if(previewStyles===false){return""}if(!previewStyles){previewStyles="font-family font-size font-weight text-decoration text-transform color background-color"}function q(s){return s.replace(/%(\w+)/g,"")}k=m.block||m.inline||"span";l=o.create(k);f(m.styles,function(t,s){t=q(t);if(t){o.setStyle(l,s,t)}});f(m.attributes,function(t,s){t=q(t);if(t){o.setAttrib(l,s,t)}});f(m.classes,function(s){s=q(s);if(!o.hasClass(l,s)){o.addClass(l,s)}});o.setStyles(l,{position:"absolute",left:-65535});p.getBody().appendChild(l);n=o.getStyle(p.getBody(),"fontSize",true);n=/px$/.test(n)?parseInt(n,10):0;f(previewStyles.split(" "),function(s){var t=o.getStyle(l,s,true);if(s=="background-color"&&/transparent|rgba\s*\([^)]+,\s*0\)/.test(t)){t=o.getStyle(p.getBody(),s,true);if(o.toHex(t).toLowerCase()=="#ffffff"){return}}if(s=="font-size"){if(/em|%$/.test(t)){if(n===0){return}t=parseFloat(t,10)/(/%$/.test(t)?100:1);t=(t*n)+"px"}}j+=s+":"+t+";"});o.remove(l);return j}h.ThemeManager.requireLangPack("advanced");h.create("tinymce.themes.AdvancedTheme",{sizes:[8,10,12,14,18,24,36],controls:{bold:["bold_desc","Bold"],italic:["italic_desc","Italic"],underline:["underline_desc","Underline"],strikethrough:["striketrough_desc","Strikethrough"],justifyleft:["justifyleft_desc","JustifyLeft"],justifycenter:["justifycenter_desc","JustifyCenter"],justifyright:["justifyright_desc","JustifyRight"],justifyfull:["justifyfull_desc","JustifyFull"],bullist:["bullist_desc","InsertUnorderedList"],numlist:["numlist_desc","InsertOrderedList"],outdent:["outdent_desc","Outdent"],indent:["indent_desc","Indent"],cut:["cut_desc","Cut"],copy:["copy_desc","Copy"],paste:["paste_desc","Paste"],undo:["undo_desc","Undo"],redo:["redo_desc","Redo"],link:["link_desc","mceLink"],unlink:["unlink_desc","unlink"],image:["image_desc","mceImage"],cleanup:["cleanup_desc","mceCleanup"],help:["help_desc","mceHelp"],code:["code_desc","mceCodeEditor"],hr:["hr_desc","InsertHorizontalRule"],removeformat:["removeformat_desc","RemoveFormat"],sub:["sub_desc","subscript"],sup:["sup_desc","superscript"],forecolor:["forecolor_desc","ForeColor"],forecolorpicker:["forecolor_desc","mceForeColor"],backcolor:["backcolor_desc","HiliteColor"],backcolorpicker:["backcolor_desc","mceBackColor"],charmap:["charmap_desc","mceCharMap"],visualaid:["visualaid_desc","mceToggleVisualAid"],anchor:["anchor_desc","mceInsertAnchor"],newdocument:["newdocument_desc","mceNewDocument"],blockquote:["blockquote_desc","mceBlockQuote"]},stateControls:["bold","italic","underline","strikethrough","bullist","numlist","justifyleft","justifycenter","justifyright","justifyfull","sub","sup","blockquote"],init:function(k,l){var m=this,n,j,p;m.editor=k;m.url=l;m.onResolveName=new h.util.Dispatcher(this);n=k.settings;k.forcedHighContrastMode=k.settings.detect_highcontrast&&m._isHighContrast();k.settings.skin=k.forcedHighContrastMode?"highcontrast":k.settings.skin;if(!n.theme_advanced_buttons1){n=c({theme_advanced_buttons1:"bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect",theme_advanced_buttons2:"bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code",theme_advanced_buttons3:"hr,removeformat,visualaid,|,sub,sup,|,charmap"},n)}m.settings=n=c({theme_advanced_path:true,theme_advanced_toolbar_location:"top",theme_advanced_blockformats:"p,address,pre,h1,h2,h3,h4,h5,h6",theme_advanced_toolbar_align:"left",theme_advanced_statusbar_location:"bottom",theme_advanced_fonts:"Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",theme_advanced_more_colors:1,theme_advanced_row_height:23,theme_advanced_resize_horizontal:1,theme_advanced_resizing_use_cookie:1,theme_advanced_font_sizes:"1,2,3,4,5,6,7",theme_advanced_font_selector:"span",theme_advanced_show_current_color:0,readonly:k.settings.readonly},n);if(!n.font_size_style_values){n.font_size_style_values="8pt,10pt,12pt,14pt,18pt,24pt,36pt"}if(h.is(n.theme_advanced_font_sizes,"string")){n.font_size_style_values=h.explode(n.font_size_style_values);n.font_size_classes=h.explode(n.font_size_classes||"");p={};k.settings.theme_advanced_font_sizes=n.theme_advanced_font_sizes;f(k.getParam("theme_advanced_font_sizes","","hash"),function(r,q){var o;if(q==r&&r>=1&&r<=7){q=r+" ("+m.sizes[r-1]+"pt)";o=n.font_size_classes[r-1];r=n.font_size_style_values[r-1]||(m.sizes[r-1]+"pt")}if(/^\s*\./.test(r)){o=r.replace(/\./g,"")}p[q]=o?{"class":o}:{fontSize:r}});n.theme_advanced_font_sizes=p}if((j=n.theme_advanced_path_location)&&j!="none"){n.theme_advanced_statusbar_location=n.theme_advanced_path_location}if(n.theme_advanced_statusbar_location=="none"){n.theme_advanced_statusbar_location=0}if(k.settings.content_css!==false){k.contentCSS.push(k.baseURI.toAbsolute(l+"/skins/"+k.settings.skin+"/content.css"))}k.onInit.add(function(){if(!k.settings.readonly){k.onNodeChange.add(m._nodeChanged,m);k.onKeyUp.add(m._updateUndoStatus,m);k.onMouseUp.add(m._updateUndoStatus,m);k.dom.bind(k.dom.getRoot(),"dragend",function(){m._updateUndoStatus(k)})}});k.onSetProgressState.add(function(r,o,s){var t,u=r.id,q;if(o){m.progressTimer=setTimeout(function(){t=r.getContainer();t=t.insertBefore(i.create("DIV",{style:"position:relative"}),t.firstChild);q=i.get(r.id+"_tbl");i.add(t,"div",{id:u+"_blocker","class":"mceBlocker",style:{width:q.clientWidth+2,height:q.clientHeight+2}});i.add(t,"div",{id:u+"_progress","class":"mceProgress",style:{left:q.clientWidth/2,top:q.clientHeight/2}})},s||0)}else{i.remove(u+"_blocker");i.remove(u+"_progress");clearTimeout(m.progressTimer)}});i.loadCSS(n.editor_css?k.documentBaseURI.toAbsolute(n.editor_css):l+"/skins/"+k.settings.skin+"/ui.css");if(n.skin_variant){i.loadCSS(l+"/skins/"+k.settings.skin+"/ui_"+n.skin_variant+".css")}},_isHighContrast:function(){var j,k=i.add(i.getRoot(),"div",{style:"background-color: rgb(171,239,86);"});j=(i.getStyle(k,"background-color",true)+"").toLowerCase().replace(/ /g,"");i.remove(k);return j!="rgb(171,239,86)"&&j!="#abef56"},createControl:function(m,j){var k,l;if(l=j.createControl(m)){return l}switch(m){case"styleselect":return this._createStyleSelect();case"formatselect":return this._createBlockFormats();case"fontselect":return this._createFontSelect();case"fontsizeselect":return this._createFontSizeSelect();case"forecolor":return this._createForeColorMenu();case"backcolor":return this._createBackColorMenu()}if((k=this.controls[m])){return j.createButton(m,{title:"advanced."+k[0],cmd:k[1],ui:k[2],value:k[3]})}},execCommand:function(l,k,m){var j=this["_"+l];if(j){j.call(this,k,m);return true}return false},_importClasses:function(l){var j=this.editor,k=j.controlManager.get("styleselect");if(k.getLength()==0){f(j.dom.getClasses(),function(q,m){var p="style_"+m,n;n={inline:"span",attributes:{"class":q["class"]},selector:"*"};j.formatter.register(p,n);k.add(q["class"],p,{style:function(){return b(j,n)}})})}},_createStyleSelect:function(o){var l=this,j=l.editor,k=j.controlManager,m;m=k.createListBox("styleselect",{title:"advanced.style_select",onselect:function(q){var r,n=[],p;f(m.items,function(s){n.push(s.value)});j.focus();j.undoManager.add();r=j.formatter.matchAll(n);h.each(r,function(s){if(!q||s==q){if(s){j.formatter.remove(s)}p=true}});if(!p){j.formatter.apply(q)}j.undoManager.add();j.nodeChanged();return false}});j.onPreInit.add(function(){var p=0,n=j.getParam("style_formats");if(n){f(n,function(q){var r,s=0;f(q,function(){s++});if(s>1){r=q.name=q.name||"style_"+(p++);j.formatter.register(r,q);m.add(q.title,r,{style:function(){return b(j,q)}})}else{m.add(q.title)}})}else{f(j.getParam("theme_advanced_styles","","hash"),function(t,s){var r,q;if(t){r="style_"+(p++);q={inline:"span",classes:t,selector:"*"};j.formatter.register(r,q);m.add(l.editor.translate(s),r,{style:function(){return b(j,q)}})}})}});if(m.getLength()==0){m.onPostRender.add(function(p,q){if(!m.NativeListBox){g.add(q.id+"_text","focus",l._importClasses,l);g.add(q.id+"_text","mousedown",l._importClasses,l);g.add(q.id+"_open","focus",l._importClasses,l);g.add(q.id+"_open","mousedown",l._importClasses,l)}else{g.add(q.id,"focus",l._importClasses,l)}})}return m},_createFontSelect:function(){var l,k=this,j=k.editor;l=j.controlManager.createListBox("fontselect",{title:"advanced.fontdefault",onselect:function(m){var n=l.items[l.selectedIndex];if(!m&&n){j.execCommand("FontName",false,n.value);return}j.execCommand("FontName",false,m);l.select(function(o){return m==o});if(n&&n.value==m){l.select(null)}return false}});if(l){f(j.getParam("theme_advanced_fonts",k.settings.theme_advanced_fonts,"hash"),function(n,m){l.add(j.translate(m),n,{style:n.indexOf("dings")==-1?"font-family:"+n:""})})}return l},_createFontSizeSelect:function(){var m=this,k=m.editor,n,l=0,j=[];n=k.controlManager.createListBox("fontsizeselect",{title:"advanced.font_size",onselect:function(o){var p=n.items[n.selectedIndex];if(!o&&p){p=p.value;if(p["class"]){k.formatter.toggle("fontsize_class",{value:p["class"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand("FontSize",false,p.fontSize)}return}if(o["class"]){k.focus();k.undoManager.add();k.formatter.toggle("fontsize_class",{value:o["class"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand("FontSize",false,o.fontSize)}n.select(function(q){return o==q});if(p&&(p.value.fontSize==o.fontSize||p.value["class"]&&p.value["class"]==o["class"])){n.select(null)}return false}});if(n){f(m.settings.theme_advanced_font_sizes,function(p,o){var q=p.fontSize;if(q>=1&&q<=7){q=m.sizes[parseInt(q)-1]+"pt"}n.add(o,p,{style:"font-size:"+q,"class":"mceFontSize"+(l++)+(" "+(p["class"]||""))})})}return n},_createBlockFormats:function(){var l,j={p:"advanced.paragraph",address:"advanced.address",pre:"advanced.pre",h1:"advanced.h1",h2:"advanced.h2",h3:"advanced.h3",h4:"advanced.h4",h5:"advanced.h5",h6:"advanced.h6",div:"advanced.div",blockquote:"advanced.blockquote",code:"advanced.code",dt:"advanced.dt",dd:"advanced.dd",samp:"advanced.samp"},k=this;l=k.editor.controlManager.createListBox("formatselect",{title:"advanced.block",onselect:function(m){k.editor.execCommand("FormatBlock",false,m);return false}});if(l){f(k.editor.getParam("theme_advanced_blockformats",k.settings.theme_advanced_blockformats,"hash"),function(n,m){l.add(k.editor.translate(m!=n?m:j[n]),n,{"class":"mce_formatPreview mce_"+n,style:function(){return b(k.editor,{block:n})}})})}return l},_createForeColorMenu:function(){var n,k=this,l=k.settings,m={},j;if(l.theme_advanced_more_colors){m.more_colors_func=function(){k._mceColorPicker(0,{color:n.value,func:function(o){n.setColor(o)}})}}if(j=l.theme_advanced_text_colors){m.colors=j}if(l.theme_advanced_default_foreground_color){m.default_color=l.theme_advanced_default_foreground_color}m.title="advanced.forecolor_desc";m.cmd="ForeColor";m.scope=this;n=k.editor.controlManager.createColorSplitButton("forecolor",m);return n},_createBackColorMenu:function(){var n,k=this,l=k.settings,m={},j;if(l.theme_advanced_more_colors){m.more_colors_func=function(){k._mceColorPicker(0,{color:n.value,func:function(o){n.setColor(o)}})}}if(j=l.theme_advanced_background_colors){m.colors=j}if(l.theme_advanced_default_background_color){m.default_color=l.theme_advanced_default_background_color}m.title="advanced.backcolor_desc";m.cmd="HiliteColor";m.scope=this;n=k.editor.controlManager.createColorSplitButton("backcolor",m);return n},renderUI:function(l){var q,m,r,w=this,u=w.editor,x=w.settings,v,k,j;if(u.settings){u.settings.aria_label=x.aria_label+u.getLang("advanced.help_shortcut")}q=k=i.create("span",{role:"application","aria-labelledby":u.id+"_voice",id:u.id+"_parent","class":"mceEditor "+u.settings.skin+"Skin"+(x.skin_variant?" "+u.settings.skin+"Skin"+w._ufirst(x.skin_variant):"")+(u.settings.directionality=="rtl"?" mceRtl":"")});i.add(q,"span",{"class":"mceVoiceLabel",style:"display:none;",id:u.id+"_voice"},x.aria_label);if(!i.boxModel){q=i.add(q,"div",{"class":"mceOldBoxModel"})}q=v=i.add(q,"table",{role:"presentation",id:u.id+"_tbl","class":"mceLayout",cellSpacing:0,cellPadding:0});q=r=i.add(q,"tbody");switch((x.theme_advanced_layout_manager||"").toLowerCase()){case"rowlayout":m=w._rowLayout(x,r,l);break;case"customlayout":m=u.execCallback("theme_advanced_custom_layout",x,r,l,k);break;default:m=w._simpleLayout(x,r,l,k)}q=l.targetNode;j=v.rows;i.addClass(j[0],"mceFirst");i.addClass(j[j.length-1],"mceLast");f(i.select("tr",r),function(o){i.addClass(o.firstChild,"mceFirst");i.addClass(o.childNodes[o.childNodes.length-1],"mceLast")});if(i.get(x.theme_advanced_toolbar_container)){i.get(x.theme_advanced_toolbar_container).appendChild(k)}else{i.insertAfter(k,q)}g.add(u.id+"_path_row","click",function(n){n=n.target;if(n.nodeName=="A"){w._sel(n.className.replace(/^.*mcePath_([0-9]+).*$/,"$1"));return false}});if(!u.getParam("accessibility_focus")){g.add(i.add(k,"a",{href:"#"},"<!-- IE -->"),"focus",function(){tinyMCE.get(u.id).focus()})}if(x.theme_advanced_toolbar_location=="external"){l.deltaHeight=0}w.deltaHeight=l.deltaHeight;l.targetNode=null;u.onKeyDown.add(function(p,n){var s=121,o=122;if(n.altKey){if(n.keyCode===s){if(h.isWebKit){window.focus()}w.toolbarGroup.focus();return g.cancel(n)}else{if(n.keyCode===o){i.get(p.id+"_path_row").focus();return g.cancel(n)}}}});u.addShortcut("alt+0","","mceShortcuts",w);return{iframeContainer:m,editorContainer:u.id+"_parent",sizeContainer:v,deltaHeight:l.deltaHeight}},getInfo:function(){return{longname:"Advanced theme",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",version:h.majorVersion+"."+h.minorVersion}},resizeBy:function(j,k){var l=i.get(this.editor.id+"_ifr");this.resizeTo(l.clientWidth+j,l.clientHeight+k)},resizeTo:function(j,n,l){var k=this.editor,m=this.settings,o=i.get(k.id+"_tbl"),p=i.get(k.id+"_ifr");j=Math.max(m.theme_advanced_resizing_min_width||100,j);n=Math.max(m.theme_advanced_resizing_min_height||100,n);j=Math.min(m.theme_advanced_resizing_max_width||65535,j);n=Math.min(m.theme_advanced_resizing_max_height||65535,n);i.setStyle(o,"height","");i.setStyle(p,"height",n);if(m.theme_advanced_resize_horizontal){i.setStyle(o,"width","");i.setStyle(p,"width",j);if(j<o.clientWidth){j=o.clientWidth;i.setStyle(p,"width",o.clientWidth)}}if(l&&m.theme_advanced_resizing_use_cookie){a.setHash("TinyMCE_"+k.id+"_size",{cw:j,ch:n})}},destroy:function(){var j=this.editor.id;g.clear(j+"_resize");g.clear(j+"_path_row");g.clear(j+"_external_close")},_simpleLayout:function(z,u,l,j){var y=this,v=y.editor,w=z.theme_advanced_toolbar_location,q=z.theme_advanced_statusbar_location,m,k,r,x;if(z.readonly){m=i.add(u,"tr");m=k=i.add(m,"td",{"class":"mceIframeContainer"});return k}if(w=="top"){y._addToolbars(u,l)}if(w=="external"){m=x=i.create("div",{style:"position:relative"});m=i.add(m,"div",{id:v.id+"_external","class":"mceExternalToolbar"});i.add(m,"a",{id:v.id+"_external_close",href:"javascript:;","class":"mceExternalClose"});m=i.add(m,"table",{id:v.id+"_tblext",cellSpacing:0,cellPadding:0});r=i.add(m,"tbody");if(j.firstChild.className=="mceOldBoxModel"){j.firstChild.appendChild(x)}else{j.insertBefore(x,j.firstChild)}y._addToolbars(r,l);v.onMouseUp.add(function(){var o=i.get(v.id+"_external");i.show(o);i.hide(e);var n=g.add(v.id+"_external_close","click",function(){i.hide(v.id+"_external");g.remove(v.id+"_external_close","click",n);return false});i.show(o);i.setStyle(o,"top",0-i.getRect(v.id+"_tblext").h-1);i.hide(o);i.show(o);o.style.filter="";e=v.id+"_external";o=null})}if(q=="top"){y._addStatusBar(u,l)}if(!z.theme_advanced_toolbar_container){m=i.add(u,"tr");m=k=i.add(m,"td",{"class":"mceIframeContainer"})}if(w=="bottom"){y._addToolbars(u,l)}if(q=="bottom"){y._addStatusBar(u,l)}return k},_rowLayout:function(x,p,l){var w=this,q=w.editor,v,y,j=q.controlManager,m,k,u,r;v=x.theme_advanced_containers_default_class||"";y=x.theme_advanced_containers_default_align||"center";f(d(x.theme_advanced_containers||""),function(s,o){var n=x["theme_advanced_container_"+s]||"";switch(s.toLowerCase()){case"mceeditor":m=i.add(p,"tr");m=k=i.add(m,"td",{"class":"mceIframeContainer"});break;case"mceelementpath":w._addStatusBar(p,l);break;default:r=(x["theme_advanced_container_"+s+"_align"]||y).toLowerCase();r="mce"+w._ufirst(r);m=i.add(i.add(p,"tr"),"td",{"class":"mceToolbar "+(x["theme_advanced_container_"+s+"_class"]||v)+" "+r||y});u=j.createToolbar("toolbar"+o);w._addControls(n,u);i.setHTML(m,u.renderHTML());l.deltaHeight-=x.theme_advanced_row_height}});return k},_addControls:function(k,j){var l=this,m=l.settings,n,o=l.editor.controlManager;if(m.theme_advanced_disable&&!l._disabled){n={};f(d(m.theme_advanced_disable),function(p){n[p]=1});l._disabled=n}else{n=l._disabled}f(d(k),function(q){var p;if(n&&n[q]){return}if(q=="tablecontrols"){f(["table","|","row_props","cell_props","|","row_before","row_after","delete_row","|","col_before","col_after","delete_col","|","split_cells","merge_cells"],function(r){r=l.createControl(r,o);if(r){j.add(r)}});return}p=l.createControl(q,o);if(p){j.add(p)}})},_addToolbars:function(y,k){var B=this,q,p,u=B.editor,C=B.settings,A,j=u.controlManager,w,l,r=[],z,x,m=false;x=j.createToolbarGroup("toolbargroup",{name:u.getLang("advanced.toolbar"),tab_focus_toolbar:u.getParam("theme_advanced_tab_focus_toolbar")});B.toolbarGroup=x;z=C.theme_advanced_toolbar_align.toLowerCase();z="mce"+B._ufirst(z);l=i.add(i.add(y,"tr",{role:"presentation"}),"td",{"class":"mceToolbar "+z,role:"toolbar"});for(q=1;(A=C["theme_advanced_buttons"+q]);q++){m=true;p=j.createToolbar("toolbar"+q,{"class":"mceToolbarRow"+q});if(C["theme_advanced_buttons"+q+"_add"]){A+=","+C["theme_advanced_buttons"+q+"_add"]}if(C["theme_advanced_buttons"+q+"_add_before"]){A=C["theme_advanced_buttons"+q+"_add_before"]+","+A}B._addControls(A,p);x.add(p);k.deltaHeight-=C.theme_advanced_row_height}if(!m){k.deltaHeight-=C.theme_advanced_row_height}r.push(x.renderHTML());r.push(i.createHTML("a",{href:"#",accesskey:"z",title:u.getLang("advanced.toolbar_focus"),onfocus:"tinyMCE.getInstanceById('"+u.id+"').focus();"},"<!-- IE -->"));i.setHTML(l,r.join(""))},_addStatusBar:function(p,k){var l,w=this,q=w.editor,x=w.settings,j,u,v,m;l=i.add(p,"tr");l=m=i.add(l,"td",{"class":"mceStatusbar"});l=i.add(l,"div",{id:q.id+"_path_row",role:"group","aria-labelledby":q.id+"_path_voice"});if(x.theme_advanced_path){i.add(l,"span",{id:q.id+"_path_voice"},q.translate("advanced.path"));i.add(l,"span",{},": ")}else{i.add(l,"span",{},"&#160;")}if(x.theme_advanced_resizing){i.add(m,"a",{id:q.id+"_resize",href:"javascript:;",onclick:"return false;","class":"mceResize",tabIndex:"-1"});if(x.theme_advanced_resizing_use_cookie){q.onPostRender.add(function(){var n=a.getHash("TinyMCE_"+q.id+"_size"),r=i.get(q.id+"_tbl");if(!n){return}w.resizeTo(n.cw,n.ch)})}q.onPostRender.add(function(){g.add(q.id+"_resize","click",function(n){n.preventDefault()});g.add(q.id+"_resize","mousedown",function(E){var t,r,s,o,D,A,B,G,n,F,y;function z(H){H.preventDefault();n=B+(H.screenX-D);F=G+(H.screenY-A);w.resizeTo(n,F)}function C(H){g.remove(i.doc,"mousemove",t);g.remove(q.getDoc(),"mousemove",r);g.remove(i.doc,"mouseup",s);g.remove(q.getDoc(),"mouseup",o);n=B+(H.screenX-D);F=G+(H.screenY-A);w.resizeTo(n,F,true);q.nodeChanged()}E.preventDefault();D=E.screenX;A=E.screenY;y=i.get(w.editor.id+"_ifr");B=n=y.clientWidth;G=F=y.clientHeight;t=g.add(i.doc,"mousemove",z);r=g.add(q.getDoc(),"mousemove",z);s=g.add(i.doc,"mouseup",C);o=g.add(q.getDoc(),"mouseup",C)})})}k.deltaHeight-=21;l=p=null},_updateUndoStatus:function(k){var j=k.controlManager,l=k.undoManager;j.setDisabled("undo",!l.hasUndo()&&!l.typing);j.setDisabled("redo",!l.hasRedo())},_nodeChanged:function(o,u,E,r,F){var z=this,D,G=0,y,H,A=z.settings,x,l,w,C,m,k,j;h.each(z.stateControls,function(n){u.setActive(n,o.queryCommandState(z.controls[n][1]))});function q(p){var s,n=F.parents,t=p;if(typeof(p)=="string"){t=function(v){return v.nodeName==p}}for(s=0;s<n.length;s++){if(t(n[s])){return n[s]}}}u.setActive("visualaid",o.hasVisual);z._updateUndoStatus(o);u.setDisabled("outdent",!o.queryCommandState("Outdent"));D=q("A");if(H=u.get("link")){H.setDisabled((!D&&r)||(D&&!D.href));H.setActive(!!D&&(!D.name&&!D.id))}if(H=u.get("unlink")){H.setDisabled(!D&&r);H.setActive(!!D&&!D.name&&!D.id)}if(H=u.get("anchor")){H.setActive(!r&&!!D&&(D.name||(D.id&&!D.href)))}D=q("IMG");if(H=u.get("image")){H.setActive(!r&&!!D&&E.className.indexOf("mceItem")==-1)}if(H=u.get("styleselect")){z._importClasses();k=[];f(H.items,function(n){k.push(n.value)});j=o.formatter.matchAll(k);H.select(j[0]);h.each(j,function(p,n){if(n>0){H.mark(p)}})}if(H=u.get("formatselect")){D=q(o.dom.isBlock);if(D){H.select(D.nodeName.toLowerCase())}}q(function(p){if(p.nodeName==="SPAN"){if(!x&&p.className){x=p.className}}if(o.dom.is(p,A.theme_advanced_font_selector)){if(!l&&p.style.fontSize){l=p.style.fontSize}if(!w&&p.style.fontFamily){w=p.style.fontFamily.replace(/[\"\']+/g,"").replace(/^([^,]+).*/,"$1").toLowerCase()}if(!C&&p.style.color){C=p.style.color}if(!m&&p.style.backgroundColor){m=p.style.backgroundColor}}return false});if(H=u.get("fontselect")){H.select(function(n){return n.replace(/^([^,]+).*/,"$1").toLowerCase()==w})}if(H=u.get("fontsizeselect")){if(A.theme_advanced_runtime_fontsize&&!l&&!x){l=o.dom.getStyle(E,"fontSize",true)}H.select(function(n){if(n.fontSize&&n.fontSize===l){return true}if(n["class"]&&n["class"]===x){return true}})}if(A.theme_advanced_show_current_color){function B(p,n){if(H=u.get(p)){if(!n){n=H.settings.default_color}if(n!==H.value){H.displayColor(n)}}}B("forecolor",C);B("backcolor",m)}if(A.theme_advanced_show_current_color){function B(p,n){if(H=u.get(p)){if(!n){n=H.settings.default_color}if(n!==H.value){H.displayColor(n)}}}B("forecolor",C);B("backcolor",m)}if(A.theme_advanced_path&&A.theme_advanced_statusbar_location){D=i.get(o.id+"_path")||i.add(o.id+"_path_row","span",{id:o.id+"_path"});if(z.statusKeyboardNavigation){z.statusKeyboardNavigation.destroy();z.statusKeyboardNavigation=null}i.setHTML(D,"");q(function(I){var p=I.nodeName.toLowerCase(),s,v,t="";if(I.nodeType!=1||p==="br"||I.getAttribute("data-mce-bogus")||i.hasClass(I,"mceItemHidden")||i.hasClass(I,"mceItemRemoved")){return}if(h.isIE&&I.scopeName!=="HTML"&&I.scopeName){p=I.scopeName+":"+p}p=p.replace(/mce\:/g,"");switch(p){case"b":p="strong";break;case"i":p="em";break;case"img":if(y=i.getAttrib(I,"src")){t+="src: "+y+" "}break;case"a":if(y=i.getAttrib(I,"name")){t+="name: "+y+" ";p+="#"+y}if(y=i.getAttrib(I,"href")){t+="href: "+y+" "}break;case"font":if(y=i.getAttrib(I,"face")){t+="font: "+y+" "}if(y=i.getAttrib(I,"size")){t+="size: "+y+" "}if(y=i.getAttrib(I,"color")){t+="color: "+y+" "}break;case"span":if(y=i.getAttrib(I,"style")){t+="style: "+y+" "}break}if(y=i.getAttrib(I,"id")){t+="id: "+y+" "}if(y=I.className){y=y.replace(/\b\s*(webkit|mce|Apple-)\w+\s*\b/g,"");if(y){t+="class: "+y+" ";if(o.dom.isBlock(I)||p=="img"||p=="span"){p+="."+y}}}p=p.replace(/(html:)/g,"");p={name:p,node:I,title:t};z.onResolveName.dispatch(z,p);t=p.title;p=p.name;v=i.create("a",{href:"javascript:;",role:"button",onmousedown:"return false;",title:t,"class":"mcePath_"+(G++)},p);if(D.hasChildNodes()){D.insertBefore(i.create("span",{"aria-hidden":"true"},"\u00a0\u00bb "),D.firstChild);D.insertBefore(v,D.firstChild)}else{D.appendChild(v)}},o.getBody());if(i.select("a",D).length>0){z.statusKeyboardNavigation=new h.ui.KeyboardNavigation({root:o.id+"_path_row",items:i.select("a",D),excludeFromTabOrder:true,onCancel:function(){o.focus()}},i)}}},_sel:function(j){this.editor.execCommand("mceSelectNodeDepth",false,j)},_mceInsertAnchor:function(l,k){var j=this.editor;j.windowManager.open({url:this.url+"/anchor.htm",width:320+parseInt(j.getLang("advanced.anchor_delta_width",0)),height:90+parseInt(j.getLang("advanced.anchor_delta_height",0)),inline:true},{theme_url:this.url})},_mceCharMap:function(){var j=this.editor;j.windowManager.open({url:this.url+"/charmap.htm",width:550+parseInt(j.getLang("advanced.charmap_delta_width",0)),height:265+parseInt(j.getLang("advanced.charmap_delta_height",0)),inline:true},{theme_url:this.url})},_mceHelp:function(){var j=this.editor;j.windowManager.open({url:this.url+"/about.htm",width:480,height:380,inline:true},{theme_url:this.url})},_mceShortcuts:function(){var j=this.editor;j.windowManager.open({url:this.url+"/shortcuts.htm",width:480,height:380,inline:true},{theme_url:this.url})},_mceColorPicker:function(l,k){var j=this.editor;k=k||{};j.windowManager.open({url:this.url+"/color_picker.htm",width:375+parseInt(j.getLang("advanced.colorpicker_delta_width",0)),height:250+parseInt(j.getLang("advanced.colorpicker_delta_height",0)),close_previous:false,inline:true},{input_color:k.color,func:k.func,theme_url:this.url})},_mceCodeEditor:function(k,l){var j=this.editor;j.windowManager.open({url:this.url+"/source_editor.htm",width:parseInt(j.getParam("theme_advanced_source_editor_width",720)),height:parseInt(j.getParam("theme_advanced_source_editor_height",580)),inline:true,resizable:true,maximizable:true},{theme_url:this.url})},_mceImage:function(k,l){var j=this.editor;if(j.dom.getAttrib(j.selection.getNode(),"class","").indexOf("mceItem")!=-1){return}j.windowManager.open({url:this.url+"/image.htm",width:355+parseInt(j.getLang("advanced.image_delta_width",0)),height:275+parseInt(j.getLang("advanced.image_delta_height",0)),inline:true},{theme_url:this.url})},_mceLink:function(k,l){var j=this.editor;j.windowManager.open({url:this.url+"/link.htm",width:310+parseInt(j.getLang("advanced.link_delta_width",0)),height:200+parseInt(j.getLang("advanced.link_delta_height",0)),inline:true},{theme_url:this.url})},_mceNewDocument:function(){var j=this.editor;j.windowManager.confirm("advanced.newdocument",function(k){if(k){j.execCommand("mceSetContent",false,"")}})},_mceForeColor:function(){var j=this;this._mceColorPicker(0,{color:j.fgColor,func:function(k){j.fgColor=k;j.editor.execCommand("ForeColor",false,k)}})},_mceBackColor:function(){var j=this;this._mceColorPicker(0,{color:j.bgColor,func:function(k){j.bgColor=k;j.editor.execCommand("HiliteColor",false,k)}})},_ufirst:function(j){return j.substring(0,1).toUpperCase()+j.substring(1)}});h.ThemeManager.add("advanced",h.themes.AdvancedTheme)}(tinymce));
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/image.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/image.htm
new file mode 100644 (file)
index 0000000..4261ce1
--- /dev/null
@@ -0,0 +1,80 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#advanced_dlg.image_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js"></script>
+       <script type="text/javascript" src="js/image.js"></script>
+</head>
+<body id="image" style="display: none">
+<form onsubmit="ImageDialog.update();return false;" action="#">
+       <div class="tabs">
+               <ul>
+                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#advanced_dlg.image_title}</a></span></li>
+               </ul>
+       </div>
+
+       <div class="panel_wrapper">
+               <div id="general_panel" class="panel current">
+                       <table border="0" cellpadding="4" cellspacing="0">
+                               <tr>
+                                       <td class="nowrap"><label for="src">{#advanced_dlg.image_src}</label></td>
+                                       <td><table border="0" cellspacing="0" cellpadding="0">
+                                               <tr>
+                                                       <td><input id="src" name="src" type="text" class="mceFocus" value="" style="width: 200px" onchange="ImageDialog.getImageData();" /></td>
+                                                       <td id="srcbrowsercontainer">&nbsp;</td>
+                                               </tr>
+                                       </table></td>
+                               </tr>
+                               <tr>
+                                       <td><label for="image_list">{#advanced_dlg.image_list}</label></td>
+                                       <td><select id="image_list" name="image_list" onchange="document.getElementById('src').value=this.options[this.selectedIndex].value;document.getElementById('alt').value=this.options[this.selectedIndex].text;"></select></td>
+                               </tr>
+                               <tr>
+                                       <td class="nowrap"><label for="alt">{#advanced_dlg.image_alt}</label></td>
+                                       <td><input id="alt" name="alt" type="text" value="" style="width: 200px" /></td>
+                               </tr>
+                               <tr>
+                                       <td class="nowrap"><label for="align">{#advanced_dlg.image_align}</label></td>
+                                       <td><select id="align" name="align" onchange="ImageDialog.updateStyle();">
+                                               <option value="">{#not_set}</option>
+                                               <option value="baseline">{#advanced_dlg.image_align_baseline}</option>
+                                               <option value="top">{#advanced_dlg.image_align_top}</option>
+                                               <option value="middle">{#advanced_dlg.image_align_middle}</option>
+                                               <option value="bottom">{#advanced_dlg.image_align_bottom}</option>
+                                               <option value="text-top">{#advanced_dlg.image_align_texttop}</option>
+                                               <option value="text-bottom">{#advanced_dlg.image_align_textbottom}</option>
+                                               <option value="left">{#advanced_dlg.image_align_left}</option>
+                                               <option value="right">{#advanced_dlg.image_align_right}</option>
+                                       </select></td>
+                               </tr>
+                               <tr>
+                                       <td class="nowrap"><label for="width">{#advanced_dlg.image_dimensions}</label></td>
+                                       <td><input id="width" name="width" type="text" value="" size="3" maxlength="5" />
+                                        x
+                                       <input id="height" name="height" type="text" value="" size="3" maxlength="5" /></td>
+                               </tr>
+                               <tr>
+                               <td class="nowrap"><label for="border">{#advanced_dlg.image_border}</label></td>
+                               <td><input id="border" name="border" type="text" value="" size="3" maxlength="3" onchange="ImageDialog.updateStyle();" /></td>
+                               </tr>
+                               <tr>
+                                       <td class="nowrap"><label for="vspace">{#advanced_dlg.image_vspace}</label></td>
+                                       <td><input id="vspace" name="vspace" type="text" value="" size="3" maxlength="3" onchange="ImageDialog.updateStyle();" /></td>
+                               </tr>
+                               <tr>
+                                       <td class="nowrap"><label for="hspace">{#advanced_dlg.image_hspace}</label></td>
+                                       <td><input id="hspace" name="hspace" type="text" value="" size="3" maxlength="3" onchange="ImageDialog.updateStyle();" /></td>
+                               </tr>
+                       </table>
+               </div>
+       </div>
+
+       <div class="mceActionPanel">
+               <input type="submit" id="insert" name="insert" value="{#insert}" />
+               <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
+       </div>
+</form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/colorpicker.jpg b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/colorpicker.jpg
new file mode 100644 (file)
index 0000000..b1a377a
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/colorpicker.jpg differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/flash.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/flash.gif
new file mode 100644 (file)
index 0000000..dec3f7c
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/flash.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/icons.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/icons.gif
new file mode 100644 (file)
index 0000000..ca22249
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/icons.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/iframe.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/iframe.gif
new file mode 100644 (file)
index 0000000..410c7ad
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/iframe.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/pagebreak.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/pagebreak.gif
new file mode 100644 (file)
index 0000000..acdf408
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/pagebreak.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/quicktime.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/quicktime.gif
new file mode 100644 (file)
index 0000000..8f10e7a
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/quicktime.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/realmedia.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/realmedia.gif
new file mode 100644 (file)
index 0000000..fdfe0b9
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/realmedia.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/shockwave.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/shockwave.gif
new file mode 100644 (file)
index 0000000..9314d04
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/shockwave.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/trans.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/trans.gif
new file mode 100644 (file)
index 0000000..3884865
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/trans.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/video.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/video.gif
new file mode 100644 (file)
index 0000000..3570104
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/video.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/windowsmedia.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/windowsmedia.gif
new file mode 100644 (file)
index 0000000..ab50f2d
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/img/windowsmedia.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/about.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/about.js
new file mode 100644 (file)
index 0000000..daf4909
--- /dev/null
@@ -0,0 +1,73 @@
+tinyMCEPopup.requireLangPack();
+
+function init() {
+       var ed, tcont;
+
+       tinyMCEPopup.resizeToInnerSize();
+       ed = tinyMCEPopup.editor;
+
+       // Give FF some time
+       window.setTimeout(insertHelpIFrame, 10);
+
+       tcont = document.getElementById('plugintablecontainer');
+       document.getElementById('plugins_tab').style.display = 'none';
+
+       var html = "";
+       html += '<table id="plugintable">';
+       html += '<thead>';
+       html += '<tr>';
+       html += '<td>' + ed.getLang('advanced_dlg.about_plugin') + '</td>';
+       html += '<td>' + ed.getLang('advanced_dlg.about_author') + '</td>';
+       html += '<td>' + ed.getLang('advanced_dlg.about_version') + '</td>';
+       html += '</tr>';
+       html += '</thead>';
+       html += '<tbody>';
+
+       tinymce.each(ed.plugins, function(p, n) {
+               var info;
+
+               if (!p.getInfo)
+                       return;
+
+               html += '<tr>';
+
+               info = p.getInfo();
+
+               if (info.infourl != null && info.infourl != '')
+                       html += '<td width="50%" title="' + n + '"><a href="' + info.infourl + '" target="_blank">' + info.longname + '</a></td>';
+               else
+                       html += '<td width="50%" title="' + n + '">' + info.longname + '</td>';
+
+               if (info.authorurl != null && info.authorurl != '')
+                       html += '<td width="35%"><a href="' + info.authorurl + '" target="_blank">' + info.author + '</a></td>';
+               else
+                       html += '<td width="35%">' + info.author + '</td>';
+
+               html += '<td width="15%">' + info.version + '</td>';
+               html += '</tr>';
+
+               document.getElementById('plugins_tab').style.display = '';
+
+       });
+
+       html += '</tbody>';
+       html += '</table>';
+
+       tcont.innerHTML = html;
+
+       tinyMCEPopup.dom.get('version').innerHTML = tinymce.majorVersion + "." + tinymce.minorVersion;
+       tinyMCEPopup.dom.get('date').innerHTML = tinymce.releaseDate;
+}
+
+function insertHelpIFrame() {
+       var html;
+
+       if (tinyMCEPopup.getParam('docs_url')) {
+               html = '<iframe width="100%" height="300" src="' + tinyMCEPopup.editor.baseURI.toAbsolute(tinyMCEPopup.getParam('docs_url')) + '"></iframe>';
+               document.getElementById('iframecontainer').innerHTML = html;
+               document.getElementById('help_tab').style.display = 'block';
+               document.getElementById('help_tab').setAttribute("aria-hidden", "false");
+       }
+}
+
+tinyMCEPopup.onInit.add(init);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/anchor.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/anchor.js
new file mode 100644 (file)
index 0000000..a3a0186
--- /dev/null
@@ -0,0 +1,56 @@
+tinyMCEPopup.requireLangPack();
+
+var AnchorDialog = {
+       init : function(ed) {
+               var action, elm, f = document.forms[0];
+
+               this.editor = ed;
+               elm = ed.dom.getParent(ed.selection.getNode(), 'A');
+               v = ed.dom.getAttrib(elm, 'name') || ed.dom.getAttrib(elm, 'id');
+
+               if (v) {
+                       this.action = 'update';
+                       f.anchorName.value = v;
+               }
+
+               f.insert.value = ed.getLang(elm ? 'update' : 'insert');
+       },
+
+       update : function() {
+               var ed = this.editor, elm, name = document.forms[0].anchorName.value, attribName;
+
+               if (!name || !/^[a-z][a-z0-9\-\_:\.]*$/i.test(name)) {
+                       tinyMCEPopup.alert('advanced_dlg.anchor_invalid');
+                       return;
+               }
+
+               tinyMCEPopup.restoreSelection();
+
+               if (this.action != 'update')
+                       ed.selection.collapse(1);
+
+               var aRule = ed.schema.getElementRule('a');
+               if (!aRule || aRule.attributes.name) {
+                       attribName = 'name';
+               } else {
+                       attribName = 'id';
+               }
+
+               elm = ed.dom.getParent(ed.selection.getNode(), 'A');
+               if (elm) {
+                       elm.setAttribute(attribName, name);
+                       elm[attribName] = name;
+                       ed.undoManager.add();
+               } else {
+                       // create with zero-sized nbsp so that in Webkit where anchor is on last line by itself caret cannot be placed after it
+                       var attrs =  {'class' : 'mceItemAnchor'};
+                       attrs[attribName] = name;
+                       ed.execCommand('mceInsertContent', 0, ed.dom.createHTML('a', attrs, '\uFEFF'));
+                       ed.nodeChanged();
+               }
+
+               tinyMCEPopup.close();
+       }
+};
+
+tinyMCEPopup.onInit.add(AnchorDialog.init, AnchorDialog);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/charmap.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/charmap.js
new file mode 100644 (file)
index 0000000..6a22d17
--- /dev/null
@@ -0,0 +1,363 @@
+/**
+ * charmap.js
+ *
+ * Copyright 2009, Moxiecode Systems AB
+ * Released under LGPL License.
+ *
+ * License: http://tinymce.moxiecode.com/license
+ * Contributing: http://tinymce.moxiecode.com/contributing
+ */
+
+tinyMCEPopup.requireLangPack();
+
+var charmap = [
+       ['&nbsp;',    '&#160;',  true, 'no-break space'],
+       ['&amp;',     '&#38;',   true, 'ampersand'],
+       ['&quot;',    '&#34;',   true, 'quotation mark'],
+// finance
+       ['&cent;',    '&#162;',  true, 'cent sign'],
+       ['&euro;',    '&#8364;', true, 'euro sign'],
+       ['&pound;',   '&#163;',  true, 'pound sign'],
+       ['&yen;',     '&#165;',  true, 'yen sign'],
+// signs
+       ['&copy;',    '&#169;',  true, 'copyright sign'],
+       ['&reg;',     '&#174;',  true, 'registered sign'],
+       ['&trade;',   '&#8482;', true, 'trade mark sign'],
+       ['&permil;',  '&#8240;', true, 'per mille sign'],
+       ['&micro;',   '&#181;',  true, 'micro sign'],
+       ['&middot;',  '&#183;',  true, 'middle dot'],
+       ['&bull;',    '&#8226;', true, 'bullet'],
+       ['&hellip;',  '&#8230;', true, 'three dot leader'],
+       ['&prime;',   '&#8242;', true, 'minutes / feet'],
+       ['&Prime;',   '&#8243;', true, 'seconds / inches'],
+       ['&sect;',    '&#167;',  true, 'section sign'],
+       ['&para;',    '&#182;',  true, 'paragraph sign'],
+       ['&szlig;',   '&#223;',  true, 'sharp s / ess-zed'],
+// quotations
+       ['&lsaquo;',  '&#8249;', true, 'single left-pointing angle quotation mark'],
+       ['&rsaquo;',  '&#8250;', true, 'single right-pointing angle quotation mark'],
+       ['&laquo;',   '&#171;',  true, 'left pointing guillemet'],
+       ['&raquo;',   '&#187;',  true, 'right pointing guillemet'],
+       ['&lsquo;',   '&#8216;', true, 'left single quotation mark'],
+       ['&rsquo;',   '&#8217;', true, 'right single quotation mark'],
+       ['&ldquo;',   '&#8220;', true, 'left double quotation mark'],
+       ['&rdquo;',   '&#8221;', true, 'right double quotation mark'],
+       ['&sbquo;',   '&#8218;', true, 'single low-9 quotation mark'],
+       ['&bdquo;',   '&#8222;', true, 'double low-9 quotation mark'],
+       ['&lt;',      '&#60;',   true, 'less-than sign'],
+       ['&gt;',      '&#62;',   true, 'greater-than sign'],
+       ['&le;',      '&#8804;', true, 'less-than or equal to'],
+       ['&ge;',      '&#8805;', true, 'greater-than or equal to'],
+       ['&ndash;',   '&#8211;', true, 'en dash'],
+       ['&mdash;',   '&#8212;', true, 'em dash'],
+       ['&macr;',    '&#175;',  true, 'macron'],
+       ['&oline;',   '&#8254;', true, 'overline'],
+       ['&curren;',  '&#164;',  true, 'currency sign'],
+       ['&brvbar;',  '&#166;',  true, 'broken bar'],
+       ['&uml;',     '&#168;',  true, 'diaeresis'],
+       ['&iexcl;',   '&#161;',  true, 'inverted exclamation mark'],
+       ['&iquest;',  '&#191;',  true, 'turned question mark'],
+       ['&circ;',    '&#710;',  true, 'circumflex accent'],
+       ['&tilde;',   '&#732;',  true, 'small tilde'],
+       ['&deg;',     '&#176;',  true, 'degree sign'],
+       ['&minus;',   '&#8722;', true, 'minus sign'],
+       ['&plusmn;',  '&#177;',  true, 'plus-minus sign'],
+       ['&divide;',  '&#247;',  true, 'division sign'],
+       ['&frasl;',   '&#8260;', true, 'fraction slash'],
+       ['&times;',   '&#215;',  true, 'multiplication sign'],
+       ['&sup1;',    '&#185;',  true, 'superscript one'],
+       ['&sup2;',    '&#178;',  true, 'superscript two'],
+       ['&sup3;',    '&#179;',  true, 'superscript three'],
+       ['&frac14;',  '&#188;',  true, 'fraction one quarter'],
+       ['&frac12;',  '&#189;',  true, 'fraction one half'],
+       ['&frac34;',  '&#190;',  true, 'fraction three quarters'],
+// math / logical
+       ['&fnof;',    '&#402;',  true, 'function / florin'],
+       ['&int;',     '&#8747;', true, 'integral'],
+       ['&sum;',     '&#8721;', true, 'n-ary sumation'],
+       ['&infin;',   '&#8734;', true, 'infinity'],
+       ['&radic;',   '&#8730;', true, 'square root'],
+       ['&sim;',     '&#8764;', false,'similar to'],
+       ['&cong;',    '&#8773;', false,'approximately equal to'],
+       ['&asymp;',   '&#8776;', true, 'almost equal to'],
+       ['&ne;',      '&#8800;', true, 'not equal to'],
+       ['&equiv;',   '&#8801;', true, 'identical to'],
+       ['&isin;',    '&#8712;', false,'element of'],
+       ['&notin;',   '&#8713;', false,'not an element of'],
+       ['&ni;',      '&#8715;', false,'contains as member'],
+       ['&prod;',    '&#8719;', true, 'n-ary product'],
+       ['&and;',     '&#8743;', false,'logical and'],
+       ['&or;',      '&#8744;', false,'logical or'],
+       ['&not;',     '&#172;',  true, 'not sign'],
+       ['&cap;',     '&#8745;', true, 'intersection'],
+       ['&cup;',     '&#8746;', false,'union'],
+       ['&part;',    '&#8706;', true, 'partial differential'],
+       ['&forall;',  '&#8704;', false,'for all'],
+       ['&exist;',   '&#8707;', false,'there exists'],
+       ['&empty;',   '&#8709;', false,'diameter'],
+       ['&nabla;',   '&#8711;', false,'backward difference'],
+       ['&lowast;',  '&#8727;', false,'asterisk operator'],
+       ['&prop;',    '&#8733;', false,'proportional to'],
+       ['&ang;',     '&#8736;', false,'angle'],
+// undefined
+       ['&acute;',   '&#180;',  true, 'acute accent'],
+       ['&cedil;',   '&#184;',  true, 'cedilla'],
+       ['&ordf;',    '&#170;',  true, 'feminine ordinal indicator'],
+       ['&ordm;',    '&#186;',  true, 'masculine ordinal indicator'],
+       ['&dagger;',  '&#8224;', true, 'dagger'],
+       ['&Dagger;',  '&#8225;', true, 'double dagger'],
+// alphabetical special chars
+       ['&Agrave;',  '&#192;',  true, 'A - grave'],
+       ['&Aacute;',  '&#193;',  true, 'A - acute'],
+       ['&Acirc;',   '&#194;',  true, 'A - circumflex'],
+       ['&Atilde;',  '&#195;',  true, 'A - tilde'],
+       ['&Auml;',    '&#196;',  true, 'A - diaeresis'],
+       ['&Aring;',   '&#197;',  true, 'A - ring above'],
+       ['&AElig;',   '&#198;',  true, 'ligature AE'],
+       ['&Ccedil;',  '&#199;',  true, 'C - cedilla'],
+       ['&Egrave;',  '&#200;',  true, 'E - grave'],
+       ['&Eacute;',  '&#201;',  true, 'E - acute'],
+       ['&Ecirc;',   '&#202;',  true, 'E - circumflex'],
+       ['&Euml;',    '&#203;',  true, 'E - diaeresis'],
+       ['&Igrave;',  '&#204;',  true, 'I - grave'],
+       ['&Iacute;',  '&#205;',  true, 'I - acute'],
+       ['&Icirc;',   '&#206;',  true, 'I - circumflex'],
+       ['&Iuml;',    '&#207;',  true, 'I - diaeresis'],
+       ['&ETH;',     '&#208;',  true, 'ETH'],
+       ['&Ntilde;',  '&#209;',  true, 'N - tilde'],
+       ['&Ograve;',  '&#210;',  true, 'O - grave'],
+       ['&Oacute;',  '&#211;',  true, 'O - acute'],
+       ['&Ocirc;',   '&#212;',  true, 'O - circumflex'],
+       ['&Otilde;',  '&#213;',  true, 'O - tilde'],
+       ['&Ouml;',    '&#214;',  true, 'O - diaeresis'],
+       ['&Oslash;',  '&#216;',  true, 'O - slash'],
+       ['&OElig;',   '&#338;',  true, 'ligature OE'],
+       ['&Scaron;',  '&#352;',  true, 'S - caron'],
+       ['&Ugrave;',  '&#217;',  true, 'U - grave'],
+       ['&Uacute;',  '&#218;',  true, 'U - acute'],
+       ['&Ucirc;',   '&#219;',  true, 'U - circumflex'],
+       ['&Uuml;',    '&#220;',  true, 'U - diaeresis'],
+       ['&Yacute;',  '&#221;',  true, 'Y - acute'],
+       ['&Yuml;',    '&#376;',  true, 'Y - diaeresis'],
+       ['&THORN;',   '&#222;',  true, 'THORN'],
+       ['&agrave;',  '&#224;',  true, 'a - grave'],
+       ['&aacute;',  '&#225;',  true, 'a - acute'],
+       ['&acirc;',   '&#226;',  true, 'a - circumflex'],
+       ['&atilde;',  '&#227;',  true, 'a - tilde'],
+       ['&auml;',    '&#228;',  true, 'a - diaeresis'],
+       ['&aring;',   '&#229;',  true, 'a - ring above'],
+       ['&aelig;',   '&#230;',  true, 'ligature ae'],
+       ['&ccedil;',  '&#231;',  true, 'c - cedilla'],
+       ['&egrave;',  '&#232;',  true, 'e - grave'],
+       ['&eacute;',  '&#233;',  true, 'e - acute'],
+       ['&ecirc;',   '&#234;',  true, 'e - circumflex'],
+       ['&euml;',    '&#235;',  true, 'e - diaeresis'],
+       ['&igrave;',  '&#236;',  true, 'i - grave'],
+       ['&iacute;',  '&#237;',  true, 'i - acute'],
+       ['&icirc;',   '&#238;',  true, 'i - circumflex'],
+       ['&iuml;',    '&#239;',  true, 'i - diaeresis'],
+       ['&eth;',     '&#240;',  true, 'eth'],
+       ['&ntilde;',  '&#241;',  true, 'n - tilde'],
+       ['&ograve;',  '&#242;',  true, 'o - grave'],
+       ['&oacute;',  '&#243;',  true, 'o - acute'],
+       ['&ocirc;',   '&#244;',  true, 'o - circumflex'],
+       ['&otilde;',  '&#245;',  true, 'o - tilde'],
+       ['&ouml;',    '&#246;',  true, 'o - diaeresis'],
+       ['&oslash;',  '&#248;',  true, 'o slash'],
+       ['&oelig;',   '&#339;',  true, 'ligature oe'],
+       ['&scaron;',  '&#353;',  true, 's - caron'],
+       ['&ugrave;',  '&#249;',  true, 'u - grave'],
+       ['&uacute;',  '&#250;',  true, 'u - acute'],
+       ['&ucirc;',   '&#251;',  true, 'u - circumflex'],
+       ['&uuml;',    '&#252;',  true, 'u - diaeresis'],
+       ['&yacute;',  '&#253;',  true, 'y - acute'],
+       ['&thorn;',   '&#254;',  true, 'thorn'],
+       ['&yuml;',    '&#255;',  true, 'y - diaeresis'],
+       ['&Alpha;',   '&#913;',  true, 'Alpha'],
+       ['&Beta;',    '&#914;',  true, 'Beta'],
+       ['&Gamma;',   '&#915;',  true, 'Gamma'],
+       ['&Delta;',   '&#916;',  true, 'Delta'],
+       ['&Epsilon;', '&#917;',  true, 'Epsilon'],
+       ['&Zeta;',    '&#918;',  true, 'Zeta'],
+       ['&Eta;',     '&#919;',  true, 'Eta'],
+       ['&Theta;',   '&#920;',  true, 'Theta'],
+       ['&Iota;',    '&#921;',  true, 'Iota'],
+       ['&Kappa;',   '&#922;',  true, 'Kappa'],
+       ['&Lambda;',  '&#923;',  true, 'Lambda'],
+       ['&Mu;',      '&#924;',  true, 'Mu'],
+       ['&Nu;',      '&#925;',  true, 'Nu'],
+       ['&Xi;',      '&#926;',  true, 'Xi'],
+       ['&Omicron;', '&#927;',  true, 'Omicron'],
+       ['&Pi;',      '&#928;',  true, 'Pi'],
+       ['&Rho;',     '&#929;',  true, 'Rho'],
+       ['&Sigma;',   '&#931;',  true, 'Sigma'],
+       ['&Tau;',     '&#932;',  true, 'Tau'],
+       ['&Upsilon;', '&#933;',  true, 'Upsilon'],
+       ['&Phi;',     '&#934;',  true, 'Phi'],
+       ['&Chi;',     '&#935;',  true, 'Chi'],
+       ['&Psi;',     '&#936;',  true, 'Psi'],
+       ['&Omega;',   '&#937;',  true, 'Omega'],
+       ['&alpha;',   '&#945;',  true, 'alpha'],
+       ['&beta;',    '&#946;',  true, 'beta'],
+       ['&gamma;',   '&#947;',  true, 'gamma'],
+       ['&delta;',   '&#948;',  true, 'delta'],
+       ['&epsilon;', '&#949;',  true, 'epsilon'],
+       ['&zeta;',    '&#950;',  true, 'zeta'],
+       ['&eta;',     '&#951;',  true, 'eta'],
+       ['&theta;',   '&#952;',  true, 'theta'],
+       ['&iota;',    '&#953;',  true, 'iota'],
+       ['&kappa;',   '&#954;',  true, 'kappa'],
+       ['&lambda;',  '&#955;',  true, 'lambda'],
+       ['&mu;',      '&#956;',  true, 'mu'],
+       ['&nu;',      '&#957;',  true, 'nu'],
+       ['&xi;',      '&#958;',  true, 'xi'],
+       ['&omicron;', '&#959;',  true, 'omicron'],
+       ['&pi;',      '&#960;',  true, 'pi'],
+       ['&rho;',     '&#961;',  true, 'rho'],
+       ['&sigmaf;',  '&#962;',  true, 'final sigma'],
+       ['&sigma;',   '&#963;',  true, 'sigma'],
+       ['&tau;',     '&#964;',  true, 'tau'],
+       ['&upsilon;', '&#965;',  true, 'upsilon'],
+       ['&phi;',     '&#966;',  true, 'phi'],
+       ['&chi;',     '&#967;',  true, 'chi'],
+       ['&psi;',     '&#968;',  true, 'psi'],
+       ['&omega;',   '&#969;',  true, 'omega'],
+// symbols
+       ['&alefsym;', '&#8501;', false,'alef symbol'],
+       ['&piv;',     '&#982;',  false,'pi symbol'],
+       ['&real;',    '&#8476;', false,'real part symbol'],
+       ['&thetasym;','&#977;',  false,'theta symbol'],
+       ['&upsih;',   '&#978;',  false,'upsilon - hook symbol'],
+       ['&weierp;',  '&#8472;', false,'Weierstrass p'],
+       ['&image;',   '&#8465;', false,'imaginary part'],
+// arrows
+       ['&larr;',    '&#8592;', true, 'leftwards arrow'],
+       ['&uarr;',    '&#8593;', true, 'upwards arrow'],
+       ['&rarr;',    '&#8594;', true, 'rightwards arrow'],
+       ['&darr;',    '&#8595;', true, 'downwards arrow'],
+       ['&harr;',    '&#8596;', true, 'left right arrow'],
+       ['&crarr;',   '&#8629;', false,'carriage return'],
+       ['&lArr;',    '&#8656;', false,'leftwards double arrow'],
+       ['&uArr;',    '&#8657;', false,'upwards double arrow'],
+       ['&rArr;',    '&#8658;', false,'rightwards double arrow'],
+       ['&dArr;',    '&#8659;', false,'downwards double arrow'],
+       ['&hArr;',    '&#8660;', false,'left right double arrow'],
+       ['&there4;',  '&#8756;', false,'therefore'],
+       ['&sub;',     '&#8834;', false,'subset of'],
+       ['&sup;',     '&#8835;', false,'superset of'],
+       ['&nsub;',    '&#8836;', false,'not a subset of'],
+       ['&sube;',    '&#8838;', false,'subset of or equal to'],
+       ['&supe;',    '&#8839;', false,'superset of or equal to'],
+       ['&oplus;',   '&#8853;', false,'circled plus'],
+       ['&otimes;',  '&#8855;', false,'circled times'],
+       ['&perp;',    '&#8869;', false,'perpendicular'],
+       ['&sdot;',    '&#8901;', false,'dot operator'],
+       ['&lceil;',   '&#8968;', false,'left ceiling'],
+       ['&rceil;',   '&#8969;', false,'right ceiling'],
+       ['&lfloor;',  '&#8970;', false,'left floor'],
+       ['&rfloor;',  '&#8971;', false,'right floor'],
+       ['&lang;',    '&#9001;', false,'left-pointing angle bracket'],
+       ['&rang;',    '&#9002;', false,'right-pointing angle bracket'],
+       ['&loz;',     '&#9674;', true, 'lozenge'],
+       ['&spades;',  '&#9824;', true, 'black spade suit'],
+       ['&clubs;',   '&#9827;', true, 'black club suit'],
+       ['&hearts;',  '&#9829;', true, 'black heart suit'],
+       ['&diams;',   '&#9830;', true, 'black diamond suit'],
+       ['&ensp;',    '&#8194;', false,'en space'],
+       ['&emsp;',    '&#8195;', false,'em space'],
+       ['&thinsp;',  '&#8201;', false,'thin space'],
+       ['&zwnj;',    '&#8204;', false,'zero width non-joiner'],
+       ['&zwj;',     '&#8205;', false,'zero width joiner'],
+       ['&lrm;',     '&#8206;', false,'left-to-right mark'],
+       ['&rlm;',     '&#8207;', false,'right-to-left mark'],
+       ['&shy;',     '&#173;',  false,'soft hyphen']
+];
+
+tinyMCEPopup.onInit.add(function() {
+       tinyMCEPopup.dom.setHTML('charmapView', renderCharMapHTML());
+       addKeyboardNavigation();
+});
+
+function addKeyboardNavigation(){
+       var tableElm, cells, settings;
+
+       cells = tinyMCEPopup.dom.select("a.charmaplink", "charmapgroup");
+
+       settings ={
+               root: "charmapgroup",
+               items: cells
+       };
+       cells[0].tabindex=0;
+       tinyMCEPopup.dom.addClass(cells[0], "mceFocus");
+       if (tinymce.isGecko) {
+               cells[0].focus();
+       } else {
+               setTimeout(function(){
+                       cells[0].focus();
+               }, 100);
+       }
+       tinyMCEPopup.editor.windowManager.createInstance('tinymce.ui.KeyboardNavigation', settings, tinyMCEPopup.dom);
+}
+
+function renderCharMapHTML() {
+       var charsPerRow = 20, tdWidth=20, tdHeight=20, i;
+       var html = '<div id="charmapgroup" aria-labelledby="charmap_label" tabindex="0" role="listbox">'+
+       '<table role="presentation" border="0" cellspacing="1" cellpadding="0" width="' + (tdWidth*charsPerRow) +
+       '"><tr height="' + tdHeight + '">';
+       var cols=-1;
+
+       for (i=0; i<charmap.length; i++) {
+               var previewCharFn;
+
+               if (charmap[i][2]==true) {
+                       cols++;
+                       previewCharFn = 'previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');';
+                       html += ''
+                               + '<td class="charmap">'
+                               + '<a class="charmaplink" role="button" onmouseover="'+previewCharFn+'" onfocus="'+previewCharFn+'" href="javascript:void(0)" onclick="insertChar(\'' + charmap[i][1].substring(2,charmap[i][1].length-1) + '\');" onclick="return false;" onmousedown="return false;" title="' + charmap[i][3] + ' '+ tinyMCEPopup.editor.translate("advanced_dlg.charmap_usage")+'">'
+                               + charmap[i][1]
+                               + '</a></td>';
+                       if ((cols+1) % charsPerRow == 0)
+                               html += '</tr><tr height="' + tdHeight + '">';
+               }
+        }
+
+       if (cols % charsPerRow > 0) {
+               var padd = charsPerRow - (cols % charsPerRow);
+               for (var i=0; i<padd-1; i++)
+                       html += '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap">&nbsp;</td>';
+       }
+
+       html += '</tr></table></div>';
+       html = html.replace(/<tr height="20"><\/tr>/g, '');
+
+       return html;
+}
+
+function insertChar(chr) {
+       tinyMCEPopup.execCommand('mceInsertContent', false, '&#' + chr + ';');
+
+       // Refocus in window
+       if (tinyMCEPopup.isWindow)
+               window.focus();
+
+       tinyMCEPopup.editor.focus();
+       tinyMCEPopup.close();
+}
+
+function previewChar(codeA, codeB, codeN) {
+       var elmA = document.getElementById('codeA');
+       var elmB = document.getElementById('codeB');
+       var elmV = document.getElementById('codeV');
+       var elmN = document.getElementById('codeN');
+
+       if (codeA=='#160;') {
+               elmV.innerHTML = '__';
+       } else {
+               elmV.innerHTML = '&' + codeA;
+       }
+
+       elmB.innerHTML = '&amp;' + codeA;
+       elmA.innerHTML = '&amp;' + codeB;
+       elmN.innerHTML = codeN;
+}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/color_picker.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/color_picker.js
new file mode 100644 (file)
index 0000000..cc891c1
--- /dev/null
@@ -0,0 +1,345 @@
+tinyMCEPopup.requireLangPack();
+
+var detail = 50, strhex = "0123456789abcdef", i, isMouseDown = false, isMouseOver = false;
+
+var colors = [
+       "#000000","#000033","#000066","#000099","#0000cc","#0000ff","#330000","#330033",
+       "#330066","#330099","#3300cc","#3300ff","#660000","#660033","#660066","#660099",
+       "#6600cc","#6600ff","#990000","#990033","#990066","#990099","#9900cc","#9900ff",
+       "#cc0000","#cc0033","#cc0066","#cc0099","#cc00cc","#cc00ff","#ff0000","#ff0033",
+       "#ff0066","#ff0099","#ff00cc","#ff00ff","#003300","#003333","#003366","#003399",
+       "#0033cc","#0033ff","#333300","#333333","#333366","#333399","#3333cc","#3333ff",
+       "#663300","#663333","#663366","#663399","#6633cc","#6633ff","#993300","#993333",
+       "#993366","#993399","#9933cc","#9933ff","#cc3300","#cc3333","#cc3366","#cc3399",
+       "#cc33cc","#cc33ff","#ff3300","#ff3333","#ff3366","#ff3399","#ff33cc","#ff33ff",
+       "#006600","#006633","#006666","#006699","#0066cc","#0066ff","#336600","#336633",
+       "#336666","#336699","#3366cc","#3366ff","#666600","#666633","#666666","#666699",
+       "#6666cc","#6666ff","#996600","#996633","#996666","#996699","#9966cc","#9966ff",
+       "#cc6600","#cc6633","#cc6666","#cc6699","#cc66cc","#cc66ff","#ff6600","#ff6633",
+       "#ff6666","#ff6699","#ff66cc","#ff66ff","#009900","#009933","#009966","#009999",
+       "#0099cc","#0099ff","#339900","#339933","#339966","#339999","#3399cc","#3399ff",
+       "#669900","#669933","#669966","#669999","#6699cc","#6699ff","#999900","#999933",
+       "#999966","#999999","#9999cc","#9999ff","#cc9900","#cc9933","#cc9966","#cc9999",
+       "#cc99cc","#cc99ff","#ff9900","#ff9933","#ff9966","#ff9999","#ff99cc","#ff99ff",
+       "#00cc00","#00cc33","#00cc66","#00cc99","#00cccc","#00ccff","#33cc00","#33cc33",
+       "#33cc66","#33cc99","#33cccc","#33ccff","#66cc00","#66cc33","#66cc66","#66cc99",
+       "#66cccc","#66ccff","#99cc00","#99cc33","#99cc66","#99cc99","#99cccc","#99ccff",
+       "#cccc00","#cccc33","#cccc66","#cccc99","#cccccc","#ccccff","#ffcc00","#ffcc33",
+       "#ffcc66","#ffcc99","#ffcccc","#ffccff","#00ff00","#00ff33","#00ff66","#00ff99",
+       "#00ffcc","#00ffff","#33ff00","#33ff33","#33ff66","#33ff99","#33ffcc","#33ffff",
+       "#66ff00","#66ff33","#66ff66","#66ff99","#66ffcc","#66ffff","#99ff00","#99ff33",
+       "#99ff66","#99ff99","#99ffcc","#99ffff","#ccff00","#ccff33","#ccff66","#ccff99",
+       "#ccffcc","#ccffff","#ffff00","#ffff33","#ffff66","#ffff99","#ffffcc","#ffffff"
+];
+
+var named = {
+       '#F0F8FF':'Alice Blue','#FAEBD7':'Antique White','#00FFFF':'Aqua','#7FFFD4':'Aquamarine','#F0FFFF':'Azure','#F5F5DC':'Beige',
+       '#FFE4C4':'Bisque','#000000':'Black','#FFEBCD':'Blanched Almond','#0000FF':'Blue','#8A2BE2':'Blue Violet','#A52A2A':'Brown',
+       '#DEB887':'Burly Wood','#5F9EA0':'Cadet Blue','#7FFF00':'Chartreuse','#D2691E':'Chocolate','#FF7F50':'Coral','#6495ED':'Cornflower Blue',
+       '#FFF8DC':'Cornsilk','#DC143C':'Crimson','#00FFFF':'Cyan','#00008B':'Dark Blue','#008B8B':'Dark Cyan','#B8860B':'Dark Golden Rod',
+       '#A9A9A9':'Dark Gray','#A9A9A9':'Dark Grey','#006400':'Dark Green','#BDB76B':'Dark Khaki','#8B008B':'Dark Magenta','#556B2F':'Dark Olive Green',
+       '#FF8C00':'Darkorange','#9932CC':'Dark Orchid','#8B0000':'Dark Red','#E9967A':'Dark Salmon','#8FBC8F':'Dark Sea Green','#483D8B':'Dark Slate Blue',
+       '#2F4F4F':'Dark Slate Gray','#2F4F4F':'Dark Slate Grey','#00CED1':'Dark Turquoise','#9400D3':'Dark Violet','#FF1493':'Deep Pink','#00BFFF':'Deep Sky Blue',
+       '#696969':'Dim Gray','#696969':'Dim Grey','#1E90FF':'Dodger Blue','#B22222':'Fire Brick','#FFFAF0':'Floral White','#228B22':'Forest Green',
+       '#FF00FF':'Fuchsia','#DCDCDC':'Gainsboro','#F8F8FF':'Ghost White','#FFD700':'Gold','#DAA520':'Golden Rod','#808080':'Gray','#808080':'Grey',
+       '#008000':'Green','#ADFF2F':'Green Yellow','#F0FFF0':'Honey Dew','#FF69B4':'Hot Pink','#CD5C5C':'Indian Red','#4B0082':'Indigo','#FFFFF0':'Ivory',
+       '#F0E68C':'Khaki','#E6E6FA':'Lavender','#FFF0F5':'Lavender Blush','#7CFC00':'Lawn Green','#FFFACD':'Lemon Chiffon','#ADD8E6':'Light Blue',
+       '#F08080':'Light Coral','#E0FFFF':'Light Cyan','#FAFAD2':'Light Golden Rod Yellow','#D3D3D3':'Light Gray','#D3D3D3':'Light Grey','#90EE90':'Light Green',
+       '#FFB6C1':'Light Pink','#FFA07A':'Light Salmon','#20B2AA':'Light Sea Green','#87CEFA':'Light Sky Blue','#778899':'Light Slate Gray','#778899':'Light Slate Grey',
+       '#B0C4DE':'Light Steel Blue','#FFFFE0':'Light Yellow','#00FF00':'Lime','#32CD32':'Lime Green','#FAF0E6':'Linen','#FF00FF':'Magenta','#800000':'Maroon',
+       '#66CDAA':'Medium Aqua Marine','#0000CD':'Medium Blue','#BA55D3':'Medium Orchid','#9370D8':'Medium Purple','#3CB371':'Medium Sea Green','#7B68EE':'Medium Slate Blue',
+       '#00FA9A':'Medium Spring Green','#48D1CC':'Medium Turquoise','#C71585':'Medium Violet Red','#191970':'Midnight Blue','#F5FFFA':'Mint Cream','#FFE4E1':'Misty Rose','#FFE4B5':'Moccasin',
+       '#FFDEAD':'Navajo White','#000080':'Navy','#FDF5E6':'Old Lace','#808000':'Olive','#6B8E23':'Olive Drab','#FFA500':'Orange','#FF4500':'Orange Red','#DA70D6':'Orchid',
+       '#EEE8AA':'Pale Golden Rod','#98FB98':'Pale Green','#AFEEEE':'Pale Turquoise','#D87093':'Pale Violet Red','#FFEFD5':'Papaya Whip','#FFDAB9':'Peach Puff',
+       '#CD853F':'Peru','#FFC0CB':'Pink','#DDA0DD':'Plum','#B0E0E6':'Powder Blue','#800080':'Purple','#FF0000':'Red','#BC8F8F':'Rosy Brown','#4169E1':'Royal Blue',
+       '#8B4513':'Saddle Brown','#FA8072':'Salmon','#F4A460':'Sandy Brown','#2E8B57':'Sea Green','#FFF5EE':'Sea Shell','#A0522D':'Sienna','#C0C0C0':'Silver',
+       '#87CEEB':'Sky Blue','#6A5ACD':'Slate Blue','#708090':'Slate Gray','#708090':'Slate Grey','#FFFAFA':'Snow','#00FF7F':'Spring Green',
+       '#4682B4':'Steel Blue','#D2B48C':'Tan','#008080':'Teal','#D8BFD8':'Thistle','#FF6347':'Tomato','#40E0D0':'Turquoise','#EE82EE':'Violet',
+       '#F5DEB3':'Wheat','#FFFFFF':'White','#F5F5F5':'White Smoke','#FFFF00':'Yellow','#9ACD32':'Yellow Green'
+};
+
+var namedLookup = {};
+
+function init() {
+       var inputColor = convertRGBToHex(tinyMCEPopup.getWindowArg('input_color')), key, value;
+
+       tinyMCEPopup.resizeToInnerSize();
+
+       generatePicker();
+       generateWebColors();
+       generateNamedColors();
+
+       if (inputColor) {
+               changeFinalColor(inputColor);
+
+               col = convertHexToRGB(inputColor);
+
+               if (col)
+                       updateLight(col.r, col.g, col.b);
+       }
+
+       for (key in named) {
+               value = named[key];
+               namedLookup[value.replace(/\s+/, '').toLowerCase()] = key.replace(/#/, '').toLowerCase();
+       }
+}
+
+function toHexColor(color) {
+       var matches, red, green, blue, toInt = parseInt;
+
+       function hex(value) {
+               value = parseInt(value).toString(16);
+
+               return value.length > 1 ? value : '0' + value; // Padd with leading zero
+       };
+
+       color = tinymce.trim(color);
+       color = color.replace(/^[#]/, '').toLowerCase();  // remove leading '#'
+       color = namedLookup[color] || color;
+
+       matches = /^rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)$/.exec(color);
+
+       if (matches) {
+               red   = toInt(matches[1]);
+               green = toInt(matches[2]);
+               blue  = toInt(matches[3]);
+       } else {
+               matches = /^([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/.exec(color);
+
+               if (matches) {
+                       red   = toInt(matches[1], 16);
+                       green = toInt(matches[2], 16);
+                       blue  = toInt(matches[3], 16);
+               } else {
+                       matches = /^([0-9a-f])([0-9a-f])([0-9a-f])$/.exec(color);
+
+                       if (matches) {
+                               red   = toInt(matches[1] + matches[1], 16);
+                               green = toInt(matches[2] + matches[2], 16);
+                               blue  = toInt(matches[3] + matches[3], 16);
+                       } else {
+                               return '';
+                       }
+               }
+       }
+
+       return '#' + hex(red) + hex(green) + hex(blue);
+}
+
+function insertAction() {
+       var color = document.getElementById("color").value, f = tinyMCEPopup.getWindowArg('func');
+
+       var hexColor = toHexColor(color);
+
+       if (hexColor === '') {
+               var text = tinyMCEPopup.editor.getLang('advanced_dlg.invalid_color_value');
+               tinyMCEPopup.alert(text + ': ' + color);
+       }
+       else {
+               tinyMCEPopup.restoreSelection();
+
+               if (f)
+                       f(hexColor);
+
+               tinyMCEPopup.close();
+       }
+}
+
+function showColor(color, name) {
+       if (name)
+               document.getElementById("colorname").innerHTML = name;
+
+       document.getElementById("preview").style.backgroundColor = color;
+       document.getElementById("color").value = color.toUpperCase();
+}
+
+function convertRGBToHex(col) {
+       var re = new RegExp("rgb\\s*\\(\\s*([0-9]+).*,\\s*([0-9]+).*,\\s*([0-9]+).*\\)", "gi");
+
+       if (!col)
+               return col;
+
+       var rgb = col.replace(re, "$1,$2,$3").split(',');
+       if (rgb.length == 3) {
+               r = parseInt(rgb[0]).toString(16);
+               g = parseInt(rgb[1]).toString(16);
+               b = parseInt(rgb[2]).toString(16);
+
+               r = r.length == 1 ? '0' + r : r;
+               g = g.length == 1 ? '0' + g : g;
+               b = b.length == 1 ? '0' + b : b;
+
+               return "#" + r + g + b;
+       }
+
+       return col;
+}
+
+function convertHexToRGB(col) {
+       if (col.indexOf('#') != -1) {
+               col = col.replace(new RegExp('[^0-9A-F]', 'gi'), '');
+
+               r = parseInt(col.substring(0, 2), 16);
+               g = parseInt(col.substring(2, 4), 16);
+               b = parseInt(col.substring(4, 6), 16);
+
+               return {r : r, g : g, b : b};
+       }
+
+       return null;
+}
+
+function generatePicker() {
+       var el = document.getElementById('light'), h = '', i;
+
+       for (i = 0; i < detail; i++){
+               h += '<div id="gs'+i+'" style="background-color:#000000; width:15px; height:3px; border-style:none; border-width:0px;"'
+               + ' onclick="changeFinalColor(this.style.backgroundColor)"'
+               + ' onmousedown="isMouseDown = true; return false;"'
+               + ' onmouseup="isMouseDown = false;"'
+               + ' onmousemove="if (isMouseDown && isMouseOver) changeFinalColor(this.style.backgroundColor); return false;"'
+               + ' onmouseover="isMouseOver = true;"'
+               + ' onmouseout="isMouseOver = false;"'
+               + '></div>';
+       }
+
+       el.innerHTML = h;
+}
+
+function generateWebColors() {
+       var el = document.getElementById('webcolors'), h = '', i;
+
+       if (el.className == 'generated')
+               return;
+
+       // TODO: VoiceOver doesn't seem to support legend as a label referenced by labelledby.
+       h += '<div role="listbox" aria-labelledby="webcolors_title" tabindex="0"><table role="presentation" border="0" cellspacing="1" cellpadding="0">'
+               + '<tr>';
+
+       for (i=0; i<colors.length; i++) {
+               h += '<td bgcolor="' + colors[i] + '" width="10" height="10">'
+                       + '<a href="javascript:insertAction();" role="option" tabindex="-1" aria-labelledby="web_colors_' + i + '" onfocus="showColor(\'' + colors[i] + '\');" onmouseover="showColor(\'' + colors[i] + '\');" style="display:block;width:10px;height:10px;overflow:hidden;">';
+               if (tinyMCEPopup.editor.forcedHighContrastMode) {
+                       h += '<canvas class="mceColorSwatch" height="10" width="10" data-color="' + colors[i] + '"></canvas>';
+               }
+               h += '<span class="mceVoiceLabel" style="display:none;" id="web_colors_' + i + '">' + colors[i].toUpperCase() + '</span>';
+               h += '</a></td>';
+               if ((i+1) % 18 == 0)
+                       h += '</tr><tr>';
+       }
+
+       h += '</table></div>';
+
+       el.innerHTML = h;
+       el.className = 'generated';
+
+       paintCanvas(el);
+       enableKeyboardNavigation(el.firstChild);
+}
+
+function paintCanvas(el) {
+       tinyMCEPopup.getWin().tinymce.each(tinyMCEPopup.dom.select('canvas.mceColorSwatch', el), function(canvas) {
+               var context;
+               if (canvas.getContext && (context = canvas.getContext("2d"))) {
+                       context.fillStyle = canvas.getAttribute('data-color');
+                       context.fillRect(0, 0, 10, 10);
+               }
+       });
+}
+function generateNamedColors() {
+       var el = document.getElementById('namedcolors'), h = '', n, v, i = 0;
+
+       if (el.className == 'generated')
+               return;
+
+       for (n in named) {
+               v = named[n];
+               h += '<a href="javascript:insertAction();" role="option" tabindex="-1" aria-labelledby="named_colors_' + i + '" onfocus="showColor(\'' + n + '\',\'' + v + '\');" onmouseover="showColor(\'' + n + '\',\'' + v + '\');" style="background-color: ' + n + '">';
+               if (tinyMCEPopup.editor.forcedHighContrastMode) {
+                       h += '<canvas class="mceColorSwatch" height="10" width="10" data-color="' + colors[i] + '"></canvas>';
+               }
+               h += '<span class="mceVoiceLabel" style="display:none;" id="named_colors_' + i + '">' + v + '</span>';
+               h += '</a>';
+               i++;
+       }
+
+       el.innerHTML = h;
+       el.className = 'generated';
+
+       paintCanvas(el);
+       enableKeyboardNavigation(el);
+}
+
+function enableKeyboardNavigation(el) {
+       tinyMCEPopup.editor.windowManager.createInstance('tinymce.ui.KeyboardNavigation', {
+               root: el,
+               items: tinyMCEPopup.dom.select('a', el)
+       }, tinyMCEPopup.dom);
+}
+
+function dechex(n) {
+       return strhex.charAt(Math.floor(n / 16)) + strhex.charAt(n % 16);
+}
+
+function computeColor(e) {
+       var x, y, partWidth, partDetail, imHeight, r, g, b, coef, i, finalCoef, finalR, finalG, finalB, pos = tinyMCEPopup.dom.getPos(e.target);
+
+       x = e.offsetX ? e.offsetX : (e.target ? e.clientX - pos.x : 0);
+       y = e.offsetY ? e.offsetY : (e.target ? e.clientY - pos.y : 0);
+
+       partWidth = document.getElementById('colors').width / 6;
+       partDetail = detail / 2;
+       imHeight = document.getElementById('colors').height;
+
+       r = (x >= 0)*(x < partWidth)*255 + (x >= partWidth)*(x < 2*partWidth)*(2*255 - x * 255 / partWidth) + (x >= 4*partWidth)*(x < 5*partWidth)*(-4*255 + x * 255 / partWidth) + (x >= 5*partWidth)*(x < 6*partWidth)*255;
+       g = (x >= 0)*(x < partWidth)*(x * 255 / partWidth) + (x >= partWidth)*(x < 3*partWidth)*255     + (x >= 3*partWidth)*(x < 4*partWidth)*(4*255 - x * 255 / partWidth);
+       b = (x >= 2*partWidth)*(x < 3*partWidth)*(-2*255 + x * 255 / partWidth) + (x >= 3*partWidth)*(x < 5*partWidth)*255 + (x >= 5*partWidth)*(x < 6*partWidth)*(6*255 - x * 255 / partWidth);
+
+       coef = (imHeight - y) / imHeight;
+       r = 128 + (r - 128) * coef;
+       g = 128 + (g - 128) * coef;
+       b = 128 + (b - 128) * coef;
+
+       changeFinalColor('#' + dechex(r) + dechex(g) + dechex(b));
+       updateLight(r, g, b);
+}
+
+function updateLight(r, g, b) {
+       var i, partDetail = detail / 2, finalCoef, finalR, finalG, finalB, color;
+
+       for (i=0; i<detail; i++) {
+               if ((i>=0) && (i<partDetail)) {
+                       finalCoef = i / partDetail;
+                       finalR = dechex(255 - (255 - r) * finalCoef);
+                       finalG = dechex(255 - (255 - g) * finalCoef);
+                       finalB = dechex(255 - (255 - b) * finalCoef);
+               } else {
+                       finalCoef = 2 - i / partDetail;
+                       finalR = dechex(r * finalCoef);
+                       finalG = dechex(g * finalCoef);
+                       finalB = dechex(b * finalCoef);
+               }
+
+               color = finalR + finalG + finalB;
+
+               setCol('gs' + i, '#'+color);
+       }
+}
+
+function changeFinalColor(color) {
+       if (color.indexOf('#') == -1)
+               color = convertRGBToHex(color);
+
+       setCol('preview', color);
+       document.getElementById('color').value = color;
+}
+
+function setCol(e, c) {
+       try {
+               document.getElementById(e).style.backgroundColor = c;
+       } catch (ex) {
+               // Ignore IE warning
+       }
+}
+
+tinyMCEPopup.onInit.add(init);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/image.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/image.js
new file mode 100644 (file)
index 0000000..4fecb15
--- /dev/null
@@ -0,0 +1,253 @@
+var ImageDialog = {
+       preInit : function() {
+               var url;
+
+               tinyMCEPopup.requireLangPack();
+
+               if (url = tinyMCEPopup.getParam("external_image_list_url"))
+                       document.write('<script language="javascript" type="text/javascript" src="' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '"></script>');
+       },
+
+       init : function() {
+               var f = document.forms[0], ed = tinyMCEPopup.editor;
+
+               // Setup browse button
+               document.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image');
+               if (isVisible('srcbrowser'))
+                       document.getElementById('src').style.width = '180px';
+
+               e = ed.selection.getNode();
+
+               this.fillFileList('image_list', tinyMCEPopup.getParam('external_image_list', 'tinyMCEImageList'));
+
+               if (e.nodeName == 'IMG') {
+                       f.src.value = ed.dom.getAttrib(e, 'src');
+                       f.alt.value = ed.dom.getAttrib(e, 'alt');
+                       f.border.value = this.getAttrib(e, 'border');
+                       f.vspace.value = this.getAttrib(e, 'vspace');
+                       f.hspace.value = this.getAttrib(e, 'hspace');
+                       f.width.value = ed.dom.getAttrib(e, 'width');
+                       f.height.value = ed.dom.getAttrib(e, 'height');
+                       f.insert.value = ed.getLang('update');
+                       this.styleVal = ed.dom.getAttrib(e, 'style');
+                       selectByValue(f, 'image_list', f.src.value);
+                       selectByValue(f, 'align', this.getAttrib(e, 'align'));
+                       this.updateStyle();
+               }
+       },
+
+       fillFileList : function(id, l) {
+               var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;
+
+               l = typeof(l) === 'function' ? l() : window[l];
+
+               if (l && l.length > 0) {
+                       lst.options[lst.options.length] = new Option('', '');
+
+                       tinymce.each(l, function(o) {
+                               lst.options[lst.options.length] = new Option(o[0], o[1]);
+                       });
+               } else
+                       dom.remove(dom.getParent(id, 'tr'));
+       },
+
+       update : function() {
+               var f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, args = {}, el;
+
+               tinyMCEPopup.restoreSelection();
+
+               if (f.src.value === '') {
+                       if (ed.selection.getNode().nodeName == 'IMG') {
+                               ed.dom.remove(ed.selection.getNode());
+                               ed.execCommand('mceRepaint');
+                       }
+
+                       tinyMCEPopup.close();
+                       return;
+               }
+
+               if (!ed.settings.inline_styles) {
+                       args = tinymce.extend(args, {
+                               vspace : nl.vspace.value,
+                               hspace : nl.hspace.value,
+                               border : nl.border.value,
+                               align : getSelectValue(f, 'align')
+                       });
+               } else
+                       args.style = this.styleVal;
+
+               tinymce.extend(args, {
+                       src : f.src.value.replace(/ /g, '%20'),
+                       alt : f.alt.value,
+                       width : f.width.value,
+                       height : f.height.value
+               });
+
+               el = ed.selection.getNode();
+
+               if (el && el.nodeName == 'IMG') {
+                       ed.dom.setAttribs(el, args);
+                       tinyMCEPopup.editor.execCommand('mceRepaint');
+                       tinyMCEPopup.editor.focus();
+               } else {
+                       tinymce.each(args, function(value, name) {
+                               if (value === "") {
+                                       delete args[name];
+                               }
+                       });
+
+                       ed.execCommand('mceInsertContent', false, tinyMCEPopup.editor.dom.createHTML('img', args), {skip_undo : 1});
+                       ed.undoManager.add();
+               }
+
+               tinyMCEPopup.close();
+       },
+
+       updateStyle : function() {
+               var dom = tinyMCEPopup.dom, st = {}, v, f = document.forms[0];
+
+               if (tinyMCEPopup.editor.settings.inline_styles) {
+                       tinymce.each(tinyMCEPopup.dom.parseStyle(this.styleVal), function(value, key) {
+                               st[key] = value;
+                       });
+
+                       // Handle align
+                       v = getSelectValue(f, 'align');
+                       if (v) {
+                               if (v == 'left' || v == 'right') {
+                                       st['float'] = v;
+                                       delete st['vertical-align'];
+                               } else {
+                                       st['vertical-align'] = v;
+                                       delete st['float'];
+                               }
+                       } else {
+                               delete st['float'];
+                               delete st['vertical-align'];
+                       }
+
+                       // Handle border
+                       v = f.border.value;
+                       if (v || v == '0') {
+                               if (v == '0')
+                                       st['border'] = '0';
+                               else
+                                       st['border'] = v + 'px solid black';
+                       } else
+                               delete st['border'];
+
+                       // Handle hspace
+                       v = f.hspace.value;
+                       if (v) {
+                               delete st['margin'];
+                               st['margin-left'] = v + 'px';
+                               st['margin-right'] = v + 'px';
+                       } else {
+                               delete st['margin-left'];
+                               delete st['margin-right'];
+                       }
+
+                       // Handle vspace
+                       v = f.vspace.value;
+                       if (v) {
+                               delete st['margin'];
+                               st['margin-top'] = v + 'px';
+                               st['margin-bottom'] = v + 'px';
+                       } else {
+                               delete st['margin-top'];
+                               delete st['margin-bottom'];
+                       }
+
+                       // Merge
+                       st = tinyMCEPopup.dom.parseStyle(dom.serializeStyle(st), 'img');
+                       this.styleVal = dom.serializeStyle(st, 'img');
+               }
+       },
+
+       getAttrib : function(e, at) {
+               var ed = tinyMCEPopup.editor, dom = ed.dom, v, v2;
+
+               if (ed.settings.inline_styles) {
+                       switch (at) {
+                               case 'align':
+                                       if (v = dom.getStyle(e, 'float'))
+                                               return v;
+
+                                       if (v = dom.getStyle(e, 'vertical-align'))
+                                               return v;
+
+                                       break;
+
+                               case 'hspace':
+                                       v = dom.getStyle(e, 'margin-left')
+                                       v2 = dom.getStyle(e, 'margin-right');
+                                       if (v && v == v2)
+                                               return parseInt(v.replace(/[^0-9]/g, ''));
+
+                                       break;
+
+                               case 'vspace':
+                                       v = dom.getStyle(e, 'margin-top')
+                                       v2 = dom.getStyle(e, 'margin-bottom');
+                                       if (v && v == v2)
+                                               return parseInt(v.replace(/[^0-9]/g, ''));
+
+                                       break;
+
+                               case 'border':
+                                       v = 0;
+
+                                       tinymce.each(['top', 'right', 'bottom', 'left'], function(sv) {
+                                               sv = dom.getStyle(e, 'border-' + sv + '-width');
+
+                                               // False or not the same as prev
+                                               if (!sv || (sv != v && v !== 0)) {
+                                                       v = 0;
+                                                       return false;
+                                               }
+
+                                               if (sv)
+                                                       v = sv;
+                                       });
+
+                                       if (v)
+                                               return parseInt(v.replace(/[^0-9]/g, ''));
+
+                                       break;
+                       }
+               }
+
+               if (v = dom.getAttrib(e, at))
+                       return v;
+
+               return '';
+       },
+
+       resetImageData : function() {
+               var f = document.forms[0];
+
+               f.width.value = f.height.value = "";
+       },
+
+       updateImageData : function() {
+               var f = document.forms[0], t = ImageDialog;
+
+               if (f.width.value == "")
+                       f.width.value = t.preloadImg.width;
+
+               if (f.height.value == "")
+                       f.height.value = t.preloadImg.height;
+       },
+
+       getImageData : function() {
+               var f = document.forms[0];
+
+               this.preloadImg = new Image();
+               this.preloadImg.onload = this.updateImageData;
+               this.preloadImg.onerror = this.resetImageData;
+               this.preloadImg.src = tinyMCEPopup.editor.documentBaseURI.toAbsolute(f.src.value);
+       }
+};
+
+ImageDialog.preInit();
+tinyMCEPopup.onInit.add(ImageDialog.init, ImageDialog);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/link.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/link.js
new file mode 100644 (file)
index 0000000..fa5f93e
--- /dev/null
@@ -0,0 +1,159 @@
+tinyMCEPopup.requireLangPack();
+
+var LinkDialog = {
+       preInit : function() {
+               var url;
+
+               if (url = tinyMCEPopup.getParam("external_link_list_url"))
+                       document.write('<script language="javascript" type="text/javascript" src="' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '"></script>');
+       },
+
+       init : function() {
+               var f = document.forms[0], ed = tinyMCEPopup.editor;
+
+               // Setup browse button
+               document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser', 'href', 'file', 'theme_advanced_link');
+               if (isVisible('hrefbrowser'))
+                       document.getElementById('href').style.width = '180px';
+
+               this.fillClassList('class_list');
+               this.fillFileList('link_list', 'tinyMCELinkList');
+               this.fillTargetList('target_list');
+
+               if (e = ed.dom.getParent(ed.selection.getNode(), 'A')) {
+                       f.href.value = ed.dom.getAttrib(e, 'href');
+                       f.linktitle.value = ed.dom.getAttrib(e, 'title');
+                       f.insert.value = ed.getLang('update');
+                       selectByValue(f, 'link_list', f.href.value);
+                       selectByValue(f, 'target_list', ed.dom.getAttrib(e, 'target'));
+                       selectByValue(f, 'class_list', ed.dom.getAttrib(e, 'class'));
+               }
+       },
+
+       update : function() {
+               var f = document.forms[0], ed = tinyMCEPopup.editor, e, b, href = f.href.value.replace(/ /g, '%20');
+
+               tinyMCEPopup.restoreSelection();
+               e = ed.dom.getParent(ed.selection.getNode(), 'A');
+
+               // Remove element if there is no href
+               if (!f.href.value) {
+                       if (e) {
+                               b = ed.selection.getBookmark();
+                               ed.dom.remove(e, 1);
+                               ed.selection.moveToBookmark(b);
+                               tinyMCEPopup.execCommand("mceEndUndoLevel");
+                               tinyMCEPopup.close();
+                               return;
+                       }
+               }
+
+               // Create new anchor elements
+               if (e == null) {
+                       ed.getDoc().execCommand("unlink", false, null);
+                       tinyMCEPopup.execCommand("mceInsertLink", false, "#mce_temp_url#", {skip_undo : 1});
+
+                       tinymce.each(ed.dom.select("a"), function(n) {
+                               if (ed.dom.getAttrib(n, 'href') == '#mce_temp_url#') {
+                                       e = n;
+
+                                       ed.dom.setAttribs(e, {
+                                               href : href,
+                                               title : f.linktitle.value,
+                                               target : f.target_list ? getSelectValue(f, "target_list") : null,
+                                               'class' : f.class_list ? getSelectValue(f, "class_list") : null
+                                       });
+                               }
+                       });
+               } else {
+                       ed.dom.setAttribs(e, {
+                               href : href,
+                               title : f.linktitle.value
+                       });
+
+                       if (f.target_list) {
+                               ed.dom.setAttrib(e, 'target', getSelectValue(f, "target_list"));
+                       }
+
+                       if (f.class_list) {
+                               ed.dom.setAttrib(e, 'class', getSelectValue(f, "class_list"));
+                       }
+               }
+
+               // Don't move caret if selection was image
+               if (e.childNodes.length != 1 || e.firstChild.nodeName != 'IMG') {
+                       ed.focus();
+                       ed.selection.select(e);
+                       ed.selection.collapse(0);
+                       tinyMCEPopup.storeSelection();
+               }
+
+               tinyMCEPopup.execCommand("mceEndUndoLevel");
+               tinyMCEPopup.close();
+       },
+
+       checkPrefix : function(n) {
+               if (n.value && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advanced_dlg.link_is_email')))
+                       n.value = 'mailto:' + n.value;
+
+               if (/^\s*www\./i.test(n.value) && confirm(tinyMCEPopup.getLang('advanced_dlg.link_is_external')))
+                       n.value = 'http://' + n.value;
+       },
+
+       fillFileList : function(id, l) {
+               var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;
+
+               l = window[l];
+
+               if (l && l.length > 0) {
+                       lst.options[lst.options.length] = new Option('', '');
+
+                       tinymce.each(l, function(o) {
+                               lst.options[lst.options.length] = new Option(o[0], o[1]);
+                       });
+               } else
+                       dom.remove(dom.getParent(id, 'tr'));
+       },
+
+       fillClassList : function(id) {
+               var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;
+
+               if (v = tinyMCEPopup.getParam('theme_advanced_styles')) {
+                       cl = [];
+
+                       tinymce.each(v.split(';'), function(v) {
+                               var p = v.split('=');
+
+                               cl.push({'title' : p[0], 'class' : p[1]});
+                       });
+               } else
+                       cl = tinyMCEPopup.editor.dom.getClasses();
+
+               if (cl.length > 0) {
+                       lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), '');
+
+                       tinymce.each(cl, function(o) {
+                               lst.options[lst.options.length] = new Option(o.title || o['class'], o['class']);
+                       });
+               } else
+                       dom.remove(dom.getParent(id, 'tr'));
+       },
+
+       fillTargetList : function(id) {
+               var dom = tinyMCEPopup.dom, lst = dom.get(id), v;
+
+               lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), '');
+               lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('advanced_dlg.link_target_same'), '_self');
+               lst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('advanced_dlg.link_target_blank'), '_blank');
+
+               if (v = tinyMCEPopup.getParam('theme_advanced_link_targets')) {
+                       tinymce.each(v.split(','), function(v) {
+                               v = v.split('=');
+                               lst.options[lst.options.length] = new Option(v[0], v[1]);
+                       });
+               }
+       }
+};
+
+LinkDialog.preInit();
+tinyMCEPopup.onInit.add(LinkDialog.init, LinkDialog);
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/source_editor.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/js/source_editor.js
new file mode 100644 (file)
index 0000000..d417937
--- /dev/null
@@ -0,0 +1,78 @@
+tinyMCEPopup.requireLangPack();
+tinyMCEPopup.onInit.add(onLoadInit);
+
+function saveContent() {
+       tinyMCEPopup.editor.setContent(document.getElementById('htmlSource').value, {source_view : true});
+       tinyMCEPopup.close();
+}
+
+function onLoadInit() {
+       tinyMCEPopup.resizeToInnerSize();
+
+       // Remove Gecko spellchecking
+       if (tinymce.isGecko)
+               document.body.spellcheck = tinyMCEPopup.editor.getParam("gecko_spellcheck");
+
+       document.getElementById('htmlSource').value = tinyMCEPopup.editor.getContent({source_view : true});
+
+       if (tinyMCEPopup.editor.getParam("theme_advanced_source_editor_wrap", true)) {
+               turnWrapOn();
+               document.getElementById('wraped').checked = true;
+       }
+
+       resizeInputs();
+}
+
+function setWrap(val) {
+       var v, n, s = document.getElementById('htmlSource');
+
+       s.wrap = val;
+
+       if (!tinymce.isIE) {
+               v = s.value;
+               n = s.cloneNode(false);
+               n.setAttribute("wrap", val);
+               s.parentNode.replaceChild(n, s);
+               n.value = v;
+       }
+}
+
+function setWhiteSpaceCss(value) {
+       var el = document.getElementById('htmlSource');
+       tinymce.DOM.setStyle(el, 'white-space', value);
+}
+
+function turnWrapOff() {
+       if (tinymce.isWebKit) {
+               setWhiteSpaceCss('pre');
+       } else {
+               setWrap('off');
+       }
+}
+
+function turnWrapOn() {
+       if (tinymce.isWebKit) {
+               setWhiteSpaceCss('pre-wrap');
+       } else {
+               setWrap('soft');
+       }
+}
+
+function toggleWordWrap(elm) {
+       if (elm.checked) {
+               turnWrapOn();
+       } else {
+               turnWrapOff();
+       }
+}
+
+function resizeInputs() {
+       var vp = tinyMCEPopup.dom.getViewPort(window), el;
+
+       el = document.getElementById('htmlSource');
+
+       if (el) {
+               el.style.width = (vp.w - 20) + 'px';
+               el.style.height = (vp.h - 65) + 'px';
+       }
+}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/langs/en.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/langs/en.js
new file mode 100644 (file)
index 0000000..6e58481
--- /dev/null
@@ -0,0 +1 @@
+tinyMCE.addI18n('en.advanced',{"underline_desc":"Underline (Ctrl+U)","italic_desc":"Italic (Ctrl+I)","bold_desc":"Bold (Ctrl+B)",dd:"Definition Description",dt:"Definition Term ",samp:"Code Sample",code:"Code",blockquote:"Block Quote",h6:"Heading 6",h5:"Heading 5",h4:"Heading 4",h3:"Heading 3",h2:"Heading 2",h1:"Heading 1",pre:"Preformatted",address:"Address",div:"DIV",paragraph:"Paragraph",block:"Format",fontdefault:"Font Family","font_size":"Font Size","style_select":"Styles","anchor_delta_height":"","anchor_delta_width":"","charmap_delta_height":"","charmap_delta_width":"","colorpicker_delta_height":"","colorpicker_delta_width":"","link_delta_height":"","link_delta_width":"","image_delta_height":"","image_delta_width":"","more_colors":"More Colors...","toolbar_focus":"Jump to tool buttons - Alt+Q, Jump to editor - Alt-Z, Jump to element path - Alt-X",newdocument:"Are you sure you want clear all contents?",path:"Path","clipboard_msg":"Copy/Cut/Paste is not available in Mozilla and Firefox.\nDo you want more information about this issue?","blockquote_desc":"Block Quote","help_desc":"Help","newdocument_desc":"New Document","image_props_desc":"Image Properties","paste_desc":"Paste (Ctrl+V)","copy_desc":"Copy (Ctrl+C)","cut_desc":"Cut (Ctrl+X)","anchor_desc":"Insert/Edit Anchor","visualaid_desc":"show/Hide Guidelines/Invisible Elements","charmap_desc":"Insert Special Character","backcolor_desc":"Select Background Color","forecolor_desc":"Select Text Color","custom1_desc":"Your Custom Description Here","removeformat_desc":"Remove Formatting","hr_desc":"Insert Horizontal Line","sup_desc":"Superscript","sub_desc":"Subscript","code_desc":"Edit HTML Source","cleanup_desc":"Cleanup Messy Code","image_desc":"Insert/Edit Image","unlink_desc":"Unlink","link_desc":"Insert/Edit Link","redo_desc":"Redo (Ctrl+Y)","undo_desc":"Undo (Ctrl+Z)","indent_desc":"Increase Indent","outdent_desc":"Decrease Indent","numlist_desc":"Insert/Remove Numbered List","bullist_desc":"Insert/Remove Bulleted List","justifyfull_desc":"Align Full","justifyright_desc":"Align Right","justifycenter_desc":"Align Center","justifyleft_desc":"Align Left","striketrough_desc":"Strikethrough","help_shortcut":"Press ALT-F10 for toolbar. Press ALT-0 for help","rich_text_area":"Rich Text Area","shortcuts_desc":"Accessability Help",toolbar:"Toolbar"});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/langs/en_dlg.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/langs/en_dlg.js
new file mode 100644 (file)
index 0000000..50cd87e
--- /dev/null
@@ -0,0 +1 @@
+tinyMCE.addI18n('en.advanced_dlg', {"link_list":"Link List","link_is_external":"The URL you entered seems to be an external link. Do you want to add the required http:// prefix?","link_is_email":"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?","link_titlefield":"Title","link_target_blank":"Open Link in a New Window","link_target_same":"Open Link in the Same Window","link_target":"Target","link_url":"Link URL","link_title":"Insert/Edit Link","image_align_right":"Right","image_align_left":"Left","image_align_textbottom":"Text Bottom","image_align_texttop":"Text Top","image_align_bottom":"Bottom","image_align_middle":"Middle","image_align_top":"Top","image_align_baseline":"Baseline","image_align":"Alignment","image_hspace":"Horizontal Space","image_vspace":"Vertical Space","image_dimensions":"Dimensions","image_alt":"Image Description","image_list":"Image List","image_border":"Border","image_src":"Image URL","image_title":"Insert/Edit Image","charmap_title":"Select Special Character", "charmap_usage":"Use left and right arrows to navigate.","colorpicker_name":"Name:","colorpicker_color":"Color:","colorpicker_named_title":"Named Colors","colorpicker_named_tab":"Named","colorpicker_palette_title":"Palette Colors","colorpicker_palette_tab":"Palette","colorpicker_picker_title":"Color Picker","colorpicker_picker_tab":"Picker","colorpicker_title":"Select a Color","code_wordwrap":"Word Wrap","code_title":"HTML Source Editor","anchor_name":"Anchor Name","anchor_title":"Insert/Edit Anchor","about_loaded":"Loaded Plugins","about_version":"Version","about_author":"Author","about_plugin":"Plugin","about_plugins":"Plugins","about_license":"License","about_help":"Help","about_general":"About","about_title":"About TinyMCE","anchor_invalid":"Please specify a valid anchor name.","accessibility_help":"Accessibility Help","accessibility_usage_title":"General Usage","invalid_color_value":"Invalid color value","":""});
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/link.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/link.htm
new file mode 100644 (file)
index 0000000..f796268
--- /dev/null
@@ -0,0 +1,57 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#advanced_dlg.link_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js"></script>
+       <script type="text/javascript" src="../../utils/validate.js"></script>
+       <script type="text/javascript" src="js/link.js"></script>
+</head>
+<body id="link" style="display: none">
+<form onsubmit="LinkDialog.update();return false;" action="#">
+       <div class="tabs">
+               <ul>
+                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#advanced_dlg.link_title}</a></span></li>
+               </ul>
+       </div>
+
+       <div class="panel_wrapper">
+               <div id="general_panel" class="panel current">
+                       <table border="0" cellpadding="4" cellspacing="0">
+                               <tr>
+                                       <td class="nowrap"><label for="href">{#advanced_dlg.link_url}</label></td>
+                                       <td><table border="0" cellspacing="0" cellpadding="0">
+                                               <tr>
+                                                       <td><input id="href" name="href" type="text" class="mceFocus" value="" style="width: 200px" onchange="LinkDialog.checkPrefix(this);" /></td>
+                                                       <td id="hrefbrowsercontainer">&nbsp;</td>
+                                               </tr>
+                                       </table></td>
+                               </tr>
+                               <tr>
+                                       <td><label for="link_list">{#advanced_dlg.link_list}</label></td>
+                                       <td><select id="link_list" name="link_list" onchange="document.getElementById('href').value=this.options[this.selectedIndex].value;"></select></td>
+                               </tr>
+                               <tr>
+                                       <td><label id="targetlistlabel" for="targetlist">{#advanced_dlg.link_target}</label></td>
+                                       <td><select id="target_list" name="target_list"></select></td>
+                               </tr>
+                               <tr>
+                                       <td class="nowrap"><label for="linktitle">{#advanced_dlg.link_titlefield}</label></td>
+                                       <td><input id="linktitle" name="linktitle" type="text" value="" style="width: 200px" /></td>
+                               </tr>
+                               <tr>
+                                       <td><label for="class_list">{#class_name}</label></td>
+                                       <td><select id="class_list" name="class_list"></select></td>
+                               </tr>
+                       </table>
+               </div>
+       </div>
+
+       <div class="mceActionPanel">
+               <input type="submit" id="insert" name="insert" value="{#insert}" />
+               <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
+       </div>
+</form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/shortcuts.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/shortcuts.htm
new file mode 100644 (file)
index 0000000..ec34f95
--- /dev/null
@@ -0,0 +1,47 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+       <head>
+               <title>{#advanced_dlg.accessibility_help}</title>
+               <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+               <script type="text/javascript">tinyMCEPopup.requireLangPack();</script>
+       </head>
+       <body id="content">
+               <h1>{#advanced_dlg.accessibility_usage_title}</h1>
+               <h2>Toolbars</h2>
+               <p>Press ALT-F10 to move focus to the toolbars. Navigate through the buttons using the arrow keys.
+               Press enter to activate a button and return focus to the editor.
+               Press escape to return focus to the editor without performing any actions.</p>
+
+               <h2>Status Bar</h2>
+               <p>To access the editor status bar, press ALT-F11. Use the left and right arrow keys to navigate between elements in the path.
+               Press enter or space to select an element. Press escape to return focus to the editor without changing the selection.</p>
+
+               <h2>Context Menu</h2>
+               <p>Press shift-F10 to activate the context menu. Use the up and down arrow keys to move between menu items. To open sub-menus press the right arrow key.
+               To close submenus press the left arrow key.  Press escape to close the context menu.</p>
+
+               <h1>Keyboard Shortcuts</h1>
+               <table>
+                       <thead>
+                               <tr>
+                                       <th>Keystroke</th>
+                                       <th>Function</th>
+                               </tr>
+                       </thead>
+                       <tbody>
+                               <tr>
+                                       <td>Control-B</td><td>Bold</td>
+                               </tr>
+                               <tr>
+                                       <td>Control-I</td><td>Italic</td>
+                               </tr>
+                               <tr>
+                                       <td>Control-Z</td><td>Undo</td>
+                               </tr>
+                               <tr>
+                                       <td>Control-Y</td><td>Redo</td>
+                               </tr>
+                       </tbody>
+               </table>
+       </body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/content.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/content.css
new file mode 100644 (file)
index 0000000..4d63ca9
--- /dev/null
@@ -0,0 +1,50 @@
+body, td, pre {color:#000; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px; margin:8px;}
+body {background:#FFF;}
+body.mceForceColors {background:#FFF; color:#000;}
+body.mceBrowserDefaults {background:transparent; color:inherit; font-size:inherit; font-family:inherit;}
+h1 {font-size: 2em}
+h2 {font-size: 1.5em}
+h3 {font-size: 1.17em}
+h4 {font-size: 1em}
+h5 {font-size: .83em}
+h6 {font-size: .75em}
+.mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;}
+a.mceItemAnchor {display:inline-block; -webkit-user-select:all; -webkit-user-modify:read-only; -moz-user-select:all; -moz-user-modify:read-only; width:11px !important; height:11px !important; background:url(img/items.gif) no-repeat center center}
+span.mceItemNbsp {background: #DDD}
+td.mceSelected, th.mceSelected {background-color:#3399ff !important}
+img {border:0;}
+table, img, hr, .mceItemAnchor {cursor:default}
+table td, table th {cursor:text}
+ins {border-bottom:1px solid green; text-decoration: none; color:green}
+del {color:red; text-decoration:line-through}
+cite {border-bottom:1px dashed blue}
+acronym {border-bottom:1px dotted #CCC; cursor:help}
+abbr {border-bottom:1px dashed #CCC; cursor:help}
+
+/* IE */
+* html body {
+scrollbar-3dlight-color:#F0F0EE;
+scrollbar-arrow-color:#676662;
+scrollbar-base-color:#F0F0EE;
+scrollbar-darkshadow-color:#DDD;
+scrollbar-face-color:#E0E0DD;
+scrollbar-highlight-color:#F0F0EE;
+scrollbar-shadow-color:#F0F0EE;
+scrollbar-track-color:#F5F5F5;
+}
+
+img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
+font[face=mceinline] {font-family:inherit !important}
+*[contentEditable]:focus {outline:0}
+
+.mceItemMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc}
+.mceItemShockWave {background-image:url(../../img/shockwave.gif)}
+.mceItemFlash {background-image:url(../../img/flash.gif)}
+.mceItemQuickTime {background-image:url(../../img/quicktime.gif)}
+.mceItemWindowsMedia {background-image:url(../../img/windowsmedia.gif)}
+.mceItemRealMedia {background-image:url(../../img/realmedia.gif)}
+.mceItemVideo {background-image:url(../../img/video.gif)}
+.mceItemAudio {background-image:url(../../img/video.gif)}
+.mceItemEmbeddedAudio {background-image:url(../../img/video.gif)}
+.mceItemIframe {background-image:url(../../img/iframe.gif)}
+.mcePageBreak {display:block;border:0;width:100%;height:12px;border-top:1px dotted #ccc;margin-top:15px;background:#fff url(../../img/pagebreak.gif) no-repeat center top;}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/dialog.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/dialog.css
new file mode 100644 (file)
index 0000000..8950ba3
--- /dev/null
@@ -0,0 +1,118 @@
+/* Generic */
+body {
+font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px;
+scrollbar-3dlight-color:#F0F0EE;
+scrollbar-arrow-color:#676662;
+scrollbar-base-color:#F0F0EE;
+scrollbar-darkshadow-color:#DDDDDD;
+scrollbar-face-color:#E0E0DD;
+scrollbar-highlight-color:#F0F0EE;
+scrollbar-shadow-color:#F0F0EE;
+scrollbar-track-color:#F5F5F5;
+background:#F0F0EE;
+padding:0;
+margin:8px 8px 0 8px;
+}
+
+html {background:#F0F0EE;}
+td {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}
+textarea {resize:none;outline:none;}
+a:link, a:visited {color:black;}
+a:hover {color:#2B6FB6;}
+.nowrap {white-space: nowrap}
+
+/* Forms */
+fieldset {margin:0; padding:4px; border:1px solid #919B9C; font-family:Verdana, Arial; font-size:10px;}
+legend {color:#2B6FB6; font-weight:bold;}
+label.msg {display:none;}
+label.invalid {color:#EE0000; display:inline;}
+input.invalid {border:1px solid #EE0000;}
+input {background:#FFF; border:1px solid #CCC;}
+input, select, textarea {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}
+input, select, textarea {border:1px solid #808080;}
+input.radio {border:1px none #000000; background:transparent; vertical-align:middle;}
+input.checkbox {border:1px none #000000; background:transparent; vertical-align:middle;}
+.input_noborder {border:0;}
+
+/* Buttons */
+#insert, #cancel, input.button, .updateButton {
+border:0; margin:0; padding:0;
+font-weight:bold;
+width:94px; height:26px;
+background:url(img/buttons.png) 0 -26px;
+cursor:pointer;
+padding-bottom:2px;
+float:left;
+}
+
+#insert {background:url(img/buttons.png) 0 -52px}
+#cancel {background:url(img/buttons.png) 0 0; float:right}
+
+/* Browse */
+a.pickcolor, a.browse {text-decoration:none}
+a.browse span {display:block; width:20px; height:18px; background:url(../../img/icons.gif) -860px 0; border:1px solid #FFF; margin-left:1px;}
+.mceOldBoxModel a.browse span {width:22px; height:20px;}
+a.browse:hover span {border:1px solid #0A246A; background-color:#B2BBD0;}
+a.browse span.disabled {border:1px solid white; opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
+a.browse:hover span.disabled {border:1px solid white; background-color:transparent;}
+a.pickcolor span {display:block; width:20px; height:16px; background:url(../../img/icons.gif) -840px 0; margin-left:2px;}
+.mceOldBoxModel a.pickcolor span {width:21px; height:17px;}
+a.pickcolor:hover span {background-color:#B2BBD0;}
+a.pickcolor:hover span.disabled {}
+
+/* Charmap */
+table.charmap {border:1px solid #AAA; text-align:center}
+td.charmap, #charmap a {width:18px; height:18px; color:#000; border:1px solid #AAA; text-align:center; font-size:12px; vertical-align:middle; line-height: 18px;}
+#charmap a {display:block; color:#000; text-decoration:none; border:0}
+#charmap a:hover {background:#CCC;color:#2B6FB6}
+#charmap #codeN {font-size:10px; font-family:Arial,Helvetica,sans-serif; text-align:center}
+#charmap #codeV {font-size:40px; height:80px; border:1px solid #AAA; text-align:center}
+
+/* Source */
+.wordWrapCode {vertical-align:middle; border:1px none #000000; background:transparent;}
+.mceActionPanel {margin-top:5px;}
+
+/* Tabs classes */
+.tabs {width:100%; height:18px; line-height:normal; background:url(img/tabs.gif) repeat-x 0 -72px;}
+.tabs ul {margin:0; padding:0; list-style:none;}
+.tabs li {float:left; background:url(img/tabs.gif) no-repeat 0 0; margin:0 2px 0 0; padding:0 0 0 10px; line-height:17px; height:18px; display:block;}
+.tabs li.current {background:url(img/tabs.gif) no-repeat 0 -18px; margin-right:2px;}
+.tabs span {float:left; display:block; background:url(img/tabs.gif) no-repeat right -36px; padding:0px 10px 0 0;}
+.tabs .current span {background:url(img/tabs.gif) no-repeat right -54px;}
+.tabs a {text-decoration:none; font-family:Verdana, Arial; font-size:10px;}
+.tabs a:link, .tabs a:visited, .tabs a:hover {color:black;}
+
+/* Panels */
+.panel_wrapper div.panel {display:none;}
+.panel_wrapper div.current {display:block; width:100%; height:300px; overflow:visible;}
+.panel_wrapper {border:1px solid #919B9C; border-top:0px; padding:10px; padding-top:5px; clear:both; background:white;}
+
+/* Columns */
+.column {float:left;}
+.properties {width:100%;}
+.properties .column1 {}
+.properties .column2 {text-align:left;}
+
+/* Titles */
+h1, h2, h3, h4 {color:#2B6FB6; margin:0; padding:0; padding-top:5px;}
+h3 {font-size:14px;}
+.title {font-size:12px; font-weight:bold; color:#2B6FB6;}
+
+/* Dialog specific */
+#link .panel_wrapper, #link div.current {height:125px;}
+#image .panel_wrapper, #image div.current {height:200px;}
+#plugintable thead {font-weight:bold; background:#DDD;}
+#plugintable, #about #plugintable td {border:1px solid #919B9C;}
+#plugintable {width:96%; margin-top:10px;}
+#pluginscontainer {height:290px; overflow:auto;}
+#colorpicker #preview {display:inline-block; padding-left:40px; height:14px; border:1px solid black; margin-left:5px; margin-right: 5px}
+#colorpicker #previewblock {position: relative; top: -3px; padding-left:5px; padding-top: 0px; display:inline}
+#colorpicker #preview_wrapper { text-align:center; padding-top:4px; white-space: nowrap}
+#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;}
+#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;}
+#colorpicker #light div {overflow:hidden;}
+#colorpicker .panel_wrapper div.current {height:175px;}
+#colorpicker #namedcolors {width:150px;}
+#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;}
+#colorpicker #colornamecontainer {margin-top:5px;}
+#colorpicker #picker_panel fieldset {margin:auto;width:325px;}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/buttons.png b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/buttons.png
new file mode 100644 (file)
index 0000000..1e53560
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/buttons.png differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/items.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/items.gif
new file mode 100644 (file)
index 0000000..d2f9367
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/items.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif
new file mode 100644 (file)
index 0000000..85e31df
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/menu_check.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/menu_check.gif
new file mode 100644 (file)
index 0000000..adfdddc
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/menu_check.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/progress.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/progress.gif
new file mode 100644 (file)
index 0000000..5bb90fd
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/progress.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/tabs.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/tabs.gif
new file mode 100644 (file)
index 0000000..06812cb
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/img/tabs.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/ui.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/default/ui.css
new file mode 100644 (file)
index 0000000..2e8c658
--- /dev/null
@@ -0,0 +1,219 @@
+/* Reset */
+.defaultSkin table, .defaultSkin tbody, .defaultSkin a, .defaultSkin img, .defaultSkin tr, .defaultSkin div, .defaultSkin td, .defaultSkin iframe, .defaultSkin span, .defaultSkin *, .defaultSkin .mceText {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000; vertical-align:baseline; width:auto; border-collapse:separate; text-align:left}
+.defaultSkin a:hover, .defaultSkin a:link, .defaultSkin a:visited, .defaultSkin a:active {text-decoration:none; font-weight:normal; cursor:default; color:#000}
+.defaultSkin table td {vertical-align:middle}
+
+/* Containers */
+.defaultSkin table {direction:ltr;background:transparent}
+.defaultSkin iframe {display:block;}
+.defaultSkin .mceToolbar {height:26px}
+.defaultSkin .mceLeft {text-align:left}
+.defaultSkin .mceRight {text-align:right}
+
+/* External */
+.defaultSkin .mceExternalToolbar {position:absolute; border:1px solid #CCC; border-bottom:0; display:none;}
+.defaultSkin .mceExternalToolbar td.mceToolbar {padding-right:13px;}
+.defaultSkin .mceExternalClose {position:absolute; top:3px; right:3px; width:7px; height:7px; background:url(../../img/icons.gif) -820px 0}
+
+/* Layout */
+.defaultSkin table.mceLayout {border:0; border-left:1px solid #CCC; border-right:1px solid #CCC}
+.defaultSkin table.mceLayout tr.mceFirst td {border-top:1px solid #CCC}
+.defaultSkin table.mceLayout tr.mceLast td {border-bottom:1px solid #CCC}
+.defaultSkin table.mceToolbar, .defaultSkin tr.mceFirst .mceToolbar tr td, .defaultSkin tr.mceLast .mceToolbar tr td {border:0; margin:0; padding:0;}
+.defaultSkin td.mceToolbar {background:#F0F0EE; padding-top:1px; vertical-align:top}
+.defaultSkin .mceIframeContainer {border-top:1px solid #CCC; border-bottom:1px solid #CCC}
+.defaultSkin .mceStatusbar {background:#F0F0EE; font-family:'MS Sans Serif',sans-serif,Verdana,Arial; font-size:9pt; line-height:16px; overflow:visible; color:#000; display:block; height:20px}
+.defaultSkin .mceStatusbar div {float:left; margin:2px}
+.defaultSkin .mceStatusbar a.mceResize {display:block; float:right; background:url(../../img/icons.gif) -800px 0; width:20px; height:20px; cursor:se-resize; outline:0}
+.defaultSkin .mceStatusbar a:hover {text-decoration:underline}
+.defaultSkin table.mceToolbar {margin-left:3px}
+.defaultSkin span.mceIcon, .defaultSkin img.mceIcon {display:block; width:20px; height:20px}
+.defaultSkin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px}
+.defaultSkin td.mceCenter {text-align:center;}
+.defaultSkin td.mceCenter table {margin:0 auto; text-align:left;}
+.defaultSkin td.mceRight table {margin:0 0 0 auto;}
+
+/* Button */
+.defaultSkin .mceButton {display:block; border:1px solid #F0F0EE; width:20px; height:20px; margin-right:1px}
+.defaultSkin a.mceButtonEnabled:hover {border:1px solid #0A246A; background-color:#B2BBD0}
+.defaultSkin a.mceButtonActive, .defaultSkin a.mceButtonSelected {border:1px solid #0A246A; background-color:#C2CBE0}
+.defaultSkin .mceButtonDisabled .mceIcon {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
+.defaultSkin .mceButtonLabeled {width:auto}
+.defaultSkin .mceButtonLabeled span.mceIcon {float:left}
+.defaultSkin span.mceButtonLabel {display:block; font-size:10px; padding:4px 6px 0 22px; font-family:Tahoma,Verdana,Arial,Helvetica}
+.defaultSkin .mceButtonDisabled .mceButtonLabel {color:#888}
+
+/* Separator */
+.defaultSkin .mceSeparator {display:block; background:url(../../img/icons.gif) -180px 0; width:2px; height:20px; margin:2px 2px 0 4px}
+
+/* ListBox */
+.defaultSkin .mceListBox, .defaultSkin .mceListBox a {display:block}
+.defaultSkin .mceListBox .mceText {padding-left:4px; width:70px; text-align:left; border:1px solid #CCC; border-right:0; background:#FFF; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; height:20px; line-height:20px; overflow:hidden}
+.defaultSkin .mceListBox .mceOpen {width:9px; height:20px; background:url(../../img/icons.gif) -741px 0; margin-right:2px; border:1px solid #CCC;}
+.defaultSkin table.mceListBoxEnabled:hover .mceText, .defaultSkin .mceListBoxHover .mceText, .defaultSkin .mceListBoxSelected .mceText {border:1px solid #A2ABC0; border-right:0; background:#FFF}
+.defaultSkin table.mceListBoxEnabled:hover .mceOpen, .defaultSkin .mceListBoxHover .mceOpen, .defaultSkin .mceListBoxSelected .mceOpen {background-color:#FFF; border:1px solid #A2ABC0}
+.defaultSkin .mceListBoxDisabled a.mceText {color:gray; background-color:transparent;}
+.defaultSkin .mceListBoxMenu {overflow:auto; overflow-x:hidden}
+.defaultSkin .mceOldBoxModel .mceListBox .mceText {height:22px}
+.defaultSkin .mceOldBoxModel .mceListBox .mceOpen {width:11px; height:22px;}
+.defaultSkin select.mceNativeListBox {font-family:'MS Sans Serif',sans-serif,Verdana,Arial; font-size:7pt; background:#F0F0EE; border:1px solid gray; margin-right:2px;}
+
+/* SplitButton */
+.defaultSkin .mceSplitButton {width:32px; height:20px; direction:ltr}
+.defaultSkin .mceSplitButton a, .defaultSkin .mceSplitButton span {height:20px; display:block}
+.defaultSkin .mceSplitButton a.mceAction {width:20px; border:1px solid #F0F0EE; border-right:0;}
+.defaultSkin .mceSplitButton span.mceAction {width:20px; background-image:url(../../img/icons.gif);}
+.defaultSkin .mceSplitButton a.mceOpen {width:9px; background:url(../../img/icons.gif) -741px 0; border:1px solid #F0F0EE;}
+.defaultSkin .mceSplitButton span.mceOpen {display:none}
+.defaultSkin table.mceSplitButtonEnabled:hover a.mceAction, .defaultSkin .mceSplitButtonHover a.mceAction, .defaultSkin .mceSplitButtonSelected a.mceAction {border:1px solid #0A246A; border-right:0; background-color:#B2BBD0}
+.defaultSkin table.mceSplitButtonEnabled:hover a.mceOpen, .defaultSkin .mceSplitButtonHover a.mceOpen, .defaultSkin .mceSplitButtonSelected a.mceOpen {background-color:#B2BBD0; border:1px solid #0A246A;}
+.defaultSkin .mceSplitButtonDisabled .mceAction, .defaultSkin .mceSplitButtonDisabled a.mceOpen {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
+.defaultSkin .mceSplitButtonActive a.mceAction {border:1px solid #0A246A; background-color:#C2CBE0}
+.defaultSkin .mceSplitButtonActive a.mceOpen {border-left:0;}
+
+/* ColorSplitButton */
+.defaultSkin div.mceColorSplitMenu table {background:#FFF; border:1px solid gray}
+.defaultSkin .mceColorSplitMenu td {padding:2px}
+.defaultSkin .mceColorSplitMenu a {display:block; width:9px; height:9px; overflow:hidden; border:1px solid #808080}
+.defaultSkin .mceColorSplitMenu td.mceMoreColors {padding:1px 3px 1px 1px}
+.defaultSkin .mceColorSplitMenu a.mceMoreColors {width:100%; height:auto; text-align:center; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; line-height:20px; border:1px solid #FFF}
+.defaultSkin .mceColorSplitMenu a.mceMoreColors:hover {border:1px solid #0A246A; background-color:#B6BDD2}
+.defaultSkin a.mceMoreColors:hover {border:1px solid #0A246A}
+.defaultSkin .mceColorPreview {margin-left:2px; width:16px; height:4px; overflow:hidden; background:#9a9b9a}
+.defaultSkin .mce_forecolor span.mceAction, .defaultSkin .mce_backcolor span.mceAction {overflow:hidden; height:16px}
+
+/* Menu */
+.defaultSkin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid #D4D0C8; direction:ltr}
+.defaultSkin .mceNoIcons span.mceIcon {width:0;}
+.defaultSkin .mceNoIcons a .mceText {padding-left:10px}
+.defaultSkin .mceMenu table {background:#FFF}
+.defaultSkin .mceMenu a, .defaultSkin .mceMenu span, .defaultSkin .mceMenu {display:block}
+.defaultSkin .mceMenu td {height:20px}
+.defaultSkin .mceMenu a {position:relative;padding:3px 0 4px 0}
+.defaultSkin .mceMenu .mceText {position:relative; display:block; font-family:Tahoma,Verdana,Arial,Helvetica; color:#000; cursor:default; margin:0; padding:0 25px 0 25px; display:block}
+.defaultSkin .mceMenu span.mceText, .defaultSkin .mceMenu .mcePreview {font-size:11px}
+.defaultSkin .mceMenu pre.mceText {font-family:Monospace}
+.defaultSkin .mceMenu .mceIcon {position:absolute; top:0; left:0; width:22px;}
+.defaultSkin .mceMenu .mceMenuItemEnabled a:hover, .defaultSkin .mceMenu .mceMenuItemActive {background-color:#dbecf3}
+.defaultSkin td.mceMenuItemSeparator {background:#DDD; height:1px}
+.defaultSkin .mceMenuItemTitle a {border:0; background:#EEE; border-bottom:1px solid #DDD}
+.defaultSkin .mceMenuItemTitle span.mceText {color:#000; font-weight:bold; padding-left:4px}
+.defaultSkin .mceMenuItemDisabled .mceText {color:#888}
+.defaultSkin .mceMenuItemSelected .mceIcon {background:url(img/menu_check.gif)}
+.defaultSkin .mceNoIcons .mceMenuItemSelected a {background:url(img/menu_arrow.gif) no-repeat -6px center}
+.defaultSkin .mceMenu span.mceMenuLine {display:none}
+.defaultSkin .mceMenuItemSub a {background:url(img/menu_arrow.gif) no-repeat top right;}
+.defaultSkin .mceMenuItem td, .defaultSkin .mceMenuItem th {line-height: normal}
+
+/* Progress,Resize */
+.defaultSkin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=50)'; filter:alpha(opacity=50); background:#FFF}
+.defaultSkin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}
+
+/* Rtl */
+.mceRtl .mceListBox .mceText {text-align: right; padding: 0 4px 0 0}
+.mceRtl .mceMenuItem .mceText {text-align: right}
+
+/* Formats */
+.defaultSkin .mce_formatPreview a {font-size:10px}
+.defaultSkin .mce_p span.mceText {}
+.defaultSkin .mce_address span.mceText {font-style:italic}
+.defaultSkin .mce_pre span.mceText {font-family:monospace}
+.defaultSkin .mce_h1 span.mceText {font-weight:bolder; font-size: 2em}
+.defaultSkin .mce_h2 span.mceText {font-weight:bolder; font-size: 1.5em}
+.defaultSkin .mce_h3 span.mceText {font-weight:bolder; font-size: 1.17em}
+.defaultSkin .mce_h4 span.mceText {font-weight:bolder; font-size: 1em}
+.defaultSkin .mce_h5 span.mceText {font-weight:bolder; font-size: .83em}
+.defaultSkin .mce_h6 span.mceText {font-weight:bolder; font-size: .75em}
+
+/* Theme */
+.defaultSkin span.mce_bold {background-position:0 0}
+.defaultSkin span.mce_italic {background-position:-60px 0}
+.defaultSkin span.mce_underline {background-position:-140px 0}
+.defaultSkin span.mce_strikethrough {background-position:-120px 0}
+.defaultSkin span.mce_undo {background-position:-160px 0}
+.defaultSkin span.mce_redo {background-position:-100px 0}
+.defaultSkin span.mce_cleanup {background-position:-40px 0}
+.defaultSkin span.mce_bullist {background-position:-20px 0}
+.defaultSkin span.mce_numlist {background-position:-80px 0}
+.defaultSkin span.mce_justifyleft {background-position:-460px 0}
+.defaultSkin span.mce_justifyright {background-position:-480px 0}
+.defaultSkin span.mce_justifycenter {background-position:-420px 0}
+.defaultSkin span.mce_justifyfull {background-position:-440px 0}
+.defaultSkin span.mce_anchor {background-position:-200px 0}
+.defaultSkin span.mce_indent {background-position:-400px 0}
+.defaultSkin span.mce_outdent {background-position:-540px 0}
+.defaultSkin span.mce_link {background-position:-500px 0}
+.defaultSkin span.mce_unlink {background-position:-640px 0}
+.defaultSkin span.mce_sub {background-position:-600px 0}
+.defaultSkin span.mce_sup {background-position:-620px 0}
+.defaultSkin span.mce_removeformat {background-position:-580px 0}
+.defaultSkin span.mce_newdocument {background-position:-520px 0}
+.defaultSkin span.mce_image {background-position:-380px 0}
+.defaultSkin span.mce_help {background-position:-340px 0}
+.defaultSkin span.mce_code {background-position:-260px 0}
+.defaultSkin span.mce_hr {background-position:-360px 0}
+.defaultSkin span.mce_visualaid {background-position:-660px 0}
+.defaultSkin span.mce_charmap {background-position:-240px 0}
+.defaultSkin span.mce_paste {background-position:-560px 0}
+.defaultSkin span.mce_copy {background-position:-700px 0}
+.defaultSkin span.mce_cut {background-position:-680px 0}
+.defaultSkin span.mce_blockquote {background-position:-220px 0}
+.defaultSkin .mce_forecolor span.mceAction {background-position:-720px 0}
+.defaultSkin .mce_backcolor span.mceAction {background-position:-760px 0}
+.defaultSkin span.mce_forecolorpicker {background-position:-720px 0}
+.defaultSkin span.mce_backcolorpicker {background-position:-760px 0}
+
+/* Plugins */
+.defaultSkin span.mce_advhr {background-position:-0px -20px}
+.defaultSkin span.mce_ltr {background-position:-20px -20px}
+.defaultSkin span.mce_rtl {background-position:-40px -20px}
+.defaultSkin span.mce_emotions {background-position:-60px -20px}
+.defaultSkin span.mce_fullpage {background-position:-80px -20px}
+.defaultSkin span.mce_fullscreen {background-position:-100px -20px}
+.defaultSkin span.mce_iespell {background-position:-120px -20px}
+.defaultSkin span.mce_insertdate {background-position:-140px -20px}
+.defaultSkin span.mce_inserttime {background-position:-160px -20px}
+.defaultSkin span.mce_absolute {background-position:-180px -20px}
+.defaultSkin span.mce_backward {background-position:-200px -20px}
+.defaultSkin span.mce_forward {background-position:-220px -20px}
+.defaultSkin span.mce_insert_layer {background-position:-240px -20px}
+.defaultSkin span.mce_insertlayer {background-position:-260px -20px}
+.defaultSkin span.mce_movebackward {background-position:-280px -20px}
+.defaultSkin span.mce_moveforward {background-position:-300px -20px}
+.defaultSkin span.mce_media {background-position:-320px -20px}
+.defaultSkin span.mce_nonbreaking {background-position:-340px -20px}
+.defaultSkin span.mce_pastetext {background-position:-360px -20px}
+.defaultSkin span.mce_pasteword {background-position:-380px -20px}
+.defaultSkin span.mce_selectall {background-position:-400px -20px}
+.defaultSkin span.mce_preview {background-position:-420px -20px}
+.defaultSkin span.mce_print {background-position:-440px -20px}
+.defaultSkin span.mce_cancel {background-position:-460px -20px}
+.defaultSkin span.mce_save {background-position:-480px -20px}
+.defaultSkin span.mce_replace {background-position:-500px -20px}
+.defaultSkin span.mce_search {background-position:-520px -20px}
+.defaultSkin span.mce_styleprops {background-position:-560px -20px}
+.defaultSkin span.mce_table {background-position:-580px -20px}
+.defaultSkin span.mce_cell_props {background-position:-600px -20px}
+.defaultSkin span.mce_delete_table {background-position:-620px -20px}
+.defaultSkin span.mce_delete_col {background-position:-640px -20px}
+.defaultSkin span.mce_delete_row {background-position:-660px -20px}
+.defaultSkin span.mce_col_after {background-position:-680px -20px}
+.defaultSkin span.mce_col_before {background-position:-700px -20px}
+.defaultSkin span.mce_row_after {background-position:-720px -20px}
+.defaultSkin span.mce_row_before {background-position:-740px -20px}
+.defaultSkin span.mce_merge_cells {background-position:-760px -20px}
+.defaultSkin span.mce_table_props {background-position:-980px -20px}
+.defaultSkin span.mce_row_props {background-position:-780px -20px}
+.defaultSkin span.mce_split_cells {background-position:-800px -20px}
+.defaultSkin span.mce_template {background-position:-820px -20px}
+.defaultSkin span.mce_visualchars {background-position:-840px -20px}
+.defaultSkin span.mce_abbr {background-position:-860px -20px}
+.defaultSkin span.mce_acronym {background-position:-880px -20px}
+.defaultSkin span.mce_attribs {background-position:-900px -20px}
+.defaultSkin span.mce_cite {background-position:-920px -20px}
+.defaultSkin span.mce_del {background-position:-940px -20px}
+.defaultSkin span.mce_ins {background-position:-960px -20px}
+.defaultSkin span.mce_pagebreak {background-position:0 -40px}
+.defaultSkin span.mce_restoredraft {background-position:-20px -40px}
+.defaultSkin span.mce_spellchecker {background-position:-540px -20px}
+.defaultSkin span.mce_visualblocks {background-position: -40px -40px}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/highcontrast/content.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/highcontrast/content.css
new file mode 100644 (file)
index 0000000..ee3d369
--- /dev/null
@@ -0,0 +1,24 @@
+body, td, pre { margin:8px;}
+body.mceForceColors {background:#FFF; color:#000;}
+h1 {font-size: 2em}
+h2 {font-size: 1.5em}
+h3 {font-size: 1.17em}
+h4 {font-size: 1em}
+h5 {font-size: .83em}
+h6 {font-size: .75em}
+.mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;}
+a.mceItemAnchor {display:inline-block; width:11px !important; height:11px  !important; background:url(../default/img/items.gif) no-repeat 0 0;}
+span.mceItemNbsp {background: #DDD}
+td.mceSelected, th.mceSelected {background-color:#3399ff !important}
+img {border:0;}
+table, img, hr, .mceItemAnchor {cursor:default}
+table td, table th {cursor:text}
+ins {border-bottom:1px solid green; text-decoration: none; color:green}
+del {color:red; text-decoration:line-through}
+cite {border-bottom:1px dashed blue}
+acronym {border-bottom:1px dotted #CCC; cursor:help}
+abbr {border-bottom:1px dashed #CCC; cursor:help}
+
+img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
+font[face=mceinline] {font-family:inherit !important}
+*[contentEditable]:focus {outline:0}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/highcontrast/dialog.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/highcontrast/dialog.css
new file mode 100644 (file)
index 0000000..fa3c31a
--- /dev/null
@@ -0,0 +1,106 @@
+/* Generic */
+body {
+font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px;
+background:#F0F0EE;
+color: black;
+padding:0;
+margin:8px 8px 0 8px;
+}
+
+html {background:#F0F0EE; color:#000;}
+td {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}
+textarea {resize:none;outline:none;}
+a:link, a:visited {color:black;background-color:transparent;}
+a:hover {color:#2B6FB6;background-color:transparent;}
+.nowrap {white-space: nowrap}
+
+/* Forms */
+fieldset {margin:0; padding:4px; border:1px solid #919B9C; font-family:Verdana, Arial; font-size:10px;}
+legend {color:#2B6FB6; font-weight:bold;}
+label.msg {display:none;}
+label.invalid {color:#EE0000; display:inline;background-color:transparent;}
+input.invalid {border:1px solid #EE0000;background-color:transparent;}
+input {background:#FFF; border:1px solid #CCC;color:black;}
+input, select, textarea {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}
+input, select, textarea {border:1px solid #808080;}
+input.radio {border:1px none #000000; background:transparent; vertical-align:middle;}
+input.checkbox {border:1px none #000000; background:transparent; vertical-align:middle;}
+.input_noborder {border:0;}
+
+/* Buttons */
+#insert, #cancel, input.button, .updateButton {
+font-weight:bold;
+width:94px; height:23px;
+cursor:pointer;
+padding-bottom:2px;
+float:left;
+}
+
+#cancel {float:right}
+
+/* Browse */
+a.pickcolor, a.browse {text-decoration:none}
+a.browse span {display:block; width:20px; height:18px; background:url(../../img/icons.gif) -860px 0; border:1px solid #FFF; margin-left:1px;}
+.mceOldBoxModel a.browse span {width:22px; height:20px;}
+a.browse:hover span {border:1px solid #0A246A; background-color:#B2BBD0;}
+a.browse span.disabled {border:1px solid white; opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
+a.browse:hover span.disabled {border:1px solid white; background-color:transparent;}
+a.pickcolor span {display:block; width:20px; height:16px; background:url(../../img/icons.gif) -840px 0; margin-left:2px;}
+.mceOldBoxModel a.pickcolor span {width:21px; height:17px;}
+a.pickcolor:hover span {background-color:#B2BBD0;}
+a.pickcolor:hover span.disabled {}
+
+/* Charmap */
+table.charmap {border:1px solid #AAA; text-align:center}
+td.charmap, #charmap a {width:18px; height:18px; color:#000; border:1px solid #AAA; text-align:center; font-size:12px; vertical-align:middle; line-height: 18px;}
+#charmap a {display:block; color:#000; text-decoration:none; border:0}
+#charmap a:hover {background:#CCC;color:#2B6FB6}
+#charmap #codeN {font-size:10px; font-family:Arial,Helvetica,sans-serif; text-align:center}
+#charmap #codeV {font-size:40px; height:80px; border:1px solid #AAA; text-align:center}
+
+/* Source */
+.wordWrapCode {vertical-align:middle; border:1px none #000000; background:transparent;}
+.mceActionPanel {margin-top:5px;}
+
+/* Tabs classes */
+.tabs {width:100%; height:18px; line-height:normal;}
+.tabs ul {margin:0; padding:0; list-style:none;}
+.tabs li {float:left; border: 1px solid black; border-bottom:0; margin:0 2px 0 0; padding:0 0 0 10px; line-height:17px; height:18px; display:block; cursor:pointer;}
+.tabs li.current {font-weight: bold; margin-right:2px;}
+.tabs span {float:left; display:block; padding:0px 10px 0 0;}
+.tabs a {text-decoration:none; font-family:Verdana, Arial; font-size:10px;}
+.tabs a:link, .tabs a:visited, .tabs a:hover {color:black;}
+
+/* Panels */
+.panel_wrapper div.panel {display:none;}
+.panel_wrapper div.current {display:block; width:100%; height:300px; overflow:visible;}
+.panel_wrapper {border:1px solid #919B9C; padding:10px; padding-top:5px; clear:both; background:white;}
+
+/* Columns */
+.column {float:left;}
+.properties {width:100%;}
+.properties .column1 {}
+.properties .column2 {text-align:left;}
+
+/* Titles */
+h1, h2, h3, h4 {color:#2B6FB6; margin:0; padding:0; padding-top:5px;}
+h3 {font-size:14px;}
+.title {font-size:12px; font-weight:bold; color:#2B6FB6;}
+
+/* Dialog specific */
+#link .panel_wrapper, #link div.current {height:125px;}
+#image .panel_wrapper, #image div.current {height:200px;}
+#plugintable thead {font-weight:bold; background:#DDD;}
+#plugintable, #about #plugintable td {border:1px solid #919B9C;}
+#plugintable {width:96%; margin-top:10px;}
+#pluginscontainer {height:290px; overflow:auto;}
+#colorpicker #preview {display:inline-block; padding-left:40px; height:14px; border:1px solid black; margin-left:5px; margin-right: 5px}
+#colorpicker #previewblock {position: relative; top: -3px; padding-left:5px; padding-top: 0px; display:inline}
+#colorpicker #preview_wrapper { text-align:center; padding-top:4px; white-space: nowrap}
+#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;}
+#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;}
+#colorpicker #light div {overflow:hidden;}
+#colorpicker .panel_wrapper div.current {height:175px;}
+#colorpicker #namedcolors {width:150px;}
+#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;}
+#colorpicker #colornamecontainer {margin-top:5px;}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/highcontrast/ui.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/highcontrast/ui.css
new file mode 100644 (file)
index 0000000..16ec276
--- /dev/null
@@ -0,0 +1,106 @@
+/* Reset */
+.highcontrastSkin table, .highcontrastSkin tbody, .highcontrastSkin a, .highcontrastSkin img, .highcontrastSkin tr, .highcontrastSkin div, .highcontrastSkin td, .highcontrastSkin iframe, .highcontrastSkin span, .highcontrastSkin *, .highcontrastSkin .mceText {border:0; margin:0; padding:0; vertical-align:baseline; border-collapse:separate;}
+.highcontrastSkin a:hover, .highcontrastSkin a:link, .highcontrastSkin a:visited, .highcontrastSkin a:active {text-decoration:none; font-weight:normal; cursor:default;}
+.highcontrastSkin table td {vertical-align:middle}
+
+.highcontrastSkin .mceIconOnly {display: block !important;}
+
+/* External */
+.highcontrastSkin .mceExternalToolbar {position:absolute; border:1px solid; border-bottom:0; display:none; background-color: white;}
+.highcontrastSkin .mceExternalToolbar td.mceToolbar {padding-right:13px;}
+.highcontrastSkin .mceExternalClose {position:absolute; top:3px; right:3px; width:7px; height:7px;}
+
+/* Layout */
+.highcontrastSkin table.mceLayout {border: 1px solid;}
+.highcontrastSkin .mceIframeContainer {border-top:1px solid; border-bottom:1px solid}
+.highcontrastSkin .mceStatusbar a:hover {text-decoration:underline}
+.highcontrastSkin .mceStatusbar {display:block; line-height:1.5em; overflow:visible;}
+.highcontrastSkin .mceStatusbar div {float:left}
+.highcontrastSkin .mceStatusbar a.mceResize {display:block; float:right; width:20px; height:20px; cursor:se-resize; outline:0}
+
+.highcontrastSkin .mceToolbar td { display: inline-block; float: left;}
+.highcontrastSkin .mceToolbar tr { display: block;}
+.highcontrastSkin .mceToolbar table { display: block; }
+
+/* Button */
+
+.highcontrastSkin .mceButton { display:block; margin: 2px; padding: 5px 10px;border: 1px solid; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; -ms-border-radius: 3px; height: 2em;}
+.highcontrastSkin .mceButton .mceVoiceLabel { height: 100%; vertical-align: center; line-height: 2em}
+.highcontrastSkin .mceButtonDisabled .mceVoiceLabel { opacity:0.6; -ms-filter:'alpha(opacity=60)'; filter:alpha(opacity=60);}
+.highcontrastSkin .mceButtonActive, .highcontrastSkin .mceButton:focus, .highcontrastSkin .mceButton:active { border: 5px solid; padding: 1px 6px;-webkit-focus-ring-color:none;outline:none;}
+
+/* Separator */
+.highcontrastSkin .mceSeparator {display:block; width:16px; height:26px;}
+
+/* ListBox */
+.highcontrastSkin .mceListBox { display: block; margin:2px;-webkit-focus-ring-color:none;outline:none;}
+.highcontrastSkin .mceListBox .mceText {padding: 5px 6px;  line-height: 2em; width: 15ex; overflow: hidden;}
+.highcontrastSkin .mceListBoxDisabled .mceText { opacity:0.6; -ms-filter:'alpha(opacity=60)'; filter:alpha(opacity=60);}
+.highcontrastSkin .mceListBox a.mceText { padding: 5px 10px; display: block; height: 2em; line-height: 2em; border: 1px solid; border-right: 0; border-radius: 3px 0px 0px 3px; -moz-border-radius: 3px 0px 0px 3px; -webkit-border-radius: 3px 0px 0px 3px; -ms-border-radius: 3px 0px 0px 3px;}
+.highcontrastSkin .mceListBox a.mceOpen { padding: 5px 4px; display: block; height: 2em; line-height: 2em; border: 1px solid; border-left: 0; border-radius: 0px 3px 3px 0px; -moz-border-radius: 0px 3px 3px 0px; -webkit-border-radius: 0px 3px 3px 0px; -ms-border-radius: 0px 3px 3px 0px;}
+.highcontrastSkin .mceListBox:focus a.mceText, .highcontrastSkin .mceListBox:active a.mceText { border-width: 5px; padding: 1px 10px 1px 6px;}
+.highcontrastSkin .mceListBox:focus a.mceOpen, .highcontrastSkin .mceListBox:active a.mceOpen { border-width: 5px; padding: 1px 0px 1px 4px;}
+
+.highcontrastSkin .mceListBoxMenu {overflow-y:auto}
+
+/* SplitButton */
+.highcontrastSkin .mceSplitButtonDisabled .mceAction {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
+
+.highcontrastSkin .mceSplitButton { border-collapse: collapse; margin: 2px; height: 2em; line-height: 2em;-webkit-focus-ring-color:none;outline:none;}
+.highcontrastSkin .mceSplitButton td { display: table-cell; float: none; margin: 0; padding: 0; height: 2em;}
+.highcontrastSkin .mceSplitButton tr { display: table-row; }
+.highcontrastSkin table.mceSplitButton  { display: table; }
+.highcontrastSkin .mceSplitButton a.mceAction { padding: 5px 10px; display: block; height: 2em; line-height: 2em; overflow: hidden; border: 1px solid; border-right: 0; border-radius: 3px 0px 0px 3px; -moz-border-radius: 3px 0px 0px 3px; -webkit-border-radius: 3px 0px 0px 3px; -ms-border-radius: 3px 0px 0px 3px;}
+.highcontrastSkin .mceSplitButton a.mceOpen { padding: 5px 4px;  display: block; height: 2em; line-height: 2em; border: 1px solid; border-radius: 0px 3px 3px 0px; -moz-border-radius: 0px 3px 3px 0px; -webkit-border-radius: 0px 3px 3px 0px; -ms-border-radius: 0px 3px 3px 0px;}
+.highcontrastSkin .mceSplitButton .mceVoiceLabel { height: 2em; vertical-align: center; line-height: 2em; }
+.highcontrastSkin .mceSplitButton:focus a.mceAction, .highcontrastSkin .mceSplitButton:active a.mceAction { border-width: 5px; border-right-width: 1px; padding: 1px 10px 1px 6px;-webkit-focus-ring-color:none;outline:none;}
+.highcontrastSkin .mceSplitButton:focus a.mceOpen, .highcontrastSkin .mceSplitButton:active a.mceOpen { border-width: 5px; border-left-width: 1px; padding: 1px 0px 1px 4px;-webkit-focus-ring-color:none;outline:none;}
+
+/* Menu */
+.highcontrastSkin .mceNoIcons span.mceIcon {width:0;}
+.highcontrastSkin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid; direction:ltr}
+.highcontrastSkin .mceMenu table {background:white; color: black}
+.highcontrastSkin .mceNoIcons a .mceText {padding-left:10px}
+.highcontrastSkin .mceMenu a, .highcontrastSkin .mceMenu span, .highcontrastSkin .mceMenu {display:block;background:white; color: black}
+.highcontrastSkin .mceMenu td {height:2em}
+.highcontrastSkin .mceMenu a {position:relative;padding:3px 0 4px 0; display: block;}
+.highcontrastSkin .mceMenu .mceText {position:relative; display:block; cursor:default; margin:0; padding:0 25px 0 25px;}
+.highcontrastSkin .mceMenu pre.mceText {font-family:Monospace}
+.highcontrastSkin .mceMenu .mceIcon {position:absolute; top:0; left:0; width:26px;}
+.highcontrastSkin td.mceMenuItemSeparator {border-top:1px solid; height:1px}
+.highcontrastSkin .mceMenuItemTitle a {border:0; border-bottom:1px solid}
+.highcontrastSkin .mceMenuItemTitle span.mceText {font-weight:bold; padding-left:4px}
+.highcontrastSkin .mceNoIcons .mceMenuItemSelected span.mceText:before {content: "\2713\A0";}
+.highcontrastSkin .mceMenu span.mceMenuLine {display:none}
+.highcontrastSkin .mceMenuItemSub a .mceText:after {content: "\A0\25B8"}
+.highcontrastSkin .mceMenuItem td, .highcontrastSkin .mceMenuItem th {line-height: normal}
+
+/* ColorSplitButton */
+.highcontrastSkin div.mceColorSplitMenu table {background:#FFF; border:1px solid; color: #000}
+.highcontrastSkin .mceColorSplitMenu td {padding:2px}
+.highcontrastSkin .mceColorSplitMenu a {display:block; width:16px; height:16px; overflow:hidden; color:#000; margin: 0; padding: 0;}
+.highcontrastSkin .mceColorSplitMenu td.mceMoreColors {padding:1px 3px 1px 1px}
+.highcontrastSkin .mceColorSplitMenu a.mceMoreColors {width:100%; height:auto; text-align:center; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; line-height:20px; border:1px solid #FFF}
+.highcontrastSkin .mceColorSplitMenu a.mceMoreColors:hover {border:1px solid; background-color:#B6BDD2}
+.highcontrastSkin a.mceMoreColors:hover {border:1px solid #0A246A; color: #000;}
+.highcontrastSkin .mceColorPreview {display:none;}
+.highcontrastSkin .mce_forecolor span.mceAction, .highcontrastSkin .mce_backcolor span.mceAction {height:17px;overflow:hidden}
+
+/* Progress,Resize */
+.highcontrastSkin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=50); background:#FFF}
+.highcontrastSkin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(../default/img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}
+
+/* Rtl */
+.mceRtl .mceListBox .mceText {text-align: right; padding: 0 4px 0 0}
+.mceRtl .mceMenuItem .mceText {text-align: right}
+
+/* Formats */
+.highcontrastSkin .mce_p span.mceText {}
+.highcontrastSkin .mce_address span.mceText {font-style:italic}
+.highcontrastSkin .mce_pre span.mceText {font-family:monospace}
+.highcontrastSkin .mce_h1 span.mceText {font-weight:bolder; font-size: 2em}
+.highcontrastSkin .mce_h2 span.mceText {font-weight:bolder; font-size: 1.5em}
+.highcontrastSkin .mce_h3 span.mceText {font-weight:bolder; font-size: 1.17em}
+.highcontrastSkin .mce_h4 span.mceText {font-weight:bolder; font-size: 1em}
+.highcontrastSkin .mce_h5 span.mceText {font-weight:bolder; font-size: .83em}
+.highcontrastSkin .mce_h6 span.mceText {font-weight:bolder; font-size: .75em}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/content.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/content.css
new file mode 100644 (file)
index 0000000..631fa0e
--- /dev/null
@@ -0,0 +1,48 @@
+body, td, pre {color:#000; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px; margin:8px;}
+body {background:#FFF;}
+body.mceForceColors {background:#FFF; color:#000;}
+h1 {font-size: 2em}
+h2 {font-size: 1.5em}
+h3 {font-size: 1.17em}
+h4 {font-size: 1em}
+h5 {font-size: .83em}
+h6 {font-size: .75em}
+.mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;}
+a.mceItemAnchor {display:inline-block; width:11px !important; height:11px  !important; background:url(../default/img/items.gif) no-repeat 0 0;}
+span.mceItemNbsp {background: #DDD}
+td.mceSelected, th.mceSelected {background-color:#3399ff !important}
+img {border:0;}
+table, img, hr, .mceItemAnchor {cursor:default}
+table td, table th {cursor:text}
+ins {border-bottom:1px solid green; text-decoration: none; color:green}
+del {color:red; text-decoration:line-through}
+cite {border-bottom:1px dashed blue}
+acronym {border-bottom:1px dotted #CCC; cursor:help}
+abbr {border-bottom:1px dashed #CCC; cursor:help}
+
+/* IE */
+* html body {
+scrollbar-3dlight-color:#F0F0EE;
+scrollbar-arrow-color:#676662;
+scrollbar-base-color:#F0F0EE;
+scrollbar-darkshadow-color:#DDD;
+scrollbar-face-color:#E0E0DD;
+scrollbar-highlight-color:#F0F0EE;
+scrollbar-shadow-color:#F0F0EE;
+scrollbar-track-color:#F5F5F5;
+}
+
+img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
+font[face=mceinline] {font-family:inherit !important}
+*[contentEditable]:focus {outline:0}
+
+.mceItemMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc}
+.mceItemShockWave {background-image:url(../../img/shockwave.gif)}
+.mceItemFlash {background-image:url(../../img/flash.gif)}
+.mceItemQuickTime {background-image:url(../../img/quicktime.gif)}
+.mceItemWindowsMedia {background-image:url(../../img/windowsmedia.gif)}
+.mceItemRealMedia {background-image:url(../../img/realmedia.gif)}
+.mceItemVideo {background-image:url(../../img/video.gif)}
+.mceItemAudio {background-image:url(../../img/video.gif)}
+.mceItemIframe {background-image:url(../../img/iframe.gif)}
+.mcePageBreak {display:block;border:0;width:100%;height:12px;border-top:1px dotted #ccc;margin-top:15px;background:#fff url(../../img/pagebreak.gif) no-repeat center top;}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/dialog.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/dialog.css
new file mode 100644 (file)
index 0000000..84d2fe9
--- /dev/null
@@ -0,0 +1,118 @@
+/* Generic */
+body {
+font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px;
+scrollbar-3dlight-color:#F0F0EE;
+scrollbar-arrow-color:#676662;
+scrollbar-base-color:#F0F0EE;
+scrollbar-darkshadow-color:#DDDDDD;
+scrollbar-face-color:#E0E0DD;
+scrollbar-highlight-color:#F0F0EE;
+scrollbar-shadow-color:#F0F0EE;
+scrollbar-track-color:#F5F5F5;
+background:#F0F0EE;
+padding:0;
+margin:8px 8px 0 8px;
+}
+
+html {background:#F0F0EE;}
+td {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}
+textarea {resize:none;outline:none;}
+a:link, a:visited {color:black;}
+a:hover {color:#2B6FB6;}
+.nowrap {white-space: nowrap}
+
+/* Forms */
+fieldset {margin:0; padding:4px; border:1px solid #919B9C; font-family:Verdana, Arial; font-size:10px;}
+legend {color:#2B6FB6; font-weight:bold;}
+label.msg {display:none;}
+label.invalid {color:#EE0000; display:inline;}
+input.invalid {border:1px solid #EE0000;}
+input {background:#FFF; border:1px solid #CCC;}
+input, select, textarea {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}
+input, select, textarea {border:1px solid #808080;}
+input.radio {border:1px none #000000; background:transparent; vertical-align:middle;}
+input.checkbox {border:1px none #000000; background:transparent; vertical-align:middle;}
+.input_noborder {border:0;}
+
+/* Buttons */
+#insert, #cancel, input.button, .updateButton {
+border:0; margin:0; padding:0;
+font-weight:bold;
+width:94px; height:26px;
+background:url(../default/img/buttons.png) 0 -26px;
+cursor:pointer;
+padding-bottom:2px;
+float:left;
+}
+
+#insert {background:url(../default/img/buttons.png) 0 -52px}
+#cancel {background:url(../default/img/buttons.png) 0 0; float:right}
+
+/* Browse */
+a.pickcolor, a.browse {text-decoration:none}
+a.browse span {display:block; width:20px; height:18px; background:url(../../img/icons.gif) -860px 0; border:1px solid #FFF; margin-left:1px;}
+.mceOldBoxModel a.browse span {width:22px; height:20px;}
+a.browse:hover span {border:1px solid #0A246A; background-color:#B2BBD0;}
+a.browse span.disabled {border:1px solid white; opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
+a.browse:hover span.disabled {border:1px solid white; background-color:transparent;}
+a.pickcolor span {display:block; width:20px; height:16px; background:url(../../img/icons.gif) -840px 0; margin-left:2px;}
+.mceOldBoxModel a.pickcolor span {width:21px; height:17px;}
+a.pickcolor:hover span {background-color:#B2BBD0;}
+a.pickcolor:hover span.disabled {}
+
+/* Charmap */
+table.charmap {border:1px solid #AAA; text-align:center}
+td.charmap, #charmap a {width:18px; height:18px; color:#000; border:1px solid #AAA; text-align:center; font-size:12px; vertical-align:middle; line-height: 18px;}
+#charmap a {display:block; color:#000; text-decoration:none; border:0}
+#charmap a:hover {background:#CCC;color:#2B6FB6}
+#charmap #codeN {font-size:10px; font-family:Arial,Helvetica,sans-serif; text-align:center}
+#charmap #codeV {font-size:40px; height:80px; border:1px solid #AAA; text-align:center}
+
+/* Source */
+.wordWrapCode {vertical-align:middle; border:1px none #000000; background:transparent;}
+.mceActionPanel {margin-top:5px;}
+
+/* Tabs classes */
+.tabs {width:100%; height:18px; line-height:normal; background:url(../default/img/tabs.gif) repeat-x 0 -72px;}
+.tabs ul {margin:0; padding:0; list-style:none;}
+.tabs li {float:left; background:url(../default/img/tabs.gif) no-repeat 0 0; margin:0 2px 0 0; padding:0 0 0 10px; line-height:17px; height:18px; display:block;}
+.tabs li.current {background:url(../default/img/tabs.gif) no-repeat 0 -18px; margin-right:2px;}
+.tabs span {float:left; display:block; background:url(../default/img/tabs.gif) no-repeat right -36px; padding:0px 10px 0 0;}
+.tabs .current span {background:url(../default/img/tabs.gif) no-repeat right -54px;}
+.tabs a {text-decoration:none; font-family:Verdana, Arial; font-size:10px;}
+.tabs a:link, .tabs a:visited, .tabs a:hover {color:black;}
+
+/* Panels */
+.panel_wrapper div.panel {display:none;}
+.panel_wrapper div.current {display:block; width:100%; height:300px; overflow:visible;}
+.panel_wrapper {border:1px solid #919B9C; border-top:0px; padding:10px; padding-top:5px; clear:both; background:white;}
+
+/* Columns */
+.column {float:left;}
+.properties {width:100%;}
+.properties .column1 {}
+.properties .column2 {text-align:left;}
+
+/* Titles */
+h1, h2, h3, h4 {color:#2B6FB6; margin:0; padding:0; padding-top:5px;}
+h3 {font-size:14px;}
+.title {font-size:12px; font-weight:bold; color:#2B6FB6;}
+
+/* Dialog specific */
+#link .panel_wrapper, #link div.current {height:125px;}
+#image .panel_wrapper, #image div.current {height:200px;}
+#plugintable thead {font-weight:bold; background:#DDD;}
+#plugintable, #about #plugintable td {border:1px solid #919B9C;}
+#plugintable {width:96%; margin-top:10px;}
+#pluginscontainer {height:290px; overflow:auto;}
+#colorpicker #preview {display:inline-block; padding-left:40px; height:14px; border:1px solid black; margin-left:5px; margin-right: 5px}
+#colorpicker #previewblock {position: relative; top: -3px; padding-left:5px; padding-top: 0px; display:inline}
+#colorpicker #preview_wrapper { text-align:center; padding-top:4px; white-space: nowrap}
+#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;}
+#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;}
+#colorpicker #light div {overflow:hidden;}
+#colorpicker .panel_wrapper div.current {height:175px;}
+#colorpicker #namedcolors {width:150px;}
+#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;}
+#colorpicker #colornamecontainer {margin-top:5px;}
+#colorpicker #picker_panel fieldset {margin:auto;width:325px;}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png
new file mode 100644 (file)
index 0000000..13a5cb0
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png
new file mode 100644 (file)
index 0000000..7fc57f2
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png
new file mode 100644 (file)
index 0000000..c0dcc6c
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/ui.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/ui.css
new file mode 100644 (file)
index 0000000..abd5d8d
--- /dev/null
@@ -0,0 +1,222 @@
+/* Reset */
+.o2k7Skin table, .o2k7Skin tbody, .o2k7Skin a, .o2k7Skin img, .o2k7Skin tr, .o2k7Skin div, .o2k7Skin td, .o2k7Skin iframe, .o2k7Skin span, .o2k7Skin *, .o2k7Skin .mceText {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000; vertical-align:baseline; width:auto; border-collapse:separate; text-align:left}
+.o2k7Skin a:hover, .o2k7Skin a:link, .o2k7Skin a:visited, .o2k7Skin a:active {text-decoration:none; font-weight:normal; cursor:default; color:#000}
+.o2k7Skin table td {vertical-align:middle}
+
+/* Containers */
+.o2k7Skin table {background:transparent}
+.o2k7Skin iframe {display:block;}
+.o2k7Skin .mceToolbar {height:26px}
+
+/* External */
+.o2k7Skin .mceExternalToolbar {position:absolute; border:1px solid #ABC6DD; border-bottom:0; display:none}
+.o2k7Skin .mceExternalToolbar td.mceToolbar {padding-right:13px;}
+.o2k7Skin .mceExternalClose {position:absolute; top:3px; right:3px; width:7px; height:7px; background:url(../../img/icons.gif) -820px 0}
+
+/* Layout */
+.o2k7Skin table.mceLayout {border:0; border-left:1px solid #ABC6DD; border-right:1px solid #ABC6DD}
+.o2k7Skin table.mceLayout tr.mceFirst td {border-top:1px solid #ABC6DD}
+.o2k7Skin table.mceLayout tr.mceLast td {border-bottom:1px solid #ABC6DD}
+.o2k7Skin table.mceToolbar, .o2k7Skin tr.mceFirst .mceToolbar tr td, .o2k7Skin tr.mceLast .mceToolbar tr td {border:0; margin:0; padding:0}
+.o2k7Skin .mceIframeContainer {border-top:1px solid #ABC6DD; border-bottom:1px solid #ABC6DD}
+.o2k7Skin td.mceToolbar{background:#E5EFFD}
+.o2k7Skin .mceStatusbar {background:#E5EFFD; display:block; font-family:'MS Sans Serif',sans-serif,Verdana,Arial; font-size:9pt; line-height:16px; overflow:visible; color:#000; height:20px}
+.o2k7Skin .mceStatusbar div {float:left; padding:2px}
+.o2k7Skin .mceStatusbar a.mceResize {display:block; float:right; background:url(../../img/icons.gif) -800px 0; width:20px; height:20px; cursor:se-resize; outline:0}
+.o2k7Skin .mceStatusbar a:hover {text-decoration:underline}
+.o2k7Skin table.mceToolbar {margin-left:3px}
+.o2k7Skin .mceToolbar .mceToolbarStart span {display:block; background:url(img/button_bg.png) -22px 0; width:1px; height:22px; margin-left:3px;}
+.o2k7Skin .mceToolbar td.mceFirst span {margin:0}
+.o2k7Skin .mceToolbar .mceToolbarEnd span {display:block; background:url(img/button_bg.png) -22px 0; width:1px; height:22px}
+.o2k7Skin .mceToolbar .mceToolbarEndListBox span, .o2k7Skin .mceToolbar .mceToolbarStartListBox span {display:none}
+.o2k7Skin span.mceIcon, .o2k7Skin img.mceIcon {display:block; width:20px; height:20px}
+.o2k7Skin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px}
+.o2k7Skin td.mceCenter {text-align:center;}
+.o2k7Skin td.mceCenter table {margin:0 auto; text-align:left;}
+.o2k7Skin td.mceRight table {margin:0 0 0 auto;}
+
+/* Button */
+.o2k7Skin .mceButton {display:block; background:url(img/button_bg.png); width:22px; height:22px}
+.o2k7Skin a.mceButton span, .o2k7Skin a.mceButton img {margin-left:1px}
+.o2k7Skin .mceOldBoxModel a.mceButton span, .o2k7Skin .mceOldBoxModel a.mceButton img {margin:0 0 0 1px}
+.o2k7Skin a.mceButtonEnabled:hover {background-color:#B2BBD0; background-position:0 -22px}
+.o2k7Skin a.mceButtonActive, .o2k7Skin a.mceButtonSelected {background-position:0 -44px}
+.o2k7Skin .mceButtonDisabled .mceIcon {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
+.o2k7Skin .mceButtonLabeled {width:auto}
+.o2k7Skin .mceButtonLabeled span.mceIcon {float:left}
+.o2k7Skin span.mceButtonLabel {display:block; font-size:10px; padding:4px 6px 0 22px; font-family:Tahoma,Verdana,Arial,Helvetica}
+.o2k7Skin .mceButtonDisabled .mceButtonLabel {color:#888}
+
+/* Separator */
+.o2k7Skin .mceSeparator {display:block; background:url(img/button_bg.png) -22px 0; width:5px; height:22px}
+
+/* ListBox */
+.o2k7Skin .mceListBox  {padding-left: 3px}
+.o2k7Skin .mceListBox, .o2k7Skin .mceListBox a {display:block}
+.o2k7Skin .mceListBox .mceText {padding-left:4px; text-align:left; width:70px; border:1px solid #b3c7e1; border-right:0; background:#eaf2fb; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; height:20px; line-height:20px; overflow:hidden}
+.o2k7Skin .mceListBox .mceOpen {width:14px; height:22px; background:url(img/button_bg.png) -66px 0}
+.o2k7Skin table.mceListBoxEnabled:hover .mceText, .o2k7Skin .mceListBoxHover .mceText, .o2k7Skin .mceListBoxSelected .mceText {background:#FFF}
+.o2k7Skin table.mceListBoxEnabled:hover .mceOpen, .o2k7Skin .mceListBoxHover .mceOpen, .o2k7Skin .mceListBoxSelected .mceOpen {background-position:-66px -22px}
+.o2k7Skin .mceListBoxDisabled .mceText {color:gray}
+.o2k7Skin .mceListBoxMenu {overflow:auto; overflow-x:hidden; margin-left:3px}
+.o2k7Skin .mceOldBoxModel .mceListBox .mceText {height:22px}
+.o2k7Skin select.mceListBox {font-family:Tahoma,Verdana,Arial,Helvetica; font-size:12px; border:1px solid #b3c7e1; background:#FFF;}
+
+/* SplitButton */
+.o2k7Skin .mceSplitButton, .o2k7Skin .mceSplitButton a, .o2k7Skin .mceSplitButton span {display:block; height:22px; direction:ltr}
+.o2k7Skin .mceSplitButton {background:url(img/button_bg.png)}
+.o2k7Skin .mceSplitButton a.mceAction {width:22px}
+.o2k7Skin .mceSplitButton span.mceAction {width:22px; background-image:url(../../img/icons.gif)}
+.o2k7Skin .mceSplitButton a.mceOpen {width:10px; background:url(img/button_bg.png) -44px 0}
+.o2k7Skin .mceSplitButton span.mceOpen {display:none}
+.o2k7Skin table.mceSplitButtonEnabled:hover a.mceAction, .o2k7Skin .mceSplitButtonHover a.mceAction, .o2k7Skin .mceSplitButtonSelected {background:url(img/button_bg.png) 0 -22px}
+.o2k7Skin table.mceSplitButtonEnabled:hover a.mceOpen, .o2k7Skin .mceSplitButtonHover a.mceOpen, .o2k7Skin .mceSplitButtonSelected a.mceOpen {background-position:-44px -44px}
+.o2k7Skin .mceSplitButtonDisabled .mceAction {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
+.o2k7Skin .mceSplitButtonActive {background-position:0 -44px}
+
+/* ColorSplitButton */
+.o2k7Skin div.mceColorSplitMenu table {background:#FFF; border:1px solid gray}
+.o2k7Skin .mceColorSplitMenu td {padding:2px}
+.o2k7Skin .mceColorSplitMenu a {display:block; width:9px; height:9px; overflow:hidden; border:1px solid #808080}
+.o2k7Skin .mceColorSplitMenu td.mceMoreColors {padding:1px 3px 1px 1px}
+.o2k7Skin .mceColorSplitMenu a.mceMoreColors {width:100%; height:auto; text-align:center; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; line-height:20px; border:1px solid #FFF}
+.o2k7Skin .mceColorSplitMenu a.mceMoreColors:hover {border:1px solid #0A246A; background-color:#B6BDD2}
+.o2k7Skin a.mceMoreColors:hover {border:1px solid #0A246A}
+.o2k7Skin .mceColorPreview {margin-left:2px; width:16px; height:4px; overflow:hidden; background:#9a9b9a;overflow:hidden}
+.o2k7Skin .mce_forecolor span.mceAction, .o2k7Skin .mce_backcolor span.mceAction {height:15px;overflow:hidden}
+
+/* Menu */
+.o2k7Skin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid #ABC6DD; direction:ltr}
+.o2k7Skin .mceNoIcons span.mceIcon {width:0;}
+.o2k7Skin .mceNoIcons a .mceText {padding-left:10px}
+.o2k7Skin .mceMenu table {background:#FFF}
+.o2k7Skin .mceMenu a, .o2k7Skin .mceMenu span, .o2k7Skin .mceMenu {display:block}
+.o2k7Skin .mceMenu td {height:20px}
+.o2k7Skin .mceMenu a {position:relative;padding:3px 0 4px 0}
+.o2k7Skin .mceMenu .mceText {position:relative; display:block; font-family:Tahoma,Verdana,Arial,Helvetica; color:#000; cursor:default; margin:0; padding:0 25px 0 25px; display:block}
+.o2k7Skin .mceMenu span.mceText, .o2k7Skin .mceMenu .mcePreview {font-size:11px}
+.o2k7Skin .mceMenu pre.mceText {font-family:Monospace}
+.o2k7Skin .mceMenu .mceIcon {position:absolute; top:0; left:0; width:22px;}
+.o2k7Skin .mceMenu .mceMenuItemEnabled a:hover, .o2k7Skin .mceMenu .mceMenuItemActive {background-color:#dbecf3}
+.o2k7Skin td.mceMenuItemSeparator {background:#DDD; height:1px}
+.o2k7Skin .mceMenuItemTitle a {border:0; background:#E5EFFD; border-bottom:1px solid #ABC6DD}
+.o2k7Skin .mceMenuItemTitle span.mceText {color:#000; font-weight:bold; padding-left:4px}
+.o2k7Skin .mceMenuItemDisabled .mceText {color:#888}
+.o2k7Skin .mceMenuItemSelected .mceIcon {background:url(../default/img/menu_check.gif)}
+.o2k7Skin .mceNoIcons .mceMenuItemSelected a {background:url(../default/img/menu_arrow.gif) no-repeat -6px center}
+.o2k7Skin .mceMenu span.mceMenuLine {display:none}
+.o2k7Skin .mceMenuItemSub a {background:url(../default/img/menu_arrow.gif) no-repeat top right;}
+.o2k7Skin .mceMenuItem td, .o2k7Skin .mceMenuItem th {line-height: normal}
+
+/* Progress,Resize */
+.o2k7Skin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=50); background:#FFF}
+.o2k7Skin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(../default/img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}
+
+/* Rtl */
+.mceRtl .mceListBox .mceText {text-align: right; padding: 0 4px 0 0}
+.mceRtl .mceMenuItem .mceText {text-align: right}
+
+/* Formats */
+.o2k7Skin .mce_formatPreview a {font-size:10px}
+.o2k7Skin .mce_p span.mceText {}
+.o2k7Skin .mce_address span.mceText {font-style:italic}
+.o2k7Skin .mce_pre span.mceText {font-family:monospace}
+.o2k7Skin .mce_h1 span.mceText {font-weight:bolder; font-size: 2em}
+.o2k7Skin .mce_h2 span.mceText {font-weight:bolder; font-size: 1.5em}
+.o2k7Skin .mce_h3 span.mceText {font-weight:bolder; font-size: 1.17em}
+.o2k7Skin .mce_h4 span.mceText {font-weight:bolder; font-size: 1em}
+.o2k7Skin .mce_h5 span.mceText {font-weight:bolder; font-size: .83em}
+.o2k7Skin .mce_h6 span.mceText {font-weight:bolder; font-size: .75em}
+
+/* Theme */
+.o2k7Skin span.mce_bold {background-position:0 0}
+.o2k7Skin span.mce_italic {background-position:-60px 0}
+.o2k7Skin span.mce_underline {background-position:-140px 0}
+.o2k7Skin span.mce_strikethrough {background-position:-120px 0}
+.o2k7Skin span.mce_undo {background-position:-160px 0}
+.o2k7Skin span.mce_redo {background-position:-100px 0}
+.o2k7Skin span.mce_cleanup {background-position:-40px 0}
+.o2k7Skin span.mce_bullist {background-position:-20px 0}
+.o2k7Skin span.mce_numlist {background-position:-80px 0}
+.o2k7Skin span.mce_justifyleft {background-position:-460px 0}
+.o2k7Skin span.mce_justifyright {background-position:-480px 0}
+.o2k7Skin span.mce_justifycenter {background-position:-420px 0}
+.o2k7Skin span.mce_justifyfull {background-position:-440px 0}
+.o2k7Skin span.mce_anchor {background-position:-200px 0}
+.o2k7Skin span.mce_indent {background-position:-400px 0}
+.o2k7Skin span.mce_outdent {background-position:-540px 0}
+.o2k7Skin span.mce_link {background-position:-500px 0}
+.o2k7Skin span.mce_unlink {background-position:-640px 0}
+.o2k7Skin span.mce_sub {background-position:-600px 0}
+.o2k7Skin span.mce_sup {background-position:-620px 0}
+.o2k7Skin span.mce_removeformat {background-position:-580px 0}
+.o2k7Skin span.mce_newdocument {background-position:-520px 0}
+.o2k7Skin span.mce_image {background-position:-380px 0}
+.o2k7Skin span.mce_help {background-position:-340px 0}
+.o2k7Skin span.mce_code {background-position:-260px 0}
+.o2k7Skin span.mce_hr {background-position:-360px 0}
+.o2k7Skin span.mce_visualaid {background-position:-660px 0}
+.o2k7Skin span.mce_charmap {background-position:-240px 0}
+.o2k7Skin span.mce_paste {background-position:-560px 0}
+.o2k7Skin span.mce_copy {background-position:-700px 0}
+.o2k7Skin span.mce_cut {background-position:-680px 0}
+.o2k7Skin span.mce_blockquote {background-position:-220px 0}
+.o2k7Skin .mce_forecolor span.mceAction {background-position:-720px 0}
+.o2k7Skin .mce_backcolor span.mceAction {background-position:-760px 0}
+.o2k7Skin span.mce_forecolorpicker {background-position:-720px 0}
+.o2k7Skin span.mce_backcolorpicker {background-position:-760px 0}
+
+/* Plugins */
+.o2k7Skin span.mce_advhr {background-position:-0px -20px}
+.o2k7Skin span.mce_ltr {background-position:-20px -20px}
+.o2k7Skin span.mce_rtl {background-position:-40px -20px}
+.o2k7Skin span.mce_emotions {background-position:-60px -20px}
+.o2k7Skin span.mce_fullpage {background-position:-80px -20px}
+.o2k7Skin span.mce_fullscreen {background-position:-100px -20px}
+.o2k7Skin span.mce_iespell {background-position:-120px -20px}
+.o2k7Skin span.mce_insertdate {background-position:-140px -20px}
+.o2k7Skin span.mce_inserttime {background-position:-160px -20px}
+.o2k7Skin span.mce_absolute {background-position:-180px -20px}
+.o2k7Skin span.mce_backward {background-position:-200px -20px}
+.o2k7Skin span.mce_forward {background-position:-220px -20px}
+.o2k7Skin span.mce_insert_layer {background-position:-240px -20px}
+.o2k7Skin span.mce_insertlayer {background-position:-260px -20px}
+.o2k7Skin span.mce_movebackward {background-position:-280px -20px}
+.o2k7Skin span.mce_moveforward {background-position:-300px -20px}
+.o2k7Skin span.mce_media {background-position:-320px -20px}
+.o2k7Skin span.mce_nonbreaking {background-position:-340px -20px}
+.o2k7Skin span.mce_pastetext {background-position:-360px -20px}
+.o2k7Skin span.mce_pasteword {background-position:-380px -20px}
+.o2k7Skin span.mce_selectall {background-position:-400px -20px}
+.o2k7Skin span.mce_preview {background-position:-420px -20px}
+.o2k7Skin span.mce_print {background-position:-440px -20px}
+.o2k7Skin span.mce_cancel {background-position:-460px -20px}
+.o2k7Skin span.mce_save {background-position:-480px -20px}
+.o2k7Skin span.mce_replace {background-position:-500px -20px}
+.o2k7Skin span.mce_search {background-position:-520px -20px}
+.o2k7Skin span.mce_styleprops {background-position:-560px -20px}
+.o2k7Skin span.mce_table {background-position:-580px -20px}
+.o2k7Skin span.mce_cell_props {background-position:-600px -20px}
+.o2k7Skin span.mce_delete_table {background-position:-620px -20px}
+.o2k7Skin span.mce_delete_col {background-position:-640px -20px}
+.o2k7Skin span.mce_delete_row {background-position:-660px -20px}
+.o2k7Skin span.mce_col_after {background-position:-680px -20px}
+.o2k7Skin span.mce_col_before {background-position:-700px -20px}
+.o2k7Skin span.mce_row_after {background-position:-720px -20px}
+.o2k7Skin span.mce_row_before {background-position:-740px -20px}
+.o2k7Skin span.mce_merge_cells {background-position:-760px -20px}
+.o2k7Skin span.mce_table_props {background-position:-980px -20px}
+.o2k7Skin span.mce_row_props {background-position:-780px -20px}
+.o2k7Skin span.mce_split_cells {background-position:-800px -20px}
+.o2k7Skin span.mce_template {background-position:-820px -20px}
+.o2k7Skin span.mce_visualchars {background-position:-840px -20px}
+.o2k7Skin span.mce_abbr {background-position:-860px -20px}
+.o2k7Skin span.mce_acronym {background-position:-880px -20px}
+.o2k7Skin span.mce_attribs {background-position:-900px -20px}
+.o2k7Skin span.mce_cite {background-position:-920px -20px}
+.o2k7Skin span.mce_del {background-position:-940px -20px}
+.o2k7Skin span.mce_ins {background-position:-960px -20px}
+.o2k7Skin span.mce_pagebreak {background-position:0 -40px}
+.o2k7Skin span.mce_restoredraft {background-position:-20px -40px}
+.o2k7Skin span.mce_spellchecker {background-position:-540px -20px}
+.o2k7Skin span.mce_visualblocks {background-position: -40px -40px}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/ui_black.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/ui_black.css
new file mode 100644 (file)
index 0000000..85812cd
--- /dev/null
@@ -0,0 +1,8 @@
+/* Black */
+.o2k7SkinBlack .mceToolbar .mceToolbarStart span, .o2k7SkinBlack .mceToolbar .mceToolbarEnd span, .o2k7SkinBlack .mceButton, .o2k7SkinBlack .mceSplitButton, .o2k7SkinBlack .mceSeparator, .o2k7SkinBlack .mceSplitButton a.mceOpen, .o2k7SkinBlack .mceListBox a.mceOpen {background-image:url(img/button_bg_black.png)}
+.o2k7SkinBlack td.mceToolbar, .o2k7SkinBlack td.mceStatusbar, .o2k7SkinBlack .mceMenuItemTitle a, .o2k7SkinBlack .mceMenuItemTitle span.mceText, .o2k7SkinBlack .mceStatusbar div, .o2k7SkinBlack .mceStatusbar span, .o2k7SkinBlack .mceStatusbar a {background:#535353; color:#FFF}
+.o2k7SkinBlack table.mceListBoxEnabled .mceText, o2k7SkinBlack .mceListBox .mceText {background:#FFF; border:1px solid #CBCFD4; border-bottom-color:#989FA9; border-right:0}
+.o2k7SkinBlack table.mceListBoxEnabled:hover .mceText, .o2k7SkinBlack .mceListBoxHover .mceText, .o2k7SkinBlack .mceListBoxSelected .mceText {background:#FFF; border:1px solid #FFBD69; border-right:0}
+.o2k7SkinBlack .mceExternalToolbar, .o2k7SkinBlack .mceListBox .mceText, .o2k7SkinBlack div.mceMenu, .o2k7SkinBlack table.mceLayout, .o2k7SkinBlack .mceMenuItemTitle a, .o2k7SkinBlack table.mceLayout tr.mceFirst td, .o2k7SkinBlack table.mceLayout, .o2k7SkinBlack .mceMenuItemTitle a, .o2k7SkinBlack table.mceLayout tr.mceLast td, .o2k7SkinBlack .mceIframeContainer {border-color: #535353;}
+.o2k7SkinBlack table.mceSplitButtonEnabled:hover a.mceAction, .o2k7SkinBlack .mceSplitButtonHover a.mceAction, .o2k7SkinBlack .mceSplitButtonSelected {background-image:url(img/button_bg_black.png)}
+.o2k7SkinBlack .mceMenu .mceMenuItemEnabled a:hover, .o2k7SkinBlack .mceMenu .mceMenuItemActive {background-color:#FFE7A1}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css
new file mode 100644 (file)
index 0000000..d64c361
--- /dev/null
@@ -0,0 +1,5 @@
+/* Silver */
+.o2k7SkinSilver .mceToolbar .mceToolbarStart span, .o2k7SkinSilver .mceButton, .o2k7SkinSilver .mceSplitButton, .o2k7SkinSilver .mceSeparator, .o2k7SkinSilver .mceSplitButton a.mceOpen, .o2k7SkinSilver .mceListBox a.mceOpen {background-image:url(img/button_bg_silver.png)}
+.o2k7SkinSilver td.mceToolbar, .o2k7SkinSilver td.mceStatusbar, .o2k7SkinSilver .mceMenuItemTitle a {background:#eee}
+.o2k7SkinSilver .mceListBox .mceText {background:#FFF}
+.o2k7SkinSilver .mceExternalToolbar, .o2k7SkinSilver .mceListBox .mceText, .o2k7SkinSilver div.mceMenu, .o2k7SkinSilver table.mceLayout, .o2k7SkinSilver .mceMenuItemTitle a, .o2k7SkinSilver table.mceLayout tr.mceFirst td, .o2k7SkinSilver table.mceLayout, .o2k7SkinSilver .mceMenuItemTitle a, .o2k7SkinSilver table.mceLayout tr.mceLast td, .o2k7SkinSilver .mceIframeContainer {border-color: #bbb}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/source_editor.htm b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/advanced/source_editor.htm
new file mode 100644 (file)
index 0000000..2861e05
--- /dev/null
@@ -0,0 +1,25 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+       <title>{#advanced_dlg.code_title}</title>
+       <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
+       <script type="text/javascript" src="js/source_editor.js"></script>
+</head>
+<body onresize="resizeInputs();" style="display:none; overflow:hidden;" spellcheck="false">
+       <form name="source" onsubmit="saveContent();return false;" action="#">
+               <div style="float: left" class="title"><label for="htmlSource">{#advanced_dlg.code_title}</label></div>
+
+               <div id="wrapline" style="float: right">
+                       <input type="checkbox" name="wraped" id="wraped" onclick="toggleWordWrap(this);" class="wordWrapCode" /><label for="wraped">{#advanced_dlg.code_wordwrap}</label>
+               </div>
+
+               <br style="clear: both" />
+
+               <textarea name="htmlSource" id="htmlSource" rows="15" cols="100" style="width: 100%; height: 100%; font-family: 'Courier New',Courier,monospace; font-size: 12px;" dir="ltr" wrap="off" class="mceFocus"></textarea>
+
+               <div class="mceActionPanel">
+                       <input type="submit" role="button" name="insert" value="{#update}" id="insert" />
+                       <input type="button" role="button" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" id="cancel" />
+               </div>
+       </form>
+</body>
+</html>
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/editor_template.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/editor_template.js
new file mode 100644 (file)
index 0000000..4b3209c
--- /dev/null
@@ -0,0 +1 @@
+(function(){var a=tinymce.DOM;tinymce.ThemeManager.requireLangPack("simple");tinymce.create("tinymce.themes.SimpleTheme",{init:function(c,d){var e=this,b=["Bold","Italic","Underline","Strikethrough","InsertUnorderedList","InsertOrderedList"],f=c.settings;e.editor=c;c.contentCSS.push(d+"/skins/"+f.skin+"/content.css");c.onInit.add(function(){c.onNodeChange.add(function(h,g){tinymce.each(b,function(i){g.get(i.toLowerCase()).setActive(h.queryCommandState(i))})})});a.loadCSS((f.editor_css?c.documentBaseURI.toAbsolute(f.editor_css):"")||d+"/skins/"+f.skin+"/ui.css")},renderUI:function(h){var e=this,i=h.targetNode,b,c,d=e.editor,f=d.controlManager,g;i=a.insertAfter(a.create("span",{id:d.id+"_container","class":"mceEditor "+d.settings.skin+"SimpleSkin"}),i);i=g=a.add(i,"table",{cellPadding:0,cellSpacing:0,"class":"mceLayout"});i=c=a.add(i,"tbody");i=a.add(c,"tr");i=b=a.add(a.add(i,"td"),"div",{"class":"mceIframeContainer"});i=a.add(a.add(c,"tr",{"class":"last"}),"td",{"class":"mceToolbar mceLast",align:"center"});c=e.toolbar=f.createToolbar("tools1");c.add(f.createButton("bold",{title:"simple.bold_desc",cmd:"Bold"}));c.add(f.createButton("italic",{title:"simple.italic_desc",cmd:"Italic"}));c.add(f.createButton("underline",{title:"simple.underline_desc",cmd:"Underline"}));c.add(f.createButton("strikethrough",{title:"simple.striketrough_desc",cmd:"Strikethrough"}));c.add(f.createSeparator());c.add(f.createButton("undo",{title:"simple.undo_desc",cmd:"Undo"}));c.add(f.createButton("redo",{title:"simple.redo_desc",cmd:"Redo"}));c.add(f.createSeparator());c.add(f.createButton("cleanup",{title:"simple.cleanup_desc",cmd:"mceCleanup"}));c.add(f.createSeparator());c.add(f.createButton("insertunorderedlist",{title:"simple.bullist_desc",cmd:"InsertUnorderedList"}));c.add(f.createButton("insertorderedlist",{title:"simple.numlist_desc",cmd:"InsertOrderedList"}));c.renderTo(i);return{iframeContainer:b,editorContainer:d.id+"_container",sizeContainer:g,deltaHeight:-20}},getInfo:function(){return{longname:"Simple theme",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.ThemeManager.add("simple",tinymce.themes.SimpleTheme)})();
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/img/icons.gif b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/img/icons.gif
new file mode 100644 (file)
index 0000000..6fcbcb5
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/img/icons.gif differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/langs/en.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/langs/en.js
new file mode 100644 (file)
index 0000000..088ed0f
--- /dev/null
@@ -0,0 +1 @@
+tinyMCE.addI18n('en.simple',{"cleanup_desc":"Cleanup Messy Code","redo_desc":"Redo (Ctrl+Y)","undo_desc":"Undo (Ctrl+Z)","numlist_desc":"Insert/Remove Numbered List","bullist_desc":"Insert/Remove Bulleted List","striketrough_desc":"Strikethrough","underline_desc":"Underline (Ctrl+U)","italic_desc":"Italic (Ctrl+I)","bold_desc":"Bold (Ctrl+B)"});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/default/content.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/default/content.css
new file mode 100644 (file)
index 0000000..1c9856a
--- /dev/null
@@ -0,0 +1,25 @@
+body, td, pre {
+       font-family: Verdana, Arial, Helvetica, sans-serif;
+       font-size: 10px;
+}
+
+body {
+       background-color: #FFFFFF;
+}
+
+.mceVisualAid {
+       border: 1px dashed #BBBBBB;
+}
+
+/* MSIE specific */
+
+* html body {
+       scrollbar-3dlight-color: #F0F0EE;
+       scrollbar-arrow-color: #676662;
+       scrollbar-base-color: #F0F0EE;
+       scrollbar-darkshadow-color: #DDDDDD;
+       scrollbar-face-color: #E0E0DD;
+       scrollbar-highlight-color: #F0F0EE;
+       scrollbar-shadow-color: #F0F0EE;
+       scrollbar-track-color: #F5F5F5;
+}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/default/ui.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/default/ui.css
new file mode 100644 (file)
index 0000000..32feae6
--- /dev/null
@@ -0,0 +1,32 @@
+/* Reset */
+.defaultSimpleSkin table, .defaultSimpleSkin tbody, .defaultSimpleSkin a, .defaultSimpleSkin img, .defaultSimpleSkin tr, .defaultSimpleSkin div, .defaultSimpleSkin td, .defaultSimpleSkin iframe, .defaultSimpleSkin span, .defaultSimpleSkin * {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000}
+
+/* Containers */
+.defaultSimpleSkin {position:relative}
+.defaultSimpleSkin table.mceLayout {background:#F0F0EE; border:1px solid #CCC;}
+.defaultSimpleSkin iframe {display:block; background:#FFF; border-bottom:1px solid #CCC;}
+.defaultSimpleSkin .mceToolbar {height:24px;}
+
+/* Layout */
+.defaultSimpleSkin span.mceIcon, .defaultSimpleSkin img.mceIcon {display:block; width:20px; height:20px}
+.defaultSimpleSkin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px}
+
+/* Button */
+.defaultSimpleSkin .mceButton {display:block; border:1px solid #F0F0EE; width:20px; height:20px}
+.defaultSimpleSkin a.mceButtonEnabled:hover {border:1px solid #0A246A; background-color:#B2BBD0}
+.defaultSimpleSkin a.mceButtonActive {border:1px solid #0A246A; background-color:#C2CBE0}
+.defaultSimpleSkin .mceButtonDisabled span {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
+
+/* Separator */
+.defaultSimpleSkin .mceSeparator {display:block; background:url(../../img/icons.gif) -180px 0; width:2px; height:20px; margin:0 2px 0 4px}
+
+/* Theme */
+.defaultSimpleSkin span.mce_bold {background-position:0 0}
+.defaultSimpleSkin span.mce_italic {background-position:-60px 0}
+.defaultSimpleSkin span.mce_underline {background-position:-140px 0}
+.defaultSimpleSkin span.mce_strikethrough {background-position:-120px 0}
+.defaultSimpleSkin span.mce_undo {background-position:-160px 0}
+.defaultSimpleSkin span.mce_redo {background-position:-100px 0}
+.defaultSimpleSkin span.mce_cleanup {background-position:-40px 0}
+.defaultSimpleSkin span.mce_insertunorderedlist {background-position:-20px 0}
+.defaultSimpleSkin span.mce_insertorderedlist {background-position:-80px 0}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/o2k7/content.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/o2k7/content.css
new file mode 100644 (file)
index 0000000..93551e3
--- /dev/null
@@ -0,0 +1,17 @@
+body, td, pre {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}
+
+body {background: #FFF;}
+.mceVisualAid {border: 1px dashed #BBB;}
+
+/* IE */
+
+* html body {
+scrollbar-3dlight-color: #F0F0EE;
+scrollbar-arrow-color: #676662;
+scrollbar-base-color: #F0F0EE;
+scrollbar-darkshadow-color: #DDDDDD;
+scrollbar-face-color: #E0E0DD;
+scrollbar-highlight-color: #F0F0EE;
+scrollbar-shadow-color: #F0F0EE;
+scrollbar-track-color: #F5F5F5;
+}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png
new file mode 100644 (file)
index 0000000..527e349
Binary files /dev/null and b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png differ
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/o2k7/ui.css b/koha-tmpl/intranet-tmpl/lib/tiny_mce/themes/simple/skins/o2k7/ui.css
new file mode 100644 (file)
index 0000000..021d650
--- /dev/null
@@ -0,0 +1,35 @@
+/* Reset */
+.o2k7SimpleSkin table, .o2k7SimpleSkin tbody, .o2k7SimpleSkin a, .o2k7SimpleSkin img, .o2k7SimpleSkin tr, .o2k7SimpleSkin div, .o2k7SimpleSkin td, .o2k7SimpleSkin iframe, .o2k7SimpleSkin span, .o2k7SimpleSkin * {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000}
+
+/* Containers */
+.o2k7SimpleSkin {position:relative}
+.o2k7SimpleSkin table.mceLayout {background:#E5EFFD; border:1px solid #ABC6DD;}
+.o2k7SimpleSkin iframe {display:block; background:#FFF; border-bottom:1px solid #ABC6DD;}
+.o2k7SimpleSkin .mceToolbar {height:26px;}
+
+/* Layout */
+.o2k7SimpleSkin .mceToolbar .mceToolbarStart span {display:block; background:url(img/button_bg.png) -22px 0; width:1px; height:22px; }
+.o2k7SimpleSkin .mceToolbar .mceToolbarEnd span {display:block; background:url(img/button_bg.png) -22px 0; width:1px; height:22px}
+.o2k7SimpleSkin span.mceIcon, .o2k7SimpleSkin img.mceIcon {display:block; width:20px; height:20px}
+.o2k7SimpleSkin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px}
+
+/* Button */
+.o2k7SimpleSkin .mceButton {display:block; background:url(img/button_bg.png); width:22px; height:22px}
+.o2k7SimpleSkin a.mceButton span, .o2k7SimpleSkin a.mceButton img {margin:1px 0 0 1px}
+.o2k7SimpleSkin a.mceButtonEnabled:hover {background-color:#B2BBD0; background-position:0 -22px}
+.o2k7SimpleSkin a.mceButtonActive {background-position:0 -44px}
+.o2k7SimpleSkin .mceButtonDisabled span {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
+
+/* Separator */
+.o2k7SimpleSkin .mceSeparator {display:block; background:url(img/button_bg.png) -22px 0; width:5px; height:22px}
+
+/* Theme */
+.o2k7SimpleSkin span.mce_bold {background-position:0 0}
+.o2k7SimpleSkin span.mce_italic {background-position:-60px 0}
+.o2k7SimpleSkin span.mce_underline {background-position:-140px 0}
+.o2k7SimpleSkin span.mce_strikethrough {background-position:-120px 0}
+.o2k7SimpleSkin span.mce_undo {background-position:-160px 0}
+.o2k7SimpleSkin span.mce_redo {background-position:-100px 0}
+.o2k7SimpleSkin span.mce_cleanup {background-position:-40px 0}
+.o2k7SimpleSkin span.mce_insertunorderedlist {background-position:-20px 0}
+.o2k7SimpleSkin span.mce_insertorderedlist {background-position:-80px 0}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce.js
new file mode 100644 (file)
index 0000000..44d9fd9
--- /dev/null
@@ -0,0 +1 @@
+(function(e){var a=/^\s*|\s*$/g,b,d="B".replace(/A(.)|B/,"$1")==="$1";var c={majorVersion:"3",minorVersion:"5.8",releaseDate:"2012-11-20",_init:function(){var s=this,q=document,o=navigator,g=o.userAgent,m,f,l,k,j,r;s.isOpera=e.opera&&opera.buildNumber;s.isWebKit=/WebKit/.test(g);s.isIE=!s.isWebKit&&!s.isOpera&&(/MSIE/gi).test(g)&&(/Explorer/gi).test(o.appName);s.isIE6=s.isIE&&/MSIE [56]/.test(g);s.isIE7=s.isIE&&/MSIE [7]/.test(g);s.isIE8=s.isIE&&/MSIE [8]/.test(g);s.isIE9=s.isIE&&/MSIE [9]/.test(g);s.isGecko=!s.isWebKit&&/Gecko/.test(g);s.isMac=g.indexOf("Mac")!=-1;s.isAir=/adobeair/i.test(g);s.isIDevice=/(iPad|iPhone)/.test(g);s.isIOS5=s.isIDevice&&g.match(/AppleWebKit\/(\d*)/)[1]>=534;if(e.tinyMCEPreInit){s.suffix=tinyMCEPreInit.suffix;s.baseURL=tinyMCEPreInit.base;s.query=tinyMCEPreInit.query;return}s.suffix="";f=q.getElementsByTagName("base");for(m=0;m<f.length;m++){r=f[m].href;if(r){if(/^https?:\/\/[^\/]+$/.test(r)){r+="/"}k=r?r.match(/.*\//)[0]:""}}function h(i){if(i.src&&/tiny_mce(|_gzip|_jquery|_prototype|_full)(_dev|_src)?.js/.test(i.src)){if(/_(src|dev)\.js/g.test(i.src)){s.suffix="_src"}if((j=i.src.indexOf("?"))!=-1){s.query=i.src.substring(j+1)}s.baseURL=i.src.substring(0,i.src.lastIndexOf("/"));if(k&&s.baseURL.indexOf("://")==-1&&s.baseURL.indexOf("/")!==0){s.baseURL=k+s.baseURL}return s.baseURL}return null}f=q.getElementsByTagName("script");for(m=0;m<f.length;m++){if(h(f[m])){return}}l=q.getElementsByTagName("head")[0];if(l){f=l.getElementsByTagName("script");for(m=0;m<f.length;m++){if(h(f[m])){return}}}return},is:function(g,f){if(!f){return g!==b}if(f=="array"&&c.isArray(g)){return true}return typeof(g)==f},isArray:Array.isArray||function(f){return Object.prototype.toString.call(f)==="[object Array]"},makeMap:function(f,j,h){var g;f=f||[];j=j||",";if(typeof(f)=="string"){f=f.split(j)}h=h||{};g=f.length;while(g--){h[f[g]]={}}return h},each:function(i,f,h){var j,g;if(!i){return 0}h=h||i;if(i.length!==b){for(j=0,g=i.length;j<g;j++){if(f.call(h,i[j],j,i)===false){return 0}}}else{for(j in i){if(i.hasOwnProperty(j)){if(f.call(h,i[j],j,i)===false){return 0}}}}return 1},map:function(g,h){var i=[];c.each(g,function(f){i.push(h(f))});return i},grep:function(g,h){var i=[];c.each(g,function(f){if(!h||h(f)){i.push(f)}});return i},inArray:function(g,h){var j,f;if(g){for(j=0,f=g.length;j<f;j++){if(g[j]===h){return j}}}return -1},extend:function(n,k){var j,f,h,g=arguments,m;for(j=1,f=g.length;j<f;j++){k=g[j];for(h in k){if(k.hasOwnProperty(h)){m=k[h];if(m!==b){n[h]=m}}}}return n},trim:function(f){return(f?""+f:"").replace(a,"")},create:function(o,f,j){var n=this,g,i,k,l,h,m=0;o=/^((static) )?([\w.]+)(:([\w.]+))?/.exec(o);k=o[3].match(/(^|\.)(\w+)$/i)[2];i=n.createNS(o[3].replace(/\.\w+$/,""),j);if(i[k]){return}if(o[2]=="static"){i[k]=f;if(this.onCreate){this.onCreate(o[2],o[3],i[k])}return}if(!f[k]){f[k]=function(){};m=1}i[k]=f[k];n.extend(i[k].prototype,f);if(o[5]){g=n.resolve(o[5]).prototype;l=o[5].match(/\.(\w+)$/i)[1];h=i[k];if(m){i[k]=function(){return g[l].apply(this,arguments)}}else{i[k]=function(){this.parent=g[l];return h.apply(this,arguments)}}i[k].prototype[k]=i[k];n.each(g,function(p,q){i[k].prototype[q]=g[q]});n.each(f,function(p,q){if(g[q]){i[k].prototype[q]=function(){this.parent=g[q];return p.apply(this,arguments)}}else{if(q!=k){i[k].prototype[q]=p}}})}n.each(f["static"],function(p,q){i[k][q]=p});if(this.onCreate){this.onCreate(o[2],o[3],i[k].prototype)}},walk:function(i,h,j,g){g=g||this;if(i){if(j){i=i[j]}c.each(i,function(k,f){if(h.call(g,k,f,j)===false){return false}c.walk(k,h,j,g)})}},createNS:function(j,h){var g,f;h=h||e;j=j.split(".");for(g=0;g<j.length;g++){f=j[g];if(!h[f]){h[f]={}}h=h[f]}return h},resolve:function(j,h){var g,f;h=h||e;j=j.split(".");for(g=0,f=j.length;g<f;g++){h=h[j[g]];if(!h){break}}return h},addUnload:function(j,i){var h=this,g;g=function(){var f=h.unloads,l,m;if(f){for(m in f){l=f[m];if(l&&l.func){l.func.call(l.scope,1)}}if(e.detachEvent){e.detachEvent("onbeforeunload",k);e.detachEvent("onunload",g)}else{if(e.removeEventListener){e.removeEventListener("unload",g,false)}}h.unloads=l=f=w=g=0;if(e.CollectGarbage){CollectGarbage()}}};function k(){var l=document;function f(){l.detachEvent("onstop",f);if(g){g()}l=0}if(l.readyState=="interactive"){if(l){l.attachEvent("onstop",f)}e.setTimeout(function(){if(l){l.detachEvent("onstop",f)}},0)}}j={func:j,scope:i||this};if(!h.unloads){if(e.attachEvent){e.attachEvent("onunload",g);e.attachEvent("onbeforeunload",k)}else{if(e.addEventListener){e.addEventListener("unload",g,false)}}h.unloads=[j]}else{h.unloads.push(j)}return j},removeUnload:function(i){var g=this.unloads,h=null;c.each(g,function(j,f){if(j&&j.func==i){g.splice(f,1);h=i;return false}});return h},explode:function(f,g){if(!f||c.is(f,"array")){return f}return c.map(f.split(g||","),c.trim)},_addVer:function(g){var f;if(!this.query){return g}f=(g.indexOf("?")==-1?"?":"&")+this.query;if(g.indexOf("#")==-1){return g+f}return g.replace("#",f+"#")},_replace:function(h,f,g){if(d){return g.replace(h,function(){var l=f,j=arguments,k;for(k=0;k<j.length-2;k++){if(j[k]===b){l=l.replace(new RegExp("\\$"+k,"g"),"")}else{l=l.replace(new RegExp("\\$"+k,"g"),j[k])}}return l})}return g.replace(h,f)}};c._init();e.tinymce=e.tinyMCE=c})(window);tinymce.create("tinymce.util.Dispatcher",{scope:null,listeners:null,inDispatch:false,Dispatcher:function(a){this.scope=a||this;this.listeners=[]},add:function(b,a){this.listeners.push({cb:b,scope:a||this.scope});return b},addToTop:function(d,b){var a=this,c={cb:d,scope:b||a.scope};if(a.inDispatch){a.listeners=[c].concat(a.listeners)}else{a.listeners.unshift(c)}return d},remove:function(c){var b=this.listeners,a=null;tinymce.each(b,function(e,d){if(c==e.cb){a=e;b.splice(d,1);return false}});return a},dispatch:function(){var a=this,e,b=arguments,c,d=a.listeners,f;a.inDispatch=true;for(c=0;c<d.length;c++){f=d[c];e=f.cb.apply(f.scope,b.length>0?b:[f.scope]);if(e===false){break}}a.inDispatch=false;return e}});(function(){var a=tinymce.each;tinymce.create("tinymce.util.URI",{URI:function(e,g){var f=this,i,d,c,h;e=tinymce.trim(e);g=f.settings=g||{};if(/^([\w\-]+):([^\/]{2})/i.test(e)||/^\s*#/.test(e)){f.source=e;return}if(e.indexOf("/")===0&&e.indexOf("//")!==0){e=(g.base_uri?g.base_uri.protocol||"http":"http")+"://mce_host"+e}if(!/^[\w\-]*:?\/\//.test(e)){h=g.base_uri?g.base_uri.path:new tinymce.util.URI(location.href).directory;e=((g.base_uri&&g.base_uri.protocol)||"http")+"://mce_host"+f.toAbsPath(h,e)}e=e.replace(/@@/g,"(mce_at)");e=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*):?([^:@\/]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(e);a(["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],function(b,j){var k=e[j];if(k){k=k.replace(/\(mce_at\)/g,"@@")}f[b]=k});c=g.base_uri;if(c){if(!f.protocol){f.protocol=c.protocol}if(!f.userInfo){f.userInfo=c.userInfo}if(!f.port&&f.host==="mce_host"){f.port=c.port}if(!f.host||f.host==="mce_host"){f.host=c.host}f.source=""}},setPath:function(c){var b=this;c=/^(.*?)\/?(\w+)?$/.exec(c);b.path=c[0];b.directory=c[1];b.file=c[2];b.source="";b.getURI()},toRelative:function(b){var d=this,f;if(b==="./"){return b}b=new tinymce.util.URI(b,{base_uri:d});if((b.host!="mce_host"&&d.host!=b.host&&b.host)||d.port!=b.port||d.protocol!=b.protocol){return b.getURI()}var c=d.getURI(),e=b.getURI();if(c==e||(c.charAt(c.length-1)=="/"&&c.substr(0,c.length-1)==e)){return c}f=d.toRelPath(d.path,b.path);if(b.query){f+="?"+b.query}if(b.anchor){f+="#"+b.anchor}return f},toAbsolute:function(b,c){b=new tinymce.util.URI(b,{base_uri:this});return b.getURI(this.host==b.host&&this.protocol==b.protocol?c:0)},toRelPath:function(g,h){var c,f=0,d="",e,b;g=g.substring(0,g.lastIndexOf("/"));g=g.split("/");c=h.split("/");if(g.length>=c.length){for(e=0,b=g.length;e<b;e++){if(e>=c.length||g[e]!=c[e]){f=e+1;break}}}if(g.length<c.length){for(e=0,b=c.length;e<b;e++){if(e>=g.length||g[e]!=c[e]){f=e+1;break}}}if(f===1){return h}for(e=0,b=g.length-(f-1);e<b;e++){d+="../"}for(e=f-1,b=c.length;e<b;e++){if(e!=f-1){d+="/"+c[e]}else{d+=c[e]}}return d},toAbsPath:function(e,f){var c,b=0,h=[],d,g;d=/\/$/.test(f)?"/":"";e=e.split("/");f=f.split("/");a(e,function(i){if(i){h.push(i)}});e=h;for(c=f.length-1,h=[];c>=0;c--){if(f[c].length===0||f[c]==="."){continue}if(f[c]===".."){b++;continue}if(b>0){b--;continue}h.push(f[c])}c=e.length-b;if(c<=0){g=h.reverse().join("/")}else{g=e.slice(0,c).join("/")+"/"+h.reverse().join("/")}if(g.indexOf("/")!==0){g="/"+g}if(d&&g.lastIndexOf("/")!==g.length-1){g+=d}return g},getURI:function(d){var c,b=this;if(!b.source||d){c="";if(!d){if(b.protocol){c+=b.protocol+"://"}if(b.userInfo){c+=b.userInfo+"@"}if(b.host){c+=b.host}if(b.port){c+=":"+b.port}}if(b.path){c+=b.path}if(b.query){c+="?"+b.query}if(b.anchor){c+="#"+b.anchor}b.source=c}return b.source}})})();(function(){var a=tinymce.each;tinymce.create("static tinymce.util.Cookie",{getHash:function(d){var b=this.get(d),c;if(b){a(b.split("&"),function(e){e=e.split("=");c=c||{};c[unescape(e[0])]=unescape(e[1])})}return c},setHash:function(j,b,g,f,i,c){var h="";a(b,function(e,d){h+=(!h?"":"&")+escape(d)+"="+escape(e)});this.set(j,h,g,f,i,c)},get:function(i){var h=document.cookie,g,f=i+"=",d;if(!h){return}d=h.indexOf("; "+f);if(d==-1){d=h.indexOf(f);if(d!==0){return null}}else{d+=2}g=h.indexOf(";",d);if(g==-1){g=h.length}return unescape(h.substring(d+f.length,g))},set:function(i,b,g,f,h,c){document.cookie=i+"="+escape(b)+((g)?"; expires="+g.toGMTString():"")+((f)?"; path="+escape(f):"")+((h)?"; domain="+h:"")+((c)?"; secure":"")},remove:function(c,e,d){var b=new Date();b.setTime(b.getTime()-1000);this.set(c,"",b,e,d)}})})();(function(){function serialize(o,quote){var i,v,t,name;quote=quote||'"';if(o==null){return"null"}t=typeof o;if(t=="string"){v="\bb\tt\nn\ff\rr\"\"''\\\\";return quote+o.replace(/([\u0080-\uFFFF\x00-\x1f\"\'\\])/g,function(a,b){if(quote==='"'&&a==="'"){return a}i=v.indexOf(b);if(i+1){return"\\"+v.charAt(i+1)}a=b.charCodeAt().toString(16);return"\\u"+"0000".substring(a.length)+a})+quote}if(t=="object"){if(o.hasOwnProperty&&Object.prototype.toString.call(o)==="[object Array]"){for(i=0,v="[";i<o.length;i++){v+=(i>0?",":"")+serialize(o[i],quote)}return v+"]"}v="{";for(name in o){if(o.hasOwnProperty(name)){v+=typeof o[name]!="function"?(v.length>1?","+quote:quote)+name+quote+":"+serialize(o[name],quote):""}}return v+"}"}return""+o}tinymce.util.JSON={serialize:serialize,parse:function(s){try{return eval("("+s+")")}catch(ex){}}}})();tinymce.create("static tinymce.util.XHR",{send:function(g){var a,e,b=window,h=0;function f(){if(!g.async||a.readyState==4||h++>10000){if(g.success&&h<10000&&a.status==200){g.success.call(g.success_scope,""+a.responseText,a,g)}else{if(g.error){g.error.call(g.error_scope,h>10000?"TIMED_OUT":"GENERAL",a,g)}}a=null}else{b.setTimeout(f,10)}}g.scope=g.scope||this;g.success_scope=g.success_scope||g.scope;g.error_scope=g.error_scope||g.scope;g.async=g.async===false?false:true;g.data=g.data||"";function d(i){a=0;try{a=new ActiveXObject(i)}catch(c){}return a}a=b.XMLHttpRequest?new XMLHttpRequest():d("Microsoft.XMLHTTP")||d("Msxml2.XMLHTTP");if(a){if(a.overrideMimeType){a.overrideMimeType(g.content_type)}a.open(g.type||(g.data?"POST":"GET"),g.url,g.async);if(g.content_type){a.setRequestHeader("Content-Type",g.content_type)}a.setRequestHeader("X-Requested-With","XMLHttpRequest");a.send(g.data);if(!g.async){return f()}e=b.setTimeout(f,10)}}});(function(){var c=tinymce.extend,b=tinymce.util.JSON,a=tinymce.util.XHR;tinymce.create("tinymce.util.JSONRequest",{JSONRequest:function(d){this.settings=c({},d);this.count=0},send:function(f){var e=f.error,d=f.success;f=c(this.settings,f);f.success=function(h,g){h=b.parse(h);if(typeof(h)=="undefined"){h={error:"JSON Parse error."}}if(h.error){e.call(f.error_scope||f.scope,h.error,g)}else{d.call(f.success_scope||f.scope,h.result)}};f.error=function(h,g){if(e){e.call(f.error_scope||f.scope,h,g)}};f.data=b.serialize({id:f.id||"c"+(this.count++),method:f.method,params:f.params});f.content_type="application/json";a.send(f)},"static":{sendRPC:function(d){return new tinymce.util.JSONRequest().send(d)}}})}());(function(a){a.VK={BACKSPACE:8,DELETE:46,DOWN:40,ENTER:13,LEFT:37,RIGHT:39,SPACEBAR:32,TAB:9,UP:38,modifierPressed:function(b){return b.shiftKey||b.ctrlKey||b.altKey},metaKeyPressed:function(b){return a.isMac?b.metaKey:b.ctrlKey&&!b.altKey}}})(tinymce);tinymce.util.Quirks=function(a){var j=tinymce.VK,f=j.BACKSPACE,k=j.DELETE,e=a.dom,l=a.selection,H=a.settings,v=a.parser,o=a.serializer,E=tinymce.each;function A(N,M){try{a.getDoc().execCommand(N,false,M)}catch(L){}}function n(){var L=a.getDoc().documentMode;return L?L:6}function z(L){return L.isDefaultPrevented()}function J(){function L(O){var M,Q,N,P;M=l.getRng();Q=e.getParent(M.startContainer,e.isBlock);if(O){Q=e.getNext(Q,e.isBlock)}if(Q){N=Q.firstChild;while(N&&N.nodeType==3&&N.nodeValue.length===0){N=N.nextSibling}if(N&&N.nodeName==="SPAN"){P=N.cloneNode(false)}}E(e.select("span",Q),function(R){R.setAttribute("data-mce-mark","1")});a.getDoc().execCommand(O?"ForwardDelete":"Delete",false,null);Q=e.getParent(M.startContainer,e.isBlock);E(e.select("span",Q),function(R){var S=l.getBookmark();if(P){e.replace(P.cloneNode(false),R,true)}else{if(!R.getAttribute("data-mce-mark")){e.remove(R,true)}else{R.removeAttribute("data-mce-mark")}}l.moveToBookmark(S)})}a.onKeyDown.add(function(M,O){var N;N=O.keyCode==k;if(!z(O)&&(N||O.keyCode==f)&&!j.modifierPressed(O)){O.preventDefault();L(N)}});a.addCommand("Delete",function(){L()})}function q(){function L(O){var N=e.create("body");var P=O.cloneContents();N.appendChild(P);return l.serializer.serialize(N,{format:"html"})}function M(N){var P=L(N);var Q=e.createRng();Q.selectNode(a.getBody());var O=L(Q);return P===O}a.onKeyDown.add(function(O,Q){var P=Q.keyCode,N;if(!z(Q)&&(P==k||P==f)){N=O.selection.isCollapsed();if(N&&!e.isEmpty(O.getBody())){return}if(tinymce.isIE&&!N){return}if(!N&&!M(O.selection.getRng())){return}O.setContent("");O.selection.setCursorLocation(O.getBody(),0);O.nodeChanged()}})}function I(){a.onKeyDown.add(function(L,M){if(!z(M)&&M.keyCode==65&&j.metaKeyPressed(M)){M.preventDefault();L.execCommand("SelectAll")}})}function K(){if(!a.settings.content_editable){e.bind(a.getDoc(),"focusin",function(L){l.setRng(l.getRng())});e.bind(a.getDoc(),"mousedown",function(L){if(L.target==a.getDoc().documentElement){a.getWin().focus();l.setRng(l.getRng())}})}}function B(){a.onKeyDown.add(function(L,O){if(!z(O)&&O.keyCode===f){if(l.isCollapsed()&&l.getRng(true).startOffset===0){var N=l.getNode();var M=N.previousSibling;if(M&&M.nodeName&&M.nodeName.toLowerCase()==="hr"){e.remove(M);tinymce.dom.Event.cancel(O)}}}})}function y(){if(!Range.prototype.getClientRects){a.onMouseDown.add(function(M,N){if(!z(N)&&N.target.nodeName==="HTML"){var L=M.getBody();L.blur();setTimeout(function(){L.focus()},0)}})}}function h(){a.onClick.add(function(L,M){M=M.target;if(/^(IMG|HR)$/.test(M.nodeName)){l.getSel().setBaseAndExtent(M,0,M,1)}if(M.nodeName=="A"&&e.hasClass(M,"mceItemAnchor")){l.select(M)}L.nodeChanged()})}function c(){function M(){var O=e.getAttribs(l.getStart().cloneNode(false));return function(){var P=l.getStart();if(P!==a.getBody()){e.setAttrib(P,"style",null);E(O,function(Q){P.setAttributeNode(Q.cloneNode(true))})}}}function L(){return !l.isCollapsed()&&e.getParent(l.getStart(),e.isBlock)!=e.getParent(l.getEnd(),e.isBlock)}function N(O,P){P.preventDefault();return false}a.onKeyPress.add(function(O,Q){var P;if(!z(Q)&&(Q.keyCode==8||Q.keyCode==46)&&L()){P=M();O.getDoc().execCommand("delete",false,null);P();Q.preventDefault();return false}});e.bind(a.getDoc(),"cut",function(P){var O;if(!z(P)&&L()){O=M();a.onKeyUp.addToTop(N);setTimeout(function(){O();a.onKeyUp.remove(N)},0)}})}function b(){var M,L;e.bind(a.getDoc(),"selectionchange",function(){if(L){clearTimeout(L);L=0}L=window.setTimeout(function(){var N=l.getRng();if(!M||!tinymce.dom.RangeUtils.compareRanges(N,M)){a.nodeChanged();M=N}},50)})}function x(){document.body.setAttribute("role","application")}function t(){a.onKeyDown.add(function(L,N){if(!z(N)&&N.keyCode===f){if(l.isCollapsed()&&l.getRng(true).startOffset===0){var M=l.getNode().previousSibling;if(M&&M.nodeName&&M.nodeName.toLowerCase()==="table"){return tinymce.dom.Event.cancel(N)}}}})}function C(){if(n()>7){return}A("RespectVisibilityInDesign",true);a.contentStyles.push(".mceHideBrInPre pre br {display: none}");e.addClass(a.getBody(),"mceHideBrInPre");v.addNodeFilter("pre",function(L,N){var O=L.length,Q,M,R,P;while(O--){Q=L[O].getAll("br");M=Q.length;while(M--){R=Q[M];P=R.prev;if(P&&P.type===3&&P.value.charAt(P.value-1)!="\n"){P.value+="\n"}else{R.parent.insert(new tinymce.html.Node("#text",3),R,true).value="\n"}}}});o.addNodeFilter("pre",function(L,N){var O=L.length,Q,M,R,P;while(O--){Q=L[O].getAll("br");M=Q.length;while(M--){R=Q[M];P=R.prev;if(P&&P.type==3){P.value=P.value.replace(/\r?\n$/,"")}}}})}function g(){e.bind(a.getBody(),"mouseup",function(N){var M,L=l.getNode();if(L.nodeName=="IMG"){if(M=e.getStyle(L,"width")){e.setAttrib(L,"width",M.replace(/[^0-9%]+/g,""));e.setStyle(L,"width","")}if(M=e.getStyle(L,"height")){e.setAttrib(L,"height",M.replace(/[^0-9%]+/g,""));e.setStyle(L,"height","")}}})}function d(){a.onKeyDown.add(function(R,S){var Q,L,M,O,P,T,N;Q=S.keyCode==k;if(!z(S)&&(Q||S.keyCode==f)&&!j.modifierPressed(S)){L=l.getRng();M=L.startContainer;O=L.startOffset;N=L.collapsed;if(M.nodeType==3&&M.nodeValue.length>0&&((O===0&&!N)||(N&&O===(Q?0:1)))){nonEmptyElements=R.schema.getNonEmptyElements();S.preventDefault();P=e.create("br",{id:"__tmp"});M.parentNode.insertBefore(P,M);R.getDoc().execCommand(Q?"ForwardDelete":"Delete",false,null);M=l.getRng().startContainer;T=M.previousSibling;if(T&&T.nodeType==1&&!e.isBlock(T)&&e.isEmpty(T)&&!nonEmptyElements[T.nodeName.toLowerCase()]){e.remove(T)}e.remove("__tmp")}}})}function G(){a.onKeyDown.add(function(P,Q){var N,M,R,L,O;if(z(Q)||Q.keyCode!=j.BACKSPACE){return}N=l.getRng();M=N.startContainer;R=N.startOffset;L=e.getRoot();O=M;if(!N.collapsed||R!==0){return}while(O&&O.parentNode&&O.parentNode.firstChild==O&&O.parentNode!=L){O=O.parentNode}if(O.tagName==="BLOCKQUOTE"){P.formatter.toggle("blockquote",null,O);N=e.createRng();N.setStart(M,0);N.setEnd(M,0);l.setRng(N)}})}function F(){function L(){a._refreshContentEditable();A("StyleWithCSS",false);A("enableInlineTableEditing",false);if(!H.object_resizing){A("enableObjectResizing",false)}}if(!H.readonly){a.onBeforeExecCommand.add(L);a.onMouseDown.add(L)}}function s(){function L(M,N){E(e.select("a"),function(Q){var O=Q.parentNode,P=e.getRoot();if(O.lastChild===Q){while(O&&!e.isBlock(O)){if(O.parentNode.lastChild!==O||O===P){return}O=O.parentNode}e.add(O,"br",{"data-mce-bogus":1})}})}a.onExecCommand.add(function(M,N){if(N==="CreateLink"){L(M)}});a.onSetContent.add(l.onSetContent.add(L))}function m(){if(H.forced_root_block){a.onInit.add(function(){A("DefaultParagraphSeparator",H.forced_root_block)})}}function p(){function L(N,M){if(!N||!M.initial){a.execCommand("mceRepaint")}}a.onUndo.add(L);a.onRedo.add(L);a.onSetContent.add(L)}function i(){a.onKeyDown.add(function(M,N){var L;if(!z(N)&&N.keyCode==f){L=M.getDoc().selection.createRange();if(L&&L.item){N.preventDefault();M.undoManager.beforeChange();e.remove(L.item(0));M.undoManager.add()}}})}function r(){var L;if(n()>=10){L="";E("p div h1 h2 h3 h4 h5 h6".split(" "),function(M,N){L+=(N>0?",":"")+M+":empty"});a.contentStyles.push(L+"{padding-right: 1px !important}")}}function u(){var N,M,ad,L,Y,ab,Z,ac,O,P,aa,W,V,X=document,T=a.getDoc();if(!H.object_resizing||H.webkit_fake_resize===false){return}A("enableObjectResizing",false);aa={n:[0.5,0,0,-1],e:[1,0.5,1,0],s:[0.5,1,0,1],w:[0,0.5,-1,0],nw:[0,0,-1,-1],ne:[1,0,1,-1],se:[1,1,1,1],sw:[0,1,-1,1]};function R(ah){var ag,af;ag=ah.screenX-ab;af=ah.screenY-Z;W=ag*Y[2]+ac;V=af*Y[3]+O;W=W<5?5:W;V=V<5?5:V;if(j.modifierPressed(ah)||(ad.nodeName=="IMG"&&Y[2]*Y[3]!==0)){W=Math.round(V/P);V=Math.round(W*P)}e.setStyles(L,{width:W,height:V});if(Y[2]<0&&L.clientWidth<=W){e.setStyle(L,"left",N+(ac-W))}if(Y[3]<0&&L.clientHeight<=V){e.setStyle(L,"top",M+(O-V))}}function ae(){function af(ag,ah){if(ah){if(ad.style[ag]||!a.schema.isValid(ad.nodeName.toLowerCase(),ag)){e.setStyle(ad,ag,ah)}else{e.setAttrib(ad,ag,ah)}}}af("width",W);af("height",V);e.unbind(T,"mousemove",R);e.unbind(T,"mouseup",ae);if(X!=T){e.unbind(X,"mousemove",R);e.unbind(X,"mouseup",ae)}e.remove(L);Q(ad)}function Q(ai){var ag,ah,af;S();ag=e.getPos(ai);N=ag.x;M=ag.y;ah=ai.offsetWidth;af=ai.offsetHeight;if(ad!=ai){ad=ai;W=V=0}E(aa,function(al,aj){var ak;ak=e.get("mceResizeHandle"+aj);if(!ak){ak=e.add(T.documentElement,"div",{id:"mceResizeHandle"+aj,"class":"mceResizeHandle",style:"cursor:"+aj+"-resize; margin:0; padding:0"});e.bind(ak,"mousedown",function(am){am.preventDefault();ae();ab=am.screenX;Z=am.screenY;ac=ad.clientWidth;O=ad.clientHeight;P=O/ac;Y=al;L=ad.cloneNode(true);e.addClass(L,"mceClonedResizable");e.setStyles(L,{left:N,top:M,margin:0});T.documentElement.appendChild(L);e.bind(T,"mousemove",R);e.bind(T,"mouseup",ae);if(X!=T){e.bind(X,"mousemove",R);e.bind(X,"mouseup",ae)}})}else{e.show(ak)}e.setStyles(ak,{left:(ah*al[0]+N)-(ak.offsetWidth/2),top:(af*al[1]+M)-(ak.offsetHeight/2)})});if(!tinymce.isOpera&&ad.nodeName=="IMG"){ad.setAttribute("data-mce-selected","1")}}function S(){if(ad){ad.removeAttribute("data-mce-selected")}for(var af in aa){e.hide("mceResizeHandle"+af)}}a.contentStyles.push(".mceResizeHandle {position: absolute;border: 1px solid black;background: #FFF;width: 5px;height: 5px;z-index: 10000}.mceResizeHandle:hover {background: #000}img[data-mce-selected] {outline: 1px solid black}img.mceClonedResizable, table.mceClonedResizable {position: absolute;outline: 1px dashed black;opacity: .5;z-index: 10000}");function U(){var af=e.getParent(l.getNode(),"table,img");E(e.select("img[data-mce-selected]"),function(ag){ag.removeAttribute("data-mce-selected")});if(af){Q(af)}else{S()}}a.onNodeChange.add(U);e.bind(T,"selectionchange",U);a.serializer.addAttributeFilter("data-mce-selected",function(af,ag){var ah=af.length;while(ah--){af[ah].attr(ag,null)}})}function D(){if(n()<9){v.addNodeFilter("noscript",function(L){var M=L.length,N,O;while(M--){N=L[M];O=N.firstChild;if(O){N.attr("data-mce-innertext",O.value)}}});o.addNodeFilter("noscript",function(L){var M=L.length,N,P,O;while(M--){N=L[M];P=L[M].firstChild;if(P){P.value=tinymce.html.Entities.decode(P.value)}else{O=N.attributes.map["data-mce-innertext"];if(O){N.attr("data-mce-innertext",null);P=new tinymce.html.Node("#text",3);P.value=O;P.raw=true;N.append(P)}}}})}}t();G();q();if(tinymce.isWebKit){d();J();K();h();m();if(tinymce.isIDevice){b()}else{u();I()}}if(tinymce.isIE){B();x();C();g();i();r();D()}if(tinymce.isGecko){B();y();c();F();s();p()}if(tinymce.isOpera){u()}};(function(j){var a,g,d,k=/[&<>\"\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,b=/[<>&\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,f=/[<>&\"\']/g,c=/&(#x|#)?([\w]+);/g,i={128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"};g={'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;","&":"&amp;"};d={"&lt;":"<","&gt;":">","&amp;":"&","&quot;":'"',"&apos;":"'"};function h(l){var m;m=document.createElement("div");m.innerHTML=l;return m.textContent||m.innerText||l}function e(m,p){var n,o,l,q={};if(m){m=m.split(",");p=p||10;for(n=0;n<m.length;n+=2){o=String.fromCharCode(parseInt(m[n],p));if(!g[o]){l="&"+m[n+1]+";";q[o]=l;q[l]=o}}return q}}a=e("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32);j.html=j.html||{};j.html.Entities={encodeRaw:function(m,l){return m.replace(l?k:b,function(n){return g[n]||n})},encodeAllRaw:function(l){return(""+l).replace(f,function(m){return g[m]||m})},encodeNumeric:function(m,l){return m.replace(l?k:b,function(n){if(n.length>1){return"&#"+(((n.charCodeAt(0)-55296)*1024)+(n.charCodeAt(1)-56320)+65536)+";"}return g[n]||"&#"+n.charCodeAt(0)+";"})},encodeNamed:function(n,l,m){m=m||a;return n.replace(l?k:b,function(o){return g[o]||m[o]||o})},getEncodeFunc:function(l,o){var p=j.html.Entities;o=e(o)||a;function m(r,q){return r.replace(q?k:b,function(s){return g[s]||o[s]||"&#"+s.charCodeAt(0)+";"||s})}function n(r,q){return p.encodeNamed(r,q,o)}l=j.makeMap(l.replace(/\+/g,","));if(l.named&&l.numeric){return m}if(l.named){if(o){return n}return p.encodeNamed}if(l.numeric){return p.encodeNumeric}return p.encodeRaw},decode:function(l){return l.replace(c,function(n,m,o){if(m){o=parseInt(o,m.length===2?16:10);if(o>65535){o-=65536;return String.fromCharCode(55296+(o>>10),56320+(o&1023))}else{return i[o]||String.fromCharCode(o)}}return d[n]||a[n]||h(n)})}}})(tinymce);tinymce.html.Styles=function(d,f){var k=/rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi,h=/(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi,b=/\s*([^:]+):\s*([^;]+);?/g,l=/\s+$/,m=/rgb/,e,g,a={},j;d=d||{};j="\\\" \\' \\; \\: ; : \uFEFF".split(" ");for(g=0;g<j.length;g++){a[j[g]]="\uFEFF"+g;a["\uFEFF"+g]=j[g]}function c(n,q,p,i){function o(r){r=parseInt(r).toString(16);return r.length>1?r:"0"+r}return"#"+o(q)+o(p)+o(i)}return{toHex:function(i){return i.replace(k,c)},parse:function(s){var z={},q,n,x,r,v=d.url_converter,y=d.url_converter_scope||this;function p(D,G){var F,C,B,E;F=z[D+"-top"+G];if(!F){return}C=z[D+"-right"+G];if(F!=C){return}B=z[D+"-bottom"+G];if(C!=B){return}E=z[D+"-left"+G];if(B!=E){return}z[D+G]=E;delete z[D+"-top"+G];delete z[D+"-right"+G];delete z[D+"-bottom"+G];delete z[D+"-left"+G]}function u(C){var D=z[C],B;if(!D||D.indexOf(" ")<0){return}D=D.split(" ");B=D.length;while(B--){if(D[B]!==D[0]){return false}}z[C]=D[0];return true}function A(D,C,B,E){if(!u(C)){return}if(!u(B)){return}if(!u(E)){return}z[D]=z[C]+" "+z[B]+" "+z[E];delete z[C];delete z[B];delete z[E]}function t(B){r=true;return a[B]}function i(C,B){if(r){C=C.replace(/\uFEFF[0-9]/g,function(D){return a[D]})}if(!B){C=C.replace(/\\([\'\";:])/g,"$1")}return C}function o(C,B,F,E,G,D){G=G||D;if(G){G=i(G);return"'"+G.replace(/\'/g,"\\'")+"'"}B=i(B||F||E);if(v){B=v.call(y,B,"style")}return"url('"+B.replace(/\'/g,"\\'")+"')"}if(s){s=s.replace(/\\[\"\';:\uFEFF]/g,t).replace(/\"[^\"]+\"|\'[^\']+\'/g,function(B){return B.replace(/[;:]/g,t)});while(q=b.exec(s)){n=q[1].replace(l,"").toLowerCase();x=q[2].replace(l,"");if(n&&x.length>0){if(n==="font-weight"&&x==="700"){x="bold"}else{if(n==="color"||n==="background-color"){x=x.toLowerCase()}}x=x.replace(k,c);x=x.replace(h,o);z[n]=r?i(x,true):x}b.lastIndex=q.index+q[0].length}p("border","");p("border","-width");p("border","-color");p("border","-style");p("padding","");p("margin","");A("border","border-width","border-style","border-color");if(z.border==="medium none"){delete z.border}}return z},serialize:function(p,r){var o="",n,q;function i(t){var x,u,s,v;x=f.styles[t];if(x){for(u=0,s=x.length;u<s;u++){t=x[u];v=p[t];if(v!==e&&v.length>0){o+=(o.length>0?" ":"")+t+": "+v+";"}}}}if(r&&f&&f.styles){i("*");i(r)}else{for(n in p){q=p[n];if(q!==e&&q.length>0){o+=(o.length>0?" ":"")+n+": "+q+";"}}}return o}}};(function(f){var a={},e=f.makeMap,g=f.each;function d(j,i){return j.split(i||",")}function h(m,l){var j,k={};function i(n){return n.replace(/[A-Z]+/g,function(o){return i(m[o])})}for(j in m){if(m.hasOwnProperty(j)){m[j]=i(m[j])}}i(l).replace(/#/g,"#text").replace(/(\w+)\[([^\]]+)\]\[([^\]]*)\]/g,function(q,o,n,p){n=d(n,"|");k[o]={attributes:e(n),attributesOrder:n,children:e(p,"|",{"#comment":{}})}});return k}function b(){var i=a.html5;if(!i){i=a.html5=h({A:"id|accesskey|class|dir|draggable|item|hidden|itemprop|role|spellcheck|style|subject|title|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup",B:"#|a|abbr|area|audio|b|bdo|br|button|canvas|cite|code|command|datalist|del|dfn|em|embed|i|iframe|img|input|ins|kbd|keygen|label|link|map|mark|meta|meter|noscript|object|output|progress|q|ruby|samp|script|select|small|span|strong|sub|sup|svg|textarea|time|var|video|wbr",C:"#|a|abbr|area|address|article|aside|audio|b|bdo|blockquote|br|button|canvas|cite|code|command|datalist|del|details|dfn|dialog|div|dl|em|embed|fieldset|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|i|iframe|img|input|ins|kbd|keygen|label|link|map|mark|menu|meta|meter|nav|noscript|ol|object|output|p|pre|progress|q|ruby|samp|script|section|select|small|span|strong|style|sub|sup|svg|table|textarea|time|ul|var|video"},"html[A|manifest][body|head]head[A][base|command|link|meta|noscript|script|style|title]title[A][#]base[A|href|target][]link[A|href|rel|media|type|sizes][]meta[A|http-equiv|name|content|charset][]style[A|type|media|scoped][#]script[A|charset|type|src|defer|async][#]noscript[A][C]body[A][C]section[A][C]nav[A][C]article[A][C]aside[A][C]h1[A][B]h2[A][B]h3[A][B]h4[A][B]h5[A][B]h6[A][B]hgroup[A][h1|h2|h3|h4|h5|h6]header[A][C]footer[A][C]address[A][C]p[A][B]br[A][]pre[A][B]dialog[A][dd|dt]blockquote[A|cite][C]ol[A|start|reversed][li]ul[A][li]li[A|value][C]dl[A][dd|dt]dt[A][B]dd[A][C]a[A|href|target|ping|rel|media|type][B]em[A][B]strong[A][B]small[A][B]cite[A][B]q[A|cite][B]dfn[A][B]abbr[A][B]code[A][B]var[A][B]samp[A][B]kbd[A][B]sub[A][B]sup[A][B]i[A][B]b[A][B]mark[A][B]progress[A|value|max][B]meter[A|value|min|max|low|high|optimum][B]time[A|datetime][B]ruby[A][B|rt|rp]rt[A][B]rp[A][B]bdo[A][B]span[A][B]ins[A|cite|datetime][B]del[A|cite|datetime][B]figure[A][C|legend|figcaption]figcaption[A][C]img[A|alt|src|height|width|usemap|ismap][]iframe[A|name|src|height|width|sandbox|seamless][]embed[A|src|height|width|type][]object[A|data|type|height|width|usemap|name|form|classid][param]param[A|name|value][]details[A|open][C|legend]command[A|type|label|icon|disabled|checked|radiogroup][]menu[A|type|label][C|li]legend[A][C|B]div[A][C]source[A|src|type|media][]audio[A|src|autobuffer|autoplay|loop|controls][source]video[A|src|autobuffer|autoplay|loop|controls|width|height|poster][source]hr[A][]form[A|accept-charset|action|autocomplete|enctype|method|name|novalidate|target][C]fieldset[A|disabled|form|name][C|legend]label[A|form|for][B]input[A|type|accept|alt|autocomplete|autofocus|checked|disabled|form|formaction|formenctype|formmethod|formnovalidate|formtarget|height|list|max|maxlength|min|multiple|pattern|placeholder|readonly|required|size|src|step|width|files|value|name][]button[A|autofocus|disabled|form|formaction|formenctype|formmethod|formnovalidate|formtarget|name|value|type][B]select[A|autofocus|disabled|form|multiple|name|size][option|optgroup]datalist[A][B|option]optgroup[A|disabled|label][option]option[A|disabled|selected|label|value][]textarea[A|autofocus|disabled|form|maxlength|name|placeholder|readonly|required|rows|cols|wrap][]keygen[A|autofocus|challenge|disabled|form|keytype|name][]output[A|for|form|name][B]canvas[A|width|height][]map[A|name][B|C]area[A|shape|coords|href|alt|target|media|rel|ping|type][]mathml[A][]svg[A][]table[A|border][caption|colgroup|thead|tfoot|tbody|tr]caption[A][C]colgroup[A|span][col]col[A|span][]thead[A][tr]tfoot[A][tr]tbody[A][tr]tr[A][th|td]th[A|headers|rowspan|colspan|scope][B]td[A|headers|rowspan|colspan][C]wbr[A][]")}return i}function c(){var i=a.html4;if(!i){i=a.html4=h({Z:"H|K|N|O|P",Y:"X|form|R|Q",ZG:"E|span|width|align|char|charoff|valign",X:"p|T|div|U|W|isindex|fieldset|table",ZF:"E|align|char|charoff|valign",W:"pre|hr|blockquote|address|center|noframes",ZE:"abbr|axis|headers|scope|rowspan|colspan|align|char|charoff|valign|nowrap|bgcolor|width|height",ZD:"[E][S]",U:"ul|ol|dl|menu|dir",ZC:"p|Y|div|U|W|table|br|span|bdo|object|applet|img|map|K|N|Q",T:"h1|h2|h3|h4|h5|h6",ZB:"X|S|Q",S:"R|P",ZA:"a|G|J|M|O|P",R:"a|H|K|N|O",Q:"noscript|P",P:"ins|del|script",O:"input|select|textarea|label|button",N:"M|L",M:"em|strong|dfn|code|q|samp|kbd|var|cite|abbr|acronym",L:"sub|sup",K:"J|I",J:"tt|i|b|u|s|strike",I:"big|small|font|basefont",H:"G|F",G:"br|span|bdo",F:"object|applet|img|map|iframe",E:"A|B|C",D:"accesskey|tabindex|onfocus|onblur",C:"onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup",B:"lang|xml:lang|dir",A:"id|class|style|title"},"script[id|charset|type|language|src|defer|xml:space][]style[B|id|type|media|title|xml:space][]object[E|declare|classid|codebase|data|type|codetype|archive|standby|width|height|usemap|name|tabindex|align|border|hspace|vspace][#|param|Y]param[id|name|value|valuetype|type][]p[E|align][#|S]a[E|D|charset|type|name|href|hreflang|rel|rev|shape|coords|target][#|Z]br[A|clear][]span[E][#|S]bdo[A|C|B][#|S]applet[A|codebase|archive|code|object|alt|name|width|height|align|hspace|vspace][#|param|Y]h1[E|align][#|S]img[E|src|alt|name|longdesc|width|height|usemap|ismap|align|border|hspace|vspace][]map[B|C|A|name][X|form|Q|area]h2[E|align][#|S]iframe[A|longdesc|name|src|frameborder|marginwidth|marginheight|scrolling|align|width|height][#|Y]h3[E|align][#|S]tt[E][#|S]i[E][#|S]b[E][#|S]u[E][#|S]s[E][#|S]strike[E][#|S]big[E][#|S]small[E][#|S]font[A|B|size|color|face][#|S]basefont[id|size|color|face][]em[E][#|S]strong[E][#|S]dfn[E][#|S]code[E][#|S]q[E|cite][#|S]samp[E][#|S]kbd[E][#|S]var[E][#|S]cite[E][#|S]abbr[E][#|S]acronym[E][#|S]sub[E][#|S]sup[E][#|S]input[E|D|type|name|value|checked|disabled|readonly|size|maxlength|src|alt|usemap|onselect|onchange|accept|align][]select[E|name|size|multiple|disabled|tabindex|onfocus|onblur|onchange][optgroup|option]optgroup[E|disabled|label][option]option[E|selected|disabled|label|value][]textarea[E|D|name|rows|cols|disabled|readonly|onselect|onchange][]label[E|for|accesskey|onfocus|onblur][#|S]button[E|D|name|value|type|disabled][#|p|T|div|U|W|table|G|object|applet|img|map|K|N|Q]h4[E|align][#|S]ins[E|cite|datetime][#|Y]h5[E|align][#|S]del[E|cite|datetime][#|Y]h6[E|align][#|S]div[E|align][#|Y]ul[E|type|compact][li]li[E|type|value][#|Y]ol[E|type|compact|start][li]dl[E|compact][dt|dd]dt[E][#|S]dd[E][#|Y]menu[E|compact][li]dir[E|compact][li]pre[E|width|xml:space][#|ZA]hr[E|align|noshade|size|width][]blockquote[E|cite][#|Y]address[E][#|S|p]center[E][#|Y]noframes[E][#|Y]isindex[A|B|prompt][]fieldset[E][#|legend|Y]legend[E|accesskey|align][#|S]table[E|summary|width|border|frame|rules|cellspacing|cellpadding|align|bgcolor][caption|col|colgroup|thead|tfoot|tbody|tr]caption[E|align][#|S]col[ZG][]colgroup[ZG][col]thead[ZF][tr]tr[ZF|bgcolor][th|td]th[E|ZE][#|Y]form[E|action|method|name|enctype|onsubmit|onreset|accept|accept-charset|target][#|X|R|Q]noscript[E][#|Y]td[E|ZE][#|Y]tfoot[ZF][tr]tbody[ZF][tr]area[E|D|shape|coords|href|nohref|alt|target][]base[id|href|target][]body[E|onload|onunload|background|bgcolor|text|link|vlink|alink][#|Y]")}return i}f.html.Schema=function(A){var u=this,s={},k={},j=[],D,y;var o,q,z,r,v,n,p={};function m(F,E,H){var G=A[F];if(!G){G=a[F];if(!G){G=e(E," ",e(E.toUpperCase()," "));G=f.extend(G,H);a[F]=G}}else{G=e(G,",",e(G.toUpperCase()," "))}return G}A=A||{};y=A.schema=="html5"?b():c();if(A.verify_html===false){A.valid_elements="*[*]"}if(A.valid_styles){D={};g(A.valid_styles,function(F,E){D[E]=f.explode(F)})}o=m("whitespace_elements","pre script noscript style textarea");q=m("self_closing_elements","colgroup dd dt li option p td tfoot th thead tr");z=m("short_ended_elements","area base basefont br col frame hr img input isindex link meta param embed source wbr");r=m("boolean_attributes","checked compact declare defer disabled ismap multiple nohref noresize noshade nowrap readonly selected autoplay loop controls");n=m("non_empty_elements","td th iframe video audio object",z);textBlockElementsMap=m("text_block_elements","h1 h2 h3 h4 h5 h6 p div address pre form blockquote center dir fieldset header footer article section hgroup aside nav figure");v=m("block_elements","hr table tbody thead tfoot th tr td li ol ul caption dl dt dd noscript menu isindex samp option datalist select optgroup",textBlockElementsMap);function i(E){return new RegExp("^"+E.replace(/([?+*])/g,".$1")+"$")}function C(L){var K,G,Z,V,aa,F,I,U,X,Q,Y,ac,O,J,W,E,S,H,ab,ad,P,T,N=/^([#+\-])?([^\[\/]+)(?:\/([^\[]+))?(?:\[([^\]]+)\])?$/,R=/^([!\-])?(\w+::\w+|[^=:<]+)?(?:([=:<])(.*))?$/,M=/[*?+]/;if(L){L=d(L);if(s["@"]){S=s["@"].attributes;H=s["@"].attributesOrder}for(K=0,G=L.length;K<G;K++){F=N.exec(L[K]);if(F){W=F[1];Q=F[2];E=F[3];X=F[4];O={};J=[];I={attributes:O,attributesOrder:J};if(W==="#"){I.paddEmpty=true}if(W==="-"){I.removeEmpty=true}if(S){for(ad in S){O[ad]=S[ad]}J.push.apply(J,H)}if(X){X=d(X,"|");for(Z=0,V=X.length;Z<V;Z++){F=R.exec(X[Z]);if(F){U={};ac=F[1];Y=F[2].replace(/::/g,":");W=F[3];T=F[4];if(ac==="!"){I.attributesRequired=I.attributesRequired||[];I.attributesRequired.push(Y);U.required=true}if(ac==="-"){delete O[Y];J.splice(f.inArray(J,Y),1);continue}if(W){if(W==="="){I.attributesDefault=I.attributesDefault||[];I.attributesDefault.push({name:Y,value:T});U.defaultValue=T}if(W===":"){I.attributesForced=I.attributesForced||[];I.attributesForced.push({name:Y,value:T});U.forcedValue=T}if(W==="<"){U.validValues=e(T,"?")}}if(M.test(Y)){I.attributePatterns=I.attributePatterns||[];U.pattern=i(Y);I.attributePatterns.push(U)}else{if(!O[Y]){J.push(Y)}O[Y]=U}}}}if(!S&&Q=="@"){S=O;H=J}if(E){I.outputName=Q;s[E]=I}if(M.test(Q)){I.pattern=i(Q);j.push(I)}else{s[Q]=I}}}}}function t(E){s={};j=[];C(E);g(y,function(G,F){k[F]=G.children})}function l(F){var E=/^(~)?(.+)$/;if(F){g(d(F),function(J){var H=E.exec(J),I=H[1]==="~",K=I?"span":"div",G=H[2];k[G]=k[K];p[G]=K;if(!I){v[G.toUpperCase()]={};v[G]={}}if(!s[G]){s[G]=s[K]}g(k,function(L,M){if(L[K]){L[G]=L[K]}})})}}function x(F){var E=/^([+\-]?)(\w+)\[([^\]]+)\]$/;if(F){g(d(F),function(J){var I=E.exec(J),G,H;if(I){H=I[1];if(H){G=k[I[2]]}else{G=k[I[2]]={"#comment":{}}}G=k[I[2]];g(d(I[3],"|"),function(K){if(H==="-"){delete G[K]}else{G[K]={}}})}})}}function B(E){var G=s[E],F;if(G){return G}F=j.length;while(F--){G=j[F];if(G.pattern.test(E)){return G}}}if(!A.valid_elements){g(y,function(F,E){s[E]={attributes:F.attributes,attributesOrder:F.attributesOrder};k[E]=F.children});if(A.schema!="html5"){g(d("strong/b,em/i"),function(E){E=d(E,"/");s[E[1]].outputName=E[0]})}s.img.attributesDefault=[{name:"alt",value:""}];g(d("ol,ul,sub,sup,blockquote,span,font,a,table,tbody,tr,strong,em,b,i"),function(E){if(s[E]){s[E].removeEmpty=true}});g(d("p,h1,h2,h3,h4,h5,h6,th,td,pre,div,address,caption"),function(E){s[E].paddEmpty=true})}else{t(A.valid_elements)}l(A.custom_elements);x(A.valid_children);C(A.extended_valid_elements);x("+ol[ul|ol],+ul[ul|ol]");if(A.invalid_elements){f.each(f.explode(A.invalid_elements),function(E){if(s[E]){delete s[E]}})}if(!B("span")){C("span[!data-mce-type|*]")}u.children=k;u.styles=D;u.getBoolAttrs=function(){return r};u.getBlockElements=function(){return v};u.getTextBlockElements=function(){return textBlockElementsMap};u.getShortEndedElements=function(){return z};u.getSelfClosingElements=function(){return q};u.getNonEmptyElements=function(){return n};u.getWhiteSpaceElements=function(){return o};u.isValidChild=function(E,G){var F=k[E];return !!(F&&F[G])};u.isValid=function(F,E){var H,G,I=B(F);if(I){if(E){if(I.attributes[E]){return true}H=I.attributePatterns;if(H){G=H.length;while(G--){if(H[G].pattern.test(F)){return true}}}}else{return true}}return false};u.getElementRule=B;u.getCustomElements=function(){return p};u.addValidElements=C;u.setValidElements=t;u.addCustomElements=l;u.addValidChildren=x;u.elements=s}})(tinymce);(function(a){a.html.SaxParser=function(c,e){var b=this,d=function(){};c=c||{};b.schema=e=e||new a.html.Schema();if(c.fix_self_closing!==false){c.fix_self_closing=true}a.each("comment cdata text start end pi doctype".split(" "),function(f){if(f){b[f]=c[f]||d}});b.parse=function(E){var n=this,g,G=0,I,B,A=[],N,Q,C,r,z,s,M,H,O,v,m,k,t,R,o,P,F,S,L,f,J,l,D,K,h,x=0,j=a.html.Entities.decode,y,q;function u(T){var V,U;V=A.length;while(V--){if(A[V].name===T){break}}if(V>=0){for(U=A.length-1;U>=V;U--){T=A[U];if(T.valid){n.end(T.name)}}A.length=V}}function p(U,T,Y,X,W){var Z,V;T=T.toLowerCase();Y=T in H?T:j(Y||X||W||"");if(v&&!z&&T.indexOf("data-")!==0){Z=P[T];if(!Z&&F){V=F.length;while(V--){Z=F[V];if(Z.pattern.test(T)){break}}if(V===-1){Z=null}}if(!Z){return}if(Z.validValues&&!(Y in Z.validValues)){return}}N.map[T]=Y;N.push({name:T,value:Y})}l=new RegExp("<(?:(?:!--([\\w\\W]*?)-->)|(?:!\\[CDATA\\[([\\w\\W]*?)\\]\\]>)|(?:!DOCTYPE([\\w\\W]*?)>)|(?:\\?([^\\s\\/<>]+) ?([\\w\\W]*?)[?/]>)|(?:\\/([^>]+)>)|(?:([A-Za-z0-9\\-\\:\\.]+)((?:\\s+[^\"'>]+(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>]*))*|\\/|\\s+)>))","g");D=/([\w:\-]+)(?:\s*=\s*(?:(?:\"((?:[^\"])*)\")|(?:\'((?:[^\'])*)\')|([^>\s]+)))?/g;K={script:/<\/script[^>]*>/gi,style:/<\/style[^>]*>/gi,noscript:/<\/noscript[^>]*>/gi};M=e.getShortEndedElements();J=c.self_closing_elements||e.getSelfClosingElements();H=e.getBoolAttrs();v=c.validate;s=c.remove_internals;y=c.fix_self_closing;q=a.isIE;o=/^:/;while(g=l.exec(E)){if(G<g.index){n.text(j(E.substr(G,g.index-G)))}if(I=g[6]){I=I.toLowerCase();if(q&&o.test(I)){I=I.substr(1)}u(I)}else{if(I=g[7]){I=I.toLowerCase();if(q&&o.test(I)){I=I.substr(1)}O=I in M;if(y&&J[I]&&A.length>0&&A[A.length-1].name===I){u(I)}if(!v||(m=e.getElementRule(I))){k=true;if(v){P=m.attributes;F=m.attributePatterns}if(R=g[8]){z=R.indexOf("data-mce-type")!==-1;if(z&&s){k=false}N=[];N.map={};R.replace(D,p)}else{N=[];N.map={}}if(v&&!z){S=m.attributesRequired;L=m.attributesDefault;f=m.attributesForced;if(f){Q=f.length;while(Q--){t=f[Q];r=t.name;h=t.value;if(h==="{$uid}"){h="mce_"+x++}N.map[r]=h;N.push({name:r,value:h})}}if(L){Q=L.length;while(Q--){t=L[Q];r=t.name;if(!(r in N.map)){h=t.value;if(h==="{$uid}"){h="mce_"+x++}N.map[r]=h;N.push({name:r,value:h})}}}if(S){Q=S.length;while(Q--){if(S[Q] in N.map){break}}if(Q===-1){k=false}}if(N.map["data-mce-bogus"]){k=false}}if(k){n.start(I,N,O)}}else{k=false}if(B=K[I]){B.lastIndex=G=g.index+g[0].length;if(g=B.exec(E)){if(k){C=E.substr(G,g.index-G)}G=g.index+g[0].length}else{C=E.substr(G);G=E.length}if(k&&C.length>0){n.text(C,true)}if(k){n.end(I)}l.lastIndex=G;continue}if(!O){if(!R||R.indexOf("/")!=R.length-1){A.push({name:I,valid:k})}else{if(k){n.end(I)}}}}else{if(I=g[1]){n.comment(I)}else{if(I=g[2]){n.cdata(I)}else{if(I=g[3]){n.doctype(I)}else{if(I=g[4]){n.pi(I,g[5])}}}}}}G=g.index+g[0].length}if(G<E.length){n.text(j(E.substr(G)))}for(Q=A.length-1;Q>=0;Q--){I=A[Q];if(I.valid){n.end(I.name)}}}}})(tinymce);(function(d){var c=/^[ \t\r\n]*$/,e={"#text":3,"#comment":8,"#cdata":4,"#pi":7,"#doctype":10,"#document-fragment":11};function a(k,l,j){var i,h,f=j?"lastChild":"firstChild",g=j?"prev":"next";if(k[f]){return k[f]}if(k!==l){i=k[g];if(i){return i}for(h=k.parent;h&&h!==l;h=h.parent){i=h[g];if(i){return i}}}}function b(f,g){this.name=f;this.type=g;if(g===1){this.attributes=[];this.attributes.map={}}}d.extend(b.prototype,{replace:function(g){var f=this;if(g.parent){g.remove()}f.insert(g,f);f.remove();return f},attr:function(h,l){var f=this,g,j,k;if(typeof h!=="string"){for(j in h){f.attr(j,h[j])}return f}if(g=f.attributes){if(l!==k){if(l===null){if(h in g.map){delete g.map[h];j=g.length;while(j--){if(g[j].name===h){g=g.splice(j,1);return f}}}return f}if(h in g.map){j=g.length;while(j--){if(g[j].name===h){g[j].value=l;break}}}else{g.push({name:h,value:l})}g.map[h]=l;return f}else{return g.map[h]}}},clone:function(){var g=this,n=new b(g.name,g.type),h,f,m,j,k;if(m=g.attributes){k=[];k.map={};for(h=0,f=m.length;h<f;h++){j=m[h];if(j.name!=="id"){k[k.length]={name:j.name,value:j.value};k.map[j.name]=j.value}}n.attributes=k}n.value=g.value;n.shortEnded=g.shortEnded;return n},wrap:function(g){var f=this;f.parent.insert(g,f);g.append(f);return f},unwrap:function(){var f=this,h,g;for(h=f.firstChild;h;){g=h.next;f.insert(h,f,true);h=g}f.remove()},remove:function(){var f=this,h=f.parent,g=f.next,i=f.prev;if(h){if(h.firstChild===f){h.firstChild=g;if(g){g.prev=null}}else{i.next=g}if(h.lastChild===f){h.lastChild=i;if(i){i.next=null}}else{g.prev=i}f.parent=f.next=f.prev=null}return f},append:function(h){var f=this,g;if(h.parent){h.remove()}g=f.lastChild;if(g){g.next=h;h.prev=g;f.lastChild=h}else{f.lastChild=f.firstChild=h}h.parent=f;return h},insert:function(h,f,i){var g;if(h.parent){h.remove()}g=f.parent||this;if(i){if(f===g.firstChild){g.firstChild=h}else{f.prev.next=h}h.prev=f.prev;h.next=f;f.prev=h}else{if(f===g.lastChild){g.lastChild=h}else{f.next.prev=h}h.next=f.next;h.prev=f;f.next=h}h.parent=g;return h},getAll:function(g){var f=this,h,i=[];for(h=f.firstChild;h;h=a(h,f)){if(h.name===g){i.push(h)}}return i},empty:function(){var g=this,f,h,j;if(g.firstChild){f=[];for(j=g.firstChild;j;j=a(j,g)){f.push(j)}h=f.length;while(h--){j=f[h];j.parent=j.firstChild=j.lastChild=j.next=j.prev=null}}g.firstChild=g.lastChild=null;return g},isEmpty:function(k){var f=this,j=f.firstChild,h,g;if(j){do{if(j.type===1){if(j.attributes.map["data-mce-bogus"]){continue}if(k[j.name]){return false}h=j.attributes.length;while(h--){g=j.attributes[h].name;if(g==="name"||g.indexOf("data-mce-")===0){return false}}}if(j.type===8){return false}if((j.type===3&&!c.test(j.value))){return false}}while(j=a(j,f))}return true},walk:function(f){return a(this,null,f)}});d.extend(b,{create:function(g,f){var i,h;i=new b(g,e[g]||1);if(f){for(h in f){i.attr(h,f[h])}}return i}});d.html.Node=b})(tinymce);(function(b){var a=b.html.Node;b.html.DomParser=function(g,h){var f=this,e={},d=[],i={},c={};g=g||{};g.validate="validate" in g?g.validate:true;g.root_name=g.root_name||"body";f.schema=h=h||new b.html.Schema();function j(n){var p,q,y,x,A,o,r,l,u,v,k,t,m,z,s;t=b.makeMap("tr,td,th,tbody,thead,tfoot,table");k=h.getNonEmptyElements();m=h.getTextBlockElements();for(p=0;p<n.length;p++){q=n[p];if(!q.parent||q.fixed){continue}if(m[q.name]&&q.parent.name=="li"){z=q.next;while(z){if(m[z.name]){z.name="li";z.fixed=true;q.parent.insert(z,q.parent)}else{break}z=z.next}q.unwrap(q);continue}x=[q];for(y=q.parent;y&&!h.isValidChild(y.name,q.name)&&!t[y.name];y=y.parent){x.push(y)}if(y&&x.length>1){x.reverse();A=o=f.filterNode(x[0].clone());for(u=0;u<x.length-1;u++){if(h.isValidChild(o.name,x[u].name)){r=f.filterNode(x[u].clone());o.append(r)}else{r=o}for(l=x[u].firstChild;l&&l!=x[u+1];){s=l.next;r.append(l);l=s}o=r}if(!A.isEmpty(k)){y.insert(A,x[0],true);y.insert(q,A)}else{y.insert(q,x[0],true)}y=x[0];if(y.isEmpty(k)||y.firstChild===y.lastChild&&y.firstChild.name==="br"){y.empty().remove()}}else{if(q.parent){if(q.name==="li"){z=q.prev;if(z&&(z.name==="ul"||z.name==="ul")){z.append(q);continue}z=q.next;if(z&&(z.name==="ul"||z.name==="ul")){z.insert(q,z.firstChild,true);continue}q.wrap(f.filterNode(new a("ul",1)));continue}if(h.isValidChild(q.parent.name,"div")&&h.isValidChild("div",q.name)){q.wrap(f.filterNode(new a("div",1)))}else{if(q.name==="style"||q.name==="script"){q.empty().remove()}else{q.unwrap()}}}}}}f.filterNode=function(m){var l,k,n;if(k in e){n=i[k];if(n){n.push(m)}else{i[k]=[m]}}l=d.length;while(l--){k=d[l].name;if(k in m.attributes.map){n=c[k];if(n){n.push(m)}else{c[k]=[m]}}}return m};f.addNodeFilter=function(k,l){b.each(b.explode(k),function(m){var n=e[m];if(!n){e[m]=n=[]}n.push(l)})};f.addAttributeFilter=function(k,l){b.each(b.explode(k),function(m){var n;for(n=0;n<d.length;n++){if(d[n].name===m){d[n].callbacks.push(l);return}}d.push({name:m,callbacks:[l]})})};f.parse=function(v,m){var n,J,B,A,D,C,x,r,F,N,z,o,E,M=[],L,t,k,y,s,p,u,q;m=m||{};i={};c={};o=b.extend(b.makeMap("script,style,head,html,body,title,meta,param"),h.getBlockElements());u=h.getNonEmptyElements();p=h.children;z=g.validate;q="forced_root_block" in m?m.forced_root_block:g.forced_root_block;s=h.getWhiteSpaceElements();E=/^[ \t\r\n]+/;t=/[ \t\r\n]+$/;k=/[ \t\r\n]+/g;y=/^[ \t\r\n]+$/;function G(){var O=J.firstChild,l,P;while(O){l=O.next;if(O.type==3||(O.type==1&&O.name!=="p"&&!o[O.name]&&!O.attr("data-mce-type"))){if(!P){P=K(q,1);J.insert(P,O);P.append(O)}else{P.append(O)}}else{P=null}O=l}}function K(l,O){var P=new a(l,O),Q;if(l in e){Q=i[l];if(Q){Q.push(P)}else{i[l]=[P]}}return P}function I(P){var Q,l,O;for(Q=P.prev;Q&&Q.type===3;){l=Q.value.replace(t,"");if(l.length>0){Q.value=l;Q=Q.prev}else{O=Q.prev;Q.remove();Q=O}}}function H(O){var P,l={};for(P in O){if(P!=="li"&&P!="p"){l[P]=O[P]}}return l}n=new b.html.SaxParser({validate:z,self_closing_elements:H(h.getSelfClosingElements()),cdata:function(l){B.append(K("#cdata",4)).value=l},text:function(P,l){var O;if(!L){P=P.replace(k," ");if(B.lastChild&&o[B.lastChild.name]){P=P.replace(E,"")}}if(P.length!==0){O=K("#text",3);O.raw=!!l;B.append(O).value=P}},comment:function(l){B.append(K("#comment",8)).value=l},pi:function(l,O){B.append(K(l,7)).value=O;I(B)},doctype:function(O){var l;l=B.append(K("#doctype",10));l.value=O;I(B)},start:function(l,W,P){var U,R,Q,O,S,X,V,T;Q=z?h.getElementRule(l):{};if(Q){U=K(Q.outputName||l,1);U.attributes=W;U.shortEnded=P;B.append(U);T=p[B.name];if(T&&p[U.name]&&!T[U.name]){M.push(U)}R=d.length;while(R--){S=d[R].name;if(S in W.map){F=c[S];if(F){F.push(U)}else{c[S]=[U]}}}if(o[l]){I(U)}if(!P){B=U}if(!L&&s[l]){L=true}}},end:function(l){var S,P,R,O,Q;P=z?h.getElementRule(l):{};if(P){if(o[l]){if(!L){S=B.firstChild;if(S&&S.type===3){R=S.value.replace(E,"");if(R.length>0){S.value=R;S=S.next}else{O=S.next;S.remove();S=O}while(S&&S.type===3){R=S.value;O=S.next;if(R.length===0||y.test(R)){S.remove();S=O}S=O}}S=B.lastChild;if(S&&S.type===3){R=S.value.replace(t,"");if(R.length>0){S.value=R;S=S.prev}else{O=S.prev;S.remove();S=O}while(S&&S.type===3){R=S.value;O=S.prev;if(R.length===0||y.test(R)){S.remove();S=O}S=O}}}}if(L&&s[l]){L=false}if(P.removeEmpty||P.paddEmpty){if(B.isEmpty(u)){if(P.paddEmpty){B.empty().append(new a("#text","3")).value="\u00a0"}else{if(!B.attributes.map.name&&!B.attributes.map.id){Q=B.parent;B.empty().remove();B=Q;return}}}}B=B.parent}}},h);J=B=new a(m.context||g.root_name,11);n.parse(v);if(z&&M.length){if(!m.context){j(M)}else{m.invalid=true}}if(q&&J.name=="body"){G()}if(!m.invalid){for(N in i){F=e[N];A=i[N];x=A.length;while(x--){if(!A[x].parent){A.splice(x,1)}}for(D=0,C=F.length;D<C;D++){F[D](A,N,m)}}for(D=0,C=d.length;D<C;D++){F=d[D];if(F.name in c){A=c[F.name];x=A.length;while(x--){if(!A[x].parent){A.splice(x,1)}}for(x=0,r=F.callbacks.length;x<r;x++){F.callbacks[x](A,F.name,m)}}}}return J};if(g.remove_trailing_brs){f.addNodeFilter("br",function(n,m){var r,q=n.length,o,v=b.extend({},h.getBlockElements()),k=h.getNonEmptyElements(),t,s,p,u;v.body=1;for(r=0;r<q;r++){o=n[r];t=o.parent;if(v[o.parent.name]&&o===t.lastChild){p=o.prev;while(p){u=p.name;if(u!=="span"||p.attr("data-mce-type")!=="bookmark"){if(u!=="br"){break}if(u==="br"){o=null;break}}p=p.prev}if(o){o.remove();if(t.isEmpty(k)){elementRule=h.getElementRule(t.name);if(elementRule){if(elementRule.removeEmpty){t.remove()}else{if(elementRule.paddEmpty){t.empty().append(new b.html.Node("#text",3)).value="\u00a0"}}}}}}else{s=o;while(t.firstChild===s&&t.lastChild===s){s=t;if(v[t.name]){break}t=t.parent}if(s===t){textNode=new b.html.Node("#text",3);textNode.value="\u00a0";o.replace(textNode)}}}})}if(!g.allow_html_in_named_anchor){f.addAttributeFilter("id,name",function(k,l){var n=k.length,p,m,o,q;while(n--){q=k[n];if(q.name==="a"&&q.firstChild&&!q.attr("href")){o=q.parent;p=q.lastChild;do{m=p.prev;o.insert(p,q);p=m}while(p)}}})}}})(tinymce);tinymce.html.Writer=function(e){var c=[],a,b,d,f,g;e=e||{};a=e.indent;b=tinymce.makeMap(e.indent_before||"");d=tinymce.makeMap(e.indent_after||"");f=tinymce.html.Entities.getEncodeFunc(e.entity_encoding||"raw",e.entities);g=e.element_format=="html";return{start:function(m,k,p){var n,j,h,o;if(a&&b[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!=="\n"){c.push("\n")}}c.push("<",m);if(k){for(n=0,j=k.length;n<j;n++){h=k[n];c.push(" ",h.name,'="',f(h.value,true),'"')}}if(!p||g){c[c.length]=">"}else{c[c.length]=" />"}if(p&&a&&d[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!=="\n"){c.push("\n")}}},end:function(h){var i;c.push("</",h,">");if(a&&d[h]&&c.length>0){i=c[c.length-1];if(i.length>0&&i!=="\n"){c.push("\n")}}},text:function(i,h){if(i.length>0){c[c.length]=h?i:f(i)}},cdata:function(h){c.push("<![CDATA[",h,"]]>")},comment:function(h){c.push("<!--",h,"-->")},pi:function(h,i){if(i){c.push("<?",h," ",i,"?>")}else{c.push("<?",h,"?>")}if(a){c.push("\n")}},doctype:function(h){c.push("<!DOCTYPE",h,">",a?"\n":"")},reset:function(){c.length=0},getContent:function(){return c.join("").replace(/\n$/,"")}}};(function(a){a.html.Serializer=function(c,d){var b=this,e=new a.html.Writer(c);c=c||{};c.validate="validate" in c?c.validate:true;b.schema=d=d||new a.html.Schema();b.writer=e;b.serialize=function(h){var g,i;i=c.validate;g={3:function(k,j){e.text(k.value,k.raw)},8:function(j){e.comment(j.value)},7:function(j){e.pi(j.name,j.value)},10:function(j){e.doctype(j.value)},4:function(j){e.cdata(j.value)},11:function(j){if((j=j.firstChild)){do{f(j)}while(j=j.next)}}};e.reset();function f(k){var t=g[k.type],j,o,s,r,p,u,n,m,q;if(!t){j=k.name;o=k.shortEnded;s=k.attributes;if(i&&s&&s.length>1){u=[];u.map={};q=d.getElementRule(k.name);for(n=0,m=q.attributesOrder.length;n<m;n++){r=q.attributesOrder[n];if(r in s.map){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}for(n=0,m=s.length;n<m;n++){r=s[n].name;if(!(r in u.map)){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}s=u}e.start(k.name,s,o);if(!o){if((k=k.firstChild)){do{f(k)}while(k=k.next)}e.end(j)}}else{t(k)}}if(h.type==1&&!c.inner){f(h)}else{g[11](h)}return e.getContent()}}})(tinymce);tinymce.dom={};(function(b,h){var g=!!document.addEventListener;function c(k,j,l,i){if(k.addEventListener){k.addEventListener(j,l,i||false)}else{if(k.attachEvent){k.attachEvent("on"+j,l)}}}function e(k,j,l,i){if(k.removeEventListener){k.removeEventListener(j,l,i||false)}else{if(k.detachEvent){k.detachEvent("on"+j,l)}}}function a(n,l){var i,k=l||{};function j(){return false}function m(){return true}for(i in n){if(i!=="layerX"&&i!=="layerY"){k[i]=n[i]}}if(!k.target){k.target=k.srcElement||document}k.preventDefault=function(){k.isDefaultPrevented=m;if(n){if(n.preventDefault){n.preventDefault()}else{n.returnValue=false}}};k.stopPropagation=function(){k.isPropagationStopped=m;if(n){if(n.stopPropagation){n.stopPropagation()}else{n.cancelBubble=true}}};k.stopImmediatePropagation=function(){k.isImmediatePropagationStopped=m;k.stopPropagation()};if(!k.isDefaultPrevented){k.isDefaultPrevented=j;k.isPropagationStopped=j;k.isImmediatePropagationStopped=j}return k}function d(m,n,l){var k=m.document,j={type:"ready"};function i(){if(!l.domLoaded){l.domLoaded=true;n(j)}}if(k.readyState=="complete"){i();return}if(g){c(m,"DOMContentLoaded",i)}else{c(k,"readystatechange",function(){if(k.readyState==="complete"){e(k,"readystatechange",arguments.callee);i()}});if(k.documentElement.doScroll&&m===m.top){(function(){try{k.documentElement.doScroll("left")}catch(o){setTimeout(arguments.callee,0);return}i()})()}}c(m,"load",i)}function f(k){var q=this,p={},i,o,n,m,l;m="onmouseenter" in document.documentElement;n="onfocusin" in document.documentElement;l={mouseenter:"mouseover",mouseleave:"mouseout"};i=1;q.domLoaded=false;q.events=p;function j(t,x){var s,u,r,v;s=p[x][t.type];if(s){for(u=0,r=s.length;u<r;u++){v=s[u];if(v&&v.func.call(v.scope,t)===false){t.preventDefault()}if(t.isImmediatePropagationStopped()){return}}}}q.bind=function(x,A,D,E){var s,t,u,r,B,z,C,v=window;function y(F){j(a(F||v.event),s)}if(!x||x.nodeType===3||x.nodeType===8){return}if(!x[h]){s=i++;x[h]=s;p[s]={}}else{s=x[h];if(!p[s]){p[s]={}}}E=E||x;A=A.split(" ");u=A.length;while(u--){r=A[u];z=y;B=C=false;if(r==="DOMContentLoaded"){r="ready"}if((q.domLoaded||x.readyState=="complete")&&r==="ready"){q.domLoaded=true;D.call(E,a({type:r}));continue}if(!m){B=l[r];if(B){z=function(F){var H,G;H=F.currentTarget;G=F.relatedTarget;if(G&&H.contains){G=H.contains(G)}else{while(G&&G!==H){G=G.parentNode}}if(!G){F=a(F||v.event);F.type=F.type==="mouseout"?"mouseleave":"mouseenter";F.target=H;j(F,s)}}}}if(!n&&(r==="focusin"||r==="focusout")){C=true;B=r==="focusin"?"focus":"blur";z=function(F){F=a(F||v.event);F.type=F.type==="focus"?"focusin":"focusout";j(F,s)}}t=p[s][r];if(!t){p[s][r]=t=[{func:D,scope:E}];t.fakeName=B;t.capture=C;t.nativeHandler=z;if(!g){t.proxyHandler=k(s)}if(r==="ready"){d(x,z,q)}else{c(x,B||r,g?z:t.proxyHandler,C)}}else{t.push({func:D,scope:E})}}x=t=0;return D};q.unbind=function(x,z,A){var s,u,v,B,r,t;if(!x||x.nodeType===3||x.nodeType===8){return q}s=x[h];if(s){t=p[s];if(z){z=z.split(" ");v=z.length;while(v--){r=z[v];u=t[r];if(u){if(A){B=u.length;while(B--){if(u[B].func===A){u.splice(B,1)}}}if(!A||u.length===0){delete t[r];e(x,u.fakeName||r,g?u.nativeHandler:u.proxyHandler,u.capture)}}}}else{for(r in t){u=t[r];e(x,u.fakeName||r,g?u.nativeHandler:u.proxyHandler,u.capture)}t={}}for(r in t){return q}delete p[s];try{delete x[h]}catch(y){x[h]=null}}return q};q.fire=function(u,s,r){var v,t;if(!u||u.nodeType===3||u.nodeType===8){return q}t=a(null,r);t.type=s;do{v=u[h];if(v){j(t,v)}u=u.parentNode||u.ownerDocument||u.defaultView||u.parentWindow}while(u&&!t.isPropagationStopped());return q};q.clean=function(u){var s,r,t=q.unbind;if(!u||u.nodeType===3||u.nodeType===8){return q}if(u[h]){t(u)}if(!u.getElementsByTagName){u=u.document}if(u&&u.getElementsByTagName){t(u);r=u.getElementsByTagName("*");s=r.length;while(s--){u=r[s];if(u[h]){t(u)}}}return q};q.callNativeHandler=function(s,r){if(p){p[s][r.type].nativeHandler(r)}};q.destory=function(){p={}};q.add=function(v,s,u,t){if(typeof(v)==="string"){v=document.getElementById(v)}if(v&&v instanceof Array){var r=v.length;while(r--){q.add(v[r],s,u,t)}return}if(s==="init"){s="ready"}return q.bind(v,s instanceof Array?s.join(" "):s,u,t)};q.remove=function(v,s,u,t){if(!v){return q}if(typeof(v)==="string"){v=document.getElementById(v)}if(v instanceof Array){var r=v.length;while(r--){q.remove(v[r],s,u,t)}return q}return q.unbind(v,s instanceof Array?s.join(" "):s,u)};q.clear=function(r){if(typeof(r)==="string"){r=document.getElementById(r)}return q.clean(r)};q.cancel=function(r){if(r){q.prevent(r);q.stop(r)}return false};q.prevent=function(r){if(!r.preventDefault){r=a(r)}r.preventDefault();return false};q.stop=function(r){if(!r.stopPropagation){r=a(r)}r.stopPropagation();return false}}b.EventUtils=f;b.Event=new f(function(i){return function(j){tinymce.dom.Event.callNativeHandler(i,j)}});b.Event.bind(window,"ready",function(){});b=0})(tinymce.dom,"data-mce-expando");tinymce.dom.TreeWalker=function(a,c){var b=a;function d(i,f,e,j){var h,g;if(i){if(!j&&i[f]){return i[f]}if(i!=c){h=i[e];if(h){return h}for(g=i.parentNode;g&&g!=c;g=g.parentNode){h=g[e];if(h){return h}}}}}this.current=function(){return b};this.next=function(e){return(b=d(b,"firstChild","nextSibling",e))};this.prev=function(e){return(b=d(b,"lastChild","previousSibling",e))}};(function(e){var g=e.each,d=e.is,f=e.isWebKit,b=e.isIE,h=e.html.Entities,c=/^([a-z0-9],?)+$/i,a=/^[ \t\r\n]*$/;e.create("tinymce.dom.DOMUtils",{doc:null,root:null,files:null,pixelStyles:/^(top|left|bottom|right|width|height|borderWidth)$/,props:{"for":"htmlFor","class":"className",className:"className",checked:"checked",disabled:"disabled",maxlength:"maxLength",readonly:"readOnly",selected:"selected",value:"value",id:"id",name:"name",type:"type"},DOMUtils:function(o,l){var k=this,i,j,n;k.doc=o;k.win=window;k.files={};k.cssFlicker=false;k.counter=0;k.stdMode=!e.isIE||o.documentMode>=8;k.boxModel=!e.isIE||o.compatMode=="CSS1Compat"||k.stdMode;k.hasOuterHTML="outerHTML" in o.createElement("a");k.settings=l=e.extend({keep_values:false,hex_colors:1},l);k.schema=l.schema;k.styles=new e.html.Styles({url_converter:l.url_converter,url_converter_scope:l.url_converter_scope},l.schema);if(e.isIE6){try{o.execCommand("BackgroundImageCache",false,true)}catch(m){k.cssFlicker=true}}k.fixDoc(o);k.events=l.ownEvents?new e.dom.EventUtils(l.proxy):e.dom.Event;e.addUnload(k.destroy,k);n=l.schema?l.schema.getBlockElements():{};k.isBlock=function(q){if(!q){return false}var p=q.nodeType;if(p){return !!(p===1&&n[q.nodeName])}return !!n[q]}},fixDoc:function(k){var j=this.settings,i;if(b&&j.schema){("abbr article aside audio canvas details figcaption figure footer header hgroup mark menu meter nav output progress section summary time video").replace(/\w+/g,function(l){k.createElement(l)});for(i in j.schema.getCustomElements()){k.createElement(i)}}},clone:function(k,i){var j=this,m,l;if(!b||k.nodeType!==1||i){return k.cloneNode(i)}l=j.doc;if(!i){m=l.createElement(k.nodeName);g(j.getAttribs(k),function(n){j.setAttrib(m,n.nodeName,j.getAttrib(k,n.nodeName))});return m}return m.firstChild},getRoot:function(){var i=this,j=i.settings;return(j&&i.get(j.root_element))||i.doc.body},getViewPort:function(j){var k,i;j=!j?this.win:j;k=j.document;i=this.boxModel?k.documentElement:k.body;return{x:j.pageXOffset||i.scrollLeft,y:j.pageYOffset||i.scrollTop,w:j.innerWidth||i.clientWidth,h:j.innerHeight||i.clientHeight}},getRect:function(l){var k,i=this,j;l=i.get(l);k=i.getPos(l);j=i.getSize(l);return{x:k.x,y:k.y,w:j.w,h:j.h}},getSize:function(l){var j=this,i,k;l=j.get(l);i=j.getStyle(l,"width");k=j.getStyle(l,"height");if(i.indexOf("px")===-1){i=0}if(k.indexOf("px")===-1){k=0}return{w:parseInt(i,10)||l.offsetWidth||l.clientWidth,h:parseInt(k,10)||l.offsetHeight||l.clientHeight}},getParent:function(k,j,i){return this.getParents(k,j,i,false)},getParents:function(s,m,k,q){var j=this,i,l=j.settings,p=[];s=j.get(s);q=q===undefined;if(l.strict_root){k=k||j.getRoot()}if(d(m,"string")){i=m;if(m==="*"){m=function(o){return o.nodeType==1}}else{m=function(o){return j.is(o,i)}}}while(s){if(s==k||!s.nodeType||s.nodeType===9){break}if(!m||m(s)){if(q){p.push(s)}else{return s}}s=s.parentNode}return q?p:null},get:function(i){var j;if(i&&this.doc&&typeof(i)=="string"){j=i;i=this.doc.getElementById(i);if(i&&i.id!==j){return this.doc.getElementsByName(j)[1]}}return i},getNext:function(j,i){return this._findSib(j,i,"nextSibling")},getPrev:function(j,i){return this._findSib(j,i,"previousSibling")},select:function(k,j){var i=this;return e.dom.Sizzle(k,i.get(j)||i.get(i.settings.root_element)||i.doc,[])},is:function(l,j){var k;if(l.length===undefined){if(j==="*"){return l.nodeType==1}if(c.test(j)){j=j.toLowerCase().split(/,/);l=l.nodeName.toLowerCase();for(k=j.length-1;k>=0;k--){if(j[k]==l){return true}}return false}}return e.dom.Sizzle.matches(j,l.nodeType?[l]:l).length>0},add:function(l,o,i,k,m){var j=this;return this.run(l,function(r){var q,n;q=d(o,"string")?j.doc.createElement(o):o;j.setAttribs(q,i);if(k){if(k.nodeType){q.appendChild(k)}else{j.setHTML(q,k)}}return !m?r.appendChild(q):q})},create:function(k,i,j){return this.add(this.doc.createElement(k),k,i,j,1)},createHTML:function(q,i,m){var p="",l=this,j;p+="<"+q;for(j in i){if(i.hasOwnProperty(j)){p+=" "+j+'="'+l.encode(i[j])+'"'}}if(typeof(m)!="undefined"){return p+">"+m+"</"+q+">"}return p+" />"},remove:function(i,j){return this.run(i,function(l){var m,k=l.parentNode;if(!k){return null}if(j){while(m=l.firstChild){if(!e.isIE||m.nodeType!==3||m.nodeValue){k.insertBefore(m,l)}else{l.removeChild(m)}}}return k.removeChild(l)})},setStyle:function(l,i,j){var k=this;return k.run(l,function(o){var n,m;n=o.style;i=i.replace(/-(\D)/g,function(q,p){return p.toUpperCase()});if(k.pixelStyles.test(i)&&(e.is(j,"number")||/^[\-0-9\.]+$/.test(j))){j+="px"}switch(i){case"opacity":if(b){n.filter=j===""?"":"alpha(opacity="+(j*100)+")";if(!l.currentStyle||!l.currentStyle.hasLayout){n.display="inline-block"}}n[i]=n["-moz-opacity"]=n["-khtml-opacity"]=j||"";break;case"float":b?n.styleFloat=j:n.cssFloat=j;break;default:n[i]=j||""}if(k.settings.update_styles){k.setAttrib(o,"data-mce-style")}})},getStyle:function(l,i,k){l=this.get(l);if(!l){return}if(this.doc.defaultView&&k){i=i.replace(/[A-Z]/g,function(m){return"-"+m});try{return this.doc.defaultView.getComputedStyle(l,null).getPropertyValue(i)}catch(j){return null}}i=i.replace(/-(\D)/g,function(n,m){return m.toUpperCase()});if(i=="float"){i=b?"styleFloat":"cssFloat"}if(l.currentStyle&&k){return l.currentStyle[i]}return l.style?l.style[i]:undefined},setStyles:function(l,m){var j=this,k=j.settings,i;i=k.update_styles;k.update_styles=0;g(m,function(o,p){j.setStyle(l,p,o)});k.update_styles=i;if(k.update_styles){j.setAttrib(l,k.cssText)}},removeAllAttribs:function(i){return this.run(i,function(l){var k,j=l.attributes;for(k=j.length-1;k>=0;k--){l.removeAttributeNode(j.item(k))}})},setAttrib:function(k,l,i){var j=this;if(!k||!l){return}if(j.settings.strict){l=l.toLowerCase()}return this.run(k,function(p){var o=j.settings;var m=p.getAttribute(l);if(i!==null){switch(l){case"style":if(!d(i,"string")){g(i,function(q,r){j.setStyle(p,r,q)});return}if(o.keep_values){if(i&&!j._isRes(i)){p.setAttribute("data-mce-style",i,2)}else{p.removeAttribute("data-mce-style",2)}}p.style.cssText=i;break;case"class":p.className=i||"";break;case"src":case"href":if(o.keep_values){if(o.url_converter){i=o.url_converter.call(o.url_converter_scope||j,i,l,p)}j.setAttrib(p,"data-mce-"+l,i,2)}break;case"shape":p.setAttribute("data-mce-style",i);break}}if(d(i)&&i!==null&&i.length!==0){p.setAttribute(l,""+i,2)}else{p.removeAttribute(l,2)}if(tinyMCE.activeEditor&&m!=i){var n=tinyMCE.activeEditor;n.onSetAttrib.dispatch(n,p,l,i)}})},setAttribs:function(j,k){var i=this;return this.run(j,function(l){g(k,function(m,o){i.setAttrib(l,o,m)})})},getAttrib:function(m,o,k){var i,j=this,l;m=j.get(m);if(!m||m.nodeType!==1){return k===l?false:k}if(!d(k)){k=""}if(/^(src|href|style|coords|shape)$/.test(o)){i=m.getAttribute("data-mce-"+o);if(i){return i}}if(b&&j.props[o]){i=m[j.props[o]];i=i&&i.nodeValue?i.nodeValue:i}if(!i){i=m.getAttribute(o,2)}if(/^(checked|compact|declare|defer|disabled|ismap|multiple|nohref|noshade|nowrap|readonly|selected)$/.test(o)){if(m[j.props[o]]===true&&i===""){return o}return i?o:""}if(m.nodeName==="FORM"&&m.getAttributeNode(o)){return m.getAttributeNode(o).nodeValue}if(o==="style"){i=i||m.style.cssText;if(i){i=j.serializeStyle(j.parseStyle(i),m.nodeName);if(j.settings.keep_values&&!j._isRes(i)){m.setAttribute("data-mce-style",i)}}}if(f&&o==="class"&&i){i=i.replace(/(apple|webkit)\-[a-z\-]+/gi,"")}if(b){switch(o){case"rowspan":case"colspan":if(i===1){i=""}break;case"size":if(i==="+0"||i===20||i===0){i=""}break;case"width":case"height":case"vspace":case"checked":case"disabled":case"readonly":if(i===0){i=""}break;case"hspace":if(i===-1){i=""}break;case"maxlength":case"tabindex":if(i===32768||i===2147483647||i==="32768"){i=""}break;case"multiple":case"compact":case"noshade":case"nowrap":if(i===65535){return o}return k;case"shape":i=i.toLowerCase();break;default:if(o.indexOf("on")===0&&i){i=e._replace(/^function\s+\w+\(\)\s+\{\s+(.*)\s+\}$/,"$1",""+i)}}}return(i!==l&&i!==null&&i!=="")?""+i:k},getPos:function(q,l){var j=this,i=0,p=0,m,o=j.doc,k;q=j.get(q);l=l||o.body;if(q){if(q.getBoundingClientRect){q=q.getBoundingClientRect();m=j.boxModel?o.documentElement:o.body;i=q.left+(o.documentElement.scrollLeft||o.body.scrollLeft)-m.clientTop;p=q.top+(o.documentElement.scrollTop||o.body.scrollTop)-m.clientLeft;return{x:i,y:p}}k=q;while(k&&k!=l&&k.nodeType){i+=k.offsetLeft||0;p+=k.offsetTop||0;k=k.offsetParent}k=q.parentNode;while(k&&k!=l&&k.nodeType){i-=k.scrollLeft||0;p-=k.scrollTop||0;k=k.parentNode}}return{x:i,y:p}},parseStyle:function(i){return this.styles.parse(i)},serializeStyle:function(j,i){return this.styles.serialize(j,i)},addStyle:function(j){var k=this.doc,i;styleElm=k.getElementById("mceDefaultStyles");if(!styleElm){styleElm=k.createElement("style"),styleElm.id="mceDefaultStyles";styleElm.type="text/css";i=k.getElementsByTagName("head")[0];if(i.firstChild){i.insertBefore(styleElm,i.firstChild)}else{i.appendChild(styleElm)}}if(styleElm.styleSheet){styleElm.styleSheet.cssText+=j}else{styleElm.appendChild(k.createTextNode(j))}},loadCSS:function(i){var k=this,l=k.doc,j;if(!i){i=""}j=l.getElementsByTagName("head")[0];g(i.split(","),function(m){var n;if(k.files[m]){return}k.files[m]=true;n=k.create("link",{rel:"stylesheet",href:e._addVer(m)});if(b&&l.documentMode&&l.recalc){n.onload=function(){if(l.recalc){l.recalc()}n.onload=null}}j.appendChild(n)})},addClass:function(i,j){return this.run(i,function(k){var l;if(!j){return 0}if(this.hasClass(k,j)){return k.className}l=this.removeClass(k,j);return k.className=(l!=""?(l+" "):"")+j})},removeClass:function(k,l){var i=this,j;return i.run(k,function(n){var m;if(i.hasClass(n,l)){if(!j){j=new RegExp("(^|\\s+)"+l+"(\\s+|$)","g")}m=n.className.replace(j," ");m=e.trim(m!=" "?m:"");n.className=m;if(!m){n.removeAttribute("class");n.removeAttribute("className")}return m}return n.className})},hasClass:function(j,i){j=this.get(j);if(!j||!i){return false}return(" "+j.className+" ").indexOf(" "+i+" ")!==-1},show:function(i){return this.setStyle(i,"display","block")},hide:function(i){return this.setStyle(i,"display","none")},isHidden:function(i){i=this.get(i);return !i||i.style.display=="none"||this.getStyle(i,"display")=="none"},uniqueId:function(i){return(!i?"mce_":i)+(this.counter++)},setHTML:function(k,j){var i=this;return i.run(k,function(m){if(b){while(m.firstChild){m.removeChild(m.firstChild)}try{m.innerHTML="<br />"+j;m.removeChild(m.firstChild)}catch(l){var n=i.create("div");n.innerHTML="<br />"+j;g(e.grep(n.childNodes),function(p,o){if(o&&m.canHaveHTML){m.appendChild(p)}})}}else{m.innerHTML=j}return j})},getOuterHTML:function(k){var j,i=this;k=i.get(k);if(!k){return null}if(k.nodeType===1&&i.hasOuterHTML){return k.outerHTML}j=(k.ownerDocument||i.doc).createElement("body");j.appendChild(k.cloneNode(true));return j.innerHTML},setOuterHTML:function(l,j,m){var i=this;function k(p,o,r){var s,q;q=r.createElement("body");q.innerHTML=o;s=q.lastChild;while(s){i.insertAfter(s.cloneNode(true),p);s=s.previousSibling}i.remove(p)}return this.run(l,function(o){o=i.get(o);if(o.nodeType==1){m=m||o.ownerDocument||i.doc;if(b){try{if(b&&o.nodeType==1){o.outerHTML=j}else{k(o,j,m)}}catch(n){k(o,j,m)}}else{k(o,j,m)}}})},decode:h.decode,encode:h.encodeAllRaw,insertAfter:function(i,j){j=this.get(j);return this.run(i,function(l){var k,m;k=j.parentNode;m=j.nextSibling;if(m){k.insertBefore(l,m)}else{k.appendChild(l)}return l})},replace:function(m,l,i){var j=this;if(d(l,"array")){m=m.cloneNode(true)}return j.run(l,function(k){if(i){g(e.grep(k.childNodes),function(n){m.appendChild(n)})}return k.parentNode.replaceChild(m,k)})},rename:function(l,i){var k=this,j;if(l.nodeName!=i.toUpperCase()){j=k.create(i);g(k.getAttribs(l),function(m){k.setAttrib(j,m.nodeName,k.getAttrib(l,m.nodeName))});k.replace(j,l,1)}return j||l},findCommonAncestor:function(k,i){var l=k,j;while(l){j=i;while(j&&l!=j){j=j.parentNode}if(l==j){break}l=l.parentNode}if(!l&&k.ownerDocument){return k.ownerDocument.documentElement}return l},toHex:function(i){var k=/^\s*rgb\s*?\(\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?\)\s*$/i.exec(i);function j(l){l=parseInt(l,10).toString(16);return l.length>1?l:"0"+l}if(k){i="#"+j(k[1])+j(k[2])+j(k[3]);return i}return i},getClasses:function(){var n=this,j=[],m,o={},p=n.settings.class_filter,l;if(n.classes){return n.classes}function q(i){g(i.imports,function(s){q(s)});g(i.cssRules||i.rules,function(s){switch(s.type||1){case 1:if(s.selectorText){g(s.selectorText.split(","),function(r){r=r.replace(/^\s*|\s*$|^\s\./g,"");if(/\.mce/.test(r)||!/\.[\w\-]+$/.test(r)){return}l=r;r=e._replace(/.*\.([a-z0-9_\-]+).*/i,"$1",r);if(p&&!(r=p(r,l))){return}if(!o[r]){j.push({"class":r});o[r]=1}})}break;case 3:q(s.styleSheet);break}})}try{g(n.doc.styleSheets,q)}catch(k){}if(j.length>0){n.classes=j}return j},run:function(l,k,j){var i=this,m;if(i.doc&&typeof(l)==="string"){l=i.get(l)}if(!l){return false}j=j||this;if(!l.nodeType&&(l.length||l.length===0)){m=[];g(l,function(o,n){if(o){if(typeof(o)=="string"){o=i.doc.getElementById(o)}m.push(k.call(j,o,n))}});return m}return k.call(j,l)},getAttribs:function(j){var i;j=this.get(j);if(!j){return[]}if(b){i=[];if(j.nodeName=="OBJECT"){return j.attributes}if(j.nodeName==="OPTION"&&this.getAttrib(j,"selected")){i.push({specified:1,nodeName:"selected"})}j.cloneNode(false).outerHTML.replace(/<\/?[\w:\-]+ ?|=[\"][^\"]+\"|=\'[^\']+\'|=[\w\-]+|>/gi,"").replace(/[\w:\-]+/gi,function(k){i.push({specified:1,nodeName:k})});return i}return j.attributes},isEmpty:function(m,k){var r=this,o,n,q,j,l,p=0;m=m.firstChild;if(m){j=new e.dom.TreeWalker(m,m.parentNode);k=k||r.schema?r.schema.getNonEmptyElements():null;do{q=m.nodeType;if(q===1){if(m.getAttribute("data-mce-bogus")){continue}l=m.nodeName.toLowerCase();if(k&&k[l]){if(l==="br"){p++;continue}return false}n=r.getAttribs(m);o=m.attributes.length;while(o--){l=m.attributes[o].nodeName;if(l==="name"||l==="data-mce-bookmark"){return false}}}if(q==8){return false}if((q===3&&!a.test(m.nodeValue))){return false}}while(m=j.next())}return p<=1},destroy:function(j){var i=this;i.win=i.doc=i.root=i.events=i.frag=null;if(!j){e.removeUnload(i.destroy)}},createRng:function(){var i=this.doc;return i.createRange?i.createRange():new e.dom.Range(this)},nodeIndex:function(m,n){var i=0,k,l,j;if(m){for(k=m.nodeType,m=m.previousSibling,l=m;m;m=m.previousSibling){j=m.nodeType;if(n&&j==3){if(j==k||!m.nodeValue.length){continue}}i++;k=j}}return i},split:function(m,l,p){var q=this,i=q.createRng(),n,k,o;function j(v){var t,s=v.childNodes,u=v.nodeType;function x(A){var z=A.previousSibling&&A.previousSibling.nodeName=="SPAN";var y=A.nextSibling&&A.nextSibling.nodeName=="SPAN";return z&&y}if(u==1&&v.getAttribute("data-mce-type")=="bookmark"){return}for(t=s.length-1;t>=0;t--){j(s[t])}if(u!=9){if(u==3&&v.nodeValue.length>0){var r=e.trim(v.nodeValue).length;if(!q.isBlock(v.parentNode)||r>0||r===0&&x(v)){return}}else{if(u==1){s=v.childNodes;if(s.length==1&&s[0]&&s[0].nodeType==1&&s[0].getAttribute("data-mce-type")=="bookmark"){v.parentNode.insertBefore(s[0],v)}if(s.length||/^(br|hr|input|img)$/i.test(v.nodeName)){return}}}q.remove(v)}return v}if(m&&l){i.setStart(m.parentNode,q.nodeIndex(m));i.setEnd(l.parentNode,q.nodeIndex(l));n=i.extractContents();i=q.createRng();i.setStart(l.parentNode,q.nodeIndex(l)+1);i.setEnd(m.parentNode,q.nodeIndex(m)+1);k=i.extractContents();o=m.parentNode;o.insertBefore(j(n),m);if(p){o.replaceChild(p,l)}else{o.insertBefore(l,m)}o.insertBefore(j(k),m);q.remove(m);return p||l}},bind:function(l,i,k,j){return this.events.add(l,i,k,j||this)},unbind:function(k,i,j){return this.events.remove(k,i,j)},fire:function(k,j,i){return this.events.fire(k,j,i)},getContentEditable:function(j){var i;if(j.nodeType!=1){return null}i=j.getAttribute("data-mce-contenteditable");if(i&&i!=="inherit"){return i}return j.contentEditable!=="inherit"?j.contentEditable:null},_findSib:function(l,i,j){var k=this,m=i;if(l){if(d(m,"string")){m=function(n){return k.is(n,i)}}for(l=l[j];l;l=l[j]){if(m(l)){return l}}}return null},_isRes:function(i){return/^(top|left|bottom|right|width|height)/i.test(i)||/;\s*(top|left|bottom|right|width|height)/i.test(i)}});e.DOM=new e.dom.DOMUtils(document,{process_html:0})})(tinymce);(function(a){function b(c){var O=this,e=c.doc,U=0,F=1,j=2,E=true,S=false,W="startOffset",h="startContainer",Q="endContainer",A="endOffset",k=tinymce.extend,n=c.nodeIndex;k(O,{startContainer:e,startOffset:0,endContainer:e,endOffset:0,collapsed:E,commonAncestorContainer:e,START_TO_START:0,START_TO_END:1,END_TO_END:2,END_TO_START:3,setStart:q,setEnd:s,setStartBefore:g,setStartAfter:J,setEndBefore:K,setEndAfter:u,collapse:B,selectNode:y,selectNodeContents:G,compareBoundaryPoints:v,deleteContents:p,extractContents:I,cloneContents:d,insertNode:D,surroundContents:N,cloneRange:L,toStringIE:T});function x(){return e.createDocumentFragment()}function q(X,t){C(E,X,t)}function s(X,t){C(S,X,t)}function g(t){q(t.parentNode,n(t))}function J(t){q(t.parentNode,n(t)+1)}function K(t){s(t.parentNode,n(t))}function u(t){s(t.parentNode,n(t)+1)}function B(t){if(t){O[Q]=O[h];O[A]=O[W]}else{O[h]=O[Q];O[W]=O[A]}O.collapsed=E}function y(t){g(t);u(t)}function G(t){q(t,0);s(t,t.nodeType===1?t.childNodes.length:t.nodeValue.length)}function v(aa,t){var ad=O[h],Y=O[W],ac=O[Q],X=O[A],ab=t.startContainer,af=t.startOffset,Z=t.endContainer,ae=t.endOffset;if(aa===0){return H(ad,Y,ab,af)}if(aa===1){return H(ac,X,ab,af)}if(aa===2){return H(ac,X,Z,ae)}if(aa===3){return H(ad,Y,Z,ae)}}function p(){l(j)}function I(){return l(U)}function d(){return l(F)}function D(aa){var X=this[h],t=this[W],Z,Y;if((X.nodeType===3||X.nodeType===4)&&X.nodeValue){if(!t){X.parentNode.insertBefore(aa,X)}else{if(t>=X.nodeValue.length){c.insertAfter(aa,X)}else{Z=X.splitText(t);X.parentNode.insertBefore(aa,Z)}}}else{if(X.childNodes.length>0){Y=X.childNodes[t]}if(Y){X.insertBefore(aa,Y)}else{X.appendChild(aa)}}}function N(X){var t=O.extractContents();O.insertNode(X);X.appendChild(t);O.selectNode(X)}function L(){return k(new b(c),{startContainer:O[h],startOffset:O[W],endContainer:O[Q],endOffset:O[A],collapsed:O.collapsed,commonAncestorContainer:O.commonAncestorContainer})}function P(t,X){var Y;if(t.nodeType==3){return t}if(X<0){return t}Y=t.firstChild;while(Y&&X>0){--X;Y=Y.nextSibling}if(Y){return Y}return t}function m(){return(O[h]==O[Q]&&O[W]==O[A])}function H(Z,ab,X,aa){var ac,Y,t,ad,af,ae;if(Z==X){if(ab==aa){return 0}if(ab<aa){return -1}return 1}ac=X;while(ac&&ac.parentNode!=Z){ac=ac.parentNode}if(ac){Y=0;t=Z.firstChild;while(t!=ac&&Y<ab){Y++;t=t.nextSibling}if(ab<=Y){return -1}return 1}ac=Z;while(ac&&ac.parentNode!=X){ac=ac.parentNode}if(ac){Y=0;t=X.firstChild;while(t!=ac&&Y<aa){Y++;t=t.nextSibling}if(Y<aa){return -1}return 1}ad=c.findCommonAncestor(Z,X);af=Z;while(af&&af.parentNode!=ad){af=af.parentNode}if(!af){af=ad}ae=X;while(ae&&ae.parentNode!=ad){ae=ae.parentNode}if(!ae){ae=ad}if(af==ae){return 0}t=ad.firstChild;while(t){if(t==af){return -1}if(t==ae){return 1}t=t.nextSibling}}function C(X,aa,Z){var t,Y;if(X){O[h]=aa;O[W]=Z}else{O[Q]=aa;O[A]=Z}t=O[Q];while(t.parentNode){t=t.parentNode}Y=O[h];while(Y.parentNode){Y=Y.parentNode}if(Y==t){if(H(O[h],O[W],O[Q],O[A])>0){O.collapse(X)}}else{O.collapse(X)}O.collapsed=m();O.commonAncestorContainer=c.findCommonAncestor(O[h],O[Q])}function l(ad){var ac,Z=0,af=0,X,ab,Y,aa,t,ae;if(O[h]==O[Q]){return f(ad)}for(ac=O[Q],X=ac.parentNode;X;ac=X,X=X.parentNode){if(X==O[h]){return r(ac,ad)}++Z}for(ac=O[h],X=ac.parentNode;X;ac=X,X=X.parentNode){if(X==O[Q]){return V(ac,ad)}++af}ab=af-Z;Y=O[h];while(ab>0){Y=Y.parentNode;ab--}aa=O[Q];while(ab<0){aa=aa.parentNode;ab++}for(t=Y.parentNode,ae=aa.parentNode;t!=ae;t=t.parentNode,ae=ae.parentNode){Y=t;aa=ae}return o(Y,aa,ad)}function f(ac){var ae,af,t,Y,Z,ad,aa,X,ab;if(ac!=j){ae=x()}if(O[W]==O[A]){return ae}if(O[h].nodeType==3){af=O[h].nodeValue;t=af.substring(O[W],O[A]);if(ac!=F){Y=O[h];X=O[W];ab=O[A]-O[W];if(X===0&&ab>=Y.nodeValue.length-1){Y.parentNode.removeChild(Y)}else{Y.deleteData(X,ab)}O.collapse(E)}if(ac==j){return}if(t.length>0){ae.appendChild(e.createTextNode(t))}return ae}Y=P(O[h],O[W]);Z=O[A]-O[W];while(Y&&Z>0){ad=Y.nextSibling;aa=z(Y,ac);if(ae){ae.appendChild(aa)}--Z;Y=ad}if(ac!=F){O.collapse(E)}return ae}function r(ad,aa){var ac,ab,X,t,Z,Y;if(aa!=j){ac=x()}ab=i(ad,aa);if(ac){ac.appendChild(ab)}X=n(ad);t=X-O[W];if(t<=0){if(aa!=F){O.setEndBefore(ad);O.collapse(S)}return ac}ab=ad.previousSibling;while(t>0){Z=ab.previousSibling;Y=z(ab,aa);if(ac){ac.insertBefore(Y,ac.firstChild)}--t;ab=Z}if(aa!=F){O.setEndBefore(ad);O.collapse(S)}return ac}function V(ab,aa){var ad,X,ac,t,Z,Y;if(aa!=j){ad=x()}ac=R(ab,aa);if(ad){ad.appendChild(ac)}X=n(ab);++X;t=O[A]-X;ac=ab.nextSibling;while(ac&&t>0){Z=ac.nextSibling;Y=z(ac,aa);if(ad){ad.appendChild(Y)}--t;ac=Z}if(aa!=F){O.setStartAfter(ab);O.collapse(E)}return ad}function o(ab,t,ae){var Y,ag,aa,ac,ad,X,af,Z;if(ae!=j){ag=x()}Y=R(ab,ae);if(ag){ag.appendChild(Y)}aa=ab.parentNode;ac=n(ab);ad=n(t);++ac;X=ad-ac;af=ab.nextSibling;while(X>0){Z=af.nextSibling;Y=z(af,ae);if(ag){ag.appendChild(Y)}af=Z;--X}Y=i(t,ae);if(ag){ag.appendChild(Y)}if(ae!=F){O.setStartAfter(ab);O.collapse(E)}return ag}function i(ac,ad){var Y=P(O[Q],O[A]-1),ae,ab,aa,t,X,Z=Y!=O[Q];if(Y==ac){return M(Y,Z,S,ad)}ae=Y.parentNode;ab=M(ae,S,S,ad);while(ae){while(Y){aa=Y.previousSibling;t=M(Y,Z,S,ad);if(ad!=j){ab.insertBefore(t,ab.firstChild)}Z=E;Y=aa}if(ae==ac){return ab}Y=ae.previousSibling;ae=ae.parentNode;X=M(ae,S,S,ad);if(ad!=j){X.appendChild(ab)}ab=X}}function R(ac,ad){var Z=P(O[h],O[W]),aa=Z!=O[h],ae,ab,Y,t,X;if(Z==ac){return M(Z,aa,E,ad)}ae=Z.parentNode;ab=M(ae,S,E,ad);while(ae){while(Z){Y=Z.nextSibling;t=M(Z,aa,E,ad);if(ad!=j){ab.appendChild(t)}aa=E;Z=Y}if(ae==ac){return ab}Z=ae.nextSibling;ae=ae.parentNode;X=M(ae,S,E,ad);if(ad!=j){X.appendChild(ab)}ab=X}}function M(t,aa,ad,ae){var Z,Y,ab,X,ac;if(aa){return z(t,ae)}if(t.nodeType==3){Z=t.nodeValue;if(ad){X=O[W];Y=Z.substring(X);ab=Z.substring(0,X)}else{X=O[A];Y=Z.substring(0,X);ab=Z.substring(X)}if(ae!=F){t.nodeValue=ab}if(ae==j){return}ac=c.clone(t,S);ac.nodeValue=Y;return ac}if(ae==j){return}return c.clone(t,S)}function z(X,t){if(t!=j){return t==F?c.clone(X,E):X}X.parentNode.removeChild(X)}function T(){return c.create("body",null,d()).outerText}return O}a.Range=b;b.prototype.toString=function(){return this.toStringIE()}})(tinymce.dom);(function(){function a(d){var b=this,h=d.dom,c=true,f=false;function e(i,j){var k,t=0,q,n,m,l,o,r,p=-1,s;k=i.duplicate();k.collapse(j);s=k.parentElement();if(s.ownerDocument!==d.dom.doc){return}while(s.contentEditable==="false"){s=s.parentNode}if(!s.hasChildNodes()){return{node:s,inside:1}}m=s.children;q=m.length-1;while(t<=q){r=Math.floor((t+q)/2);l=m[r];k.moveToElementText(l);p=k.compareEndPoints(j?"StartToStart":"EndToEnd",i);if(p>0){q=r-1}else{if(p<0){t=r+1}else{return{node:l}}}}if(p<0){if(!l){k.moveToElementText(s);k.collapse(true);l=s;n=true}else{k.collapse(false)}o=0;while(k.compareEndPoints(j?"StartToStart":"StartToEnd",i)!==0){if(k.move("character",1)===0||s!=k.parentElement()){break}o++}}else{k.collapse(true);o=0;while(k.compareEndPoints(j?"StartToStart":"StartToEnd",i)!==0){if(k.move("character",-1)===0||s!=k.parentElement()){break}o++}}return{node:l,position:p,offset:o,inside:n}}function g(){var i=d.getRng(),r=h.createRng(),l,k,p,q,m,j;l=i.item?i.item(0):i.parentElement();if(l.ownerDocument!=h.doc){return r}k=d.isCollapsed();if(i.item){r.setStart(l.parentNode,h.nodeIndex(l));r.setEnd(r.startContainer,r.startOffset+1);return r}function o(A){var u=e(i,A),s,y,z=0,x,v,t;s=u.node;y=u.offset;if(u.inside&&!s.hasChildNodes()){r[A?"setStart":"setEnd"](s,0);return}if(y===v){r[A?"setStartBefore":"setEndAfter"](s);return}if(u.position<0){x=u.inside?s.firstChild:s.nextSibling;if(!x){r[A?"setStartAfter":"setEndAfter"](s);return}if(!y){if(x.nodeType==3){r[A?"setStart":"setEnd"](x,0)}else{r[A?"setStartBefore":"setEndBefore"](x)}return}while(x){t=x.nodeValue;z+=t.length;if(z>=y){s=x;z-=y;z=t.length-z;break}x=x.nextSibling}}else{x=s.previousSibling;if(!x){return r[A?"setStartBefore":"setEndBefore"](s)}if(!y){if(s.nodeType==3){r[A?"setStart":"setEnd"](x,s.nodeValue.length)}else{r[A?"setStartAfter":"setEndAfter"](x)}return}while(x){z+=x.nodeValue.length;if(z>=y){s=x;z-=y;break}x=x.previousSibling}}r[A?"setStart":"setEnd"](s,z)}try{o(true);if(!k){o()}}catch(n){if(n.number==-2147024809){m=b.getBookmark(2);p=i.duplicate();p.collapse(true);l=p.parentElement();if(!k){p=i.duplicate();p.collapse(false);q=p.parentElement();q.innerHTML=q.innerHTML}l.innerHTML=l.innerHTML;b.moveToBookmark(m);i=d.getRng();o(true);if(!k){o()}}else{throw n}}return r}this.getBookmark=function(m){var j=d.getRng(),o,i,l={};function n(u){var t,p,s,r,q=[];t=u.parentNode;p=h.getRoot().parentNode;while(t!=p&&t.nodeType!==9){s=t.children;r=s.length;while(r--){if(u===s[r]){q.push(r);break}}u=t;t=t.parentNode}return q}function k(q){var p;p=e(j,q);if(p){return{position:p.position,offset:p.offset,indexes:n(p.node),inside:p.inside}}}if(m===2){if(!j.item){l.start=k(true);if(!d.isCollapsed()){l.end=k()}}else{l.start={ctrl:true,indexes:n(j.item(0))}}}return l};this.moveToBookmark=function(k){var j,i=h.doc.body;function m(o){var r,q,n,p;r=h.getRoot();for(q=o.length-1;q>=0;q--){p=r.children;n=o[q];if(n<=p.length-1){r=p[n]}}return r}function l(r){var n=k[r?"start":"end"],q,p,o;if(n){q=n.position>0;p=i.createTextRange();p.moveToElementText(m(n.indexes));offset=n.offset;if(offset!==o){p.collapse(n.inside||q);p.moveStart("character",q?-offset:offset)}else{p.collapse(r)}j.setEndPoint(r?"StartToStart":"EndToStart",p);if(r){j.collapse(true)}}}if(k.start){if(k.start.ctrl){j=i.createControlRange();j.addElement(m(k.start.indexes));j.select()}else{j=i.createTextRange();l(true);l();j.select()}}};this.addRange=function(i){var n,l,k,p,v,q,t,s=d.dom.doc,m=s.body,r,u;function j(C){var y,B,x,A,z;x=h.create("a");y=C?k:v;B=C?p:q;A=n.duplicate();if(y==s||y==s.documentElement){y=m;B=0}if(y.nodeType==3){y.parentNode.insertBefore(x,y);A.moveToElementText(x);A.moveStart("character",B);h.remove(x);n.setEndPoint(C?"StartToStart":"EndToEnd",A)}else{z=y.childNodes;if(z.length){if(B>=z.length){h.insertAfter(x,z[z.length-1])}else{y.insertBefore(x,z[B])}A.moveToElementText(x)}else{if(y.canHaveHTML){y.innerHTML="<span>\uFEFF</span>";x=y.firstChild;A.moveToElementText(x);A.collapse(f)}}n.setEndPoint(C?"StartToStart":"EndToEnd",A);h.remove(x)}}k=i.startContainer;p=i.startOffset;v=i.endContainer;q=i.endOffset;n=m.createTextRange();if(k==v&&k.nodeType==1){if(p==q&&!k.hasChildNodes()){if(k.canHaveHTML){t=k.previousSibling;if(t&&!t.hasChildNodes()&&h.isBlock(t)){t.innerHTML="\uFEFF"}else{t=null}k.innerHTML="<span>\uFEFF</span><span>\uFEFF</span>";n.moveToElementText(k.lastChild);n.select();h.doc.selection.clear();k.innerHTML="";if(t){t.innerHTML=""}return}else{p=h.nodeIndex(k);k=k.parentNode}}if(p==q-1){try{u=k.childNodes[p];l=m.createControlRange();l.addElement(u);l.select();r=d.getRng();if(r.item&&u===r.item(0)){return}}catch(o){}}}j(true);j();n.select()};this.getRangeAt=g}tinymce.dom.TridentSelection=a})();(function(){var n=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,i="sizcache",o=0,r=Object.prototype.toString,h=false,g=true,q=/\\/g,u=/\r\n/g,x=/\W/;[0,0].sort(function(){g=false;return 0});var d=function(C,e,F,G){F=F||[];e=e||document;var I=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!C||typeof C!=="string"){return F}var z,K,N,y,J,M,L,E,B=true,A=d.isXML(e),D=[],H=C;do{n.exec("");z=n.exec(H);if(z){H=z[3];D.push(z[1]);if(z[2]){y=z[3];break}}}while(z);if(D.length>1&&j.exec(C)){if(D.length===2&&k.relative[D[0]]){K=s(D[0]+D[1],e,G)}else{K=k.relative[D[0]]?[e]:d(D.shift(),e);while(D.length){C=D.shift();if(k.relative[C]){C+=D.shift()}K=s(C,K,G)}}}else{if(!G&&D.length>1&&e.nodeType===9&&!A&&k.match.ID.test(D[0])&&!k.match.ID.test(D[D.length-1])){J=d.find(D.shift(),e,A);e=J.expr?d.filter(J.expr,J.set)[0]:J.set[0]}if(e){J=G?{expr:D.pop(),set:l(G)}:d.find(D.pop(),D.length===1&&(D[0]==="~"||D[0]==="+")&&e.parentNode?e.parentNode:e,A);K=J.expr?d.filter(J.expr,J.set):J.set;if(D.length>0){N=l(K)}else{B=false}while(D.length){M=D.pop();L=M;if(!k.relative[M]){M=""}else{L=D.pop()}if(L==null){L=e}k.relative[M](N,L,A)}}else{N=D=[]}}if(!N){N=K}if(!N){d.error(M||C)}if(r.call(N)==="[object Array]"){if(!B){F.push.apply(F,N)}else{if(e&&e.nodeType===1){for(E=0;N[E]!=null;E++){if(N[E]&&(N[E]===true||N[E].nodeType===1&&d.contains(e,N[E]))){F.push(K[E])}}}else{for(E=0;N[E]!=null;E++){if(N[E]&&N[E].nodeType===1){F.push(K[E])}}}}}else{l(N,F)}if(y){d(y,I,F,G);d.uniqueSort(F)}return F};d.uniqueSort=function(y){if(p){h=g;y.sort(p);if(h){for(var e=1;e<y.length;e++){if(y[e]===y[e-1]){y.splice(e--,1)}}}}return y};d.matches=function(e,y){return d(e,null,null,y)};d.matchesSelector=function(e,y){return d(y,null,null,[e]).length>0};d.find=function(E,e,F){var D,z,B,A,C,y;if(!E){return[]}for(z=0,B=k.order.length;z<B;z++){C=k.order[z];if((A=k.leftMatch[C].exec(E))){y=A[1];A.splice(1,1);if(y.substr(y.length-1)!=="\\"){A[1]=(A[1]||"").replace(q,"");D=k.find[C](A,e,F);if(D!=null){E=E.replace(k.match[C],"");break}}}}if(!D){D=typeof e.getElementsByTagName!=="undefined"?e.getElementsByTagName("*"):[]}return{set:D,expr:E}};d.filter=function(I,H,L,B){var D,e,G,N,K,y,A,C,J,z=I,M=[],F=H,E=H&&H[0]&&d.isXML(H[0]);while(I&&H.length){for(G in k.filter){if((D=k.leftMatch[G].exec(I))!=null&&D[2]){y=k.filter[G];A=D[1];e=false;D.splice(1,1);if(A.substr(A.length-1)==="\\"){continue}if(F===M){M=[]}if(k.preFilter[G]){D=k.preFilter[G](D,F,L,M,B,E);if(!D){e=N=true}else{if(D===true){continue}}}if(D){for(C=0;(K=F[C])!=null;C++){if(K){N=y(K,D,C,F);J=B^N;if(L&&N!=null){if(J){e=true}else{F[C]=false}}else{if(J){M.push(K);e=true}}}}}if(N!==undefined){if(!L){F=M}I=I.replace(k.match[G],"");if(!e){return[]}break}}}if(I===z){if(e==null){d.error(I)}else{break}}z=I}return F};d.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)};var b=d.getText=function(B){var z,A,e=B.nodeType,y="";if(e){if(e===1||e===9||e===11){if(typeof B.textContent==="string"){return B.textContent}else{if(typeof B.innerText==="string"){return B.innerText.replace(u,"")}else{for(B=B.firstChild;B;B=B.nextSibling){y+=b(B)}}}}else{if(e===3||e===4){return B.nodeValue}}}else{for(z=0;(A=B[z]);z++){if(A.nodeType!==8){y+=b(A)}}}return y};var k=d.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(e){return e.getAttribute("href")},type:function(e){return e.getAttribute("type")}},relative:{"+":function(D,y){var A=typeof y==="string",C=A&&!x.test(y),E=A&&!C;if(C){y=y.toLowerCase()}for(var z=0,e=D.length,B;z<e;z++){if((B=D[z])){while((B=B.previousSibling)&&B.nodeType!==1){}D[z]=E||B&&B.nodeName.toLowerCase()===y?B||false:B===y}}if(E){d.filter(y,D,true)}},">":function(D,y){var C,B=typeof y==="string",z=0,e=D.length;if(B&&!x.test(y)){y=y.toLowerCase();for(;z<e;z++){C=D[z];if(C){var A=C.parentNode;D[z]=A.nodeName.toLowerCase()===y?A:false}}}else{for(;z<e;z++){C=D[z];if(C){D[z]=B?C.parentNode:C.parentNode===y}}if(B){d.filter(y,D,true)}}},"":function(A,y,C){var B,z=o++,e=t;if(typeof y==="string"&&!x.test(y)){y=y.toLowerCase();B=y;e=a}e("parentNode",y,z,A,B,C)},"~":function(A,y,C){var B,z=o++,e=t;if(typeof y==="string"&&!x.test(y)){y=y.toLowerCase();B=y;e=a}e("previousSibling",y,z,A,B,C)}},find:{ID:function(y,z,A){if(typeof z.getElementById!=="undefined"&&!A){var e=z.getElementById(y[1]);return e&&e.parentNode?[e]:[]}},NAME:function(z,C){if(typeof C.getElementsByName!=="undefined"){var y=[],B=C.getElementsByName(z[1]);for(var A=0,e=B.length;A<e;A++){if(B[A].getAttribute("name")===z[1]){y.push(B[A])}}return y.length===0?null:y}},TAG:function(e,y){if(typeof y.getElementsByTagName!=="undefined"){return y.getElementsByTagName(e[1])}}},preFilter:{CLASS:function(A,y,z,e,D,E){A=" "+A[1].replace(q,"")+" ";if(E){return A}for(var B=0,C;(C=y[B])!=null;B++){if(C){if(D^(C.className&&(" "+C.className+" ").replace(/[\t\n\r]/g," ").indexOf(A)>=0)){if(!z){e.push(C)}}else{if(z){y[B]=false}}}}return false},ID:function(e){return e[1].replace(q,"")},TAG:function(y,e){return y[1].replace(q,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){d.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var y=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(y[1]+(y[2]||1))-0;e[3]=y[3]-0}else{if(e[2]){d.error(e[0])}}e[0]=o++;return e},ATTR:function(B,y,z,e,C,D){var A=B[1]=B[1].replace(q,"");if(!D&&k.attrMap[A]){B[1]=k.attrMap[A]}B[4]=(B[4]||B[5]||"").replace(q,"");if(B[2]==="~="){B[4]=" "+B[4]+" "}return B},PSEUDO:function(B,y,z,e,C){if(B[1]==="not"){if((n.exec(B[3])||"").length>1||/^\w/.test(B[3])){B[3]=d(B[3],null,null,y)}else{var A=d.filter(B[3],y,z,true^C);if(!z){e.push.apply(e,A)}return false}}else{if(k.match.POS.test(B[0])||k.match.CHILD.test(B[0])){return true}}return B},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(z,y,e){return !!d(e[3],z).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(z){var e=z.getAttribute("type"),y=z.type;return z.nodeName.toLowerCase()==="input"&&"text"===y&&(e===y||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(y){var e=y.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===y.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(y){var e=y.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===y.type},button:function(y){var e=y.nodeName.toLowerCase();return e==="input"&&"button"===y.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(y,e){return e===0},last:function(z,y,e,A){return y===A.length-1},even:function(y,e){return e%2===0},odd:function(y,e){return e%2===1},lt:function(z,y,e){return y<e[3]-0},gt:function(z,y,e){return y>e[3]-0},nth:function(z,y,e){return e[3]-0===y},eq:function(z,y,e){return e[3]-0===y}},filter:{PSEUDO:function(z,E,D,F){var e=E[1],y=k.filters[e];if(y){return y(z,D,E,F)}else{if(e==="contains"){return(z.textContent||z.innerText||b([z])||"").indexOf(E[3])>=0}else{if(e==="not"){var A=E[3];for(var C=0,B=A.length;C<B;C++){if(A[C]===z){return false}}return true}else{d.error(e)}}}},CHILD:function(z,B){var A,H,D,G,e,C,F,E=B[1],y=z;switch(E){case"only":case"first":while((y=y.previousSibling)){if(y.nodeType===1){return false}}if(E==="first"){return true}y=z;case"last":while((y=y.nextSibling)){if(y.nodeType===1){return false}}return true;case"nth":A=B[2];H=B[3];if(A===1&&H===0){return true}D=B[0];G=z.parentNode;if(G&&(G[i]!==D||!z.nodeIndex)){C=0;for(y=G.firstChild;y;y=y.nextSibling){if(y.nodeType===1){y.nodeIndex=++C}}G[i]=D}F=z.nodeIndex-H;if(A===0){return F===0}else{return(F%A===0&&F/A>=0)}}},ID:function(y,e){return y.nodeType===1&&y.getAttribute("id")===e},TAG:function(y,e){return(e==="*"&&y.nodeType===1)||!!y.nodeName&&y.nodeName.toLowerCase()===e},CLASS:function(y,e){return(" "+(y.className||y.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(C,A){var z=A[1],e=d.attr?d.attr(C,z):k.attrHandle[z]?k.attrHandle[z](C):C[z]!=null?C[z]:C.getAttribute(z),D=e+"",B=A[2],y=A[4];return e==null?B==="!=":!B&&d.attr?e!=null:B==="="?D===y:B==="*="?D.indexOf(y)>=0:B==="~="?(" "+D+" ").indexOf(y)>=0:!y?D&&e!==false:B==="!="?D!==y:B==="^="?D.indexOf(y)===0:B==="$="?D.substr(D.length-y.length)===y:B==="|="?D===y||D.substr(0,y.length+1)===y+"-":false},POS:function(B,y,z,C){var e=y[2],A=k.setFilters[e];if(A){return A(B,z,y,C)}}}};var j=k.match.POS,c=function(y,e){return"\\"+(e-0+1)};for(var f in k.match){k.match[f]=new RegExp(k.match[f].source+(/(?![^\[]*\])(?![^\(]*\))/.source));k.leftMatch[f]=new RegExp(/(^(?:.|\r|\n)*?)/.source+k.match[f].source.replace(/\\(\d+)/g,c))}k.match.globalPOS=j;var l=function(y,e){y=Array.prototype.slice.call(y,0);if(e){e.push.apply(e,y);return e}return y};try{Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType}catch(v){l=function(B,A){var z=0,y=A||[];if(r.call(B)==="[object Array]"){Array.prototype.push.apply(y,B)}else{if(typeof B.length==="number"){for(var e=B.length;z<e;z++){y.push(B[z])}}else{for(;B[z];z++){y.push(B[z])}}}return y}}var p,m;if(document.documentElement.compareDocumentPosition){p=function(y,e){if(y===e){h=true;return 0}if(!y.compareDocumentPosition||!e.compareDocumentPosition){return y.compareDocumentPosition?-1:1}return y.compareDocumentPosition(e)&4?-1:1}}else{p=function(F,E){if(F===E){h=true;return 0}else{if(F.sourceIndex&&E.sourceIndex){return F.sourceIndex-E.sourceIndex}}var C,y,z=[],e=[],B=F.parentNode,D=E.parentNode,G=B;if(B===D){return m(F,E)}else{if(!B){return -1}else{if(!D){return 1}}}while(G){z.unshift(G);G=G.parentNode}G=D;while(G){e.unshift(G);G=G.parentNode}C=z.length;y=e.length;for(var A=0;A<C&&A<y;A++){if(z[A]!==e[A]){return m(z[A],e[A])}}return A===C?m(F,e[A],-1):m(z[A],E,1)};m=function(y,e,z){if(y===e){return z}var A=y.nextSibling;while(A){if(A===e){return -1}A=A.nextSibling}return 1}}(function(){var y=document.createElement("div"),z="script"+(new Date()).getTime(),e=document.documentElement;y.innerHTML="<a name='"+z+"'/>";e.insertBefore(y,e.firstChild);if(document.getElementById(z)){k.find.ID=function(B,C,D){if(typeof C.getElementById!=="undefined"&&!D){var A=C.getElementById(B[1]);return A?A.id===B[1]||typeof A.getAttributeNode!=="undefined"&&A.getAttributeNode("id").nodeValue===B[1]?[A]:undefined:[]}};k.filter.ID=function(C,A){var B=typeof C.getAttributeNode!=="undefined"&&C.getAttributeNode("id");return C.nodeType===1&&B&&B.nodeValue===A}}e.removeChild(y);e=y=null})();(function(){var e=document.createElement("div");e.appendChild(document.createComment(""));if(e.getElementsByTagName("*").length>0){k.find.TAG=function(y,C){var B=C.getElementsByTagName(y[1]);if(y[1]==="*"){var A=[];for(var z=0;B[z];z++){if(B[z].nodeType===1){A.push(B[z])}}B=A}return B}}e.innerHTML="<a href='#'></a>";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){k.attrHandle.href=function(y){return y.getAttribute("href",2)}}e=null})();if(document.querySelectorAll){(function(){var e=d,A=document.createElement("div"),z="__sizzle__";A.innerHTML="<p class='TEST'></p>";if(A.querySelectorAll&&A.querySelectorAll(".TEST").length===0){return}d=function(L,C,G,K){C=C||document;if(!K&&!d.isXML(C)){var J=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(L);if(J&&(C.nodeType===1||C.nodeType===9)){if(J[1]){return l(C.getElementsByTagName(L),G)}else{if(J[2]&&k.find.CLASS&&C.getElementsByClassName){return l(C.getElementsByClassName(J[2]),G)}}}if(C.nodeType===9){if(L==="body"&&C.body){return l([C.body],G)}else{if(J&&J[3]){var F=C.getElementById(J[3]);if(F&&F.parentNode){if(F.id===J[3]){return l([F],G)}}else{return l([],G)}}}try{return l(C.querySelectorAll(L),G)}catch(H){}}else{if(C.nodeType===1&&C.nodeName.toLowerCase()!=="object"){var D=C,E=C.getAttribute("id"),B=E||z,N=C.parentNode,M=/^\s*[+~]/.test(L);if(!E){C.setAttribute("id",B)}else{B=B.replace(/'/g,"\\$&")}if(M&&N){C=C.parentNode}try{if(!M||N){return l(C.querySelectorAll("[id='"+B+"'] "+L),G)}}catch(I){}finally{if(!E){D.removeAttribute("id")}}}}}return e(L,C,G,K)};for(var y in e){d[y]=e[y]}A=null})()}(function(){var e=document.documentElement,z=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(z){var B=!z.call(document.createElement("div"),"div"),y=false;try{z.call(document.documentElement,"[test!='']:sizzle")}catch(A){y=true}d.matchesSelector=function(D,F){F=F.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!d.isXML(D)){try{if(y||!k.match.PSEUDO.test(F)&&!/!=/.test(F)){var C=z.call(D,F);if(C||!B||D.document&&D.document.nodeType!==11){return C}}}catch(E){}}return d(F,null,null,[D]).length>0}}})();(function(){var e=document.createElement("div");e.innerHTML="<div class='test e'></div><div class='test'></div>";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}k.order.splice(1,0,"CLASS");k.find.CLASS=function(y,z,A){if(typeof z.getElementsByClassName!=="undefined"&&!A){return z.getElementsByClassName(y[1])}};e=null})();function a(y,D,C,G,E,F){for(var A=0,z=G.length;A<z;A++){var e=G[A];if(e){var B=false;e=e[y];while(e){if(e[i]===C){B=G[e.sizset];break}if(e.nodeType===1&&!F){e[i]=C;e.sizset=A}if(e.nodeName.toLowerCase()===D){B=e;break}e=e[y]}G[A]=B}}}function t(y,D,C,G,E,F){for(var A=0,z=G.length;A<z;A++){var e=G[A];if(e){var B=false;e=e[y];while(e){if(e[i]===C){B=G[e.sizset];break}if(e.nodeType===1){if(!F){e[i]=C;e.sizset=A}if(typeof D!=="string"){if(e===D){B=true;break}}else{if(d.filter(D,[e]).length>0){B=e;break}}}e=e[y]}G[A]=B}}}if(document.documentElement.contains){d.contains=function(y,e){return y!==e&&(y.contains?y.contains(e):true)}}else{if(document.documentElement.compareDocumentPosition){d.contains=function(y,e){return !!(y.compareDocumentPosition(e)&16)}}else{d.contains=function(){return false}}}d.isXML=function(e){var y=(e?e.ownerDocument||e:0).documentElement;return y?y.nodeName!=="HTML":false};var s=function(z,e,D){var C,E=[],B="",F=e.nodeType?[e]:e;while((C=k.match.PSEUDO.exec(z))){B+=C[0];z=z.replace(k.match.PSEUDO,"")}z=k.relative[z]?z+"*":z;for(var A=0,y=F.length;A<y;A++){d(z,F[A],E,D)}return d.filter(B,E)};window.tinymce.dom.Sizzle=d})();(function(a){a.dom.Element=function(f,d){var b=this,e,c;b.settings=d=d||{};b.id=f;b.dom=e=d.dom||a.DOM;if(!a.isIE){c=e.get(b.id)}a.each(("getPos,getRect,getParent,add,setStyle,getStyle,setStyles,setAttrib,setAttribs,getAttrib,addClass,removeClass,hasClass,getOuterHTML,setOuterHTML,remove,show,hide,isHidden,setHTML,get").split(/,/),function(g){b[g]=function(){var h=[f],j;for(j=0;j<arguments.length;j++){h.push(arguments[j])}h=e[g].apply(e,h);b.update(g);return h}});a.extend(b,{on:function(i,h,g){return a.dom.Event.add(b.id,i,h,g)},getXY:function(){return{x:parseInt(b.getStyle("left")),y:parseInt(b.getStyle("top"))}},getSize:function(){var g=e.get(b.id);return{w:parseInt(b.getStyle("width")||g.clientWidth),h:parseInt(b.getStyle("height")||g.clientHeight)}},moveTo:function(g,h){b.setStyles({left:g,top:h})},moveBy:function(g,i){var h=b.getXY();b.moveTo(h.x+g,h.y+i)},resizeTo:function(g,i){b.setStyles({width:g,height:i})},resizeBy:function(g,j){var i=b.getSize();b.resizeTo(i.w+g,i.h+j)},update:function(h){var g;if(a.isIE6&&d.blocker){h=h||"";if(h.indexOf("get")===0||h.indexOf("has")===0||h.indexOf("is")===0){return}if(h=="remove"){e.remove(b.blocker);return}if(!b.blocker){b.blocker=e.uniqueId();g=e.add(d.container||e.getRoot(),"iframe",{id:b.blocker,style:"position:absolute;",frameBorder:0,src:'javascript:""'});e.setStyle(g,"opacity",0)}else{g=e.get(b.blocker)}e.setStyles(g,{left:b.getStyle("left",1),top:b.getStyle("top",1),width:b.getStyle("width",1),height:b.getStyle("height",1),display:b.getStyle("display",1),zIndex:parseInt(b.getStyle("zIndex",1)||0)-1})}}})}})(tinymce);(function(d){function f(g){return g.replace(/[\n\r]+/g,"")}var c=d.is,b=d.isIE,e=d.each,a=d.dom.TreeWalker;d.create("tinymce.dom.Selection",{Selection:function(k,j,i,h){var g=this;g.dom=k;g.win=j;g.serializer=i;g.editor=h;e(["onBeforeSetContent","onBeforeGetContent","onSetContent","onGetContent"],function(l){g[l]=new d.util.Dispatcher(g)});if(!g.win.getSelection){g.tridentSel=new d.dom.TridentSelection(g)}if(d.isIE&&k.boxModel){this._fixIESelection()}d.addUnload(g.destroy,g)},setCursorLocation:function(i,j){var g=this;var h=g.dom.createRng();h.setStart(i,j);h.setEnd(i,j);g.setRng(h);g.collapse(false)},getContent:function(h){var g=this,i=g.getRng(),m=g.dom.create("body"),k=g.getSel(),j,l,o;h=h||{};j=l="";h.get=true;h.format=h.format||"html";h.forced_root_block="";g.onBeforeGetContent.dispatch(g,h);if(h.format=="text"){return g.isCollapsed()?"":(i.text||(k.toString?k.toString():""))}if(i.cloneContents){o=i.cloneContents();if(o){m.appendChild(o)}}else{if(c(i.item)||c(i.htmlText)){m.innerHTML="<br>"+(i.item?i.item(0).outerHTML:i.htmlText);m.removeChild(m.firstChild)}else{m.innerHTML=i.toString()}}if(/^\s/.test(m.innerHTML)){j=" "}if(/\s+$/.test(m.innerHTML)){l=" "}h.getInner=true;h.content=g.isCollapsed()?"":j+g.serializer.serialize(m,h)+l;g.onGetContent.dispatch(g,h);return h.content},setContent:function(h,j){var o=this,g=o.getRng(),k,l=o.win.document,n,m;j=j||{format:"html"};j.set=true;h=j.content=h;if(!j.no_events){o.onBeforeSetContent.dispatch(o,j)}h=j.content;if(g.insertNode){h+='<span id="__caret">_</span>';if(g.startContainer==l&&g.endContainer==l){l.body.innerHTML=h}else{g.deleteContents();if(l.body.childNodes.length===0){l.body.innerHTML=h}else{if(g.createContextualFragment){g.insertNode(g.createContextualFragment(h))}else{n=l.createDocumentFragment();m=l.createElement("div");n.appendChild(m);m.outerHTML=h;g.insertNode(n)}}}k=o.dom.get("__caret");g=l.createRange();g.setStartBefore(k);g.setEndBefore(k);o.setRng(g);o.dom.remove("__caret");try{o.setRng(g)}catch(i){}}else{if(g.item){l.execCommand("Delete",false,null);g=o.getRng()}if(/^\s+/.test(h)){g.pasteHTML('<span id="__mce_tmp">_</span>'+h);o.dom.remove("__mce_tmp")}else{g.pasteHTML(h)}}if(!j.no_events){o.onSetContent.dispatch(o,j)}},getStart:function(){var i=this,h=i.getRng(),j,g,l,k;if(h.duplicate||h.item){if(h.item){return h.item(0)}l=h.duplicate();l.collapse(1);j=l.parentElement();if(j.ownerDocument!==i.dom.doc){j=i.dom.getRoot()}g=k=h.parentElement();while(k=k.parentNode){if(k==j){j=g;break}}return j}else{j=h.startContainer;if(j.nodeType==1&&j.hasChildNodes()){j=j.childNodes[Math.min(j.childNodes.length-1,h.startOffset)]}if(j&&j.nodeType==3){return j.parentNode}return j}},getEnd:function(){var h=this,g=h.getRng(),j,i;if(g.duplicate||g.item){if(g.item){return g.item(0)}g=g.duplicate();g.collapse(0);j=g.parentElement();if(j.ownerDocument!==h.dom.doc){j=h.dom.getRoot()}if(j&&j.nodeName=="BODY"){return j.lastChild||j}return j}else{j=g.endContainer;i=g.endOffset;if(j.nodeType==1&&j.hasChildNodes()){j=j.childNodes[i>0?i-1:i]}if(j&&j.nodeType==3){return j.parentNode}return j}},getBookmark:function(s,v){var y=this,n=y.dom,h,k,j,o,i,p,q,m="\uFEFF",x;function g(z,A){var t=0;e(n.select(z),function(C,B){if(C==A){t=B}});return t}function u(t){function z(E){var A,D,C,B=E?"start":"end";A=t[B+"Container"];D=t[B+"Offset"];if(A.nodeType==1&&A.nodeName=="TR"){C=A.childNodes;A=C[Math.min(E?D:D-1,C.length-1)];if(A){D=E?0:A.childNodes.length;t["set"+(E?"Start":"End")](A,D)}}}z(true);z();return t}function l(){var z=y.getRng(true),t=n.getRoot(),A={};function B(E,J){var D=E[J?"startContainer":"endContainer"],I=E[J?"startOffset":"endOffset"],C=[],F,H,G=0;if(D.nodeType==3){if(v){for(F=D.previousSibling;F&&F.nodeType==3;F=F.previousSibling){I+=F.nodeValue.length}}C.push(I)}else{H=D.childNodes;if(I>=H.length&&H.length){G=1;I=Math.max(0,H.length-1)}C.push(y.dom.nodeIndex(H[I],v)+G)}for(;D&&D!=t;D=D.parentNode){C.push(y.dom.nodeIndex(D,v))}return C}A.start=B(z,true);if(!y.isCollapsed()){A.end=B(z)}return A}if(s==2){if(y.tridentSel){return y.tridentSel.getBookmark(s)}return l()}if(s){return{rng:y.getRng()}}h=y.getRng();j=n.uniqueId();o=tinyMCE.activeEditor.selection.isCollapsed();x="overflow:hidden;line-height:0px";if(h.duplicate||h.item){if(!h.item){k=h.duplicate();try{h.collapse();h.pasteHTML('<span data-mce-type="bookmark" id="'+j+'_start" style="'+x+'">'+m+"</span>");if(!o){k.collapse(false);h.moveToElementText(k.parentElement());if(h.compareEndPoints("StartToEnd",k)===0){k.move("character",-1)}k.pasteHTML('<span data-mce-type="bookmark" id="'+j+'_end" style="'+x+'">'+m+"</span>")}}catch(r){return null}}else{p=h.item(0);i=p.nodeName;return{name:i,index:g(i,p)}}}else{p=y.getNode();i=p.nodeName;if(i=="IMG"){return{name:i,index:g(i,p)}}k=u(h.cloneRange());if(!o){k.collapse(false);k.insertNode(n.create("span",{"data-mce-type":"bookmark",id:j+"_end",style:x},m))}h=u(h);h.collapse(true);h.insertNode(n.create("span",{"data-mce-type":"bookmark",id:j+"_start",style:x},m))}y.moveToBookmark({id:j,keep:1});return{id:j}},moveToBookmark:function(o){var s=this,m=s.dom,j,i,g,r,k,u,p,q;function h(A){var t=o[A?"start":"end"],x,y,z,v;if(t){z=t[0];for(y=r,x=t.length-1;x>=1;x--){v=y.childNodes;if(t[x]>v.length-1){return}y=v[t[x]]}if(y.nodeType===3){z=Math.min(t[0],y.nodeValue.length)}if(y.nodeType===1){z=Math.min(t[0],y.childNodes.length)}if(A){g.setStart(y,z)}else{g.setEnd(y,z)}}return true}function l(B){var v=m.get(o.id+"_"+B),A,t,y,z,x=o.keep;if(v){A=v.parentNode;if(B=="start"){if(!x){t=m.nodeIndex(v)}else{A=v.firstChild;t=1}k=u=A;p=q=t}else{if(!x){t=m.nodeIndex(v)}else{A=v.firstChild;t=1}u=A;q=t}if(!x){z=v.previousSibling;y=v.nextSibling;e(d.grep(v.childNodes),function(C){if(C.nodeType==3){C.nodeValue=C.nodeValue.replace(/\uFEFF/g,"")}});while(v=m.get(o.id+"_"+B)){m.remove(v,1)}if(z&&y&&z.nodeType==y.nodeType&&z.nodeType==3&&!d.isOpera){t=z.nodeValue.length;z.appendData(y.nodeValue);m.remove(y);if(B=="start"){k=u=z;p=q=t}else{u=z;q=t}}}}}function n(t){if(m.isBlock(t)&&!t.innerHTML&&!b){t.innerHTML='<br data-mce-bogus="1" />'}return t}if(o){if(o.start){g=m.createRng();r=m.getRoot();if(s.tridentSel){return s.tridentSel.moveToBookmark(o)}if(h(true)&&h()){s.setRng(g)}}else{if(o.id){l("start");l("end");if(k){g=m.createRng();g.setStart(n(k),p);g.setEnd(n(u),q);s.setRng(g)}}else{if(o.name){s.select(m.select(o.name)[o.index])}else{if(o.rng){s.setRng(o.rng)}}}}}},select:function(l,k){var j=this,m=j.dom,h=m.createRng(),g;function i(n,p){var o=new a(n,n);do{if(n.nodeType==3&&d.trim(n.nodeValue).length!==0){if(p){h.setStart(n,0)}else{h.setEnd(n,n.nodeValue.length)}return}if(n.nodeName=="BR"){if(p){h.setStartBefore(n)}else{h.setEndBefore(n)}return}}while(n=(p?o.next():o.prev()))}if(l){g=m.nodeIndex(l);h.setStart(l.parentNode,g);h.setEnd(l.parentNode,g+1);if(k){i(l,1);i(l)}j.setRng(h)}return l},isCollapsed:function(){var g=this,i=g.getRng(),h=g.getSel();if(!i||i.item){return false}if(i.compareEndPoints){return i.compareEndPoints("StartToEnd",i)===0}return !h||i.collapsed},collapse:function(g){var i=this,h=i.getRng(),j;if(h.item){j=h.item(0);h=i.win.document.body.createTextRange();h.moveToElementText(j)}h.collapse(!!g);i.setRng(h)},getSel:function(){var h=this,g=this.win;return g.getSelection?g.getSelection():g.document.selection},getRng:function(m){var h=this,j,g,l,k=h.win.document;if(m&&h.tridentSel){return h.tridentSel.getRangeAt(0)}try{if(j=h.getSel()){g=j.rangeCount>0?j.getRangeAt(0):(j.createRange?j.createRange():k.createRange())}}catch(i){}if(d.isIE&&g&&g.setStart&&k.selection.createRange().item){l=k.selection.createRange().item(0);g=k.createRange();g.setStartBefore(l);g.setEndAfter(l)}if(!g){g=k.createRange?k.createRange():k.body.createTextRange()}if(g.setStart&&g.startContainer.nodeType===9&&g.collapsed){l=h.dom.getRoot();g.setStart(l,0);g.setEnd(l,0)}if(h.selectedRange&&h.explicitRange){if(g.compareBoundaryPoints(g.START_TO_START,h.selectedRange)===0&&g.compareBoundaryPoints(g.END_TO_END,h.selectedRange)===0){g=h.explicitRange}else{h.selectedRange=null;h.explicitRange=null}}return g},setRng:function(k,g){var j,i=this;if(!i.tridentSel){j=i.getSel();if(j){i.explicitRange=k;try{j.removeAllRanges()}catch(h){}j.addRange(k);if(g===false&&j.extend){j.collapse(k.endContainer,k.endOffset);j.extend(k.startContainer,k.startOffset)}i.selectedRange=j.rangeCount>0?j.getRangeAt(0):null}}else{if(k.cloneRange){try{i.tridentSel.addRange(k);return}catch(h){}}try{k.select()}catch(h){}}},setNode:function(h){var g=this;g.setContent(g.dom.getOuterHTML(h));return h},getNode:function(){var i=this,h=i.getRng(),j=i.getSel(),m,l=h.startContainer,g=h.endContainer;function k(q,o){var p=q;while(q&&q.nodeType===3&&q.length===0){q=o?q.nextSibling:q.previousSibling}return q||p}if(!h){return i.dom.getRoot()}if(h.setStart){m=h.commonAncestorContainer;if(!h.collapsed){if(h.startContainer==h.endContainer){if(h.endOffset-h.startOffset<2){if(h.startContainer.hasChildNodes()){m=h.startContainer.childNodes[h.startOffset]}}}if(l.nodeType===3&&g.nodeType===3){if(l.length===h.startOffset){l=k(l.nextSibling,true)}else{l=l.parentNode}if(h.endOffset===0){g=k(g.previousSibling,false)}else{g=g.parentNode}if(l&&l===g){return l}}}if(m&&m.nodeType==3){return m.parentNode}return m}return h.item?h.item(0):h.parentElement()},getSelectedBlocks:function(p,h){var o=this,k=o.dom,m,l,i,j=[];m=k.getParent(p||o.getStart(),k.isBlock);l=k.getParent(h||o.getEnd(),k.isBlock);if(m){j.push(m)}if(m&&l&&m!=l){i=m;var g=new a(m,k.getRoot());while((i=g.next())&&i!=l){if(k.isBlock(i)){j.push(i)}}}if(l&&m!=l){j.push(l)}return j},isForward:function(){var i=this.dom,g=this.getSel(),j,h;if(!g||g.anchorNode==null||g.focusNode==null){return true}j=i.createRng();j.setStart(g.anchorNode,g.anchorOffset);j.collapse(true);h=i.createRng();h.setStart(g.focusNode,g.focusOffset);h.collapse(true);return j.compareBoundaryPoints(j.START_TO_START,h)<=0},normalize:function(){var h=this,g,m,l,j,i;function k(p){var o,r,n,s=h.dom,u=s.getRoot(),q,t,v;function y(z,A){var B=new a(z,s.getParent(z.parentNode,s.isBlock)||u);while(z=B[A?"prev":"next"]()){if(z.nodeName==="BR"){return true}}}function x(B,z){var C,A;z=z||o;C=new a(z,s.getParent(z.parentNode,s.isBlock)||u);while(q=C[B?"prev":"next"]()){if(q.nodeType===3&&q.nodeValue.length>0){o=q;r=B?q.nodeValue.length:0;m=true;return}if(s.isBlock(q)||t[q.nodeName.toLowerCase()]){return}A=q}if(l&&A){o=A;m=true;r=0}}o=g[(p?"start":"end")+"Container"];r=g[(p?"start":"end")+"Offset"];t=s.schema.getNonEmptyElements();if(o.nodeType===9){o=s.getRoot();r=0}if(o===u){if(p){q=o.childNodes[r>0?r-1:0];if(q){v=q.nodeName.toLowerCase();if(t[q.nodeName]||q.nodeName=="TABLE"){return}}}if(o.hasChildNodes()){o=o.childNodes[Math.min(!p&&r>0?r-1:r,o.childNodes.length-1)];r=0;if(o.hasChildNodes()&&!/TABLE/.test(o.nodeName)){q=o;n=new a(o,u);do{if(q.nodeType===3&&q.nodeValue.length>0){r=p?0:q.nodeValue.length;o=q;m=true;break}if(t[q.nodeName.toLowerCase()]){r=s.nodeIndex(q);o=q.parentNode;if(q.nodeName=="IMG"&&!p){r++}m=true;break}}while(q=(p?n.next():n.prev()))}}}if(l){if(o.nodeType===3&&r===0){x(true)}if(o.nodeType===1){q=o.childNodes[r];if(q&&q.nodeName==="BR"&&!y(q)&&!y(q,true)){x(true,o.childNodes[r])}}}if(p&&!l&&o.nodeType===3&&r===o.nodeValue.length){x(false)}if(m){g["set"+(p?"Start":"End")](o,r)}}if(d.isIE){return}g=h.getRng();l=g.collapsed;k(true);if(!l){k()}if(m){if(l){g.collapse(true)}h.setRng(g,h.isForward())}},selectorChanged:function(g,j){var h=this,i;if(!h.selectorChangedData){h.selectorChangedData={};i={};h.editor.onNodeChange.addToTop(function(l,k,o){var p=h.dom,m=p.getParents(o,null,p.getRoot()),n={};e(h.selectorChangedData,function(r,q){e(m,function(s){if(p.is(s,q)){if(!i[q]){e(r,function(t){t(true,{node:s,selector:q,parents:m})});i[q]=r}n[q]=r;return false}})});e(i,function(r,q){if(!n[q]){delete i[q];e(r,function(s){s(false,{node:o,selector:q,parents:m})})}})})}if(!h.selectorChangedData[g]){h.selectorChangedData[g]=[]}h.selectorChangedData[g].push(j);return h},scrollIntoView:function(k){var j,h,g=this,i=g.dom;h=i.getViewPort(g.editor.getWin());j=i.getPos(k).y;if(j<h.y||j+25>h.y+h.h){g.editor.getWin().scrollTo(0,j<h.y?j:j-h.h+25)}},destroy:function(h){var g=this;g.win=null;if(!h){d.removeUnload(g.destroy)}},_fixIESelection:function(){var h=this.dom,n=h.doc,i=n.body,k,o,g;function j(p,s){var q=i.createTextRange();try{q.moveToPoint(p,s)}catch(r){q=null}return q}function m(q){var p;if(q.button){p=j(q.x,q.y);if(p){if(p.compareEndPoints("StartToStart",o)>0){p.setEndPoint("StartToStart",o)}else{p.setEndPoint("EndToEnd",o)}p.select()}}else{l()}}function l(){var p=n.selection.createRange();if(o&&!p.item&&p.compareEndPoints("StartToEnd",p)===0){o.select()}h.unbind(n,"mouseup",l);h.unbind(n,"mousemove",m);o=k=0}n.documentElement.unselectable=true;h.bind(n,["mousedown","contextmenu"],function(p){if(p.target.nodeName==="HTML"){if(k){l()}g=n.documentElement;if(g.scrollHeight>g.clientHeight){return}k=1;o=j(p.x,p.y);if(o){h.bind(n,"mouseup",l);h.bind(n,"mousemove",m);h.win.focus();o.select()}}})}})})(tinymce);(function(a){a.dom.Serializer=function(e,i,f){var h,b,d=a.isIE,g=a.each,c;if(!e.apply_source_formatting){e.indent=false}i=i||a.DOM;f=f||new a.html.Schema(e);e.entity_encoding=e.entity_encoding||"named";e.remove_trailing_brs="remove_trailing_brs" in e?e.remove_trailing_brs:true;h=new a.util.Dispatcher(self);b=new a.util.Dispatcher(self);c=new a.html.DomParser(e,f);c.addAttributeFilter("src,href,style",function(k,j){var o=k.length,l,q,n="data-mce-"+j,p=e.url_converter,r=e.url_converter_scope,m;while(o--){l=k[o];q=l.attributes.map[n];if(q!==m){l.attr(j,q.length>0?q:null);l.attr(n,null)}else{q=l.attributes.map[j];if(j==="style"){q=i.serializeStyle(i.parseStyle(q),l.name)}else{if(p){q=p.call(r,q,j,l.name)}}l.attr(j,q.length>0?q:null)}}});c.addAttributeFilter("class",function(j,k){var l=j.length,m,n;while(l--){m=j[l];n=m.attr("class").replace(/(?:^|\s)mce(Item\w+|Selected)(?!\S)/g,"");m.attr("class",n.length>0?n:null)}});c.addAttributeFilter("data-mce-type",function(j,l,k){var m=j.length,n;while(m--){n=j[m];if(n.attributes.map["data-mce-type"]==="bookmark"&&!k.cleanup){n.remove()}}});c.addAttributeFilter("data-mce-expando",function(j,l,k){var m=j.length;while(m--){j[m].attr(l,null)}});c.addNodeFilter("noscript",function(j){var k=j.length,l;while(k--){l=j[k].firstChild;if(l){l.value=a.html.Entities.decode(l.value)}}});c.addNodeFilter("script,style",function(k,l){var m=k.length,n,o;function j(p){return p.replace(/(<!--\[CDATA\[|\]\]-->)/g,"\n").replace(/^[\r\n]*|[\r\n]*$/g,"").replace(/^\s*((<!--)?(\s*\/\/)?\s*<!\[CDATA\[|(<!--\s*)?\/\*\s*<!\[CDATA\[\s*\*\/|(\/\/)?\s*<!--|\/\*\s*<!--\s*\*\/)\s*[\r\n]*/gi,"").replace(/\s*(\/\*\s*\]\]>\s*\*\/(-->)?|\s*\/\/\s*\]\]>(-->)?|\/\/\s*(-->)?|\]\]>|\/\*\s*-->\s*\*\/|\s*-->\s*)\s*$/g,"")}while(m--){n=k[m];o=n.firstChild?n.firstChild.value:"";if(l==="script"){n.attr("type",(n.attr("type")||"text/javascript").replace(/^mce\-/,""));if(o.length>0){n.firstChild.value="// <![CDATA[\n"+j(o)+"\n// ]]>"}}else{if(o.length>0){n.firstChild.value="<!--\n"+j(o)+"\n-->"}}}});c.addNodeFilter("#comment",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.value.indexOf("[CDATA[")===0){m.name="#cdata";m.type=4;m.value=m.value.replace(/^\[CDATA\[|\]\]$/g,"")}else{if(m.value.indexOf("mce:protected ")===0){m.name="#text";m.type=3;m.raw=true;m.value=unescape(m.value).substr(14)}}}});c.addNodeFilter("xml:namespace,input",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.type===7){m.remove()}else{if(m.type===1){if(k==="input"&&!("type" in m.attributes.map)){m.attr("type","text")}}}}});if(e.fix_list_elements){c.addNodeFilter("ul,ol",function(k,l){var m=k.length,n,j;while(m--){n=k[m];j=n.parent;if(j.name==="ul"||j.name==="ol"){if(n.prev&&n.prev.name==="li"){n.prev.append(n)}}}})}c.addAttributeFilter("data-mce-src,data-mce-href,data-mce-style",function(j,k){var l=j.length;while(l--){j[l].attr(k,null)}});return{schema:f,addNodeFilter:c.addNodeFilter,addAttributeFilter:c.addAttributeFilter,onPreProcess:h,onPostProcess:b,serialize:function(o,m){var l,p,k,j,n;if(d&&i.select("script,style,select,map").length>0){n=o.innerHTML;o=o.cloneNode(false);i.setHTML(o,n)}else{o=o.cloneNode(true)}l=o.ownerDocument.implementation;if(l.createHTMLDocument){p=l.createHTMLDocument("");g(o.nodeName=="BODY"?o.childNodes:[o],function(q){p.body.appendChild(p.importNode(q,true))});if(o.nodeName!="BODY"){o=p.body.firstChild}else{o=p.body}k=i.doc;i.doc=p}m=m||{};m.format=m.format||"html";if(!m.no_events){m.node=o;h.dispatch(self,m)}j=new a.html.Serializer(e,f);m.content=j.serialize(c.parse(a.trim(m.getInner?o.innerHTML:i.getOuterHTML(o)),m));if(!m.cleanup){m.content=m.content.replace(/\uFEFF/g,"")}if(!m.no_events){b.dispatch(self,m)}if(k){i.doc=k}m.node=null;return m.content},addRules:function(j){f.addValidElements(j)},setRules:function(j){f.setValidElements(j)}}}})(tinymce);(function(a){a.dom.ScriptLoader=function(h){var c=0,k=1,i=2,l={},j=[],e={},d=[],g=0,f;function b(m,v){var x=this,q=a.DOM,s,o,r,n;function p(){q.remove(n);if(s){s.onreadystatechange=s.onload=s=null}v()}function u(){if(typeof(console)!=="undefined"&&console.log){console.log("Failed to load: "+m)}}n=q.uniqueId();if(a.isIE6){o=new a.util.URI(m);r=location;if(o.host==r.hostname&&o.port==r.port&&(o.protocol+":")==r.protocol&&o.protocol.toLowerCase()!="file"){a.util.XHR.send({url:a._addVer(o.getURI()),success:function(y){var t=q.create("script",{type:"text/javascript"});t.text=y;document.getElementsByTagName("head")[0].appendChild(t);q.remove(t);p()},error:u});return}}s=document.createElement("script");s.id=n;s.type="text/javascript";s.src=a._addVer(m);if(!a.isIE){s.onload=p}s.onerror=u;if(!a.isOpera){s.onreadystatechange=function(){var t=s.readyState;if(t=="complete"||t=="loaded"){p()}}}(document.getElementsByTagName("head")[0]||document.body).appendChild(s)}this.isDone=function(m){return l[m]==i};this.markDone=function(m){l[m]=i};this.add=this.load=function(m,q,n){var o,p=l[m];if(p==f){j.push(m);l[m]=c}if(q){if(!e[m]){e[m]=[]}e[m].push({func:q,scope:n||this})}};this.loadQueue=function(n,m){this.loadScripts(j,n,m)};this.loadScripts=function(m,q,p){var o;function n(r){a.each(e[r],function(s){s.func.call(s.scope)});e[r]=f}d.push({func:q,scope:p||this});o=function(){var r=a.grep(m);m.length=0;a.each(r,function(s){if(l[s]==i){n(s);return}if(l[s]!=k){l[s]=k;g++;b(s,function(){l[s]=i;g--;n(s);o()})}});if(!g){a.each(d,function(s){s.func.call(s.scope)});d.length=0}};o()}};a.ScriptLoader=new a.dom.ScriptLoader()})(tinymce);(function(a){a.dom.RangeUtils=function(c){var b="\uFEFF";this.walk=function(d,s){var i=d.startContainer,l=d.startOffset,t=d.endContainer,m=d.endOffset,j,g,o,h,r,q,e;e=c.select("td.mceSelected,th.mceSelected");if(e.length>0){a.each(e,function(u){s([u])});return}function f(u){var v;v=u[0];if(v.nodeType===3&&v===i&&l>=v.nodeValue.length){u.splice(0,1)}v=u[u.length-1];if(m===0&&u.length>0&&v===t&&v.nodeType===3){u.splice(u.length-1,1)}return u}function p(x,v,u){var y=[];for(;x&&x!=u;x=x[v]){y.push(x)}return y}function n(v,u){do{if(v.parentNode==u){return v}v=v.parentNode}while(v)}function k(x,v,y){var u=y?"nextSibling":"previousSibling";for(h=x,r=h.parentNode;h&&h!=v;h=r){r=h.parentNode;q=p(h==x?h:h[u],u);if(q.length){if(!y){q.reverse()}s(f(q))}}}if(i.nodeType==1&&i.hasChildNodes()){i=i.childNodes[l]}if(t.nodeType==1&&t.hasChildNodes()){t=t.childNodes[Math.min(m-1,t.childNodes.length-1)]}if(i==t){return s(f([i]))}j=c.findCommonAncestor(i,t);for(h=i;h;h=h.parentNode){if(h===t){return k(i,j,true)}if(h===j){break}}for(h=t;h;h=h.parentNode){if(h===i){return k(t,j)}if(h===j){break}}g=n(i,j)||i;o=n(t,j)||t;k(i,g,true);q=p(g==i?g:g.nextSibling,"nextSibling",o==t?o.nextSibling:o);if(q.length){s(f(q))}k(t,o)};this.split=function(e){var h=e.startContainer,d=e.startOffset,i=e.endContainer,g=e.endOffset;function f(j,k){return j.splitText(k)}if(h==i&&h.nodeType==3){if(d>0&&d<h.nodeValue.length){i=f(h,d);h=i.previousSibling;if(g>d){g=g-d;h=i=f(i,g).previousSibling;g=i.nodeValue.length;d=0}else{g=0}}}else{if(h.nodeType==3&&d>0&&d<h.nodeValue.length){h=f(h,d);d=0}if(i.nodeType==3&&g>0&&g<i.nodeValue.length){i=f(i,g).previousSibling;g=i.nodeValue.length}}return{startContainer:h,startOffset:d,endContainer:i,endOffset:g}}};a.dom.RangeUtils.compareRanges=function(c,b){if(c&&b){if(c.item||c.duplicate){if(c.item&&b.item&&c.item(0)===b.item(0)){return true}if(c.isEqual&&b.isEqual&&b.isEqual(c)){return true}}else{return c.startContainer==b.startContainer&&c.startOffset==b.startOffset}}return false}})(tinymce);(function(b){var a=b.dom.Event,c=b.each;b.create("tinymce.ui.KeyboardNavigation",{KeyboardNavigation:function(e,f){var q=this,n=e.root,m=e.items,o=e.enableUpDown,i=e.enableLeftRight||!e.enableUpDown,l=e.excludeFromTabOrder,k,h,p,d,g;f=f||b.DOM;k=function(r){g=r.target.id};h=function(r){f.setAttrib(r.target.id,"tabindex","-1")};d=function(r){var s=f.get(g);f.setAttrib(s,"tabindex","0");s.focus()};q.focus=function(){f.get(g).focus()};q.destroy=function(){c(m,function(s){var t=f.get(s.id);f.unbind(t,"focus",k);f.unbind(t,"blur",h)});var r=f.get(n);f.unbind(r,"focus",d);f.unbind(r,"keydown",p);m=f=n=q.focus=k=h=p=d=null;q.destroy=function(){}};q.moveFocus=function(v,s){var r=-1,u=q.controls,t;if(!g){return}c(m,function(y,x){if(y.id===g){r=x;return false}});r+=v;if(r<0){r=m.length-1}else{if(r>=m.length){r=0}}t=m[r];f.setAttrib(g,"tabindex","-1");f.setAttrib(t.id,"tabindex","0");f.get(t.id).focus();if(e.actOnFocus){e.onAction(t.id)}if(s){a.cancel(s)}};p=function(z){var v=37,u=39,y=38,A=40,r=27,t=14,s=13,x=32;switch(z.keyCode){case v:if(i){q.moveFocus(-1)}break;case u:if(i){q.moveFocus(1)}break;case y:if(o){q.moveFocus(-1)}break;case A:if(o){q.moveFocus(1)}break;case r:if(e.onCancel){e.onCancel();a.cancel(z)}break;case t:case s:case x:if(e.onAction){e.onAction(g);a.cancel(z)}break}};c(m,function(t,r){var s,u;if(!t.id){t.id=f.uniqueId("_mce_item_")}u=f.get(t.id);if(l){f.bind(u,"blur",h);s="-1"}else{s=(r===0?"0":"-1")}u.setAttribute("tabindex",s);f.bind(u,"focus",k)});if(m[0]){g=m[0].id}f.setAttrib(n,"tabindex","-1");var j=f.get(n);f.bind(j,"focus",d);f.bind(j,"keydown",p)}})})(tinymce);(function(c){var b=c.DOM,a=c.is;c.create("tinymce.ui.Control",{Control:function(f,e,d){this.id=f;this.settings=e=e||{};this.rendered=false;this.onRender=new c.util.Dispatcher(this);this.classPrefix="";this.scope=e.scope||this;this.disabled=0;this.active=0;this.editor=d},setAriaProperty:function(f,e){var d=b.get(this.id+"_aria")||b.get(this.id);if(d){b.setAttrib(d,"aria-"+f,!!e)}},focus:function(){b.get(this.id).focus()},setDisabled:function(d){if(d!=this.disabled){this.setAriaProperty("disabled",d);this.setState("Disabled",d);this.setState("Enabled",!d);this.disabled=d}},isDisabled:function(){return this.disabled},setActive:function(d){if(d!=this.active){this.setState("Active",d);this.active=d;this.setAriaProperty("pressed",d)}},isActive:function(){return this.active},setState:function(f,d){var e=b.get(this.id);f=this.classPrefix+f;if(d){b.addClass(e,f)}else{b.removeClass(e,f)}},isRendered:function(){return this.rendered},renderHTML:function(){},renderTo:function(d){b.setHTML(d,this.renderHTML())},postRender:function(){var e=this,d;if(a(e.disabled)){d=e.disabled;e.disabled=-1;e.setDisabled(d)}if(a(e.active)){d=e.active;e.active=-1;e.setActive(d)}},remove:function(){b.remove(this.id);this.destroy()},destroy:function(){c.dom.Event.clear(this.id)}})})(tinymce);tinymce.create("tinymce.ui.Container:tinymce.ui.Control",{Container:function(c,b,a){this.parent(c,b,a);this.controls=[];this.lookup={}},add:function(a){this.lookup[a.id]=a;this.controls.push(a);return a},get:function(a){return this.lookup[a]}});tinymce.create("tinymce.ui.Separator:tinymce.ui.Control",{Separator:function(b,a){this.parent(b,a);this.classPrefix="mceSeparator";this.setDisabled(true)},renderHTML:function(){return tinymce.DOM.createHTML("span",{"class":this.classPrefix,role:"separator","aria-orientation":"vertical",tabindex:"-1"})}});(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create("tinymce.ui.MenuItem:tinymce.ui.Control",{MenuItem:function(g,f){this.parent(g,f);this.classPrefix="mceMenuItem"},setSelected:function(f){this.setState("Selected",f);this.setAriaProperty("checked",!!f);this.selected=f},isSelected:function(){return this.selected},postRender:function(){var f=this;f.parent();if(c(f.selected)){f.setSelected(f.selected)}}})})(tinymce);(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create("tinymce.ui.Menu:tinymce.ui.MenuItem",{Menu:function(h,g){var f=this;f.parent(h,g);f.items={};f.collapsed=false;f.menuCount=0;f.onAddItem=new d.util.Dispatcher(this)},expand:function(g){var f=this;if(g){a(f,function(h){if(h.expand){h.expand()}},"items",f)}f.collapsed=false},collapse:function(g){var f=this;if(g){a(f,function(h){if(h.collapse){h.collapse()}},"items",f)}f.collapsed=true},isCollapsed:function(){return this.collapsed},add:function(f){if(!f.settings){f=new d.ui.MenuItem(f.id||b.uniqueId(),f)}this.onAddItem.dispatch(this,f);return this.items[f.id]=f},addSeparator:function(){return this.add({separator:true})},addMenu:function(f){if(!f.collapse){f=this.createMenu(f)}this.menuCount++;return this.add(f)},hasMenus:function(){return this.menuCount!==0},remove:function(f){delete this.items[f.id]},removeAll:function(){var f=this;a(f,function(g){if(g.removeAll){g.removeAll()}else{g.remove()}g.destroy()},"items",f);f.items={}},createMenu:function(g){var f=new d.ui.Menu(g.id||b.uniqueId(),g);f.onAddItem.add(this.onAddItem.dispatch,this.onAddItem);return f}})})(tinymce);(function(e){var d=e.is,c=e.DOM,f=e.each,a=e.dom.Event,b=e.dom.Element;e.create("tinymce.ui.DropMenu:tinymce.ui.Menu",{DropMenu:function(h,g){g=g||{};g.container=g.container||c.doc.body;g.offset_x=g.offset_x||0;g.offset_y=g.offset_y||0;g.vp_offset_x=g.vp_offset_x||0;g.vp_offset_y=g.vp_offset_y||0;if(d(g.icons)&&!g.icons){g["class"]+=" mceNoIcons"}this.parent(h,g);this.onShowMenu=new e.util.Dispatcher(this);this.onHideMenu=new e.util.Dispatcher(this);this.classPrefix="mceMenu"},createMenu:function(j){var h=this,i=h.settings,g;j.container=j.container||i.container;j.parent=h;j.constrain=j.constrain||i.constrain;j["class"]=j["class"]||i["class"];j.vp_offset_x=j.vp_offset_x||i.vp_offset_x;j.vp_offset_y=j.vp_offset_y||i.vp_offset_y;j.keyboard_focus=i.keyboard_focus;g=new e.ui.DropMenu(j.id||c.uniqueId(),j);g.onAddItem.add(h.onAddItem.dispatch,h.onAddItem);return g},focus:function(){var g=this;if(g.keyboardNav){g.keyboardNav.focus()}},update:function(){var i=this,j=i.settings,g=c.get("menu_"+i.id+"_tbl"),l=c.get("menu_"+i.id+"_co"),h,k;h=j.max_width?Math.min(g.offsetWidth,j.max_width):g.offsetWidth;k=j.max_height?Math.min(g.offsetHeight,j.max_height):g.offsetHeight;if(!c.boxModel){i.element.setStyles({width:h+2,height:k+2})}else{i.element.setStyles({width:h,height:k})}if(j.max_width){c.setStyle(l,"width",h)}if(j.max_height){c.setStyle(l,"height",k);if(g.clientHeight<j.max_height){c.setStyle(l,"overflow","hidden")}}},showMenu:function(p,n,r){var z=this,A=z.settings,o,g=c.getViewPort(),u,l,v,q,i=2,k,j,m=z.classPrefix;z.collapse(1);if(z.isMenuVisible){return}if(!z.rendered){o=c.add(z.settings.container,z.renderNode());f(z.items,function(h){h.postRender()});z.element=new b("menu_"+z.id,{blocker:1,container:A.container})}else{o=c.get("menu_"+z.id)}if(!e.isOpera){c.setStyles(o,{left:-65535,top:-65535})}c.show(o);z.update();p+=A.offset_x||0;n+=A.offset_y||0;g.w-=4;g.h-=4;if(A.constrain){u=o.clientWidth-i;l=o.clientHeight-i;v=g.x+g.w;q=g.y+g.h;if((p+A.vp_offset_x+u)>v){p=r?r-u:Math.max(0,(v-A.vp_offset_x)-u)}if((n+A.vp_offset_y+l)>q){n=Math.max(0,(q-A.vp_offset_y)-l)}}c.setStyles(o,{left:p,top:n});z.element.update();z.isMenuVisible=1;z.mouseClickFunc=a.add(o,"click",function(s){var h;s=s.target;if(s&&(s=c.getParent(s,"tr"))&&!c.hasClass(s,m+"ItemSub")){h=z.items[s.id];if(h.isDisabled()){return}k=z;while(k){if(k.hideMenu){k.hideMenu()}k=k.settings.parent}if(h.settings.onclick){h.settings.onclick(s)}return false}});if(z.hasMenus()){z.mouseOverFunc=a.add(o,"mouseover",function(x){var h,t,s;x=x.target;if(x&&(x=c.getParent(x,"tr"))){h=z.items[x.id];if(z.lastMenu){z.lastMenu.collapse(1)}if(h.isDisabled()){return}if(x&&c.hasClass(x,m+"ItemSub")){t=c.getRect(x);h.showMenu((t.x+t.w-i),t.y-i,t.x);z.lastMenu=h;c.addClass(c.get(h.id).firstChild,m+"ItemActive")}}})}a.add(o,"keydown",z._keyHandler,z);z.onShowMenu.dispatch(z);if(A.keyboard_focus){z._setupKeyboardNav()}},hideMenu:function(j){var g=this,i=c.get("menu_"+g.id),h;if(!g.isMenuVisible){return}if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(i,"mouseover",g.mouseOverFunc);a.remove(i,"click",g.mouseClickFunc);a.remove(i,"keydown",g._keyHandler);c.hide(i);g.isMenuVisible=0;if(!j){g.collapse(1)}if(g.element){g.element.hide()}if(h=c.get(g.id)){c.removeClass(h.firstChild,g.classPrefix+"ItemActive")}g.onHideMenu.dispatch(g)},add:function(i){var g=this,h;i=g.parent(i);if(g.isRendered&&(h=c.get("menu_"+g.id))){g._add(c.select("tbody",h)[0],i)}return i},collapse:function(g){this.parent(g);this.hideMenu(1)},remove:function(g){c.remove(g.id);this.destroy();return this.parent(g)},destroy:function(){var g=this,h=c.get("menu_"+g.id);if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(h,"mouseover",g.mouseOverFunc);a.remove(c.select("a",h),"focus",g.mouseOverFunc);a.remove(h,"click",g.mouseClickFunc);a.remove(h,"keydown",g._keyHandler);if(g.element){g.element.remove()}c.remove(h)},renderNode:function(){var i=this,j=i.settings,l,h,k,g;g=c.create("div",{role:"listbox",id:"menu_"+i.id,"class":j["class"],style:"position:absolute;left:0;top:0;z-index:200000;outline:0"});if(i.settings.parent){c.setAttrib(g,"aria-parent","menu_"+i.settings.parent.id)}k=c.add(g,"div",{role:"presentation",id:"menu_"+i.id+"_co","class":i.classPrefix+(j["class"]?" "+j["class"]:"")});i.element=new b("menu_"+i.id,{blocker:1,container:j.container});if(j.menu_line){c.add(k,"span",{"class":i.classPrefix+"Line"})}l=c.add(k,"table",{role:"presentation",id:"menu_"+i.id+"_tbl",border:0,cellPadding:0,cellSpacing:0});h=c.add(l,"tbody");f(i.items,function(m){i._add(h,m)});i.rendered=true;return g},_setupKeyboardNav:function(){var i,h,g=this;i=c.get("menu_"+g.id);h=c.select("a[role=option]","menu_"+g.id);h.splice(0,0,i);g.keyboardNav=new e.ui.KeyboardNavigation({root:"menu_"+g.id,items:h,onCancel:function(){g.hideMenu()},enableUpDown:true});i.focus()},_keyHandler:function(g){var h=this,i;switch(g.keyCode){case 37:if(h.settings.parent){h.hideMenu();h.settings.parent.focus();a.cancel(g)}break;case 39:if(h.mouseOverFunc){h.mouseOverFunc(g)}break}},_add:function(j,h){var i,q=h.settings,p,l,k,m=this.classPrefix,g;if(q.separator){l=c.add(j,"tr",{id:h.id,"class":m+"ItemSeparator"});c.add(l,"td",{"class":m+"ItemSeparator"});if(i=l.previousSibling){c.addClass(i,"mceLast")}return}i=l=c.add(j,"tr",{id:h.id,"class":m+"Item "+m+"ItemEnabled"});i=k=c.add(i,q.titleItem?"th":"td");i=p=c.add(i,"a",{id:h.id+"_aria",role:q.titleItem?"presentation":"option",href:"javascript:;",onclick:"return false;",onmousedown:"return false;"});if(q.parent){c.setAttrib(p,"aria-haspopup","true");c.setAttrib(p,"aria-owns","menu_"+h.id)}c.addClass(k,q["class"]);g=c.add(i,"span",{"class":"mceIcon"+(q.icon?" mce_"+q.icon:"")});if(q.icon_src){c.add(g,"img",{src:q.icon_src})}i=c.add(i,q.element||"span",{"class":"mceText",title:h.settings.title},h.settings.title);if(h.settings.style){if(typeof h.settings.style=="function"){h.settings.style=h.settings.style()}c.setAttrib(i,"style",h.settings.style)}if(j.childNodes.length==1){c.addClass(l,"mceFirst")}if((i=l.previousSibling)&&c.hasClass(i,m+"ItemSeparator")){c.addClass(l,"mceFirst")}if(h.collapse){c.addClass(l,m+"ItemSub")}if(i=l.previousSibling){c.removeClass(i,"mceLast")}c.addClass(l,"mceLast")}})})(tinymce);(function(b){var a=b.DOM;b.create("tinymce.ui.Button:tinymce.ui.Control",{Button:function(e,d,c){this.parent(e,d,c);this.classPrefix="mceButton"},renderHTML:function(){var f=this.classPrefix,e=this.settings,d,c;c=a.encode(e.label||"");d='<a role="button" id="'+this.id+'" href="javascript:;" class="'+f+" "+f+"Enabled "+e["class"]+(c?" "+f+"Labeled":"")+'" onmousedown="return false;" onclick="return false;" aria-labelledby="'+this.id+'_voice" title="'+a.encode(e.title)+'">';if(e.image&&!(this.editor&&this.editor.forcedHighContrastMode)){d+='<span class="mceIcon '+e["class"]+'"><img class="mceIcon" src="'+e.image+'" alt="'+a.encode(e.title)+'" /></span>'+(c?'<span class="'+f+'Label">'+c+"</span>":"")}else{d+='<span class="mceIcon '+e["class"]+'"></span>'+(c?'<span class="'+f+'Label">'+c+"</span>":"")}d+='<span class="mceVoiceLabel mceIconOnly" style="display: none;" id="'+this.id+'_voice">'+e.title+"</span>";d+="</a>";return d},postRender:function(){var d=this,e=d.settings,c;if(b.isIE&&d.editor){b.dom.Event.add(d.id,"mousedown",function(f){var g=d.editor.selection.getNode().nodeName;c=g==="IMG"?d.editor.selection.getBookmark():null})}b.dom.Event.add(d.id,"click",function(f){if(!d.isDisabled()){if(b.isIE&&d.editor&&c!==null){d.editor.selection.moveToBookmark(c)}return e.onclick.call(e.scope,f)}});b.dom.Event.add(d.id,"keyup",function(f){if(!d.isDisabled()&&f.keyCode==b.VK.SPACEBAR){return e.onclick.call(e.scope,f)}})}})})(tinymce);(function(e){var d=e.DOM,b=e.dom.Event,f=e.each,a=e.util.Dispatcher,c;e.create("tinymce.ui.ListBox:tinymce.ui.Control",{ListBox:function(j,i,g){var h=this;h.parent(j,i,g);h.items=[];h.onChange=new a(h);h.onPostRender=new a(h);h.onAdd=new a(h);h.onRenderMenu=new e.util.Dispatcher(this);h.classPrefix="mceListBox";h.marked={}},select:function(h){var g=this,j,i;g.marked={};if(h==c){return g.selectByIndex(-1)}if(h&&typeof(h)=="function"){i=h}else{i=function(k){return k==h}}if(h!=g.selectedValue){f(g.items,function(l,k){if(i(l.value)){j=1;g.selectByIndex(k);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(g){var i=this,j,k,h;i.marked={};if(g!=i.selectedIndex){j=d.get(i.id+"_text");h=d.get(i.id+"_voiceDesc");k=i.items[g];if(k){i.selectedValue=k.value;i.selectedIndex=g;d.setHTML(j,d.encode(k.title));d.setHTML(h,i.settings.title+" - "+k.title);d.removeClass(j,"mceTitle");d.setAttrib(i.id,"aria-valuenow",k.title)}else{d.setHTML(j,d.encode(i.settings.title));d.setHTML(h,d.encode(i.settings.title));d.addClass(j,"mceTitle");i.selectedValue=i.selectedIndex=null;d.setAttrib(i.id,"aria-valuenow",i.settings.title)}j=0}},mark:function(g){this.marked[g]=true},add:function(j,g,i){var h=this;i=i||{};i=e.extend(i,{title:j,value:g});h.items.push(i);h.onAdd.dispatch(h,i)},getLength:function(){return this.items.length},renderHTML:function(){var j="",g=this,i=g.settings,k=g.classPrefix;j='<span role="listbox" aria-haspopup="true" aria-labelledby="'+g.id+'_voiceDesc" aria-describedby="'+g.id+'_voiceDesc"><table role="presentation" tabindex="0" id="'+g.id+'" cellpadding="0" cellspacing="0" class="'+k+" "+k+"Enabled"+(i["class"]?(" "+i["class"]):"")+'"><tbody><tr>';j+="<td>"+d.createHTML("span",{id:g.id+"_voiceDesc","class":"voiceLabel",style:"display:none;"},g.settings.title);j+=d.createHTML("a",{id:g.id+"_text",tabindex:-1,href:"javascript:;","class":"mceText",onclick:"return false;",onmousedown:"return false;"},d.encode(g.settings.title))+"</td>";j+="<td>"+d.createHTML("a",{id:g.id+"_open",tabindex:-1,href:"javascript:;","class":"mceOpen",onclick:"return false;",onmousedown:"return false;"},'<span><span style="display:none;" class="mceIconOnly" aria-hidden="true">\u25BC</span></span>')+"</td>";j+="</tr></tbody></table></span>";return j},showMenu:function(){var h=this,j,i=d.get(this.id),g;if(h.isDisabled()||h.items.length===0){return}if(h.menu&&h.menu.isMenuVisible){return h.hideMenu()}if(!h.isMenuRendered){h.renderMenu();h.isMenuRendered=true}j=d.getPos(i);g=h.menu;g.settings.offset_x=j.x;g.settings.offset_y=j.y;g.settings.keyboard_focus=!e.isOpera;f(h.items,function(k){if(g.items[k.id]){g.items[k.id].setSelected(0)}});f(h.items,function(k){if(g.items[k.id]&&h.marked[k.value]){g.items[k.id].setSelected(1)}if(k.value===h.selectedValue){g.items[k.id].setSelected(1)}});g.showMenu(0,i.clientHeight);b.add(d.doc,"mousedown",h.hideMenu,h);d.addClass(h.id,h.classPrefix+"Selected")},hideMenu:function(h){var g=this;if(g.menu&&g.menu.isMenuVisible){d.removeClass(g.id,g.classPrefix+"Selected");if(h&&h.type=="mousedown"&&(h.target.id==g.id+"_text"||h.target.id==g.id+"_open")){return}if(!h||!d.getParent(h.target,".mceMenu")){d.removeClass(g.id,g.classPrefix+"Selected");b.remove(d.doc,"mousedown",g.hideMenu,g);g.menu.hideMenu()}}},renderMenu:function(){var h=this,g;g=h.settings.control_manager.createDropMenu(h.id+"_menu",{menu_line:1,"class":h.classPrefix+"Menu mceNoIcons",max_width:250,max_height:150});g.onHideMenu.add(function(){h.hideMenu();h.focus()});g.add({title:h.settings.title,"class":"mceMenuItemTitle",onclick:function(){if(h.settings.onselect("")!==false){h.select("")}}});f(h.items,function(i){if(i.value===c){g.add({title:i.title,role:"option","class":"mceMenuItemTitle",onclick:function(){if(h.settings.onselect("")!==false){h.select("")}}})}else{i.id=d.uniqueId();i.role="option";i.onclick=function(){if(h.settings.onselect(i.value)!==false){h.select(i.value)}};g.add(i)}});h.onRenderMenu.dispatch(h,g);h.menu=g},postRender:function(){var g=this,h=g.classPrefix;b.add(g.id,"click",g.showMenu,g);b.add(g.id,"keydown",function(i){if(i.keyCode==32){g.showMenu(i);b.cancel(i)}});b.add(g.id,"focus",function(){if(!g._focused){g.keyDownHandler=b.add(g.id,"keydown",function(i){if(i.keyCode==40){g.showMenu();b.cancel(i)}});g.keyPressHandler=b.add(g.id,"keypress",function(j){var i;if(j.keyCode==13){i=g.selectedValue;g.selectedValue=null;b.cancel(j);g.settings.onselect(i)}})}g._focused=1});b.add(g.id,"blur",function(){b.remove(g.id,"keydown",g.keyDownHandler);b.remove(g.id,"keypress",g.keyPressHandler);g._focused=0});if(e.isIE6||!d.boxModel){b.add(g.id,"mouseover",function(){if(!d.hasClass(g.id,h+"Disabled")){d.addClass(g.id,h+"Hover")}});b.add(g.id,"mouseout",function(){if(!d.hasClass(g.id,h+"Disabled")){d.removeClass(g.id,h+"Hover")}})}g.onPostRender.dispatch(g,d.get(g.id))},destroy:function(){this.parent();b.clear(this.id+"_text");b.clear(this.id+"_open")}})})(tinymce);(function(e){var d=e.DOM,b=e.dom.Event,f=e.each,a=e.util.Dispatcher,c;e.create("tinymce.ui.NativeListBox:tinymce.ui.ListBox",{NativeListBox:function(h,g){this.parent(h,g);this.classPrefix="mceNativeListBox"},setDisabled:function(g){d.get(this.id).disabled=g;this.setAriaProperty("disabled",g)},isDisabled:function(){return d.get(this.id).disabled},select:function(h){var g=this,j,i;if(h==c){return g.selectByIndex(-1)}if(h&&typeof(h)=="function"){i=h}else{i=function(k){return k==h}}if(h!=g.selectedValue){f(g.items,function(l,k){if(i(l.value)){j=1;g.selectByIndex(k);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(g){d.get(this.id).selectedIndex=g+1;this.selectedValue=this.items[g]?this.items[g].value:null},add:function(k,h,g){var j,i=this;g=g||{};g.value=h;if(i.isRendered()){d.add(d.get(this.id),"option",g,k)}j={title:k,value:h,attribs:g};i.items.push(j);i.onAdd.dispatch(i,j)},getLength:function(){return this.items.length},renderHTML:function(){var i,g=this;i=d.createHTML("option",{value:""},"-- "+g.settings.title+" --");f(g.items,function(h){i+=d.createHTML("option",{value:h.value},h.title)});i=d.createHTML("select",{id:g.id,"class":"mceNativeListBox","aria-labelledby":g.id+"_aria"},i);i+=d.createHTML("span",{id:g.id+"_aria",style:"display: none"},g.settings.title);return i},postRender:function(){var h=this,i,j=true;h.rendered=true;function g(l){var k=h.items[l.target.selectedIndex-1];if(k&&(k=k.value)){h.onChange.dispatch(h,k);if(h.settings.onselect){h.settings.onselect(k)}}}b.add(h.id,"change",g);b.add(h.id,"keydown",function(l){var k;b.remove(h.id,"change",i);j=false;k=b.add(h.id,"blur",function(){if(j){return}j=true;b.add(h.id,"change",g);b.remove(h.id,"blur",k)});if(e.isWebKit&&(l.keyCode==37||l.keyCode==39)){return b.prevent(l)}if(l.keyCode==13||l.keyCode==32){g(l);return b.cancel(l)}});h.onPostRender.dispatch(h,d.get(h.id))}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create("tinymce.ui.MenuButton:tinymce.ui.Button",{MenuButton:function(g,f,e){this.parent(g,f,e);this.onRenderMenu=new c.util.Dispatcher(this);f.menu_container=f.menu_container||b.doc.body},showMenu:function(){var g=this,j,i,h=b.get(g.id),f;if(g.isDisabled()){return}if(!g.isMenuRendered){g.renderMenu();g.isMenuRendered=true}if(g.isMenuVisible){return g.hideMenu()}j=b.getPos(g.settings.menu_container);i=b.getPos(h);f=g.menu;f.settings.offset_x=i.x;f.settings.offset_y=i.y;f.settings.vp_offset_x=i.x;f.settings.vp_offset_y=i.y;f.settings.keyboard_focus=g._focused;f.showMenu(0,h.firstChild.clientHeight);a.add(b.doc,"mousedown",g.hideMenu,g);g.setState("Selected",1);g.isMenuVisible=1},renderMenu:function(){var f=this,e;e=f.settings.control_manager.createDropMenu(f.id+"_menu",{menu_line:1,"class":this.classPrefix+"Menu",icons:f.settings.icons});e.onHideMenu.add(function(){f.hideMenu();f.focus()});f.onRenderMenu.dispatch(f,e);f.menu=e},hideMenu:function(g){var f=this;if(g&&g.type=="mousedown"&&b.getParent(g.target,function(h){return h.id===f.id||h.id===f.id+"_open"})){return}if(!g||!b.getParent(g.target,".mceMenu")){f.setState("Selected",0);a.remove(b.doc,"mousedown",f.hideMenu,f);if(f.menu){f.menu.hideMenu()}}f.isMenuVisible=0},postRender:function(){var e=this,f=e.settings;a.add(e.id,"click",function(){if(!e.isDisabled()){if(f.onclick){f.onclick(e.value)}e.showMenu()}})}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create("tinymce.ui.SplitButton:tinymce.ui.MenuButton",{SplitButton:function(g,f,e){this.parent(g,f,e);this.classPrefix="mceSplitButton"},renderHTML:function(){var i,f=this,g=f.settings,e;i="<tbody><tr>";if(g.image){e=b.createHTML("img ",{src:g.image,role:"presentation","class":"mceAction "+g["class"]})}else{e=b.createHTML("span",{"class":"mceAction "+g["class"]},"")}e+=b.createHTML("span",{"class":"mceVoiceLabel mceIconOnly",id:f.id+"_voice",style:"display:none;"},g.title);i+="<td >"+b.createHTML("a",{role:"button",id:f.id+"_action",tabindex:"-1",href:"javascript:;","class":"mceAction "+g["class"],onclick:"return false;",onmousedown:"return false;",title:g.title},e)+"</td>";e=b.createHTML("span",{"class":"mceOpen "+g["class"]},'<span style="display:none;" class="mceIconOnly" aria-hidden="true">\u25BC</span>');i+="<td >"+b.createHTML("a",{role:"button",id:f.id+"_open",tabindex:"-1",href:"javascript:;","class":"mceOpen "+g["class"],onclick:"return false;",onmousedown:"return false;",title:g.title},e)+"</td>";i+="</tr></tbody>";i=b.createHTML("table",{role:"presentation","class":"mceSplitButton mceSplitButtonEnabled "+g["class"],cellpadding:"0",cellspacing:"0",title:g.title},i);return b.createHTML("div",{id:f.id,role:"button",tabindex:"0","aria-labelledby":f.id+"_voice","aria-haspopup":"true"},i)},postRender:function(){var e=this,g=e.settings,f;if(g.onclick){f=function(h){if(!e.isDisabled()){g.onclick(e.value);a.cancel(h)}};a.add(e.id+"_action","click",f);a.add(e.id,["click","keydown"],function(h){var k=32,m=14,i=13,j=38,l=40;if((h.keyCode===32||h.keyCode===13||h.keyCode===14)&&!h.altKey&&!h.ctrlKey&&!h.metaKey){f();a.cancel(h)}else{if(h.type==="click"||h.keyCode===l){e.showMenu();a.cancel(h)}}})}a.add(e.id+"_open","click",function(h){e.showMenu();a.cancel(h)});a.add([e.id,e.id+"_open"],"focus",function(){e._focused=1});a.add([e.id,e.id+"_open"],"blur",function(){e._focused=0});if(c.isIE6||!b.boxModel){a.add(e.id,"mouseover",function(){if(!b.hasClass(e.id,"mceSplitButtonDisabled")){b.addClass(e.id,"mceSplitButtonHover")}});a.add(e.id,"mouseout",function(){if(!b.hasClass(e.id,"mceSplitButtonDisabled")){b.removeClass(e.id,"mceSplitButtonHover")}})}},destroy:function(){this.parent();a.clear(this.id+"_action");a.clear(this.id+"_open");a.clear(this.id)}})})(tinymce);(function(d){var c=d.DOM,a=d.dom.Event,b=d.is,e=d.each;d.create("tinymce.ui.ColorSplitButton:tinymce.ui.SplitButton",{ColorSplitButton:function(i,h,f){var g=this;g.parent(i,h,f);g.settings=h=d.extend({colors:"000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,008000,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF",grid_width:8,default_color:"#888888"},g.settings);g.onShowMenu=new d.util.Dispatcher(g);g.onHideMenu=new d.util.Dispatcher(g);g.value=h.default_color},showMenu:function(){var f=this,g,j,i,h;if(f.isDisabled()){return}if(!f.isMenuRendered){f.renderMenu();f.isMenuRendered=true}if(f.isMenuVisible){return f.hideMenu()}i=c.get(f.id);c.show(f.id+"_menu");c.addClass(i,"mceSplitButtonSelected");h=c.getPos(i);c.setStyles(f.id+"_menu",{left:h.x,top:h.y+i.firstChild.clientHeight,zIndex:200000});i=0;a.add(c.doc,"mousedown",f.hideMenu,f);f.onShowMenu.dispatch(f);if(f._focused){f._keyHandler=a.add(f.id+"_menu","keydown",function(k){if(k.keyCode==27){f.hideMenu()}});c.select("a",f.id+"_menu")[0].focus()}f.keyboardNav=new d.ui.KeyboardNavigation({root:f.id+"_menu",items:c.select("a",f.id+"_menu"),onCancel:function(){f.hideMenu();f.focus()}});f.keyboardNav.focus();f.isMenuVisible=1},hideMenu:function(g){var f=this;if(f.isMenuVisible){if(g&&g.type=="mousedown"&&c.getParent(g.target,function(h){return h.id===f.id+"_open"})){return}if(!g||!c.getParent(g.target,".mceSplitButtonMenu")){c.removeClass(f.id,"mceSplitButtonSelected");a.remove(c.doc,"mousedown",f.hideMenu,f);a.remove(f.id+"_menu","keydown",f._keyHandler);c.hide(f.id+"_menu")}f.isMenuVisible=0;f.onHideMenu.dispatch();f.keyboardNav.destroy()}},renderMenu:function(){var p=this,h,k=0,q=p.settings,g,j,l,o,f;o=c.add(q.menu_container,"div",{role:"listbox",id:p.id+"_menu","class":q.menu_class+" "+q["class"],style:"position:absolute;left:0;top:-1000px;"});h=c.add(o,"div",{"class":q["class"]+" mceSplitButtonMenu"});c.add(h,"span",{"class":"mceMenuLine"});g=c.add(h,"table",{role:"presentation","class":"mceColorSplitMenu"});j=c.add(g,"tbody");k=0;e(b(q.colors,"array")?q.colors:q.colors.split(","),function(m){m=m.replace(/^#/,"");if(!k--){l=c.add(j,"tr");k=q.grid_width-1}g=c.add(l,"td");var i={href:"javascript:;",style:{backgroundColor:"#"+m},title:p.editor.getLang("colors."+m,m),"data-mce-color":"#"+m};if(!d.isIE){i.role="option"}g=c.add(g,"a",i);if(p.editor.forcedHighContrastMode){g=c.add(g,"canvas",{width:16,height:16,"aria-hidden":"true"});if(g.getContext&&(f=g.getContext("2d"))){f.fillStyle="#"+m;f.fillRect(0,0,16,16)}else{c.remove(g)}}});if(q.more_colors_func){g=c.add(j,"tr");g=c.add(g,"td",{colspan:q.grid_width,"class":"mceMoreColors"});g=c.add(g,"a",{role:"option",id:p.id+"_more",href:"javascript:;",onclick:"return false;","class":"mceMoreColors"},q.more_colors_title);a.add(g,"click",function(i){q.more_colors_func.call(q.more_colors_scope||this);return a.cancel(i)})}c.addClass(h,"mceColorSplitMenu");a.add(p.id+"_menu","mousedown",function(i){return a.cancel(i)});a.add(p.id+"_menu","click",function(i){var m;i=c.getParent(i.target,"a",j);if(i&&i.nodeName.toLowerCase()=="a"&&(m=i.getAttribute("data-mce-color"))){p.setColor(m)}return false});return o},setColor:function(f){this.displayColor(f);this.hideMenu();this.settings.onselect(f)},displayColor:function(g){var f=this;c.setStyle(f.id+"_preview","backgroundColor",g);f.value=g},postRender:function(){var f=this,g=f.id;f.parent();c.add(g+"_action","div",{id:g+"_preview","class":"mceColorPreview"});c.setStyle(f.id+"_preview","backgroundColor",f.value)},destroy:function(){var f=this;f.parent();a.clear(f.id+"_menu");a.clear(f.id+"_more");c.remove(f.id+"_menu");if(f.keyboardNav){f.keyboardNav.destroy()}}})})(tinymce);(function(b){var d=b.DOM,c=b.each,a=b.dom.Event;b.create("tinymce.ui.ToolbarGroup:tinymce.ui.Container",{renderHTML:function(){var f=this,i=[],e=f.controls,j=b.each,g=f.settings;i.push('<div id="'+f.id+'" role="group" aria-labelledby="'+f.id+'_voice">');i.push("<span role='application'>");i.push('<span id="'+f.id+'_voice" class="mceVoiceLabel" style="display:none;">'+d.encode(g.name)+"</span>");j(e,function(h){i.push(h.renderHTML())});i.push("</span>");i.push("</div>");return i.join("")},focus:function(){var e=this;d.get(e.id).focus()},postRender:function(){var f=this,e=[];c(f.controls,function(g){c(g.controls,function(h){if(h.id){e.push(h)}})});f.keyNav=new b.ui.KeyboardNavigation({root:f.id,items:e,onCancel:function(){if(b.isWebKit){d.get(f.editor.id+"_ifr").focus()}f.editor.focus()},excludeFromTabOrder:!f.settings.tab_focus_toolbar})},destroy:function(){var e=this;e.parent();e.keyNav.destroy();a.clear(e.id)}})})(tinymce);(function(a){var c=a.DOM,b=a.each;a.create("tinymce.ui.Toolbar:tinymce.ui.Container",{renderHTML:function(){var m=this,f="",j,k,n=m.settings,e,d,g,l;l=m.controls;for(e=0;e<l.length;e++){k=l[e];d=l[e-1];g=l[e+1];if(e===0){j="mceToolbarStart";if(k.Button){j+=" mceToolbarStartButton"}else{if(k.SplitButton){j+=" mceToolbarStartSplitButton"}else{if(k.ListBox){j+=" mceToolbarStartListBox"}}}f+=c.createHTML("td",{"class":j},c.createHTML("span",null,"<!-- IE -->"))}if(d&&k.ListBox){if(d.Button||d.SplitButton){f+=c.createHTML("td",{"class":"mceToolbarEnd"},c.createHTML("span",null,"<!-- IE -->"))}}if(c.stdMode){f+='<td style="position: relative">'+k.renderHTML()+"</td>"}else{f+="<td>"+k.renderHTML()+"</td>"}if(g&&k.ListBox){if(g.Button||g.SplitButton){f+=c.createHTML("td",{"class":"mceToolbarStart"},c.createHTML("span",null,"<!-- IE -->"))}}}j="mceToolbarEnd";if(k.Button){j+=" mceToolbarEndButton"}else{if(k.SplitButton){j+=" mceToolbarEndSplitButton"}else{if(k.ListBox){j+=" mceToolbarEndListBox"}}}f+=c.createHTML("td",{"class":j},c.createHTML("span",null,"<!-- IE -->"));return c.createHTML("table",{id:m.id,"class":"mceToolbar"+(n["class"]?" "+n["class"]:""),cellpadding:"0",cellspacing:"0",align:m.settings.align||"",role:"presentation",tabindex:"-1"},"<tbody><tr>"+f+"</tr></tbody>")}})})(tinymce);(function(b){var a=b.util.Dispatcher,c=b.each;b.create("tinymce.AddOnManager",{AddOnManager:function(){var d=this;d.items=[];d.urls={};d.lookup={};d.onAdd=new a(d)},get:function(d){if(this.lookup[d]){return this.lookup[d].instance}else{return undefined}},dependencies:function(e){var d;if(this.lookup[e]){d=this.lookup[e].dependencies}return d||[]},requireLangPack:function(e){var d=b.settings;if(d&&d.language&&d.language_load!==false){b.ScriptLoader.add(this.urls[e]+"/langs/"+d.language+".js")}},add:function(f,e,d){this.items.push(e);this.lookup[f]={instance:e,dependencies:d};this.onAdd.dispatch(this,f,e);return e},createUrl:function(d,e){if(typeof e==="object"){return e}else{return{prefix:d.prefix,resource:e,suffix:d.suffix}}},addComponents:function(f,d){var e=this.urls[f];b.each(d,function(g){b.ScriptLoader.add(e+"/"+g)})},load:function(j,f,d,h){var g=this,e=f;function i(){var k=g.dependencies(j);b.each(k,function(m){var l=g.createUrl(f,m);g.load(l.resource,l,undefined,undefined)});if(d){if(h){d.call(h)}else{d.call(b.ScriptLoader)}}}if(g.urls[j]){return}if(typeof f==="object"){e=f.prefix+f.resource+f.suffix}if(e.indexOf("/")!==0&&e.indexOf("://")==-1){e=b.baseURL+"/"+e}g.urls[j]=e.substring(0,e.lastIndexOf("/"));if(g.lookup[j]){i()}else{b.ScriptLoader.add(e,i,h)}}});b.PluginManager=new b.AddOnManager();b.ThemeManager=new b.AddOnManager()}(tinymce));(function(j){var g=j.each,d=j.extend,k=j.DOM,i=j.dom.Event,f=j.ThemeManager,b=j.PluginManager,e=j.explode,h=j.util.Dispatcher,a,c=0;j.documentBaseURL=window.location.href.replace(/[\?#].*$/,"").replace(/[\/\\][^\/]+$/,"");if(!/[\/\\]$/.test(j.documentBaseURL)){j.documentBaseURL+="/"}j.baseURL=new j.util.URI(j.documentBaseURL).toAbsolute(j.baseURL);j.baseURI=new j.util.URI(j.baseURL);j.onBeforeUnload=new h(j);i.add(window,"beforeunload",function(l){j.onBeforeUnload.dispatch(j,l)});j.onAddEditor=new h(j);j.onRemoveEditor=new h(j);j.EditorManager=d(j,{editors:[],i18n:{},activeEditor:null,init:function(x){var v=this,o,n=j.ScriptLoader,u,l=[],r;function q(t){var s=t.id;if(!s){s=t.name;if(s&&!k.get(s)){s=t.name}else{s=k.uniqueId()}t.setAttribute("id",s)}return s}function m(z,A,t){var y=z[A];if(!y){return}if(j.is(y,"string")){t=y.replace(/\.\w+$/,"");t=t?j.resolve(t):0;y=j.resolve(y)}return y.apply(t||this,Array.prototype.slice.call(arguments,2))}function p(t,s){return s.constructor===RegExp?s.test(t.className):k.hasClass(t,s)}v.settings=x;i.bind(window,"ready",function(){var s,t;m(x,"onpageload");switch(x.mode){case"exact":s=x.elements||"";if(s.length>0){g(e(s),function(y){if(k.get(y)){r=new j.Editor(y,x);l.push(r);r.render(1)}else{g(document.forms,function(z){g(z.elements,function(A){if(A.name===y){y="mce_editor_"+c++;k.setAttrib(A,"id",y);r=new j.Editor(y,x);l.push(r);r.render(1)}})})}})}break;case"textareas":case"specific_textareas":g(k.select("textarea"),function(y){if(x.editor_deselector&&p(y,x.editor_deselector)){return}if(!x.editor_selector||p(y,x.editor_selector)){r=new j.Editor(q(y),x);l.push(r);r.render(1)}});break;default:if(x.types){g(x.types,function(y){g(k.select(y.selector),function(A){var z=new j.Editor(q(A),j.extend({},x,y));l.push(z);z.render(1)})})}else{if(x.selector){g(k.select(x.selector),function(z){var y=new j.Editor(q(z),x);l.push(y);y.render(1)})}}}if(x.oninit){s=t=0;g(l,function(y){t++;if(!y.initialized){y.onInit.add(function(){s++;if(s==t){m(x,"oninit")}})}else{s++}if(s==t){m(x,"oninit")}})}})},get:function(l){if(l===a){return this.editors}if(!this.editors.hasOwnProperty(l)){return a}return this.editors[l]},getInstanceById:function(l){return this.get(l)},add:function(m){var l=this,n=l.editors;n[m.id]=m;n.push(m);l._setActive(m);l.onAddEditor.dispatch(l,m);return m},remove:function(n){var m=this,l,o=m.editors;if(!o[n.id]){return null}delete o[n.id];for(l=0;l<o.length;l++){if(o[l]==n){o.splice(l,1);break}}if(m.activeEditor==n){m._setActive(o[0])}n.destroy();m.onRemoveEditor.dispatch(m,n);return n},execCommand:function(r,p,o){var q=this,n=q.get(o),l;function m(){n.destroy();l.detachEvent("onunload",m);l=l.tinyMCE=l.tinymce=null}switch(r){case"mceFocus":n.focus();return true;case"mceAddEditor":case"mceAddControl":if(!q.get(o)){new j.Editor(o,q.settings).render()}return true;case"mceAddFrameControl":l=o.window;l.tinyMCE=tinyMCE;l.tinymce=j;j.DOM.doc=l.document;j.DOM.win=l;n=new j.Editor(o.element_id,o);n.render();if(j.isIE){l.attachEvent("onunload",m)}o.page_window=null;return true;case"mceRemoveEditor":case"mceRemoveControl":if(n){n.remove()}return true;case"mceToggleEditor":if(!n){q.execCommand("mceAddControl",0,o);return true}if(n.isHidden()){n.show()}else{n.hide()}return true}if(q.activeEditor){return q.activeEditor.execCommand(r,p,o)}return false},execInstanceCommand:function(p,o,n,m){var l=this.get(p);if(l){return l.execCommand(o,n,m)}return false},triggerSave:function(){g(this.editors,function(l){l.save()})},addI18n:function(n,q){var l,m=this.i18n;if(!j.is(n,"string")){g(n,function(r,p){g(r,function(t,s){g(t,function(v,u){if(s==="common"){m[p+"."+u]=v}else{m[p+"."+s+"."+u]=v}})})})}else{g(q,function(r,p){m[n+"."+p]=r})}},_setActive:function(l){this.selectedInstance=this.activeEditor=l}})})(tinymce);(function(k){var l=k.DOM,j=k.dom.Event,f=k.extend,i=k.each,a=k.isGecko,b=k.isIE,e=k.isWebKit,d=k.is,h=k.ThemeManager,c=k.PluginManager,g=k.explode;k.create("tinymce.Editor",{Editor:function(p,o){var m=this,n=true;m.settings=o=f({id:p,language:"en",theme:"advanced",skin:"default",delta_width:0,delta_height:0,popup_css:"",plugins:"",document_base_url:k.documentBaseURL,add_form_submit_trigger:n,submit_patch:n,add_unload_trigger:n,convert_urls:n,relative_urls:n,remove_script_host:n,table_inline_editing:false,object_resizing:n,accessibility_focus:n,doctype:k.isIE6?'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">':"<!DOCTYPE>",visual:n,font_size_style_values:"xx-small,x-small,small,medium,large,x-large,xx-large",font_size_legacy_values:"xx-small,small,medium,large,x-large,xx-large,300%",apply_source_formatting:n,directionality:"ltr",forced_root_block:"p",hidden_input:n,padd_empty_editor:n,render_ui:n,indentation:"30px",fix_table_elements:n,inline_styles:n,convert_fonts_to_spans:n,indent:"simple",indent_before:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr,section,article,hgroup,aside,figure,option,optgroup,datalist",indent_after:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr,section,article,hgroup,aside,figure,option,optgroup,datalist",validate:n,entity_encoding:"named",url_converter:m.convertURL,url_converter_scope:m,ie7_compat:n},o);m.id=m.editorId=p;m.isNotDirty=false;m.plugins={};m.documentBaseURI=new k.util.URI(o.document_base_url||k.documentBaseURL,{base_uri:tinyMCE.baseURI});m.baseURI=k.baseURI;m.contentCSS=[];m.contentStyles=[];m.setupEvents();m.execCommands={};m.queryStateCommands={};m.queryValueCommands={};m.execCallback("setup",m)},render:function(o){var p=this,q=p.settings,r=p.id,m=k.ScriptLoader;if(!j.domLoaded){j.add(window,"ready",function(){p.render()});return}tinyMCE.settings=q;if(!p.getElement()){return}if(k.isIDevice&&!k.isIOS5){return}if(!/TEXTAREA|INPUT/i.test(p.getElement().nodeName)&&q.hidden_input&&l.getParent(r,"form")){l.insertAfter(l.create("input",{type:"hidden",name:r}),r)}if(!q.content_editable){p.orgVisibility=p.getElement().style.visibility;p.getElement().style.visibility="hidden"}if(k.WindowManager){p.windowManager=new k.WindowManager(p)}if(q.encoding=="xml"){p.onGetContent.add(function(s,t){if(t.save){t.content=l.encode(t.content)}})}if(q.add_form_submit_trigger){p.onSubmit.addToTop(function(){if(p.initialized){p.save();p.isNotDirty=1}})}if(q.add_unload_trigger){p._beforeUnload=tinyMCE.onBeforeUnload.add(function(){if(p.initialized&&!p.destroyed&&!p.isHidden()){p.save({format:"raw",no_events:true})}})}k.addUnload(p.destroy,p);if(q.submit_patch){p.onBeforeRenderUI.add(function(){var s=p.getElement().form;if(!s){return}if(s._mceOldSubmit){return}if(!s.submit.nodeType&&!s.submit.length){p.formElement=s;s._mceOldSubmit=s.submit;s.submit=function(){k.triggerSave();p.isNotDirty=1;return p.formElement._mceOldSubmit(p.formElement)}}s=null})}function n(){if(q.language&&q.language_load!==false){m.add(k.baseURL+"/langs/"+q.language+".js")}if(q.theme&&typeof q.theme!="function"&&q.theme.charAt(0)!="-"&&!h.urls[q.theme]){h.load(q.theme,"themes/"+q.theme+"/editor_template"+k.suffix+".js")}i(g(q.plugins),function(t){if(t&&!c.urls[t]){if(t.charAt(0)=="-"){t=t.substr(1,t.length);var s=c.dependencies(t);i(s,function(v){var u={prefix:"plugins/",resource:v,suffix:"/editor_plugin"+k.suffix+".js"};v=c.createUrl(u,v);c.load(v.resource,v)})}else{if(t=="safari"){return}c.load(t,{prefix:"plugins/",resource:t,suffix:"/editor_plugin"+k.suffix+".js"})}}});m.loadQueue(function(){if(!p.removed){p.init()}})}n()},init:function(){var q,G=this,H=G.settings,D,y,z,C=G.getElement(),p,m,E,v,B,F,x,r=[];k.add(G);H.aria_label=H.aria_label||l.getAttrib(C,"aria-label",G.getLang("aria.rich_text_area"));if(H.theme){if(typeof H.theme!="function"){H.theme=H.theme.replace(/-/,"");p=h.get(H.theme);G.theme=new p();if(G.theme.init){G.theme.init(G,h.urls[H.theme]||k.documentBaseURL.replace(/\/$/,""))}}else{G.theme=H.theme}}function A(s){var t=c.get(s),o=c.urls[s]||k.documentBaseURL.replace(/\/$/,""),n;if(t&&k.inArray(r,s)===-1){i(c.dependencies(s),function(u){A(u)});n=new t(G,o);G.plugins[s]=n;if(n.init){n.init(G,o);r.push(s)}}}i(g(H.plugins.replace(/\-/g,"")),A);if(H.popup_css!==false){if(H.popup_css){H.popup_css=G.documentBaseURI.toAbsolute(H.popup_css)}else{H.popup_css=G.baseURI.toAbsolute("themes/"+H.theme+"/skins/"+H.skin+"/dialog.css")}}if(H.popup_css_add){H.popup_css+=","+G.documentBaseURI.toAbsolute(H.popup_css_add)}G.controlManager=new k.ControlManager(G);G.onBeforeRenderUI.dispatch(G,G.controlManager);if(H.render_ui&&G.theme){G.orgDisplay=C.style.display;if(typeof H.theme!="function"){D=H.width||C.style.width||C.offsetWidth;y=H.height||C.style.height||C.offsetHeight;z=H.min_height||100;F=/^[0-9\.]+(|px)$/i;if(F.test(""+D)){D=Math.max(parseInt(D,10)+(p.deltaWidth||0),100)}if(F.test(""+y)){y=Math.max(parseInt(y,10)+(p.deltaHeight||0),z)}p=G.theme.renderUI({targetNode:C,width:D,height:y,deltaWidth:H.delta_width,deltaHeight:H.delta_height});l.setStyles(p.sizeContainer||p.editorContainer,{width:D,height:y});y=(p.iframeHeight||y)+(typeof(y)=="number"?(p.deltaHeight||0):"");if(y<z){y=z}}else{p=H.theme(G,C);if(p.editorContainer.nodeType){p.editorContainer=p.editorContainer.id=p.editorContainer.id||G.id+"_parent"}if(p.iframeContainer.nodeType){p.iframeContainer=p.iframeContainer.id=p.iframeContainer.id||G.id+"_iframecontainer"}y=p.iframeHeight||C.offsetHeight;if(b){G.onInit.add(function(n){n.dom.bind(n.getBody(),"beforedeactivate keydown",function(){n.lastIERng=n.selection.getRng()})})}}G.editorContainer=p.editorContainer}if(H.content_css){i(g(H.content_css),function(n){G.contentCSS.push(G.documentBaseURI.toAbsolute(n))})}if(H.content_style){G.contentStyles.push(H.content_style)}if(H.content_editable){C=q=p=null;return G.initContentBody()}if(document.domain&&location.hostname!=document.domain){k.relaxedDomain=document.domain}G.iframeHTML=H.doctype+'<html><head xmlns="http://www.w3.org/1999/xhtml">';if(H.document_base_url!=k.documentBaseURL){G.iframeHTML+='<base href="'+G.documentBaseURI.getURI()+'" />'}if(k.isIE8){if(H.ie7_compat){G.iframeHTML+='<meta http-equiv="X-UA-Compatible" content="IE=7" />'}else{G.iframeHTML+='<meta http-equiv="X-UA-Compatible" content="IE=edge" />'}}G.iframeHTML+='<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';for(x=0;x<G.contentCSS.length;x++){G.iframeHTML+='<link type="text/css" rel="stylesheet" href="'+G.contentCSS[x]+'" />'}G.contentCSS=[];v=H.body_id||"tinymce";if(v.indexOf("=")!=-1){v=G.getParam("body_id","","hash");v=v[G.id]||v}B=H.body_class||"";if(B.indexOf("=")!=-1){B=G.getParam("body_class","","hash");B=B[G.id]||""}G.iframeHTML+='</head><body id="'+v+'" class="mceContentBody '+B+'" onload="window.parent.tinyMCE.get(\''+G.id+"').onLoad.dispatch();\"><br></body></html>";if(k.relaxedDomain&&(b||(k.isOpera&&parseFloat(opera.version())<11))){E='javascript:(function(){document.open();document.domain="'+document.domain+'";var ed = window.parent.tinyMCE.get("'+G.id+'");document.write(ed.iframeHTML);document.close();ed.initContentBody();})()'}q=l.add(p.iframeContainer,"iframe",{id:G.id+"_ifr",src:E||'javascript:""',frameBorder:"0",allowTransparency:"true",title:H.aria_label,style:{width:"100%",height:y,display:"block"}});G.contentAreaContainer=p.iframeContainer;if(p.editorContainer){l.get(p.editorContainer).style.display=G.orgDisplay}C.style.visibility=G.orgVisibility;l.get(G.id).style.display="none";l.setAttrib(G.id,"aria-hidden",true);if(!k.relaxedDomain||!E){G.initContentBody()}C=q=p=null},initContentBody:function(){var n=this,p=n.settings,q=l.get(n.id),r=n.getDoc(),o,m,s;if((!b||!k.relaxedDomain)&&!p.content_editable){r.open();r.write(n.iframeHTML);r.close();if(k.relaxedDomain){r.domain=k.relaxedDomain}}if(p.content_editable){l.addClass(q,"mceContentBody");n.contentDocument=r=p.content_document||document;n.contentWindow=p.content_window||window;n.bodyElement=q;p.content_document=p.content_window=null}m=n.getBody();m.disabled=true;if(!p.readonly){m.contentEditable=n.getParam("content_editable_state",true)}m.disabled=false;n.schema=new k.html.Schema(p);n.dom=new k.dom.DOMUtils(r,{keep_values:true,url_converter:n.convertURL,url_converter_scope:n,hex_colors:p.force_hex_style_colors,class_filter:p.class_filter,update_styles:true,root_element:p.content_editable?n.id:null,schema:n.schema});n.parser=new k.html.DomParser(p,n.schema);n.parser.addAttributeFilter("src,href,style",function(t,u){var v=t.length,y,A=n.dom,z,x;while(v--){y=t[v];z=y.attr(u);x="data-mce-"+u;if(!y.attributes.map[x]){if(u==="style"){y.attr(x,A.serializeStyle(A.parseStyle(z),y.name))}else{y.attr(x,n.convertURL(z,u,y.name))}}}});n.parser.addNodeFilter("script",function(t,u){var v=t.length,x;while(v--){x=t[v];x.attr("type","mce-"+(x.attr("type")||"text/javascript"))}});n.parser.addNodeFilter("#cdata",function(t,u){var v=t.length,x;while(v--){x=t[v];x.type=8;x.name="#comment";x.value="[CDATA["+x.value+"]]"}});n.parser.addNodeFilter("p,h1,h2,h3,h4,h5,h6,div",function(u,v){var x=u.length,y,t=n.schema.getNonEmptyElements();while(x--){y=u[x];if(y.isEmpty(t)){y.empty().append(new k.html.Node("br",1)).shortEnded=true}}});n.serializer=new k.dom.Serializer(p,n.dom,n.schema);n.selection=new k.dom.Selection(n.dom,n.getWin(),n.serializer,n);n.formatter=new k.Formatter(n);n.undoManager=new k.UndoManager(n);n.forceBlocks=new k.ForceBlocks(n);n.enterKey=new k.EnterKey(n);n.editorCommands=new k.EditorCommands(n);n.onExecCommand.add(function(t,u){if(!/^(FontName|FontSize)$/.test(u)){n.nodeChanged()}});n.serializer.onPreProcess.add(function(t,u){return n.onPreProcess.dispatch(n,u,t)});n.serializer.onPostProcess.add(function(t,u){return n.onPostProcess.dispatch(n,u,t)});n.onPreInit.dispatch(n);if(!p.browser_spellcheck&&!p.gecko_spellcheck){r.body.spellcheck=false}if(!p.readonly){n.bindNativeEvents()}n.controlManager.onPostRender.dispatch(n,n.controlManager);n.onPostRender.dispatch(n);n.quirks=k.util.Quirks(n);if(p.directionality){m.dir=p.directionality}if(p.nowrap){m.style.whiteSpace="nowrap"}if(p.protect){n.onBeforeSetContent.add(function(t,u){i(p.protect,function(v){u.content=u.content.replace(v,function(x){return"<!--mce:protected "+escape(x)+"-->"})})})}n.onSetContent.add(function(){n.addVisual(n.getBody())});if(p.padd_empty_editor){n.onPostProcess.add(function(t,u){u.content=u.content.replace(/^(<p[^>]*>(&nbsp;|&#160;|\s|\u00a0|)<\/p>[\r\n]*|<br \/>[\r\n]*)$/,"")})}n.load({initial:true,format:"html"});n.startContent=n.getContent({format:"raw"});n.initialized=true;n.onInit.dispatch(n);n.execCallback("setupcontent_callback",n.id,m,r);n.execCallback("init_instance_callback",n);n.focus(true);n.nodeChanged({initial:true});if(n.contentStyles.length>0){s="";i(n.contentStyles,function(t){s+=t+"\r\n"});n.dom.addStyle(s)}i(n.contentCSS,function(t){n.dom.loadCSS(t)});if(p.auto_focus){setTimeout(function(){var t=k.get(p.auto_focus);t.selection.select(t.getBody(),1);t.selection.collapse(1);t.getBody().focus();t.getWin().focus()},100)}q=r=m=null},focus:function(p){var o,u=this,t=u.selection,q=u.settings.content_editable,n,r,s=u.getDoc(),m;if(!p){if(u.lastIERng){t.setRng(u.lastIERng)}n=t.getRng();if(n.item){r=n.item(0)}u._refreshContentEditable();if(!q){u.getWin().focus()}if(k.isGecko||q){m=u.getBody();if(m.setActive){m.setActive()}else{m.focus()}if(q){t.normalize()}}if(r&&r.ownerDocument==s){n=s.body.createControlRange();n.addElement(r);n.select()}}if(k.activeEditor!=u){if((o=k.activeEditor)!=null){o.onDeactivate.dispatch(o,u)}u.onActivate.dispatch(u,o)}k._setActive(u)},execCallback:function(q){var m=this,p=m.settings[q],o;if(!p){return}if(m.callbackLookup&&(o=m.callbackLookup[q])){p=o.func;o=o.scope}if(d(p,"string")){o=p.replace(/\.\w+$/,"");o=o?k.resolve(o):0;p=k.resolve(p);m.callbackLookup=m.callbackLookup||{};m.callbackLookup[q]={func:p,scope:o}}return p.apply(o||m,Array.prototype.slice.call(arguments,1))},translate:function(m){var o=this.settings.language||"en",n=k.i18n;if(!m){return""}return n[o+"."+m]||m.replace(/\{\#([^\}]+)\}/g,function(q,p){return n[o+"."+p]||"{#"+p+"}"})},getLang:function(o,m){return k.i18n[(this.settings.language||"en")+"."+o]||(d(m)?m:"{#"+o+"}")},getParam:function(t,q,m){var r=k.trim,p=d(this.settings[t])?this.settings[t]:q,s;if(m==="hash"){s={};if(d(p,"string")){i(p.indexOf("=")>0?p.split(/[;,](?![^=;,]*(?:[;,]|$))/):p.split(","),function(n){n=n.split("=");if(n.length>1){s[r(n[0])]=r(n[1])}else{s[r(n[0])]=r(n)}})}else{s=p}return s}return p},nodeChanged:function(q){var m=this,n=m.selection,p;if(m.initialized){q=q||{};p=n.getStart()||m.getBody();p=b&&p.ownerDocument!=m.getDoc()?m.getBody():p;q.parents=[];m.dom.getParent(p,function(o){if(o.nodeName=="BODY"){return true}q.parents.push(o)});m.onNodeChange.dispatch(m,q?q.controlManager||m.controlManager:m.controlManager,p,n.isCollapsed(),q)}},addButton:function(n,o){var m=this;m.buttons=m.buttons||{};m.buttons[n]=o},addCommand:function(m,o,n){this.execCommands[m]={func:o,scope:n||this}},addQueryStateHandler:function(m,o,n){this.queryStateCommands[m]={func:o,scope:n||this}},addQueryValueHandler:function(m,o,n){this.queryValueCommands[m]={func:o,scope:n||this}},addShortcut:function(o,q,m,p){var n=this,r;if(n.settings.custom_shortcuts===false){return false}n.shortcuts=n.shortcuts||{};if(d(m,"string")){r=m;m=function(){n.execCommand(r,false,null)}}if(d(m,"object")){r=m;m=function(){n.execCommand(r[0],r[1],r[2])}}i(g(o),function(s){var t={func:m,scope:p||this,desc:n.translate(q),alt:false,ctrl:false,shift:false};i(g(s,"+"),function(u){switch(u){case"alt":case"ctrl":case"shift":t[u]=true;break;default:t.charCode=u.charCodeAt(0);t.keyCode=u.toUpperCase().charCodeAt(0)}});n.shortcuts[(t.ctrl?"ctrl":"")+","+(t.alt?"alt":"")+","+(t.shift?"shift":"")+","+t.keyCode]=t});return true},execCommand:function(u,r,x,m){var p=this,q=0,v,n;if(!/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint|SelectAll)$/.test(u)&&(!m||!m.skip_focus)){p.focus()}m=f({},m);p.onBeforeExecCommand.dispatch(p,u,r,x,m);if(m.terminate){return false}if(p.execCallback("execcommand_callback",p.id,p.selection.getNode(),u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);return true}if(v=p.execCommands[u]){n=v.func.call(v.scope,r,x);if(n!==true){p.onExecCommand.dispatch(p,u,r,x,m);return n}}i(p.plugins,function(o){if(o.execCommand&&o.execCommand(u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);q=1;return false}});if(q){return true}if(p.theme&&p.theme.execCommand&&p.theme.execCommand(u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);return true}if(p.editorCommands.execCommand(u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);return true}p.getDoc().execCommand(u,r,x);p.onExecCommand.dispatch(p,u,r,x,m)},queryCommandState:function(q){var n=this,r,p;if(n._isHidden()){return}if(r=n.queryStateCommands[q]){p=r.func.call(r.scope);if(p!==true){return p}}r=n.editorCommands.queryCommandState(q);if(r!==-1){return r}try{return this.getDoc().queryCommandState(q)}catch(m){}},queryCommandValue:function(r){var n=this,q,p;if(n._isHidden()){return}if(q=n.queryValueCommands[r]){p=q.func.call(q.scope);if(p!==true){return p}}q=n.editorCommands.queryCommandValue(r);if(d(q)){return q}try{return this.getDoc().queryCommandValue(r)}catch(m){}},show:function(){var m=this;l.show(m.getContainer());l.hide(m.id);m.load()},hide:function(){var m=this,n=m.getDoc();if(b&&n){n.execCommand("SelectAll")}m.save();l.hide(m.getContainer());l.setStyle(m.id,"display",m.orgDisplay)},isHidden:function(){return !l.isHidden(this.id)},setProgressState:function(m,n,p){this.onSetProgressState.dispatch(this,m,n,p);return m},load:function(q){var m=this,p=m.getElement(),n;if(p){q=q||{};q.load=true;n=m.setContent(d(p.value)?p.value:p.innerHTML,q);q.element=p;if(!q.no_events){m.onLoadContent.dispatch(m,q)}q.element=p=null;return n}},save:function(r){var m=this,q=m.getElement(),n,p;if(!q||!m.initialized){return}r=r||{};r.save=true;r.element=q;n=r.content=m.getContent(r);if(!r.no_events){m.onSaveContent.dispatch(m,r)}n=r.content;if(!/TEXTAREA|INPUT/i.test(q.nodeName)){q.innerHTML=n;if(p=l.getParent(m.id,"form")){i(p.elements,function(o){if(o.name==m.id){o.value=n;return false}})}}else{q.value=n}r.element=q=null;return n},setContent:function(r,p){var o=this,n,m=o.getBody(),q;p=p||{};p.format=p.format||"html";p.set=true;p.content=r;if(!p.no_events){o.onBeforeSetContent.dispatch(o,p)}r=p.content;if(!k.isIE&&(r.length===0||/^\s+$/.test(r))){q=o.settings.forced_root_block;if(q){r="<"+q+'><br data-mce-bogus="1"></'+q+">"}else{r='<br data-mce-bogus="1">'}m.innerHTML=r;o.selection.select(m,true);o.selection.collapse(true);return}if(p.format!=="raw"){r=new k.html.Serializer({},o.schema).serialize(o.parser.parse(r))}p.content=k.trim(r);o.dom.setHTML(m,p.content);if(!p.no_events){o.onSetContent.dispatch(o,p)}if(!o.settings.content_editable||document.activeElement===o.getBody()){o.selection.normalize()}return p.content},getContent:function(o){var n=this,p,m=n.getBody();o=o||{};o.format=o.format||"html";o.get=true;o.getInner=true;if(!o.no_events){n.onBeforeGetContent.dispatch(n,o)}if(o.format=="raw"){p=m.innerHTML}else{if(o.format=="text"){p=m.innerText||m.textContent}else{p=n.serializer.serialize(m,o)}}if(o.format!="text"){o.content=k.trim(p)}else{o.content=p}if(!o.no_events){n.onGetContent.dispatch(n,o)}return o.content},isDirty:function(){var m=this;return k.trim(m.startContent)!=k.trim(m.getContent({format:"raw",no_events:1}))&&!m.isNotDirty},getContainer:function(){var m=this;if(!m.container){m.container=l.get(m.editorContainer||m.id+"_parent")}return m.container},getContentAreaContainer:function(){return this.contentAreaContainer},getElement:function(){return l.get(this.settings.content_element||this.id)},getWin:function(){var m=this,n;if(!m.contentWindow){n=l.get(m.id+"_ifr");if(n){m.contentWindow=n.contentWindow}}return m.contentWindow},getDoc:function(){var m=this,n;if(!m.contentDocument){n=m.getWin();if(n){m.contentDocument=n.document}}return m.contentDocument},getBody:function(){return this.bodyElement||this.getDoc().body},convertURL:function(o,n,q){var m=this,p=m.settings;if(p.urlconverter_callback){return m.execCallback("urlconverter_callback",o,q,true,n)}if(!p.convert_urls||(q&&q.nodeName=="LINK")||o.indexOf("file:")===0){return o}if(p.relative_urls){return m.documentBaseURI.toRelative(o)}o=m.documentBaseURI.toAbsolute(o,p.remove_script_host);return o},addVisual:function(q){var n=this,o=n.settings,p=n.dom,m;q=q||n.getBody();if(!d(n.hasVisual)){n.hasVisual=o.visual}i(p.select("table,a",q),function(s){var r;switch(s.nodeName){case"TABLE":m=o.visual_table_class||"mceItemTable";r=p.getAttrib(s,"border");if(!r||r=="0"){if(n.hasVisual){p.addClass(s,m)}else{p.removeClass(s,m)}}return;case"A":if(!p.getAttrib(s,"href",false)){r=p.getAttrib(s,"name")||s.id;m="mceItemAnchor";if(r){if(n.hasVisual){p.addClass(s,m)}else{p.removeClass(s,m)}}}return}});n.onVisualAid.dispatch(n,q,n.hasVisual)},remove:function(){var m=this,o=m.getContainer(),n=m.getDoc();if(!m.removed){m.removed=1;if(b&&n){n.execCommand("SelectAll")}m.save();l.setStyle(m.id,"display",m.orgDisplay);if(!m.settings.content_editable){j.unbind(m.getWin());j.unbind(m.getDoc())}j.unbind(m.getBody());j.clear(o);m.execCallback("remove_instance_callback",m);m.onRemove.dispatch(m);m.onExecCommand.listeners=[];k.remove(m);l.remove(o)}},destroy:function(n){var m=this;if(m.destroyed){return}if(a){j.unbind(m.getDoc());j.unbind(m.getWin());j.unbind(m.getBody())}if(!n){k.removeUnload(m.destroy);tinyMCE.onBeforeUnload.remove(m._beforeUnload);if(m.theme&&m.theme.destroy){m.theme.destroy()}m.controlManager.destroy();m.selection.destroy();m.dom.destroy()}if(m.formElement){m.formElement.submit=m.formElement._mceOldSubmit;m.formElement._mceOldSubmit=null}m.contentAreaContainer=m.formElement=m.container=m.settings.content_element=m.bodyElement=m.contentDocument=m.contentWindow=null;if(m.selection){m.selection=m.selection.win=m.selection.dom=m.selection.dom.doc=null}m.destroyed=1},_refreshContentEditable:function(){var n=this,m,o;if(n._isHidden()){m=n.getBody();o=m.parentNode;o.removeChild(m);o.appendChild(m);m.focus()}},_isHidden:function(){var m;if(!a){return 0}m=this.selection.getSel();return(!m||!m.rangeCount||m.rangeCount===0)}})})(tinymce);(function(a){var b=a.each;a.Editor.prototype.setupEvents=function(){var c=this,d=c.settings;b(["onPreInit","onBeforeRenderUI","onPostRender","onLoad","onInit","onRemove","onActivate","onDeactivate","onClick","onEvent","onMouseUp","onMouseDown","onDblClick","onKeyDown","onKeyUp","onKeyPress","onContextMenu","onSubmit","onReset","onPaste","onPreProcess","onPostProcess","onBeforeSetContent","onBeforeGetContent","onSetContent","onGetContent","onLoadContent","onSaveContent","onNodeChange","onChange","onBeforeExecCommand","onExecCommand","onUndo","onRedo","onVisualAid","onSetProgressState","onSetAttrib"],function(e){c[e]=new a.util.Dispatcher(c)});if(d.cleanup_callback){c.onBeforeSetContent.add(function(e,f){f.content=e.execCallback("cleanup_callback","insert_to_editor",f.content,f)});c.onPreProcess.add(function(e,f){if(f.set){e.execCallback("cleanup_callback","insert_to_editor_dom",f.node,f)}if(f.get){e.execCallback("cleanup_callback","get_from_editor_dom",f.node,f)}});c.onPostProcess.add(function(e,f){if(f.set){f.content=e.execCallback("cleanup_callback","insert_to_editor",f.content,f)}if(f.get){f.content=e.execCallback("cleanup_callback","get_from_editor",f.content,f)}})}if(d.save_callback){c.onGetContent.add(function(e,f){if(f.save){f.content=e.execCallback("save_callback",e.id,f.content,e.getBody())}})}if(d.handle_event_callback){c.onEvent.add(function(f,g,h){if(c.execCallback("handle_event_callback",g,f,h)===false){g.preventDefault();g.stopPropagation()}})}if(d.handle_node_change_callback){c.onNodeChange.add(function(f,e,g){f.execCallback("handle_node_change_callback",f.id,g,-1,-1,true,f.selection.isCollapsed())})}if(d.save_callback){c.onSaveContent.add(function(e,g){var f=e.execCallback("save_callback",e.id,g.content,e.getBody());if(f){g.content=f}})}if(d.onchange_callback){c.onChange.add(function(f,e){f.execCallback("onchange_callback",f,e)})}};a.Editor.prototype.bindNativeEvents=function(){var l=this,f,d=l.settings,e=l.dom,h;h={mouseup:"onMouseUp",mousedown:"onMouseDown",click:"onClick",keyup:"onKeyUp",keydown:"onKeyDown",keypress:"onKeyPress",submit:"onSubmit",reset:"onReset",contextmenu:"onContextMenu",dblclick:"onDblClick",paste:"onPaste"};function c(i,m){var n=i.type;if(l.removed){return}if(l.onEvent.dispatch(l,i,m)!==false){l[h[i.fakeType||i.type]].dispatch(l,i,m)}}function j(i){l.focus(true)}function k(i,m){if(m.keyCode!=65||!a.VK.metaKeyPressed(m)){l.selection.normalize()}l.nodeChanged()}b(h,function(m,n){var i=d.content_editable?l.getBody():l.getDoc();switch(n){case"contextmenu":e.bind(i,n,c);break;case"paste":e.bind(l.getBody(),n,c);break;case"submit":case"reset":e.bind(l.getElement().form||a.DOM.getParent(l.id,"form"),n,c);break;default:e.bind(i,n,c)}});e.bind(d.content_editable?l.getBody():(a.isGecko?l.getDoc():l.getWin()),"focus",function(i){l.focus(true)});if(d.content_editable&&a.isOpera){e.bind(l.getBody(),"click",j);e.bind(l.getBody(),"keydown",j)}l.onMouseUp.add(k);l.onKeyUp.add(function(i,n){var m=n.keyCode;if((m>=33&&m<=36)||(m>=37&&m<=40)||m==13||m==45||m==46||m==8||(a.isMac&&(m==91||m==93))||n.ctrlKey){k(i,n)}});l.onReset.add(function(){l.setContent(l.startContent,{format:"raw"})});function g(m,i){if(m.altKey||m.ctrlKey||m.metaKey){b(l.shortcuts,function(n){var o=a.isMac?m.metaKey:m.ctrlKey;if(n.ctrl!=o||n.alt!=m.altKey||n.shift!=m.shiftKey){return}if(m.keyCode==n.keyCode||(m.charCode&&m.charCode==n.charCode)){m.preventDefault();if(i){n.func.call(n.scope)}return true}})}}l.onKeyUp.add(function(i,m){g(m)});l.onKeyPress.add(function(i,m){g(m)});l.onKeyDown.add(function(i,m){g(m,true)});if(a.isOpera){l.onClick.add(function(i,m){m.preventDefault()})}}})(tinymce);(function(d){var e=d.each,b,a=true,c=false;d.EditorCommands=function(n){var m=n.dom,p=n.selection,j={state:{},exec:{},value:{}},k=n.settings,q=n.formatter,o;function r(z,y,x){var v;z=z.toLowerCase();if(v=j.exec[z]){v(z,y,x);return a}return c}function l(x){var v;x=x.toLowerCase();if(v=j.state[x]){return v(x)}return -1}function h(x){var v;x=x.toLowerCase();if(v=j.value[x]){return v(x)}return c}function u(v,x){x=x||"exec";e(v,function(z,y){e(y.toLowerCase().split(","),function(A){j[x][A]=z})})}d.extend(this,{execCommand:r,queryCommandState:l,queryCommandValue:h,addCommands:u});function f(y,x,v){if(x===b){x=c}if(v===b){v=null}return n.getDoc().execCommand(y,x,v)}function t(v){return q.match(v)}function s(v,x){q.toggle(v,x?{value:x}:b)}function i(v){o=p.getBookmark(v)}function g(){p.moveToBookmark(o)}u({"mceResetDesignMode,mceBeginUndoLevel":function(){},"mceEndUndoLevel,mceAddUndoLevel":function(){n.undoManager.add()},"Cut,Copy,Paste":function(z){var y=n.getDoc(),v;try{f(z)}catch(x){v=a}if(v||!y.queryCommandSupported(z)){if(d.isGecko){n.windowManager.confirm(n.getLang("clipboard_msg"),function(A){if(A){open("http://www.mozilla.org/editor/midasdemo/securityprefs.html","_blank")}})}else{n.windowManager.alert(n.getLang("clipboard_no_support"))}}},unlink:function(v){if(p.isCollapsed()){p.select(p.getNode())}f(v);p.collapse(c)},"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull":function(v){var x=v.substring(7);e("left,center,right,full".split(","),function(y){if(x!=y){q.remove("align"+y)}});s("align"+x);r("mceRepaint")},"InsertUnorderedList,InsertOrderedList":function(y){var v,x;f(y);v=m.getParent(p.getNode(),"ol,ul");if(v){x=v.parentNode;if(/^(H[1-6]|P|ADDRESS|PRE)$/.test(x.nodeName)){i();m.split(x,v);g()}}},"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":function(v){s(v)},"ForeColor,HiliteColor,FontName":function(y,x,v){s(y,v)},FontSize:function(z,y,x){var v,A;if(x>=1&&x<=7){A=d.explode(k.font_size_style_values);v=d.explode(k.font_size_classes);if(v){x=v[x-1]||x}else{x=A[x-1]||x}}s(z,x)},RemoveFormat:function(v){q.remove(v)},mceBlockQuote:function(v){s("blockquote")},FormatBlock:function(y,x,v){return s(v||"p")},mceCleanup:function(){var v=p.getBookmark();n.setContent(n.getContent({cleanup:a}),{cleanup:a});p.moveToBookmark(v)},mceRemoveNode:function(z,y,x){var v=x||p.getNode();if(v!=n.getBody()){i();n.dom.remove(v,a);g()}},mceSelectNodeDepth:function(z,y,x){var v=0;m.getParent(p.getNode(),function(A){if(A.nodeType==1&&v++==x){p.select(A);return c}},n.getBody())},mceSelectNode:function(y,x,v){p.select(v)},mceInsertContent:function(B,I,K){var y,J,E,z,F,G,D,C,L,x,A,M,v,H;y=n.parser;J=new d.html.Serializer({},n.schema);v='<span id="mce_marker" data-mce-type="bookmark">\uFEFF</span>';G={content:K,format:"html"};p.onBeforeSetContent.dispatch(p,G);K=G.content;if(K.indexOf("{$caret}")==-1){K+="{$caret}"}K=K.replace(/\{\$caret\}/,v);if(!p.isCollapsed()){n.getDoc().execCommand("Delete",false,null)}E=p.getNode();G={context:E.nodeName.toLowerCase()};F=y.parse(K,G);A=F.lastChild;if(A.attr("id")=="mce_marker"){D=A;for(A=A.prev;A;A=A.walk(true)){if(A.type==3||!m.isBlock(A.name)){A.parent.insert(D,A,A.name==="br");break}}}if(!G.invalid){K=J.serialize(F);A=E.firstChild;M=E.lastChild;if(!A||(A===M&&A.nodeName==="BR")){m.setHTML(E,K)}else{p.setContent(K)}}else{p.setContent(v);E=p.getNode();z=n.getBody();if(E.nodeType==9){E=A=z}else{A=E}while(A!==z){E=A;A=A.parentNode}K=E==z?z.innerHTML:m.getOuterHTML(E);K=J.serialize(y.parse(K.replace(/<span (id="mce_marker"|id=mce_marker).+?<\/span>/i,function(){return J.serialize(F)})));if(E==z){m.setHTML(z,K)}else{m.setOuterHTML(E,K)}}D=m.get("mce_marker");C=m.getRect(D);L=m.getViewPort(n.getWin());if((C.y+C.h>L.y+L.h||C.y<L.y)||(C.x>L.x+L.w||C.x<L.x)){H=d.isIE?n.getDoc().documentElement:n.getBody();H.scrollLeft=C.x;H.scrollTop=C.y-L.h+25}x=m.createRng();A=D.previousSibling;if(A&&A.nodeType==3){x.setStart(A,A.nodeValue.length)}else{x.setStartBefore(D);x.setEndBefore(D)}m.remove(D);p.setRng(x);p.onSetContent.dispatch(p,G);n.addVisual()},mceInsertRawHTML:function(y,x,v){p.setContent("tiny_mce_marker");n.setContent(n.getContent().replace(/tiny_mce_marker/g,function(){return v}))},mceToggleFormat:function(y,x,v){s(v)},mceSetContent:function(y,x,v){n.setContent(v)},"Indent,Outdent":function(z){var x,v,y;x=k.indentation;v=/[a-z%]+$/i.exec(x);x=parseInt(x);if(!l("InsertUnorderedList")&&!l("InsertOrderedList")){if(!k.forced_root_block&&!m.getParent(p.getNode(),m.isBlock)){q.apply("div")}e(p.getSelectedBlocks(),function(A){if(z=="outdent"){y=Math.max(0,parseInt(A.style.paddingLeft||0)-x);m.setStyle(A,"paddingLeft",y?y+v:"")}else{m.setStyle(A,"paddingLeft",(parseInt(A.style.paddingLeft||0)+x)+v)}})}else{f(z)}},mceRepaint:function(){var x;if(d.isGecko){try{i(a);if(p.getSel()){p.getSel().selectAllChildren(n.getBody())}p.collapse(a);g()}catch(v){}}},mceToggleFormat:function(y,x,v){q.toggle(v)},InsertHorizontalRule:function(){n.execCommand("mceInsertContent",false,"<hr />")},mceToggleVisualAid:function(){n.hasVisual=!n.hasVisual;n.addVisual()},mceReplaceContent:function(y,x,v){n.execCommand("mceInsertContent",false,v.replace(/\{\$selection\}/g,p.getContent({format:"text"})))},mceInsertLink:function(z,y,x){var v;if(typeof(x)=="string"){x={href:x}}v=m.getParent(p.getNode(),"a");x.href=x.href.replace(" ","%20");if(!v||!x.href){q.remove("link")}if(x.href){q.apply("link",x,v)}},selectAll:function(){var x=m.getRoot(),v=m.createRng();if(p.getRng().setStart){v.setStart(x,0);v.setEnd(x,x.childNodes.length);p.setRng(v)}else{f("SelectAll")}}});u({"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull":function(z){var x="align"+z.substring(7);var v=p.isCollapsed()?[m.getParent(p.getNode(),m.isBlock)]:p.getSelectedBlocks();var y=d.map(v,function(A){return !!q.matchNode(A,x)});return d.inArray(y,a)!==-1},"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":function(v){return t(v)},mceBlockQuote:function(){return t("blockquote")},Outdent:function(){var v;if(k.inline_styles){if((v=m.getParent(p.getStart(),m.isBlock))&&parseInt(v.style.paddingLeft)>0){return a}if((v=m.getParent(p.getEnd(),m.isBlock))&&parseInt(v.style.paddingLeft)>0){return a}}return l("InsertUnorderedList")||l("InsertOrderedList")||(!k.inline_styles&&!!m.getParent(p.getNode(),"BLOCKQUOTE"))},"InsertUnorderedList,InsertOrderedList":function(x){var v=m.getParent(p.getNode(),"ul,ol");return v&&(x==="insertunorderedlist"&&v.tagName==="UL"||x==="insertorderedlist"&&v.tagName==="OL")}},"state");u({"FontSize,FontName":function(y){var x=0,v;if(v=m.getParent(p.getNode(),"span")){if(y=="fontsize"){x=v.style.fontSize}else{x=v.style.fontFamily.replace(/, /g,",").replace(/[\'\"]/g,"").toLowerCase()}}return x}},"value");u({Undo:function(){n.undoManager.undo()},Redo:function(){n.undoManager.redo()}})}})(tinymce);(function(b){var a=b.util.Dispatcher;b.UndoManager=function(h){var l,i=0,e=[],g,k,j,f;function c(){return b.trim(h.getContent({format:"raw",no_events:1}).replace(/<span[^>]+data-mce-bogus[^>]+>[\u200B\uFEFF]+<\/span>/g,""))}function d(){l.typing=false;l.add()}onBeforeAdd=new a(l);k=new a(l);j=new a(l);f=new a(l);k.add(function(m,n){if(m.hasUndo()){return h.onChange.dispatch(h,n,m)}});j.add(function(m,n){return h.onUndo.dispatch(h,n,m)});f.add(function(m,n){return h.onRedo.dispatch(h,n,m)});h.onInit.add(function(){l.add()});h.onBeforeExecCommand.add(function(m,p,o,q,n){if(p!="Undo"&&p!="Redo"&&p!="mceRepaint"&&(!n||!n.skip_undo)){l.beforeChange()}});h.onExecCommand.add(function(m,p,o,q,n){if(p!="Undo"&&p!="Redo"&&p!="mceRepaint"&&(!n||!n.skip_undo)){l.add()}});h.onSaveContent.add(d);h.dom.bind(h.dom.getRoot(),"dragend",d);h.dom.bind(h.getBody(),"focusout",function(m){if(!h.removed&&l.typing){d()}});h.onKeyUp.add(function(m,o){var n=o.keyCode;if((n>=33&&n<=36)||(n>=37&&n<=40)||n==45||n==13||o.ctrlKey){d()}});h.onKeyDown.add(function(m,o){var n=o.keyCode;if((n>=33&&n<=36)||(n>=37&&n<=40)||n==45){if(l.typing){d()}return}if((n<16||n>20)&&n!=224&&n!=91&&!l.typing){l.beforeChange();l.typing=true;l.add()}});h.onMouseDown.add(function(m,n){if(l.typing){d()}});h.addShortcut("ctrl+z","undo_desc","Undo");h.addShortcut("ctrl+y","redo_desc","Redo");l={data:e,typing:false,onBeforeAdd:onBeforeAdd,onAdd:k,onUndo:j,onRedo:f,beforeChange:function(){g=h.selection.getBookmark(2,true)},add:function(p){var m,n=h.settings,o;p=p||{};p.content=c();l.onBeforeAdd.dispatch(l,p);o=e[i];if(o&&o.content==p.content){return null}if(e[i]){e[i].beforeBookmark=g}if(n.custom_undo_redo_levels){if(e.length>n.custom_undo_redo_levels){for(m=0;m<e.length-1;m++){e[m]=e[m+1]}e.length--;i=e.length}}p.bookmark=h.selection.getBookmark(2,true);if(i<e.length-1){e.length=i+1}e.push(p);i=e.length-1;l.onAdd.dispatch(l,p);h.isNotDirty=0;return p},undo:function(){var n,m;if(l.typing){l.add();l.typing=false}if(i>0){n=e[--i];h.setContent(n.content,{format:"raw"});h.selection.moveToBookmark(n.beforeBookmark);l.onUndo.dispatch(l,n)}return n},redo:function(){var m;if(i<e.length-1){m=e[++i];h.setContent(m.content,{format:"raw"});h.selection.moveToBookmark(m.bookmark);l.onRedo.dispatch(l,m)}return m},clear:function(){e=[];i=0;l.typing=false},hasUndo:function(){return i>0||this.typing},hasRedo:function(){return i<e.length-1&&!this.typing}};return l}})(tinymce);tinymce.ForceBlocks=function(c){var b=c.settings,e=c.dom,a=c.selection,d=c.schema.getBlockElements();function f(){var j=a.getStart(),h=c.getBody(),g,k,o,s,q,i,l,m=-16777215,p,r;if(!j||j.nodeType!==1||!b.forced_root_block){return}while(j&&j!=h){if(d[j.nodeName]){return}j=j.parentNode}g=a.getRng();if(g.setStart){k=g.startContainer;o=g.startOffset;s=g.endContainer;q=g.endOffset}else{if(g.item){j=g.item(0);g=c.getDoc().body.createTextRange();g.moveToElementText(j)}r=g.parentElement().ownerDocument===c.getDoc();tmpRng=g.duplicate();tmpRng.collapse(true);o=tmpRng.move("character",m)*-1;if(!tmpRng.collapsed){tmpRng=g.duplicate();tmpRng.collapse(false);q=(tmpRng.move("character",m)*-1)-o}}j=h.firstChild;while(j){if(j.nodeType===3||(j.nodeType==1&&!d[j.nodeName])){if(j.nodeType===3&&j.nodeValue.length==0){l=j;j=j.nextSibling;e.remove(l);continue}if(!i){i=e.create(b.forced_root_block);j.parentNode.insertBefore(i,j);p=true}l=j;j=j.nextSibling;i.appendChild(l)}else{i=null;j=j.nextSibling}}if(p){if(g.setStart){g.setStart(k,o);g.setEnd(s,q);a.setRng(g)}else{if(r){try{g=c.getDoc().body.createTextRange();g.moveToElementText(h);g.collapse(true);g.moveStart("character",o);if(q>0){g.moveEnd("character",q)}g.select()}catch(n){}}}c.nodeChanged()}}if(b.forced_root_block){c.onKeyUp.add(f);c.onNodeChange.add(f)}};(function(c){var b=c.DOM,a=c.dom.Event,d=c.each,e=c.extend;c.create("tinymce.ControlManager",{ControlManager:function(f,j){var h=this,g;j=j||{};h.editor=f;h.controls={};h.onAdd=new c.util.Dispatcher(h);h.onPostRender=new c.util.Dispatcher(h);h.prefix=j.prefix||f.id+"_";h._cls={};h.onPostRender.add(function(){d(h.controls,function(i){i.postRender()})})},get:function(f){return this.controls[this.prefix+f]||this.controls[f]},setActive:function(h,f){var g=null;if(g=this.get(h)){g.setActive(f)}return g},setDisabled:function(h,f){var g=null;if(g=this.get(h)){g.setDisabled(f)}return g},add:function(g){var f=this;if(g){f.controls[g.id]=g;f.onAdd.dispatch(g,f)}return g},createControl:function(j){var o,k,g,h=this,m=h.editor,n,f;if(!h.controlFactories){h.controlFactories=[];d(m.plugins,function(i){if(i.createControl){h.controlFactories.push(i)}})}n=h.controlFactories;for(k=0,g=n.length;k<g;k++){o=n[k].createControl(j,h);if(o){return h.add(o)}}if(j==="|"||j==="separator"){return h.createSeparator()}if(m.buttons&&(o=m.buttons[j])){return h.createButton(j,o)}return h.add(o)},createDropMenu:function(f,n,h){var m=this,i=m.editor,j,g,k,l;n=e({"class":"mceDropDown",constrain:i.settings.constrain_menus},n);n["class"]=n["class"]+" "+i.getParam("skin")+"Skin";if(k=i.getParam("skin_variant")){n["class"]+=" "+i.getParam("skin")+"Skin"+k.substring(0,1).toUpperCase()+k.substring(1)}n["class"]+=i.settings.directionality=="rtl"?" mceRtl":"";f=m.prefix+f;l=h||m._cls.dropmenu||c.ui.DropMenu;j=m.controls[f]=new l(f,n);j.onAddItem.add(function(r,q){var p=q.settings;p.title=i.getLang(p.title,p.title);if(!p.onclick){p.onclick=function(o){if(p.cmd){i.execCommand(p.cmd,p.ui||false,p.value)}}}});i.onRemove.add(function(){j.destroy()});if(c.isIE){j.onShowMenu.add(function(){i.focus();g=i.selection.getBookmark(1)});j.onHideMenu.add(function(){if(g){i.selection.moveToBookmark(g);g=0}})}return m.add(j)},createListBox:function(f,n,h){var l=this,j=l.editor,i,k,m;if(l.get(f)){return null}n.title=j.translate(n.title);n.scope=n.scope||j;if(!n.onselect){n.onselect=function(o){j.execCommand(n.cmd,n.ui||false,o||n.value)}}n=e({title:n.title,"class":"mce_"+f,scope:n.scope,control_manager:l},n);f=l.prefix+f;function g(o){return o.settings.use_accessible_selects&&!c.isGecko}if(j.settings.use_native_selects||g(j)){k=new c.ui.NativeListBox(f,n)}else{m=h||l._cls.listbox||c.ui.ListBox;k=new m(f,n,j)}l.controls[f]=k;if(c.isWebKit){k.onPostRender.add(function(p,o){a.add(o,"mousedown",function(){j.bookmark=j.selection.getBookmark(1)});a.add(o,"focus",function(){j.selection.moveToBookmark(j.bookmark);j.bookmark=null})})}if(k.hideMenu){j.onMouseDown.add(k.hideMenu,k)}return l.add(k)},createButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.label=g.translate(i.label);i.scope=i.scope||g;if(!i.onclick&&!i.menu_button){i.onclick=function(){g.execCommand(i.cmd,i.ui||false,i.value)}}i=e({title:i.title,"class":"mce_"+m,unavailable_prefix:g.getLang("unavailable",""),scope:i.scope,control_manager:h},i);m=h.prefix+m;if(i.menu_button){f=l||h._cls.menubutton||c.ui.MenuButton;k=new f(m,i,g);g.onMouseDown.add(k.hideMenu,k)}else{f=h._cls.button||c.ui.Button;k=new f(m,i,g)}return h.add(k)},createMenuButton:function(h,f,g){f=f||{};f.menu_button=1;return this.createButton(h,f,g)},createSplitButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.scope=i.scope||g;if(!i.onclick){i.onclick=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}if(!i.onselect){i.onselect=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}i=e({title:i.title,"class":"mce_"+m,scope:i.scope,control_manager:h},i);m=h.prefix+m;f=l||h._cls.splitbutton||c.ui.SplitButton;k=h.add(new f(m,i,g));g.onMouseDown.add(k.hideMenu,k);return k},createColorSplitButton:function(f,n,h){var l=this,j=l.editor,i,k,m,g;if(l.get(f)){return null}n.title=j.translate(n.title);n.scope=n.scope||j;if(!n.onclick){n.onclick=function(o){if(c.isIE){g=j.selection.getBookmark(1)}j.execCommand(n.cmd,n.ui||false,o||n.value)}}if(!n.onselect){n.onselect=function(o){j.execCommand(n.cmd,n.ui||false,o||n.value)}}n=e({title:n.title,"class":"mce_"+f,menu_class:j.getParam("skin")+"Skin",scope:n.scope,more_colors_title:j.getLang("more_colors")},n);f=l.prefix+f;m=h||l._cls.colorsplitbutton||c.ui.ColorSplitButton;k=new m(f,n,j);j.onMouseDown.add(k.hideMenu,k);j.onRemove.add(function(){k.destroy()});if(c.isIE){k.onShowMenu.add(function(){j.focus();g=j.selection.getBookmark(1)});k.onHideMenu.add(function(){if(g){j.selection.moveToBookmark(g);g=0}})}return l.add(k)},createToolbar:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||g._cls.toolbar||c.ui.Toolbar;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createToolbarGroup:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||this._cls.toolbarGroup||c.ui.ToolbarGroup;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createSeparator:function(g){var f=g||this._cls.separator||c.ui.Separator;return new f()},setControlType:function(g,f){return this._cls[g.toLowerCase()]=f},destroy:function(){d(this.controls,function(f){f.destroy()});this.controls=null}})})(tinymce);(function(d){var a=d.util.Dispatcher,e=d.each,c=d.isIE,b=d.isOpera;d.create("tinymce.WindowManager",{WindowManager:function(f){var g=this;g.editor=f;g.onOpen=new a(g);g.onClose=new a(g);g.params={};g.features={}},open:function(z,h){var v=this,k="",n,m,i=v.editor.settings.dialog_type=="modal",q,o,j,g=d.DOM.getViewPort(),r;z=z||{};h=h||{};o=b?g.w:screen.width;j=b?g.h:screen.height;z.name=z.name||"mc_"+new Date().getTime();z.width=parseInt(z.width||320);z.height=parseInt(z.height||240);z.resizable=true;z.left=z.left||parseInt(o/2)-(z.width/2);z.top=z.top||parseInt(j/2)-(z.height/2);h.inline=false;h.mce_width=z.width;h.mce_height=z.height;h.mce_auto_focus=z.auto_focus;if(i){if(c){z.center=true;z.help=false;z.dialogWidth=z.width+"px";z.dialogHeight=z.height+"px";z.scroll=z.scrollbars||false}}e(z,function(p,f){if(d.is(p,"boolean")){p=p?"yes":"no"}if(!/^(name|url)$/.test(f)){if(c&&i){k+=(k?";":"")+f+":"+p}else{k+=(k?",":"")+f+"="+p}}});v.features=z;v.params=h;v.onOpen.dispatch(v,z,h);r=z.url||z.file;r=d._addVer(r);try{if(c&&i){q=1;window.showModalDialog(r,window,k)}else{q=window.open(r,z.name,k)}}catch(l){}if(!q){alert(v.editor.getLang("popup_blocked"))}},close:function(f){f.close();this.onClose.dispatch(this)},createInstance:function(i,h,g,m,l,k){var j=d.resolve(i);return new j(h,g,m,l,k)},confirm:function(h,f,i,g){g=g||window;f.call(i||this,g.confirm(this._decode(this.editor.getLang(h,h))))},alert:function(h,f,j,g){var i=this;g=g||window;g.alert(i._decode(i.editor.getLang(h,h)));if(f){f.call(j||i)}},resizeBy:function(f,g,h){h.resizeBy(f,g)},_decode:function(f){return d.DOM.decode(f).replace(/\\n/g,"\n")}})}(tinymce));(function(a){a.Formatter=function(aa){var Q={},T=a.each,c=aa.dom,r=aa.selection,t=a.dom.TreeWalker,N=new a.dom.RangeUtils(c),d=aa.schema.isValidChild,A=a.isArray,H=c.isBlock,m=aa.settings.forced_root_block,s=c.nodeIndex,G="\uFEFF",e=/^(src|href|style)$/,X=false,C=true,P,D,x=c.getContentEditable;function I(ab){return !!aa.schema.getTextBlocks()[ab.toLowerCase()]}function n(ac,ab){return c.getParents(ac,ab,c.getRoot())}function b(ab){return ab.nodeType===1&&ab.id==="_mce_caret"}function j(){l({alignleft:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"left"},defaultBlock:"div"},{selector:"img,table",collapsed:false,styles:{"float":"left"}}],aligncenter:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"center"},defaultBlock:"div"},{selector:"img",collapsed:false,styles:{display:"block",marginLeft:"auto",marginRight:"auto"}},{selector:"table",collapsed:false,styles:{marginLeft:"auto",marginRight:"auto"}}],alignright:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"right"},defaultBlock:"div"},{selector:"img,table",collapsed:false,styles:{"float":"right"}}],alignfull:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"justify"},defaultBlock:"div"}],bold:[{inline:"strong",remove:"all"},{inline:"span",styles:{fontWeight:"bold"}},{inline:"b",remove:"all"}],italic:[{inline:"em",remove:"all"},{inline:"span",styles:{fontStyle:"italic"}},{inline:"i",remove:"all"}],underline:[{inline:"span",styles:{textDecoration:"underline"},exact:true},{inline:"u",remove:"all"}],strikethrough:[{inline:"span",styles:{textDecoration:"line-through"},exact:true},{inline:"strike",remove:"all"}],forecolor:{inline:"span",styles:{color:"%value"},wrap_links:false},hilitecolor:{inline:"span",styles:{backgroundColor:"%value"},wrap_links:false},fontname:{inline:"span",styles:{fontFamily:"%value"}},fontsize:{inline:"span",styles:{fontSize:"%value"}},fontsize_class:{inline:"span",attributes:{"class":"%value"}},blockquote:{block:"blockquote",wrapper:1,remove:"all"},subscript:{inline:"sub"},superscript:{inline:"sup"},link:{inline:"a",selector:"a",remove:"all",split:true,deep:true,onmatch:function(ab){return true},onformat:function(ad,ab,ac){T(ac,function(af,ae){c.setAttrib(ad,ae,af)})}},removeformat:[{selector:"b,strong,em,i,font,u,strike",remove:"all",split:true,expand:false,block_expand:true,deep:true},{selector:"span",attributes:["style","class"],remove:"empty",split:true,expand:false,deep:true},{selector:"*",attributes:["style","class"],split:false,expand:false,deep:true}]});T("p h1 h2 h3 h4 h5 h6 div address pre div code dt dd samp".split(/\s/),function(ab){l(ab,{block:ab,remove:"all"})});l(aa.settings.formats)}function W(){aa.addShortcut("ctrl+b","bold_desc","Bold");aa.addShortcut("ctrl+i","italic_desc","Italic");aa.addShortcut("ctrl+u","underline_desc","Underline");for(var ab=1;ab<=6;ab++){aa.addShortcut("ctrl+"+ab,"",["FormatBlock",false,"h"+ab])}aa.addShortcut("ctrl+7","",["FormatBlock",false,"p"]);aa.addShortcut("ctrl+8","",["FormatBlock",false,"div"]);aa.addShortcut("ctrl+9","",["FormatBlock",false,"address"])}function V(ab){return ab?Q[ab]:Q}function l(ab,ac){if(ab){if(typeof(ab)!=="string"){T(ab,function(ae,ad){l(ad,ae)})}else{ac=ac.length?ac:[ac];T(ac,function(ad){if(ad.deep===D){ad.deep=!ad.selector}if(ad.split===D){ad.split=!ad.selector||ad.inline}if(ad.remove===D&&ad.selector&&!ad.inline){ad.remove="none"}if(ad.selector&&ad.inline){ad.mixed=true;ad.block_expand=true}if(typeof(ad.classes)==="string"){ad.classes=ad.classes.split(/\s+/)}});Q[ab]=ac}}}var i=function(ac){var ab;aa.dom.getParent(ac,function(ad){ab=aa.dom.getStyle(ad,"text-decoration");return ab&&ab!=="none"});return ab};var L=function(ab){var ac;if(ab.nodeType===1&&ab.parentNode&&ab.parentNode.nodeType===1){ac=i(ab.parentNode);if(aa.dom.getStyle(ab,"color")&&ac){aa.dom.setStyle(ab,"text-decoration",ac)}else{if(aa.dom.getStyle(ab,"textdecoration")===ac){aa.dom.setStyle(ab,"text-decoration",null)}}}};function Y(ae,al,ag){var ah=V(ae),am=ah[0],ak,ac,aj,ai=r.isCollapsed();function ab(aq,ap){ap=ap||am;if(aq){if(ap.onformat){ap.onformat(aq,ap,al,ag)}T(ap.styles,function(at,ar){c.setStyle(aq,ar,q(at,al))});T(ap.attributes,function(at,ar){c.setAttrib(aq,ar,q(at,al))});T(ap.classes,function(ar){ar=q(ar,al);if(!c.hasClass(aq,ar)){c.addClass(aq,ar)}})}}function af(){function ar(ay,aw){var ax=new t(aw);for(ag=ax.current();ag;ag=ax.prev()){if(ag.childNodes.length>1||ag==ay||ag.tagName=="BR"){return ag}}}var aq=aa.selection.getRng();var av=aq.startContainer;var ap=aq.endContainer;if(av!=ap&&aq.endOffset===0){var au=ar(av,ap);var at=au.nodeType==3?au.length:au.childNodes.length;aq.setEnd(au,at)}return aq}function ad(at,ay,aw,av,aq){var ap=[],ar=-1,ax,aA=-1,au=-1,az;T(at.childNodes,function(aC,aB){if(aC.nodeName==="UL"||aC.nodeName==="OL"){ar=aB;ax=aC;return false}});T(at.childNodes,function(aC,aB){if(aC.nodeName==="SPAN"&&c.getAttrib(aC,"data-mce-type")=="bookmark"){if(aC.id==ay.id+"_start"){aA=aB}else{if(aC.id==ay.id+"_end"){au=aB}}}});if(ar<=0||(aA<ar&&au>ar)){T(a.grep(at.childNodes),aq);return 0}else{az=c.clone(aw,X);T(a.grep(at.childNodes),function(aC,aB){if((aA<ar&&aB<ar)||(aA>ar&&aB>ar)){ap.push(aC);aC.parentNode.removeChild(aC)}});if(aA<ar){at.insertBefore(az,ax)}else{if(aA>ar){at.insertBefore(az,ax.nextSibling)}}av.push(az);T(ap,function(aB){az.appendChild(aB)});return az}}function an(aq,at,aw){var ap=[],av,ar,au=true;av=am.inline||am.block;ar=c.create(av);ab(ar);N.walk(aq,function(ax){var ay;function az(aA){var aF,aD,aB,aC,aE;aE=au;aF=aA.nodeName.toLowerCase();aD=aA.parentNode.nodeName.toLowerCase();if(aA.nodeType===1&&x(aA)){aE=au;au=x(aA)==="true";aC=true}if(g(aF,"br")){ay=0;if(am.block){c.remove(aA)}return}if(am.wrapper&&y(aA,ae,al)){ay=0;return}if(au&&!aC&&am.block&&!am.wrapper&&I(aF)){aA=c.rename(aA,av);ab(aA);ap.push(aA);ay=0;return}if(am.selector){T(ah,function(aG){if("collapsed" in aG&&aG.collapsed!==ai){return}if(c.is(aA,aG.selector)&&!b(aA)){ab(aA,aG);aB=true}});if(!am.inline||aB){ay=0;return}}if(au&&!aC&&d(av,aF)&&d(aD,av)&&!(!aw&&aA.nodeType===3&&aA.nodeValue.length===1&&aA.nodeValue.charCodeAt(0)===65279)&&!b(aA)){if(!ay){ay=c.clone(ar,X);aA.parentNode.insertBefore(ay,aA);ap.push(ay)}ay.appendChild(aA)}else{if(aF=="li"&&at){ay=ad(aA,at,ar,ap,az)}else{ay=0;T(a.grep(aA.childNodes),az);if(aC){au=aE}ay=0}}}T(ax,az)});if(am.wrap_links===false){T(ap,function(ax){function ay(aC){var aB,aA,az;if(aC.nodeName==="A"){aA=c.clone(ar,X);ap.push(aA);az=a.grep(aC.childNodes);for(aB=0;aB<az.length;aB++){aA.appendChild(az[aB])}aC.appendChild(aA)}T(a.grep(aC.childNodes),ay)}ay(ax)})}T(ap,function(az){var ax;function aA(aC){var aB=0;T(aC.childNodes,function(aD){if(!f(aD)&&!K(aD)){aB++}});return aB}function ay(aB){var aD,aC;T(aB.childNodes,function(aE){if(aE.nodeType==1&&!K(aE)&&!b(aE)){aD=aE;return X}});if(aD&&h(aD,am)){aC=c.clone(aD,X);ab(aC);c.replace(aC,aB,C);c.remove(aD,1)}return aC||aB}ax=aA(az);if((ap.length>1||!H(az))&&ax===0){c.remove(az,1);return}if(am.inline||am.wrapper){if(!am.exact&&ax===1){az=ay(az)}T(ah,function(aB){T(c.select(aB.inline,az),function(aD){var aC;if(aB.wrap_links===false){aC=aD.parentNode;do{if(aC.nodeName==="A"){return}}while(aC=aC.parentNode)}Z(aB,al,aD,aB.exact?aD:null)})});if(y(az.parentNode,ae,al)){c.remove(az,1);az=0;return C}if(am.merge_with_parents){c.getParent(az.parentNode,function(aB){if(y(aB,ae,al)){c.remove(az,1);az=0;return C}})}if(az&&am.merge_siblings!==false){az=u(E(az),az);az=u(az,E(az,C))}}})}if(am){if(ag){if(ag.nodeType){ac=c.createRng();ac.setStartBefore(ag);ac.setEndAfter(ag);an(p(ac,ah),null,true)}else{an(ag,null,true)}}else{if(!ai||!am.inline||c.select("td.mceSelected,th.mceSelected").length){var ao=aa.selection.getNode();if(!m&&ah[0].defaultBlock&&!c.getParent(ao,c.isBlock)){Y(ah[0].defaultBlock)}aa.selection.setRng(af());ak=r.getBookmark();an(p(r.getRng(C),ah),ak);if(am.styles&&(am.styles.color||am.styles.textDecoration)){a.walk(ao,L,"childNodes");L(ao)}r.moveToBookmark(ak);R(r.getRng(C));aa.nodeChanged()}else{U("apply",ae,al)}}}}function B(ad,am,af){var ag=V(ad),ao=ag[0],ak,aj,ac,al=true;function ae(av){var au,at,ar,aq,ax,aw;if(av.nodeType===3){return}if(av.nodeType===1&&x(av)){ax=al;al=x(av)==="true";aw=true}au=a.grep(av.childNodes);if(al&&!aw){for(at=0,ar=ag.length;at<ar;at++){if(Z(ag[at],am,av,av)){break}}}if(ao.deep){if(au.length){for(at=0,ar=au.length;at<ar;at++){ae(au[at])}if(aw){al=ax}}}}function ah(aq){var ar;T(n(aq.parentNode).reverse(),function(at){var au;if(!ar&&at.id!="_start"&&at.id!="_end"){au=y(at,ad,am);if(au&&au.split!==false){ar=at}}});return ar}function ab(au,aq,aw,az){var aA,ay,ax,at,av,ar;if(au){ar=au.parentNode;for(aA=aq.parentNode;aA&&aA!=ar;aA=aA.parentNode){ay=c.clone(aA,X);for(av=0;av<ag.length;av++){if(Z(ag[av],am,ay,ay)){ay=0;break}}if(ay){if(ax){ay.appendChild(ax)}if(!at){at=ay}ax=ay}}if(az&&(!ao.mixed||!H(au))){aq=c.split(au,aq)}if(ax){aw.parentNode.insertBefore(ax,aw);at.appendChild(aw)}}return aq}function an(aq){return ab(ah(aq),aq,aq,true)}function ai(at){var ar=c.get(at?"_start":"_end"),aq=ar[at?"firstChild":"lastChild"];if(K(aq)){aq=aq[at?"firstChild":"lastChild"]}c.remove(ar,true);return aq}function ap(aq){var at,au,ar;aq=p(aq,ag,C);if(ao.split){at=M(aq,C);au=M(aq);if(at!=au){if(/^(TR|TD)$/.test(at.nodeName)&&at.firstChild){at=(at.nodeName=="TD"?at.firstChild:at.firstChild.firstChild)||at}at=S(at,"span",{id:"_start","data-mce-type":"bookmark"});au=S(au,"span",{id:"_end","data-mce-type":"bookmark"});an(at);an(au);at=ai(C);au=ai()}else{at=au=an(at)}aq.startContainer=at.parentNode;aq.startOffset=s(at);aq.endContainer=au.parentNode;aq.endOffset=s(au)+1}N.walk(aq,function(av){T(av,function(aw){ae(aw);if(aw.nodeType===1&&aa.dom.getStyle(aw,"text-decoration")==="underline"&&aw.parentNode&&i(aw.parentNode)==="underline"){Z({deep:false,exact:true,inline:"span",styles:{textDecoration:"underline"}},null,aw)}})})}if(af){if(af.nodeType){ac=c.createRng();ac.setStartBefore(af);ac.setEndAfter(af);ap(ac)}else{ap(af)}return}if(!r.isCollapsed()||!ao.inline||c.select("td.mceSelected,th.mceSelected").length){ak=r.getBookmark();ap(r.getRng(C));r.moveToBookmark(ak);if(ao.inline&&k(ad,am,r.getStart())){R(r.getRng(true))}aa.nodeChanged()}else{U("remove",ad,am)}}function F(ac,ae,ad){var ab=V(ac);if(k(ac,ae,ad)&&(!("toggle" in ab[0])||ab[0].toggle)){B(ac,ae,ad)}else{Y(ac,ae,ad)}}function y(ac,ab,ah,af){var ad=V(ab),ai,ag,ae;function aj(an,ap,aq){var am,ao,ak=ap[aq],al;if(ap.onmatch){return ap.onmatch(an,ap,aq)}if(ak){if(ak.length===D){for(am in ak){if(ak.hasOwnProperty(am)){if(aq==="attributes"){ao=c.getAttrib(an,am)}else{ao=O(an,am)}if(af&&!ao&&!ap.exact){return}if((!af||ap.exact)&&!g(ao,q(ak[am],ah))){return}}}}else{for(al=0;al<ak.length;al++){if(aq==="attributes"?c.getAttrib(an,ak[al]):O(an,ak[al])){return ap}}}}return ap}if(ad&&ac){for(ag=0;ag<ad.length;ag++){ai=ad[ag];if(h(ac,ai)&&aj(ac,ai,"attributes")&&aj(ac,ai,"styles")){if(ae=ai.classes){for(ag=0;ag<ae.length;ag++){if(!c.hasClass(ac,ae[ag])){return}}}return ai}}}}function k(ad,af,ae){var ac;function ab(ag){ag=c.getParent(ag,function(ah){return !!y(ah,ad,af,true)});return y(ag,ad,af)}if(ae){return ab(ae)}ae=r.getNode();if(ab(ae)){return C}ac=r.getStart();if(ac!=ae){if(ab(ac)){return C}}return X}function v(ai,ah){var af,ag=[],ae={},ad,ac,ab;af=r.getStart();c.getParent(af,function(al){var ak,aj;for(ak=0;ak<ai.length;ak++){aj=ai[ak];if(!ae[aj]&&y(al,aj,ah)){ae[aj]=true;ag.push(aj)}}},c.getRoot());return ag}function z(af){var ah=V(af),ae,ad,ag,ac,ab;if(ah){ae=r.getStart();ad=n(ae);for(ac=ah.length-1;ac>=0;ac--){ab=ah[ac].selector;if(!ab){return C}for(ag=ad.length-1;ag>=0;ag--){if(c.is(ad[ag],ab)){return C}}}}return X}function J(ab,ae,ac){var ad;if(!P){P={};ad={};aa.onNodeChange.addToTop(function(ag,af,ai){var ah=n(ai),aj={};T(P,function(ak,al){T(ah,function(am){if(y(am,al,{},ak.similar)){if(!ad[al]){T(ak,function(an){an(true,{node:am,format:al,parents:ah})});ad[al]=ak}aj[al]=ak;return false}})});T(ad,function(ak,al){if(!aj[al]){delete ad[al];T(ak,function(am){am(false,{node:ai,format:al,parents:ah})})}})})}T(ab.split(","),function(af){if(!P[af]){P[af]=[];P[af].similar=ac}P[af].push(ae)});return this}a.extend(this,{get:V,register:l,apply:Y,remove:B,toggle:F,match:k,matchAll:v,matchNode:y,canApply:z,formatChanged:J});j();W();function h(ab,ac){if(g(ab,ac.inline)){return C}if(g(ab,ac.block)){return C}if(ac.selector){return c.is(ab,ac.selector)}}function g(ac,ab){ac=ac||"";ab=ab||"";ac=""+(ac.nodeName||ac);ab=""+(ab.nodeName||ab);return ac.toLowerCase()==ab.toLowerCase()}function O(ac,ab){var ad=c.getStyle(ac,ab);if(ab=="color"||ab=="backgroundColor"){ad=c.toHex(ad)}if(ab=="fontWeight"&&ad==700){ad="bold"}return""+ad}function q(ab,ac){if(typeof(ab)!="string"){ab=ab(ac)}else{if(ac){ab=ab.replace(/%(\w+)/g,function(ae,ad){return ac[ad]||ae})}}return ab}function f(ab){return ab&&ab.nodeType===3&&/^([\t \r\n]+|)$/.test(ab.nodeValue)}function S(ad,ac,ab){var ae=c.create(ac,ab);ad.parentNode.insertBefore(ae,ad);ae.appendChild(ad);return ae}function p(ab,am,ae){var ap,an,ah,al,ad=ab.startContainer,ai=ab.startOffset,ar=ab.endContainer,ak=ab.endOffset;function ao(aA){var au,ax,az,aw,av,at;au=ax=aA?ad:ar;av=aA?"previousSibling":"nextSibling";at=c.getRoot();function ay(aB){return aB.nodeName=="BR"&&aB.getAttribute("data-mce-bogus")&&!aB.nextSibling}if(au.nodeType==3&&!f(au)){if(aA?ai>0:ak<au.nodeValue.length){return au}}for(;;){if(!am[0].block_expand&&H(ax)){return ax}for(aw=ax[av];aw;aw=aw[av]){if(!K(aw)&&!f(aw)&&!ay(aw)){return ax}}if(ax.parentNode==at){au=ax;break}ax=ax.parentNode}return au}function ag(at,au){if(au===D){au=at.nodeType===3?at.length:at.childNodes.length}while(at&&at.hasChildNodes()){at=at.childNodes[au];if(at){au=at.nodeType===3?at.length:at.childNodes.length}}return{node:at,offset:au}}if(ad.nodeType==1&&ad.hasChildNodes()){an=ad.childNodes.length-1;ad=ad.childNodes[ai>an?an:ai];if(ad.nodeType==3){ai=0}}if(ar.nodeType==1&&ar.hasChildNodes()){an=ar.childNodes.length-1;ar=ar.childNodes[ak>an?an:ak-1];if(ar.nodeType==3){ak=ar.nodeValue.length}}function aq(au){var at=au;while(at){if(at.nodeType===1&&x(at)){return x(at)==="false"?at:au}at=at.parentNode}return au}function aj(au,ay,aA){var ax,av,az,at;function aw(aC,aE){var aF,aB,aD=aC.nodeValue;if(typeof(aE)=="undefined"){aE=aA?aD.length:0}if(aA){aF=aD.lastIndexOf(" ",aE);aB=aD.lastIndexOf("\u00a0",aE);aF=aF>aB?aF:aB;if(aF!==-1&&!ae){aF++}}else{aF=aD.indexOf(" ",aE);aB=aD.indexOf("\u00a0",aE);aF=aF!==-1&&(aB===-1||aF<aB)?aF:aB}return aF}if(au.nodeType===3){az=aw(au,ay);if(az!==-1){return{container:au,offset:az}}at=au}ax=new t(au,c.getParent(au,H)||aa.getBody());while(av=ax[aA?"prev":"next"]()){if(av.nodeType===3){at=av;az=aw(av);if(az!==-1){return{container:av,offset:az}}}else{if(H(av)){break}}}if(at){if(aA){ay=0}else{ay=at.length}return{container:at,offset:ay}}}function af(au,at){var av,aw,ay,ax;if(au.nodeType==3&&au.nodeValue.length===0&&au[at]){au=au[at]}av=n(au);for(aw=0;aw<av.length;aw++){for(ay=0;ay<am.length;ay++){ax=am[ay];if("collapsed" in ax&&ax.collapsed!==ab.collapsed){continue}if(c.is(av[aw],ax.selector)){return av[aw]}}}return au}function ac(au,at,aw){var av;if(!am[0].wrapper){av=c.getParent(au,am[0].block)}if(!av){av=c.getParent(au.nodeType==3?au.parentNode:au,I)}if(av&&am[0].wrapper){av=n(av,"ul,ol").reverse()[0]||av}if(!av){av=au;while(av[at]&&!H(av[at])){av=av[at];if(g(av,"br")){break}}}return av||au}ad=aq(ad);ar=aq(ar);if(K(ad.parentNode)||K(ad)){ad=K(ad)?ad:ad.parentNode;ad=ad.nextSibling||ad;if(ad.nodeType==3){ai=0}}if(K(ar.parentNode)||K(ar)){ar=K(ar)?ar:ar.parentNode;ar=ar.previousSibling||ar;if(ar.nodeType==3){ak=ar.length}}if(am[0].inline){if(ab.collapsed){al=aj(ad,ai,true);if(al){ad=al.container;ai=al.offset}al=aj(ar,ak);if(al){ar=al.container;ak=al.offset}}ah=ag(ar,ak);if(ah.node){while(ah.node&&ah.offset===0&&ah.node.previousSibling){ah=ag(ah.node.previousSibling)}if(ah.node&&ah.offset>0&&ah.node.nodeType===3&&ah.node.nodeValue.charAt(ah.offset-1)===" "){if(ah.offset>1){ar=ah.node;ar.splitText(ah.offset-1)}}}}if(am[0].inline||am[0].block_expand){if(!am[0].inline||(ad.nodeType!=3||ai===0)){ad=ao(true)}if(!am[0].inline||(ar.nodeType!=3||ak===ar.nodeValue.length)){ar=ao()}}if(am[0].selector&&am[0].expand!==X&&!am[0].inline){ad=af(ad,"previousSibling");ar=af(ar,"nextSibling")}if(am[0].block||am[0].selector){ad=ac(ad,"previousSibling");ar=ac(ar,"nextSibling");if(am[0].block){if(!H(ad)){ad=ao(true)}if(!H(ar)){ar=ao()}}}if(ad.nodeType==1){ai=s(ad);ad=ad.parentNode}if(ar.nodeType==1){ak=s(ar)+1;ar=ar.parentNode}return{startContainer:ad,startOffset:ai,endContainer:ar,endOffset:ak}}function Z(ah,ag,ae,ab){var ad,ac,af;if(!h(ae,ah)){return X}if(ah.remove!="all"){T(ah.styles,function(aj,ai){aj=q(aj,ag);if(typeof(ai)==="number"){ai=aj;ab=0}if(!ab||g(O(ab,ai),aj)){c.setStyle(ae,ai,"")}af=1});if(af&&c.getAttrib(ae,"style")==""){ae.removeAttribute("style");ae.removeAttribute("data-mce-style")}T(ah.attributes,function(ak,ai){var aj;ak=q(ak,ag);if(typeof(ai)==="number"){ai=ak;ab=0}if(!ab||g(c.getAttrib(ab,ai),ak)){if(ai=="class"){ak=c.getAttrib(ae,ai);if(ak){aj="";T(ak.split(/\s+/),function(al){if(/mce\w+/.test(al)){aj+=(aj?" ":"")+al}});if(aj){c.setAttrib(ae,ai,aj);return}}}if(ai=="class"){ae.removeAttribute("className")}if(e.test(ai)){ae.removeAttribute("data-mce-"+ai)}ae.removeAttribute(ai)}});T(ah.classes,function(ai){ai=q(ai,ag);if(!ab||c.hasClass(ab,ai)){c.removeClass(ae,ai)}});ac=c.getAttribs(ae);for(ad=0;ad<ac.length;ad++){if(ac[ad].nodeName.indexOf("_")!==0){return X}}}if(ah.remove!="none"){o(ae,ah);return C}}function o(ad,ae){var ab=ad.parentNode,ac;function af(ah,ag,ai){ah=E(ah,ag,ai);return !ah||(ah.nodeName=="BR"||H(ah))}if(ae.block){if(!m){if(H(ad)&&!H(ab)){if(!af(ad,X)&&!af(ad.firstChild,C,1)){ad.insertBefore(c.create("br"),ad.firstChild)}if(!af(ad,C)&&!af(ad.lastChild,X,1)){ad.appendChild(c.create("br"))}}}else{if(ab==c.getRoot()){if(!ae.list_block||!g(ad,ae.list_block)){T(a.grep(ad.childNodes),function(ag){if(d(m,ag.nodeName.toLowerCase())){if(!ac){ac=S(ag,m)}else{ac.appendChild(ag)}}else{ac=0}})}}}}if(ae.selector&&ae.inline&&!g(ae.inline,ad)){return}c.remove(ad,1)}function E(ac,ab,ad){if(ac){ab=ab?"nextSibling":"previousSibling";for(ac=ad?ac:ac[ab];ac;ac=ac[ab]){if(ac.nodeType==1||!f(ac)){return ac}}}}function K(ab){return ab&&ab.nodeType==1&&ab.getAttribute("data-mce-type")=="bookmark"}function u(af,ae){var ab,ad,ac;function ah(ak,aj){if(ak.nodeName!=aj.nodeName){return X}function ai(am){var an={};T(c.getAttribs(am),function(ao){var ap=ao.nodeName.toLowerCase();if(ap.indexOf("_")!==0&&ap!=="style"){an[ap]=c.getAttrib(am,ap)}});return an}function al(ap,ao){var an,am;for(am in ap){if(ap.hasOwnProperty(am)){an=ao[am];if(an===D){return X}if(ap[am]!=an){return X}delete ao[am]}}for(am in ao){if(ao.hasOwnProperty(am)){return X}}return C}if(!al(ai(ak),ai(aj))){return X}if(!al(c.parseStyle(c.getAttrib(ak,"style")),c.parseStyle(c.getAttrib(aj,"style")))){return X}return C}function ag(aj,ai){for(ad=aj;ad;ad=ad[ai]){if(ad.nodeType==3&&ad.nodeValue.length!==0){return aj}if(ad.nodeType==1&&!K(ad)){return ad}}return aj}if(af&&ae){af=ag(af,"previousSibling");ae=ag(ae,"nextSibling");if(ah(af,ae)){for(ad=af.nextSibling;ad&&ad!=ae;){ac=ad;ad=ad.nextSibling;af.appendChild(ac)}c.remove(ae);T(a.grep(ae.childNodes),function(ai){af.appendChild(ai)});return af}}return ae}function I(ab){return/^(h[1-6]|p|div|pre|address|dl|dt|dd)$/.test(ab)}function M(ac,ag){var ab,af,ad,ae;ab=ac[ag?"startContainer":"endContainer"];af=ac[ag?"startOffset":"endOffset"];if(ab.nodeType==1){ad=ab.childNodes.length-1;if(!ag&&af){af--}ab=ab.childNodes[af>ad?ad:af]}if(ab.nodeType===3&&ag&&af>=ab.nodeValue.length){ab=new t(ab,aa.getBody()).next()||ab}if(ab.nodeType===3&&!ag&&af===0){ab=new t(ab,aa.getBody()).prev()||ab}return ab}function U(ak,ab,ai){var al="_mce_caret",ac=aa.settings.caret_debug;function ad(ap){var ao=c.create("span",{id:al,"data-mce-bogus":true,style:ac?"color:red":""});if(ap){ao.appendChild(aa.getDoc().createTextNode(G))}return ao}function aj(ap,ao){while(ap){if((ap.nodeType===3&&ap.nodeValue!==G)||ap.childNodes.length>1){return false}if(ao&&ap.nodeType===1){ao.push(ap)}ap=ap.firstChild}return true}function ag(ao){while(ao){if(ao.id===al){return ao}ao=ao.parentNode}}function af(ao){var ap;if(ao){ap=new t(ao,ao);for(ao=ap.current();ao;ao=ap.next()){if(ao.nodeType===3){return ao}}}}function ae(aq,ap){var ar,ao;if(!aq){aq=ag(r.getStart());if(!aq){while(aq=c.get(al)){ae(aq,false)}}}else{ao=r.getRng(true);if(aj(aq)){if(ap!==false){ao.setStartBefore(aq);ao.setEndBefore(aq)}c.remove(aq)}else{ar=af(aq);if(ar.nodeValue.charAt(0)===G){ar=ar.deleteData(0,1)}c.remove(aq,1)}r.setRng(ao)}}function ah(){var aq,ao,av,au,ar,ap,at;aq=r.getRng(true);au=aq.startOffset;ap=aq.startContainer;at=ap.nodeValue;ao=ag(r.getStart());if(ao){av=af(ao)}if(at&&au>0&&au<at.length&&/\w/.test(at.charAt(au))&&/\w/.test(at.charAt(au-1))){ar=r.getBookmark();aq.collapse(true);aq=p(aq,V(ab));aq=N.split(aq);Y(ab,ai,aq);r.moveToBookmark(ar)}else{if(!ao||av.nodeValue!==G){ao=ad(true);av=ao.firstChild;aq.insertNode(ao);au=1;Y(ab,ai,ao)}else{Y(ab,ai,ao)}r.setCursorLocation(av,au)}}function am(){var ao=r.getRng(true),ap,ar,av,au,aq,ay,ax=[],at,aw;ap=ao.startContainer;ar=ao.startOffset;aq=ap;if(ap.nodeType==3){if(ar!=ap.nodeValue.length||ap.nodeValue===G){au=true}aq=aq.parentNode}while(aq){if(y(aq,ab,ai)){ay=aq;break}if(aq.nextSibling){au=true}ax.push(aq);aq=aq.parentNode}if(!ay){return}if(au){av=r.getBookmark();ao.collapse(true);ao=p(ao,V(ab),true);ao=N.split(ao);B(ab,ai,ao);r.moveToBookmark(av)}else{aw=ad();aq=aw;for(at=ax.length-1;at>=0;at--){aq.appendChild(c.clone(ax[at],false));aq=aq.firstChild}aq.appendChild(c.doc.createTextNode(G));aq=aq.firstChild;c.insertAfter(aw,ay);r.setCursorLocation(aq,1)}}function an(){var ap,ao,aq;ao=ag(r.getStart());if(ao&&!c.isEmpty(ao)){a.walk(ao,function(ar){if(ar.nodeType==1&&ar.id!==al&&!c.isEmpty(ar)){c.setAttrib(ar,"data-mce-bogus",null)}},"childNodes")}}if(!self._hasCaretEvents){aa.onBeforeGetContent.addToTop(function(){var ao=[],ap;if(aj(ag(r.getStart()),ao)){ap=ao.length;while(ap--){c.setAttrib(ao[ap],"data-mce-bogus","1")}}});a.each("onMouseUp onKeyUp".split(" "),function(ao){aa[ao].addToTop(function(){ae();an()})});aa.onKeyDown.addToTop(function(ao,aq){var ap=aq.keyCode;if(ap==8||ap==37||ap==39){ae(ag(r.getStart()))}an()});r.onSetContent.add(an);self._hasCaretEvents=true}if(ak=="apply"){ah()}else{am()}}function R(ac){var ab=ac.startContainer,ai=ac.startOffset,ae,ah,ag,ad,af;if(ab.nodeType==3&&ai>=ab.nodeValue.length){ai=s(ab);ab=ab.parentNode;ae=true}if(ab.nodeType==1){ad=ab.childNodes;ab=ad[Math.min(ai,ad.length-1)];ah=new t(ab,c.getParent(ab,c.isBlock));if(ai>ad.length-1||ae){ah.next()}for(ag=ah.current();ag;ag=ah.next()){if(ag.nodeType==3&&!f(ag)){af=c.create("a",null,G);ag.parentNode.insertBefore(af,ag);ac.setStart(ag,0);r.setRng(ac);c.remove(af);return}}}}}})(tinymce);tinymce.onAddEditor.add(function(e,a){var d,h,g,c=a.settings;function b(j,i){e.each(i,function(l,k){if(l){g.setStyle(j,k,l)}});g.rename(j,"span")}function f(i,j){g=i.dom;if(c.convert_fonts_to_spans){e.each(g.select("font,u,strike",j.node),function(k){d[k.nodeName.toLowerCase()](a.dom,k)})}}if(c.inline_styles){h=e.explode(c.font_size_legacy_values);d={font:function(j,i){b(i,{backgroundColor:i.style.backgroundColor,color:i.color,fontFamily:i.face,fontSize:h[parseInt(i.size,10)-1]})},u:function(j,i){b(i,{textDecoration:"underline"})},strike:function(j,i){b(i,{textDecoration:"line-through"})}};a.onPreProcess.add(f);a.onSetContent.add(f);a.onInit.add(function(){a.selection.onSetContent.add(f)})}});(function(b){var a=b.dom.TreeWalker;b.EnterKey=function(f){var i=f.dom,e=f.selection,d=f.settings,h=f.undoManager,c=f.schema.getNonEmptyElements();function g(A){var v=e.getRng(true),G,j,z,u,p,M,B,o,k,n,t,J,x,C;function E(N){return N&&i.isBlock(N)&&!/^(TD|TH|CAPTION|FORM)$/.test(N.nodeName)&&!/^(fixed|absolute)/i.test(N.style.position)&&i.getContentEditable(N)!=="true"}function F(O){var N;if(b.isIE&&i.isBlock(O)){N=e.getRng();O.appendChild(i.create("span",null,"\u00a0"));e.select(O);O.lastChild.outerHTML="";e.setRng(N)}}function y(P){var O=P,Q=[],N;while(O=O.firstChild){if(i.isBlock(O)){return}if(O.nodeType==1&&!c[O.nodeName.toLowerCase()]){Q.push(O)}}N=Q.length;while(N--){O=Q[N];if(!O.hasChildNodes()||(O.firstChild==O.lastChild&&O.firstChild.nodeValue==="")){i.remove(O)}else{if(O.nodeName=="A"&&(O.innerText||O.textContent)===" "){i.remove(O)}}}}function m(O){var T,R,N,U,S,Q=O,P;N=i.createRng();if(O.hasChildNodes()){T=new a(O,O);while(R=T.current()){if(R.nodeType==3){N.setStart(R,0);N.setEnd(R,0);break}if(c[R.nodeName.toLowerCase()]){N.setStartBefore(R);N.setEndBefore(R);break}Q=R;R=T.next()}if(!R){N.setStart(Q,0);N.setEnd(Q,0)}}else{if(O.nodeName=="BR"){if(O.nextSibling&&i.isBlock(O.nextSibling)){if(!M||M<9){P=i.create("br");O.parentNode.insertBefore(P,O)}N.setStartBefore(O);N.setEndBefore(O)}else{N.setStartAfter(O);N.setEndAfter(O)}}else{N.setStart(O,0);N.setEnd(O,0)}}e.setRng(N);i.remove(P);S=i.getViewPort(f.getWin());U=i.getPos(O).y;if(U<S.y||U+25>S.y+S.h){f.getWin().scrollTo(0,U<S.y?U:U-S.h+25)}}function r(O){var P=z,R,Q,N;R=O||t=="TABLE"?i.create(O||x):p.cloneNode(false);N=R;if(d.keep_styles!==false){do{if(/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(P.nodeName)){if(P.id=="_mce_caret"){continue}Q=P.cloneNode(false);i.setAttrib(Q,"id","");if(R.hasChildNodes()){Q.appendChild(R.firstChild);R.appendChild(Q)}else{N=Q;R.appendChild(Q)}}}while(P=P.parentNode)}if(!b.isIE){N.innerHTML='<br data-mce-bogus="1">'}return R}function q(Q){var P,O,N;if(z.nodeType==3&&(Q?u>0:u<z.nodeValue.length)){return false}if(z.parentNode==p&&C&&!Q){return true}if(Q&&z.nodeType==1&&z==p.firstChild){return true}if(z.nodeName==="TABLE"||(z.previousSibling&&z.previousSibling.nodeName=="TABLE")){return(C&&!Q)||(!C&&Q)}P=new a(z,p);if(z.nodeType==3){if(Q&&u==0){P.prev()}else{if(!Q&&u==z.nodeValue.length){P.next()}}}while(O=P.current()){if(O.nodeType===1){if(!O.getAttribute("data-mce-bogus")){N=O.nodeName.toLowerCase();if(c[N]&&N!=="br"){return false}}}else{if(O.nodeType===3&&!/^[ \t\r\n]*$/.test(O.nodeValue)){return false}}if(Q){P.prev()}else{P.next()}}return true}function l(N,T){var U,S,P,R,Q,O=x||"P";S=i.getParent(N,i.isBlock);if(!S||!E(S)){S=S||j;if(!S.hasChildNodes()){U=i.create(O);S.appendChild(U);v.setStart(U,0);v.setEnd(U,0);return U}R=N;while(R.parentNode!=S){R=R.parentNode}while(R&&!i.isBlock(R)){P=R;R=R.previousSibling}if(P){U=i.create(O);P.parentNode.insertBefore(U,P);R=P;while(R&&!i.isBlock(R)){Q=R.nextSibling;U.appendChild(R);R=Q}v.setStart(N,T);v.setEnd(N,T)}}return N}function H(){function N(P){var O=n[P?"firstChild":"lastChild"];while(O){if(O.nodeType==1){break}O=O[P?"nextSibling":"previousSibling"]}return O===p}o=x?r(x):i.create("BR");if(N(true)&&N()){i.replace(o,n)}else{if(N(true)){n.parentNode.insertBefore(o,n)}else{if(N()){i.insertAfter(o,n);F(o)}else{G=v.cloneRange();G.setStartAfter(p);G.setEndAfter(n);k=G.extractContents();i.insertAfter(k,n);i.insertAfter(o,n)}}}i.remove(p);m(o);h.add()}function D(){var O=new a(z,p),N;while(N=O.current()){if(N.nodeName=="BR"){return true}N=O.next()}}function L(){var P,O,N;if(z&&z.nodeType==3&&u>=z.nodeValue.length){if(!b.isIE&&!D()){P=i.create("br");v.insertNode(P);v.setStartAfter(P);v.setEndAfter(P);O=true}}P=i.create("br");v.insertNode(P);if(b.isIE&&t=="PRE"&&(!M||M<8)){P.parentNode.insertBefore(i.doc.createTextNode("\r"),P)}N=i.create("span",{},"&nbsp;");P.parentNode.insertBefore(N,P);e.scrollIntoView(N);i.remove(N);if(!O){v.setStartAfter(P);v.setEndAfter(P)}else{v.setStartBefore(P);v.setEndBefore(P)}e.setRng(v);h.add()}function s(N){do{if(N.nodeType===3){N.nodeValue=N.nodeValue.replace(/^[\r\n]+/,"")}N=N.firstChild}while(N)}function K(P){var N=i.getRoot(),O,Q;O=P;while(O!==N&&i.getContentEditable(O)!=="false"){if(i.getContentEditable(O)==="true"){Q=O}O=O.parentNode}return O!==N?Q:N}function I(O){var N;if(!b.isIE){O.normalize();N=O.lastChild;if(!N||(/^(left|right)$/gi.test(i.getStyle(N,"float",true)))){i.add(O,"br")}}}if(!v.collapsed){f.execCommand("Delete");return}if(A.isDefaultPrevented()){return}z=v.startContainer;u=v.startOffset;x=(d.force_p_newlines?"p":"")||d.forced_root_block;x=x?x.toUpperCase():"";M=i.doc.documentMode;B=A.shiftKey;if(z.nodeType==1&&z.hasChildNodes()){C=u>z.childNodes.length-1;z=z.childNodes[Math.min(u,z.childNodes.length-1)]||z;if(C&&z.nodeType==3){u=z.nodeValue.length}else{u=0}}j=K(z);if(!j){return}h.beforeChange();if(!i.isBlock(j)&&j!=i.getRoot()){if(!x||B){L()}return}if((x&&!B)||(!x&&B)){z=l(z,u)}p=i.getParent(z,i.isBlock);n=p?i.getParent(p.parentNode,i.isBlock):null;t=p?p.nodeName.toUpperCase():"";J=n?n.nodeName.toUpperCase():"";if(J=="LI"&&!A.ctrlKey){p=n;t=J}if(t=="LI"){if(!x&&B){L();return}if(i.isEmpty(p)){if(/^(UL|OL|LI)$/.test(n.parentNode.nodeName)){return false}H();return}}if(t=="PRE"&&d.br_in_pre!==false){if(!B){L();return}}else{if((!x&&!B&&t!="LI")||(x&&B)){L();return}}x=x||"P";if(q()){if(/^(H[1-6]|PRE)$/.test(t)&&J!="HGROUP"){o=r(x)}else{o=r()}if(d.end_container_on_empty_block&&E(n)&&i.isEmpty(p)){o=i.split(n,p)}else{i.insertAfter(o,p)}m(o)}else{if(q(true)){o=p.parentNode.insertBefore(r(),p);F(o)}else{G=v.cloneRange();G.setEndAfter(p);k=G.extractContents();s(k);o=k.firstChild;i.insertAfter(k,p);y(o);I(p);m(o)}}i.setAttrib(o,"id","");h.add()}f.onKeyDown.add(function(k,j){if(j.keyCode==13){if(g(j)!==false){j.preventDefault()}}})}})(tinymce);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce_gzip.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce_gzip.js
new file mode 100644 (file)
index 0000000..adc07a0
--- /dev/null
@@ -0,0 +1,137 @@
+var tinyMCE_GZ = {
+       settings : {
+               themes : '',
+               plugins : '',
+               languages : '',
+               disk_cache : true,
+               page_name : 'tiny_mce_gzip.pl',
+               debug : false,
+               suffix : ''
+       },
+
+       init : function(s, cb, sc) {
+               var t = this, n, i, nl = document.getElementsByTagName('script');
+
+               for (n in s)
+                       t.settings[n] = s[n];
+
+               s = t.settings;
+
+               if (window.tinyMCEPreInit) {
+                       t.baseURL = tinyMCEPreInit.base;
+               } else {
+                       for (i=0; i<nl.length; i++) {
+                               n = nl[i];
+
+                               if (n.src && n.src.indexOf('tiny_mce') != -1)
+                                       t.baseURL = n.src.substring(0, n.src.lastIndexOf('/'));
+                       }
+               }
+
+               if (!t.coreLoaded)
+                       t.loadScripts(1, s.themes, s.plugins, s.languages, cb, sc);
+       },
+
+       loadScripts : function(co, th, pl, la, cb, sc) {
+               var t = this, x, w = window, q, c = 0, ti, s = t.settings;
+
+               function get(s) {
+                       x = 0;
+
+                       try {
+                               x = new ActiveXObject(s);
+                       } catch (s) {
+                       }
+
+                       return x;
+               };
+
+               // Build query string
+               q = 'js=true&diskcache=' + (s.disk_cache ? 'true' : 'false') + '&core=' + (co ? 'true' : 'false') + '&suffix=' + escape(s.suffix) + '&themes=' + escape(th) + '&plugins=' + escape(pl) + '&languages=' + escape(la);
+
+               if (co)
+                       t.coreLoaded = 1;
+
+               // Send request
+               x = w.XMLHttpRequest ? new XMLHttpRequest() : get('Msxml2.XMLHTTP') || get('Microsoft.XMLHTTP');
+               x.overrideMimeType && x.overrideMimeType('text/javascript');
+               x.open('GET', t.baseURL + '/' + s.page_name + '?' + q, !!cb);
+//             x.setRequestHeader('Content-Type', 'text/javascript');
+               x.send('');
+
+               // Handle asyncronous loading
+               if (cb) {
+                       // Wait for response
+                       ti = w.setInterval(function() {
+                               if (x.readyState == 4 || c++ > 10000) {
+                                       w.clearInterval(ti);
+
+                                       if (c < 10000 && x.status == 200) {
+                                               t.loaded = 1;
+                                               t.eval(x.responseText);
+                                               tinymce.dom.Event.domLoaded = true;
+                                               cb.call(sc || t, x);
+                                       }
+
+                                       ti = x = null;
+                               }
+                       }, 10);
+               } else
+                       t.eval(x.responseText);
+       },
+
+       start : function() {
+               var t = this, each = tinymce.each, s = t.settings, ln = s.languages.split(',');
+
+               tinymce.suffix = s.suffix;
+
+               function load(u) {
+                       tinymce.ScriptLoader.markDone(tinyMCE.baseURI.toAbsolute(u));
+               };
+
+               // Add core languages
+               each(ln, function(c) {
+                       if (c)
+                               load('langs/' + c + '.js');
+               });
+
+               // Add themes with languages
+               each(s.themes.split(','), function(n) {
+                       if (n) {
+                               load('themes/' + n + '/editor_template' + s.suffix + '.js');
+
+                               each (ln, function(c) {
+                                       if (c)
+                                               load('themes/' + n + '/langs/' + c + '.js');
+                               });
+                       }
+               });
+
+               // Add plugins with languages
+               each(s.plugins.split(','), function(n) {
+                       if (n) {
+                               load('plugins/' + n + '/editor_plugin' + s.suffix + '.js');
+
+                               each(ln, function(c) {
+                                       if (c)
+                                               load('plugins/' + n + '/langs/' + c + '.js');
+                               });
+                       }
+               });
+       },
+
+       end : function() {
+       },
+
+       eval : function(co) {
+               var se = document.createElement('script');
+
+               // Create script
+               se.type = 'text/javascript';
+               se.text = co;
+
+               // Add it to evaluate it and remove it
+               (document.getElementsByTagName('head')[0] || document.documentElement).appendChild(se);
+               se.parentNode.removeChild(se);
+       }
+};
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce_gzip.pl b/koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce_gzip.pl
new file mode 100644 (file)
index 0000000..eaec56f
--- /dev/null
@@ -0,0 +1,369 @@
+#!/usr/bin/perl
+use strict;
+use warnings FATAL => 'all', NONFATAL => 'redefine';
+
+
+###################################################
+#
+#  @author Clinton Gormley
+#  @copyright Copyright 2008, Clinton Gormley, All rights reserved.
+#
+#  This file compresses the TinyMCE JavaScript using GZip and
+#  enables the browser to do two requests instead of one for each .js file.
+#  Notice: This script defaults the button_tile_map option to true for
+#  extra performance.
+#
+##################################################
+our $VERSION  = '2.0.3';
+
+# Default cache path is subdir to tinymce
+my $cache_path = 'cache';
+
+# Custom extra javascripts to pack
+my @custom_files = qw();
+
+# Cache for 10 days
+our $cache_for = 3600 * 24 * 10;
+
+
+##################################################
+
+use File::Spec();
+use Compress::Zlib();
+use Digest::MD5 qw(md5_hex);
+use File::Slurp qw(slurp write_file);
+
+my %P = %{ get_params() };
+our $cwd = get_cwd();
+
+my @extra_headers
+    = $P{charset}
+    ? 'Content-type: text/javascript; charset=' . $P{charset}
+    : 'Content-type: text/javascript';
+
+# If this file is requested directly, send the JS compressor file
+# and init with default settings
+unless ( $P{js} eq 'true' ) {
+    print headers(@extra_headers);
+    print slurp_file('tiny_mce_gzip.js');
+    print "tinyMCE_GZ.init({})\n";
+    exit;
+}
+
+my %modules = (
+         custom_files => \@custom_files,
+         ( map { $_ => [ split( ',', $P{$_} ) ] } qw(plugins languages themes) )
+);
+
+## Check if it supports gzip
+my $accept_header = $ENV{HTTP_ACCEPT_ENCODING} || '';
+my ($supports_gzip) = ( $accept_header =~ m/((?:x-)?gzip)\b/i );
+my $compress = ( $supports_gzip && $P{compress} ne 'false' ) ? 1 : 0;
+
+# Get params for cache
+$cache_path
+    = File::Spec->file_name_is_absolute($cache_path)
+    ? $cache_path
+    : File::Spec->catdir( $cwd, 'cache' );
+my $cache_key = get_cache_key( \%modules,         $P{suffix} );
+my $js_file   = File::Spec->catfile( $cache_path, $cache_key . '.js' );
+my $gz_file   = File::Spec->catfile( $cache_path, $cache_key . '.gz' );
+my $cache_file = $compress ? $gz_file : $js_file;
+
+# Use cached data or generate new?
+my $data
+    = ( $P{diskcache} eq 'true' && -e $cache_file )
+    ? slurp_file($cache_file)
+    : generate_and_cache_data( \%modules, $compress, $js_file,
+                               $gz_file,  $P{core},  $P{suffix} );
+
+# Send data
+if ($compress) {
+    push @extra_headers, "Content-Encoding: $supports_gzip";
+}
+
+print headers(@extra_headers);
+print $data;
+
+exit;
+
+#===================================
+sub get_params {
+#===================================
+    my $qs = $ENV{QUERY_STRING} || '';
+    $qs =~ s/(%([0-9a-fA-F]{2,2}))/my $c = hex($2); $c < 256 ? chr($c) : $1/eg;
+    my @raw_params = split( /[&;]+/, $qs );
+    my %parsed = map { $_ => '' } qw(
+        plugins languages themes
+        diskcache js compress
+        core suffix charset );
+    while ( my $pair = shift @raw_params ) {
+        my ( $key, $value ) = split( /=/, $pair );
+        next unless exists $parsed{$key};
+        $value ||= '';
+        $value =~ tr/0-9a-zA-Z\-_,//cd;
+        $parsed{$key} = $value;
+    }
+    $parsed{suffix} = $parsed{suffix} eq '_src' ? '_src' : '';
+    return \%parsed;
+}
+
+#===================================
+sub headers {
+#===================================
+    my @extra_headers = @_;
+    my $date          = scalar( gmtime( time + $cache_for ) ) . " GMT";
+    return <<HEADERS. join( "\n", @extra_headers ) . "\n\n";
+Vary: Accept-Encoding
+Expires: $date
+HEADERS
+
+}
+
+#===================================
+sub slurp_file {
+#===================================
+    my $file = File::Spec->catfile(@_);
+    unless ( File::Spec->file_name_is_absolute($file) ) {
+        $file = File::Spec->catfile( $cwd, $file );
+    }
+    return slurp( $file, binmode => ':raw' );
+}
+
+#===================================
+sub get_cwd {
+#===================================
+    return File::Spec->catpath(
+              File::Spec->no_upwards( ( File::Spec->splitpath($0) )[ 0, 1 ] ) );
+}
+
+#===================================
+sub get_cache_key {
+#===================================
+    my $modules = shift;
+    my $suffix  = shift;
+    my $cache_key = md5_hex(
+                         join( '',
+                               ( map { @{ $modules->{$_} } }
+                                     qw(plugins languages themes custom_files )
+                               ),
+                               $suffix
+                         )
+    );
+
+    # Untaint cache_key
+    ($cache_key) = ( $cache_key =~ /^([0-9a-f]+)$/ );
+    die "Couldn't generate cache key - problem with MD5 libraries?"
+        unless $cache_key;
+
+    return $cache_key;
+}
+
+#===================================
+sub generate_and_cache_data {
+#===================================
+    my $modules  = shift;
+    my $compress = shift;
+    my $js_file  = shift;
+    my $gz_file  = shift;
+    my $core     = shift;
+    my $suffix   = shift;
+
+    # Core file plus langs
+    my @langs = @{ $modules->{languages} };
+
+    my $js_data = join( '', map { slurp_file( 'langs', "$_.js" ) } @langs );
+
+    # Themes plus their langs
+    foreach my $theme ( @{ $modules->{themes} } ) {
+        $js_data
+            .= slurp_file( 'themes', $theme, "editor_template${suffix}.js" )
+            . join( '',
+                    map { slurp_file( 'themes', $theme, 'langs', "$_.js" ) }
+                        @langs );
+    }
+
+    # Plugins plus their langs
+    foreach my $plugin ( @{ $modules->{plugins} } ) {
+        $js_data
+            .= slurp_file( 'plugins', $plugin, "editor_plugin${suffix}.js" )
+            . join(
+            '',
+            map {
+                eval {
+                    slurp_file( 'plugins', $plugin, 'langs', "$_.js" );
+                    }
+                    || ''
+                } @langs
+            );
+    }
+
+    # Any custom files
+    $js_data .= slurp_file($_) for ( @{ $modules->{custom_files} } );
+
+    # If the core is required, add that too
+    unless ( $core eq 'false' ) {
+        $js_data
+            = slurp_file("tiny_mce${suffix}.js")
+            . 'tinyMCE_GZ.start();'
+            . $js_data
+            . 'tinyMCE_GZ.end();';
+    }
+
+    # Compress data
+    my $gz_data = Compress::Zlib::memGzip($js_data)
+        or die "Couldn't gzip data";
+
+    # write files to disk
+    write_file( $js_file, { binmode => ':raw' }, $js_data );
+    write_file( $gz_file, { binmode => ':raw' }, $gz_data );
+
+    # Choose the correct data to be sent
+    return $compress ? $gz_data : $js_data;
+}
+
+1;
+
+=head1 NAME
+
+TinyMCE Compressor Perl version 2.0.3
+
+=head1 DESCRIPTION
+
+TinyMCE Compressor gzips all javascript files in TinyMCE to a single
+streamable file. This makes the overall download size 75% smaller and
+the number of requests will also be reduced. The overall initialisation
+time for TinyMCE will be reduced dramatically if you use this script.
+
+The Perl fork of the TinyMCE compressor project page is at
+L<http://github.com/clintongormley/tinymce_compressor>
+
+=head2 Installation
+
+Here is a step by step list on how to install the GZip compressor.
+
+=over
+
+=item Prerequisites
+
+Use CPAN to install L<File::Spec>, L<File::Slurp>,
+L<Digest::MD5> and L<Compress::Zlib>.
+
+=item Installing files
+
+Copy the tiny_mce_gzip.js and tiny_mce_gzip.pl to the tiny_mce
+directory. The same directory that contains the tiny_mce.js file.
+
+=item Create a cache directory
+
+Create the sub directory 'C<cache>' under your tiny_mce
+directory and give your web server permission to write to it, eg:
+
+        cd /path/to/tinymce
+        mkdir cache
+        chown apache cache
+        chmod u+rwx,og-rwx cache
+
+
+B<PLEASE NOTE:> If you upgrade your Tiny MCE editor, you will need to
+clear out the cache directory.
+
+=item Update your code
+
+Remove the current script tag:
+
+    <script type="text/javascript" src="tinymce/jscripts/tiny_mce/tiny_mce.js"></script>
+
+And replace it with:
+
+    <script type="text/javascript" src="tinymce/jscripts/tiny_mce/tiny_mce_gzip.js"></script>
+
+Add the new GZip initialization call (see below) that will
+tell the compressor what to include in the output. This should be the
+sum of all themes, plugins and languages contained on page.
+
+=back
+
+=head2 Running under mod_perl
+
+You either need to set up your web server to execute
+C<tiny_mce_gzip.pl> as a CGI script, or you can configure Apache to run
+it under mod_perl, which will greatly speed up the response.
+
+To do this, you could use a configuration like this:
+
+    <Location /tiny_mce/tiny_mce_gzip.pl>
+        SetHandler perl-script
+        PerlResponseHandler ModPerl::Registry
+        PerlOptions +ParseHeaders
+        Options +ExecCGI
+        Order allow,deny
+        Allow from all
+    </Location>
+
+=head2 Example of configuration
+
+The example below will pack both themes and all plugins into one
+file/stream. Remove the things you don't need or add you custom plugins
+to the settings below. Remember that the tinyMCE_GZ.init call must be
+placed in B<it's own script tag.>
+
+    <script type="text/javascript" src="tinymce/jscripts/tiny_mce/tiny_mce_gzip.js"></script>
+    <script type="text/javascript">
+        tinyMCE_GZ.init({
+            plugins     : 'style,layer,...etc',
+            themes      : 'simple,advanced',
+            languages   : 'en',
+            disk_cache  : true
+        });
+    </script>
+
+    <!-- Needs to be seperate script tags! -->
+
+    <script type="text/javascript">
+        tinyMCE.init({
+            .. your normal init ..
+        });
+    </script>
+
+=head2 Troubleshooting
+
+=over
+
+=item *
+
+The GZip compressor can fail to load if the server has odd settings or
+is missing the required support for it to function. To see compilation
+errors or other problems we suggest that you use HTTP debugging tools
+like HTTP Fiddler or, in Firefox, the Firebug addon, or point you
+browser directly to the GZip file.
+
+=item *
+
+Consult the changelog of this script and make sure that you use the
+latest version of TinyMCE. These two parts are pretty much tied
+together so there is no guarantee that it will work with older versions
+of TinyMCE.
+
+=back
+
+Visit the TinyMCE forum for help with the TinyMCE Gzip Compressor.
+
+=head2 Changelog and Bugs
+
+See the ChangeLog here : changelog.txt
+
+Please report any bugs that you find to clint@traveljury.com
+
+=head2 License notice
+
+The perl part of this library has been written by Clinton Gormley
+(clint@traveljury.com).
+
+The javascript part has been taken from the PHP compressor available at
+MoxieCode.
+
+This library is under LGPL license but it uses the zlib library, which
+is free to use in commercial applications. (Read the zlib licence).
+
+=cut
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce_popup.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/tiny_mce_popup.js
new file mode 100644 (file)
index 0000000..bb8e58c
--- /dev/null
@@ -0,0 +1,5 @@
+
+// Uncomment and change this document.domain value if you are loading the script cross subdomains
+// document.domain = 'moxiecode.com';
+
+var tinymce=null,tinyMCEPopup,tinyMCE;tinyMCEPopup={init:function(){var b=this,a,c;a=b.getWin();tinymce=a.tinymce;tinyMCE=a.tinyMCE;b.editor=tinymce.EditorManager.activeEditor;b.params=b.editor.windowManager.params;b.features=b.editor.windowManager.features;b.dom=b.editor.windowManager.createInstance("tinymce.dom.DOMUtils",document,{ownEvents:true,proxy:tinyMCEPopup._eventProxy});b.dom.bind(window,"ready",b._onDOMLoaded,b);if(b.features.popup_css!==false){b.dom.loadCSS(b.features.popup_css||b.editor.settings.popup_css)}b.listeners=[];b.onInit={add:function(e,d){b.listeners.push({func:e,scope:d})}};b.isWindow=!b.getWindowArg("mce_inline");b.id=b.getWindowArg("mce_window_id");b.editor.windowManager.onOpen.dispatch(b.editor.windowManager,window)},getWin:function(){return(!window.frameElement&&window.dialogArguments)||opener||parent||top},getWindowArg:function(c,b){var a=this.params[c];return tinymce.is(a)?a:b},getParam:function(b,a){return this.editor.getParam(b,a)},getLang:function(b,a){return this.editor.getLang(b,a)},execCommand:function(d,c,e,b){b=b||{};b.skip_focus=1;this.restoreSelection();return this.editor.execCommand(d,c,e,b)},resizeToInnerSize:function(){var a=this;setTimeout(function(){var b=a.dom.getViewPort(window);a.editor.windowManager.resizeBy(a.getWindowArg("mce_width")-b.w,a.getWindowArg("mce_height")-b.h,a.id||window)},10)},executeOnLoad:function(s){this.onInit.add(function(){eval(s)})},storeSelection:function(){this.editor.windowManager.bookmark=tinyMCEPopup.editor.selection.getBookmark(1)},restoreSelection:function(){var a=tinyMCEPopup;if(!a.isWindow&&tinymce.isIE){a.editor.selection.moveToBookmark(a.editor.windowManager.bookmark)}},requireLangPack:function(){var b=this,a=b.getWindowArg("plugin_url")||b.getWindowArg("theme_url");if(a&&b.editor.settings.language&&b.features.translate_i18n!==false&&b.editor.settings.language_load!==false){a+="/langs/"+b.editor.settings.language+"_dlg.js";if(!tinymce.ScriptLoader.isDone(a)){document.write('<script type="text/javascript" src="'+tinymce._addVer(a)+'"><\/script>');tinymce.ScriptLoader.markDone(a)}}},pickColor:function(b,a){this.execCommand("mceColorPicker",true,{color:document.getElementById(a).value,func:function(e){document.getElementById(a).value=e;try{document.getElementById(a).onchange()}catch(d){}}})},openBrowser:function(a,c,b){tinyMCEPopup.restoreSelection();this.editor.execCallback("file_browser_callback",a,document.getElementById(a).value,c,window)},confirm:function(b,a,c){this.editor.windowManager.confirm(b,a,c,window)},alert:function(b,a,c){this.editor.windowManager.alert(b,a,c,window)},close:function(){var a=this;function b(){a.editor.windowManager.close(window);tinymce=tinyMCE=a.editor=a.params=a.dom=a.dom.doc=null}if(tinymce.isOpera){a.getWin().setTimeout(b,0)}else{b()}},_restoreSelection:function(){var a=window.event.srcElement;if(a.nodeName=="INPUT"&&(a.type=="submit"||a.type=="button")){tinyMCEPopup.restoreSelection()}},_onDOMLoaded:function(){var b=tinyMCEPopup,d=document.title,e,c,a;if(b.features.translate_i18n!==false){c=document.body.innerHTML;if(tinymce.isIE){c=c.replace(/ (value|title|alt)=([^"][^\s>]+)/gi,' $1="$2"')}document.dir=b.editor.getParam("directionality","");if((a=b.editor.translate(c))&&a!=c){document.body.innerHTML=a}if((a=b.editor.translate(d))&&a!=d){document.title=d=a}}if(!b.editor.getParam("browser_preferred_colors",false)||!b.isWindow){b.dom.addClass(document.body,"forceColors")}document.body.style.display="";if(tinymce.isIE){document.attachEvent("onmouseup",tinyMCEPopup._restoreSelection);b.dom.add(b.dom.select("head")[0],"base",{target:"_self"})}b.restoreSelection();b.resizeToInnerSize();if(!b.isWindow){b.editor.windowManager.setTitle(window,d)}else{window.focus()}if(!tinymce.isIE&&!b.isWindow){b.dom.bind(document,"focus",function(){b.editor.windowManager.focus(b.id)})}tinymce.each(b.dom.select("select"),function(f){f.onkeydown=tinyMCEPopup._accessHandler});tinymce.each(b.listeners,function(f){f.func.call(f.scope,b.editor)});if(b.getWindowArg("mce_auto_focus",true)){window.focus();tinymce.each(document.forms,function(g){tinymce.each(g.elements,function(f){if(b.dom.hasClass(f,"mceFocus")&&!f.disabled){f.focus();return false}})})}document.onkeyup=tinyMCEPopup._closeWinKeyHandler},_accessHandler:function(a){a=a||window.event;if(a.keyCode==13||a.keyCode==32){var b=a.target||a.srcElement;if(b.onchange){b.onchange()}return tinymce.dom.Event.cancel(a)}},_closeWinKeyHandler:function(a){a=a||window.event;if(a.keyCode==27){tinyMCEPopup.close()}},_eventProxy:function(a){return function(b){tinyMCEPopup.dom.events.callNativeHandler(a,b)}}};tinyMCEPopup.init();
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/editable_selects.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/editable_selects.js
new file mode 100644 (file)
index 0000000..4d9ffe2
--- /dev/null
@@ -0,0 +1,70 @@
+/**
+ * editable_selects.js
+ *
+ * Copyright 2009, Moxiecode Systems AB
+ * Released under LGPL License.
+ *
+ * License: http://tinymce.moxiecode.com/license
+ * Contributing: http://tinymce.moxiecode.com/contributing
+ */
+
+var TinyMCE_EditableSelects = {
+       editSelectElm : null,
+
+       init : function() {
+               var nl = document.getElementsByTagName("select"), i, d = document, o;
+
+               for (i=0; i<nl.length; i++) {
+                       if (nl[i].className.indexOf('mceEditableSelect') != -1) {
+                               o = new Option(tinyMCEPopup.editor.translate('value'), '__mce_add_custom__');
+
+                               o.className = 'mceAddSelectValue';
+
+                               nl[i].options[nl[i].options.length] = o;
+                               nl[i].onchange = TinyMCE_EditableSelects.onChangeEditableSelect;
+                       }
+               }
+       },
+
+       onChangeEditableSelect : function(e) {
+               var d = document, ne, se = window.event ? window.event.srcElement : e.target;
+
+               if (se.options[se.selectedIndex].value == '__mce_add_custom__') {
+                       ne = d.createElement("input");
+                       ne.id = se.id + "_custom";
+                       ne.name = se.name + "_custom";
+                       ne.type = "text";
+
+                       ne.style.width = se.offsetWidth + 'px';
+                       se.parentNode.insertBefore(ne, se);
+                       se.style.display = 'none';
+                       ne.focus();
+                       ne.onblur = TinyMCE_EditableSelects.onBlurEditableSelectInput;
+                       ne.onkeydown = TinyMCE_EditableSelects.onKeyDown;
+                       TinyMCE_EditableSelects.editSelectElm = se;
+               }
+       },
+
+       onBlurEditableSelectInput : function() {
+               var se = TinyMCE_EditableSelects.editSelectElm;
+
+               if (se) {
+                       if (se.previousSibling.value != '') {
+                               addSelectValue(document.forms[0], se.id, se.previousSibling.value, se.previousSibling.value);
+                               selectByValue(document.forms[0], se.id, se.previousSibling.value);
+                       } else
+                               selectByValue(document.forms[0], se.id, '');
+
+                       se.style.display = 'inline';
+                       se.parentNode.removeChild(se.previousSibling);
+                       TinyMCE_EditableSelects.editSelectElm = null;
+               }
+       },
+
+       onKeyDown : function(e) {
+               e = e || window.event;
+
+               if (e.keyCode == 13)
+                       TinyMCE_EditableSelects.onBlurEditableSelectInput();
+       }
+};
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/form_utils.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/form_utils.js
new file mode 100644 (file)
index 0000000..6f62fe6
--- /dev/null
@@ -0,0 +1,210 @@
+/**
+ * form_utils.js
+ *
+ * Copyright 2009, Moxiecode Systems AB
+ * Released under LGPL License.
+ *
+ * License: http://tinymce.moxiecode.com/license
+ * Contributing: http://tinymce.moxiecode.com/contributing
+ */
+
+var themeBaseURL = tinyMCEPopup.editor.baseURI.toAbsolute('themes/' + tinyMCEPopup.getParam("theme"));
+
+function getColorPickerHTML(id, target_form_element) {
+       var h = "", dom = tinyMCEPopup.dom;
+
+       if (label = dom.select('label[for=' + target_form_element + ']')[0]) {
+               label.id = label.id || dom.uniqueId();
+       }
+
+       h += '<a role="button" aria-labelledby="' + id + '_label" id="' + id + '_link" href="javascript:;" onclick="tinyMCEPopup.pickColor(event,\'' + target_form_element +'\');" onmousedown="return false;" class="pickcolor">';
+       h += '<span id="' + id + '" title="' + tinyMCEPopup.getLang('browse') + '">&nbsp;<span id="' + id + '_label" class="mceVoiceLabel mceIconOnly" style="display:none;">' + tinyMCEPopup.getLang('browse') + '</span></span></a>';
+
+       return h;
+}
+
+function updateColor(img_id, form_element_id) {
+       document.getElementById(img_id).style.backgroundColor = document.forms[0].elements[form_element_id].value;
+}
+
+function setBrowserDisabled(id, state) {
+       var img = document.getElementById(id);
+       var lnk = document.getElementById(id + "_link");
+
+       if (lnk) {
+               if (state) {
+                       lnk.setAttribute("realhref", lnk.getAttribute("href"));
+                       lnk.removeAttribute("href");
+                       tinyMCEPopup.dom.addClass(img, 'disabled');
+               } else {
+                       if (lnk.getAttribute("realhref"))
+                               lnk.setAttribute("href", lnk.getAttribute("realhref"));
+
+                       tinyMCEPopup.dom.removeClass(img, 'disabled');
+               }
+       }
+}
+
+function getBrowserHTML(id, target_form_element, type, prefix) {
+       var option = prefix + "_" + type + "_browser_callback", cb, html;
+
+       cb = tinyMCEPopup.getParam(option, tinyMCEPopup.getParam("file_browser_callback"));
+
+       if (!cb)
+               return "";
+
+       html = "";
+       html += '<a id="' + id + '_link" href="javascript:openBrowser(\'' + id + '\',\'' + target_form_element + '\', \'' + type + '\',\'' + option + '\');" onmousedown="return false;" class="browse">';
+       html += '<span id="' + id + '" title="' + tinyMCEPopup.getLang('browse') + '">&nbsp;</span></a>';
+
+       return html;
+}
+
+function openBrowser(img_id, target_form_element, type, option) {
+       var img = document.getElementById(img_id);
+
+       if (img.className != "mceButtonDisabled")
+               tinyMCEPopup.openBrowser(target_form_element, type, option);
+}
+
+function selectByValue(form_obj, field_name, value, add_custom, ignore_case) {
+       if (!form_obj || !form_obj.elements[field_name])
+               return;
+
+       if (!value)
+               value = "";
+
+       var sel = form_obj.elements[field_name];
+
+       var found = false;
+       for (var i=0; i<sel.options.length; i++) {
+               var option = sel.options[i];
+
+               if (option.value == value || (ignore_case && option.value.toLowerCase() == value.toLowerCase())) {
+                       option.selected = true;
+                       found = true;
+               } else
+                       option.selected = false;
+       }
+
+       if (!found && add_custom && value != '') {
+               var option = new Option(value, value);
+               option.selected = true;
+               sel.options[sel.options.length] = option;
+               sel.selectedIndex = sel.options.length - 1;
+       }
+
+       return found;
+}
+
+function getSelectValue(form_obj, field_name) {
+       var elm = form_obj.elements[field_name];
+
+       if (elm == null || elm.options == null || elm.selectedIndex === -1)
+               return "";
+
+       return elm.options[elm.selectedIndex].value;
+}
+
+function addSelectValue(form_obj, field_name, name, value) {
+       var s = form_obj.elements[field_name];
+       var o = new Option(name, value);
+       s.options[s.options.length] = o;
+}
+
+function addClassesToList(list_id, specific_option) {
+       // Setup class droplist
+       var styleSelectElm = document.getElementById(list_id);
+       var styles = tinyMCEPopup.getParam('theme_advanced_styles', false);
+       styles = tinyMCEPopup.getParam(specific_option, styles);
+
+       if (styles) {
+               var stylesAr = styles.split(';');
+
+               for (var i=0; i<stylesAr.length; i++) {
+                       if (stylesAr != "") {
+                               var key, value;
+
+                               key = stylesAr[i].split('=')[0];
+                               value = stylesAr[i].split('=')[1];
+
+                               styleSelectElm.options[styleSelectElm.length] = new Option(key, value);
+                       }
+               }
+       } else {
+               tinymce.each(tinyMCEPopup.editor.dom.getClasses(), function(o) {
+                       styleSelectElm.options[styleSelectElm.length] = new Option(o.title || o['class'], o['class']);
+               });
+       }
+}
+
+function isVisible(element_id) {
+       var elm = document.getElementById(element_id);
+
+       return elm && elm.style.display != "none";
+}
+
+function convertRGBToHex(col) {
+       var re = new RegExp("rgb\\s*\\(\\s*([0-9]+).*,\\s*([0-9]+).*,\\s*([0-9]+).*\\)", "gi");
+
+       var rgb = col.replace(re, "$1,$2,$3").split(',');
+       if (rgb.length == 3) {
+               r = parseInt(rgb[0]).toString(16);
+               g = parseInt(rgb[1]).toString(16);
+               b = parseInt(rgb[2]).toString(16);
+
+               r = r.length == 1 ? '0' + r : r;
+               g = g.length == 1 ? '0' + g : g;
+               b = b.length == 1 ? '0' + b : b;
+
+               return "#" + r + g + b;
+       }
+
+       return col;
+}
+
+function convertHexToRGB(col) {
+       if (col.indexOf('#') != -1) {
+               col = col.replace(new RegExp('[^0-9A-F]', 'gi'), '');
+
+               r = parseInt(col.substring(0, 2), 16);
+               g = parseInt(col.substring(2, 4), 16);
+               b = parseInt(col.substring(4, 6), 16);
+
+               return "rgb(" + r + "," + g + "," + b + ")";
+       }
+
+       return col;
+}
+
+function trimSize(size) {
+       return size.replace(/([0-9\.]+)(px|%|in|cm|mm|em|ex|pt|pc)/i, '$1$2');
+}
+
+function getCSSSize(size) {
+       size = trimSize(size);
+
+       if (size == "")
+               return "";
+
+       // Add px
+       if (/^[0-9]+$/.test(size))
+               size += 'px';
+       // Sanity check, IE doesn't like broken values
+       else if (!(/^[0-9\.]+(px|%|in|cm|mm|em|ex|pt|pc)$/i.test(size)))
+               return "";
+
+       return size;
+}
+
+function getStyle(elm, attrib, style) {
+       var val = tinyMCEPopup.dom.getAttrib(elm, attrib);
+
+       if (val != '')
+               return '' + val;
+
+       if (typeof(style) == 'undefined')
+               style = attrib;
+
+       return tinyMCEPopup.dom.getStyle(elm, style);
+}
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/mctabs.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/mctabs.js
new file mode 100644 (file)
index 0000000..0ad9733
--- /dev/null
@@ -0,0 +1,162 @@
+/**
+ * mctabs.js
+ *
+ * Copyright 2009, Moxiecode Systems AB
+ * Released under LGPL License.
+ *
+ * License: http://tinymce.moxiecode.com/license
+ * Contributing: http://tinymce.moxiecode.com/contributing
+ */
+
+function MCTabs() {
+       this.settings = [];
+       this.onChange = tinyMCEPopup.editor.windowManager.createInstance('tinymce.util.Dispatcher');
+};
+
+MCTabs.prototype.init = function(settings) {
+       this.settings = settings;
+};
+
+MCTabs.prototype.getParam = function(name, default_value) {
+       var value = null;
+
+       value = (typeof(this.settings[name]) == "undefined") ? default_value : this.settings[name];
+
+       // Fix bool values
+       if (value == "true" || value == "false")
+               return (value == "true");
+
+       return value;
+};
+
+MCTabs.prototype.showTab =function(tab){
+       tab.className = 'current';
+       tab.setAttribute("aria-selected", true);
+       tab.setAttribute("aria-expanded", true);
+       tab.tabIndex = 0;
+};
+
+MCTabs.prototype.hideTab =function(tab){
+       var t=this;
+
+       tab.className = '';
+       tab.setAttribute("aria-selected", false);
+       tab.setAttribute("aria-expanded", false);
+       tab.tabIndex = -1;
+};
+
+MCTabs.prototype.showPanel = function(panel) {
+       panel.className = 'current';
+       panel.setAttribute("aria-hidden", false);
+};
+
+MCTabs.prototype.hidePanel = function(panel) {
+       panel.className = 'panel';
+       panel.setAttribute("aria-hidden", true);
+};
+
+MCTabs.prototype.getPanelForTab = function(tabElm) {
+       return tinyMCEPopup.dom.getAttrib(tabElm, "aria-controls");
+};
+
+MCTabs.prototype.displayTab = function(tab_id, panel_id, avoid_focus) {
+       var panelElm, panelContainerElm, tabElm, tabContainerElm, selectionClass, nodes, i, t = this;
+
+       tabElm = document.getElementById(tab_id);
+
+       if (panel_id === undefined) {
+               panel_id = t.getPanelForTab(tabElm);
+       }
+
+       panelElm= document.getElementById(panel_id);
+       panelContainerElm = panelElm ? panelElm.parentNode : null;
+       tabContainerElm = tabElm ? tabElm.parentNode : null;
+       selectionClass = t.getParam('selection_class', 'current');
+
+       if (tabElm && tabContainerElm) {
+               nodes = tabContainerElm.childNodes;
+
+               // Hide all other tabs
+               for (i = 0; i < nodes.length; i++) {
+                       if (nodes[i].nodeName == "LI") {
+                               t.hideTab(nodes[i]);
+                       }
+               }
+
+               // Show selected tab
+               t.showTab(tabElm);
+       }
+
+       if (panelElm && panelContainerElm) {
+               nodes = panelContainerElm.childNodes;
+
+               // Hide all other panels
+               for (i = 0; i < nodes.length; i++) {
+                       if (nodes[i].nodeName == "DIV")
+                               t.hidePanel(nodes[i]);
+               }
+
+               if (!avoid_focus) {
+                       tabElm.focus();
+               }
+
+               // Show selected panel
+               t.showPanel(panelElm);
+       }
+};
+
+MCTabs.prototype.getAnchor = function() {
+       var pos, url = document.location.href;
+
+       if ((pos = url.lastIndexOf('#')) != -1)
+               return url.substring(pos + 1);
+
+       return "";
+};
+
+
+//Global instance
+var mcTabs = new MCTabs();
+
+tinyMCEPopup.onInit.add(function() {
+       var tinymce = tinyMCEPopup.getWin().tinymce, dom = tinyMCEPopup.dom, each = tinymce.each;
+
+       each(dom.select('div.tabs'), function(tabContainerElm) {
+               var keyNav;
+
+               dom.setAttrib(tabContainerElm, "role", "tablist");
+
+               var items = tinyMCEPopup.dom.select('li', tabContainerElm);
+               var action = function(id) {
+                       mcTabs.displayTab(id, mcTabs.getPanelForTab(id));
+                       mcTabs.onChange.dispatch(id);
+               };
+
+               each(items, function(item) {
+                       dom.setAttrib(item, 'role', 'tab');
+                       dom.bind(item, 'click', function(evt) {
+                               action(item.id);
+                       });
+               });
+
+               dom.bind(dom.getRoot(), 'keydown', function(evt) {
+                       if (evt.keyCode === 9 && evt.ctrlKey && !evt.altKey) { // Tab
+                               keyNav.moveFocus(evt.shiftKey ? -1 : 1);
+                               tinymce.dom.Event.cancel(evt);
+                       }
+               });
+
+               each(dom.select('a', tabContainerElm), function(a) {
+                       dom.setAttrib(a, 'tabindex', '-1');
+               });
+
+               keyNav = tinyMCEPopup.editor.windowManager.createInstance('tinymce.ui.KeyboardNavigation', {
+                       root: tabContainerElm,
+                       items: items,
+                       onAction: action,
+                       actOnFocus: true,
+                       enableLeftRight: true,
+                       enableUpDown: true
+               }, tinyMCEPopup.dom);
+       });
+});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/validate.js b/koha-tmpl/intranet-tmpl/lib/tiny_mce/utils/validate.js
new file mode 100644 (file)
index 0000000..a922a94
--- /dev/null
@@ -0,0 +1,252 @@
+/**
+ * validate.js
+ *
+ * Copyright 2009, Moxiecode Systems AB
+ * Released under LGPL License.
+ *
+ * License: http://tinymce.moxiecode.com/license
+ * Contributing: http://tinymce.moxiecode.com/contributing
+ */
+
+/**
+       // String validation:
+
+       if (!Validator.isEmail('myemail'))
+               alert('Invalid email.');
+
+       // Form validation:
+
+       var f = document.forms['myform'];
+
+       if (!Validator.isEmail(f.myemail))
+               alert('Invalid email.');
+*/
+
+var Validator = {
+       isEmail : function(s) {
+               return this.test(s, '^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+@[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$');
+       },
+
+       isAbsUrl : function(s) {
+               return this.test(s, '^(news|telnet|nttp|file|http|ftp|https)://[-A-Za-z0-9\\.]+\\/?.*$');
+       },
+
+       isSize : function(s) {
+               return this.test(s, '^[0-9.]+(%|in|cm|mm|em|ex|pt|pc|px)?$');
+       },
+
+       isId : function(s) {
+               return this.test(s, '^[A-Za-z_]([A-Za-z0-9_])*$');
+       },
+
+       isEmpty : function(s) {
+               var nl, i;
+
+               if (s.nodeName == 'SELECT' && s.selectedIndex < 1)
+                       return true;
+
+               if (s.type == 'checkbox' && !s.checked)
+                       return true;
+
+               if (s.type == 'radio') {
+                       for (i=0, nl = s.form.elements; i<nl.length; i++) {
+                               if (nl[i].type == "radio" && nl[i].name == s.name && nl[i].checked)
+                                       return false;
+                       }
+
+                       return true;
+               }
+
+               return new RegExp('^\\s*$').test(s.nodeType == 1 ? s.value : s);
+       },
+
+       isNumber : function(s, d) {
+               return !isNaN(s.nodeType == 1 ? s.value : s) && (!d || !this.test(s, '^-?[0-9]*\\.[0-9]*$'));
+       },
+
+       test : function(s, p) {
+               s = s.nodeType == 1 ? s.value : s;
+
+               return s == '' || new RegExp(p).test(s);
+       }
+};
+
+var AutoValidator = {
+       settings : {
+               id_cls : 'id',
+               int_cls : 'int',
+               url_cls : 'url',
+               number_cls : 'number',
+               email_cls : 'email',
+               size_cls : 'size',
+               required_cls : 'required',
+               invalid_cls : 'invalid',
+               min_cls : 'min',
+               max_cls : 'max'
+       },
+
+       init : function(s) {
+               var n;
+
+               for (n in s)
+                       this.settings[n] = s[n];
+       },
+
+       validate : function(f) {
+               var i, nl, s = this.settings, c = 0;
+
+               nl = this.tags(f, 'label');
+               for (i=0; i<nl.length; i++) {
+                       this.removeClass(nl[i], s.invalid_cls);
+                       nl[i].setAttribute('aria-invalid', false);
+               }
+
+               c += this.validateElms(f, 'input');
+               c += this.validateElms(f, 'select');
+               c += this.validateElms(f, 'textarea');
+
+               return c == 3;
+       },
+
+       invalidate : function(n) {
+               this.mark(n.form, n);
+       },
+
+       getErrorMessages : function(f) {
+               var nl, i, s = this.settings, field, msg, values, messages = [], ed = tinyMCEPopup.editor;
+               nl = this.tags(f, "label");
+               for (i=0; i<nl.length; i++) {
+                       if (this.hasClass(nl[i], s.invalid_cls)) {
+                               field = document.getElementById(nl[i].getAttribute("for"));
+                               values = { field: nl[i].textContent };
+                               if (this.hasClass(field, s.min_cls, true)) {
+                                       message = ed.getLang('invalid_data_min');
+                                       values.min = this.getNum(field, s.min_cls);
+                               } else if (this.hasClass(field, s.number_cls)) {
+                                       message = ed.getLang('invalid_data_number');
+                               } else if (this.hasClass(field, s.size_cls)) {
+                                       message = ed.getLang('invalid_data_size');
+                               } else {
+                                       message = ed.getLang('invalid_data');
+                               }
+
+                               message = message.replace(/{\#([^}]+)\}/g, function(a, b) {
+                                       return values[b] || '{#' + b + '}';
+                               });
+                               messages.push(message);
+                       }
+               }
+               return messages;
+       },
+
+       reset : function(e) {
+               var t = ['label', 'input', 'select', 'textarea'];
+               var i, j, nl, s = this.settings;
+
+               if (e == null)
+                       return;
+
+               for (i=0; i<t.length; i++) {
+                       nl = this.tags(e.form ? e.form : e, t[i]);
+                       for (j=0; j<nl.length; j++) {
+                               this.removeClass(nl[j], s.invalid_cls);
+                               nl[j].setAttribute('aria-invalid', false);
+                       }
+               }
+       },
+
+       validateElms : function(f, e) {
+               var nl, i, n, s = this.settings, st = true, va = Validator, v;
+
+               nl = this.tags(f, e);
+               for (i=0; i<nl.length; i++) {
+                       n = nl[i];
+
+                       this.removeClass(n, s.invalid_cls);
+
+                       if (this.hasClass(n, s.required_cls) && va.isEmpty(n))
+                               st = this.mark(f, n);
+
+                       if (this.hasClass(n, s.number_cls) && !va.isNumber(n))
+                               st = this.mark(f, n);
+
+                       if (this.hasClass(n, s.int_cls) && !va.isNumber(n, true))
+                               st = this.mark(f, n);
+
+                       if (this.hasClass(n, s.url_cls) && !va.isAbsUrl(n))
+                               st = this.mark(f, n);
+
+                       if (this.hasClass(n, s.email_cls) && !va.isEmail(n))
+                               st = this.mark(f, n);
+
+                       if (this.hasClass(n, s.size_cls) && !va.isSize(n))
+                               st = this.mark(f, n);
+
+                       if (this.hasClass(n, s.id_cls) && !va.isId(n))
+                               st = this.mark(f, n);
+
+                       if (this.hasClass(n, s.min_cls, true)) {
+                               v = this.getNum(n, s.min_cls);
+
+                               if (isNaN(v) || parseInt(n.value) < parseInt(v))
+                                       st = this.mark(f, n);
+                       }
+
+                       if (this.hasClass(n, s.max_cls, true)) {
+                               v = this.getNum(n, s.max_cls);
+
+                               if (isNaN(v) || parseInt(n.value) > parseInt(v))
+                                       st = this.mark(f, n);
+                       }
+               }
+
+               return st;
+       },
+
+       hasClass : function(n, c, d) {
+               return new RegExp('\\b' + c + (d ? '[0-9]+' : '') + '\\b', 'g').test(n.className);
+       },
+
+       getNum : function(n, c) {
+               c = n.className.match(new RegExp('\\b' + c + '([0-9]+)\\b', 'g'))[0];
+               c = c.replace(/[^0-9]/g, '');
+
+               return c;
+       },
+
+       addClass : function(n, c, b) {
+               var o = this.removeClass(n, c);
+               n.className = b ? c + (o != '' ? (' ' + o) : '') : (o != '' ? (o + ' ') : '') + c;
+       },
+
+       removeClass : function(n, c) {
+               c = n.className.replace(new RegExp("(^|\\s+)" + c + "(\\s+|$)"), ' ');
+               return n.className = c != ' ' ? c : '';
+       },
+
+       tags : function(f, s) {
+               return f.getElementsByTagName(s);
+       },
+
+       mark : function(f, n) {
+               var s = this.settings;
+
+               this.addClass(n, s.invalid_cls);
+               n.setAttribute('aria-invalid', 'true');
+               this.markLabels(f, n, s.invalid_cls);
+
+               return false;
+       },
+
+       markLabels : function(f, n, ic) {
+               var nl, i;
+
+               nl = this.tags(f, "label");
+               for (i=0; i<nl.length; i++) {
+                       if (nl[i].getAttribute("for") == n.id || nl[i].htmlFor == n.id)
+                               this.addClass(nl[i], ic);
+               }
+
+               return null;
+       }
+};
index 7bab186..6972771 100644 (file)
@@ -114,6 +114,10 @@ a.tagnum {
        width : auto;
 }
 
+#cataloguing_additem_newitem textarea.input_marceditor {
+     width : 31em;
+}
+
 .mandatory_marker {
        color: red;
 }
diff --git a/koha-tmpl/intranet-tmpl/prog/en/css/right-to-left.css b/koha-tmpl/intranet-tmpl/prog/en/css/right-to-left.css
new file mode 100644 (file)
index 0000000..1390e38
--- /dev/null
@@ -0,0 +1,475 @@
+fieldset.rows ol.radio label, fieldset.rows li.radio label { float: right; margin: 0 1em 0 0.3em; }
+
+
+/* Adjust text directions */
+
+a.yuimenuitemlabel,
+body,
+caption,
+div#toolbar,
+div.rows span.label,
+div.subfield_line label,
+fieldset.rows.left label,
+fieldset.rows.left span.label,
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+legend,
+th,
+odoc,
+p,
+ul li,
+ul.toolbar,
+#doc2,
+#doc3,
+#doc4,
+.autocomplete .sample-result,
+.ui-tabs-panel,
+.yui-t1,
+.yui-t2,
+.yui-t3,
+.yui-t4
+.yui-t5,
+.yui-t6,
+.yui-t7
+{
+   text-align: right;
+}
+
+#doc, #doc2, #doc3, #doc4, .yui-t1, .yui-t2, .yui-t3, .yui-t4, .yui-t5, .yui-t6, .yui-t7 {
+    text-align: right;
+}
+
+#issuest th,
+.column-tool
+{
+   text-align: center;
+}
+
+/* Swap floats */
+
+div.lang,
+div.rows span.label,
+div.subfield_line label,
+div#header_search,
+fieldset.action,
+fieldset.rows,
+fieldset.rows input,
+fieldset.rows div.hint,
+fieldset.rows img,
+fieldset.rows label,
+fieldset.rows li,
+fieldset.rows ol.radio label.radio,
+fieldset.rows select,
+fieldset.rows span.label,
+fieldset.rows textarea,
+ol.bibliodetails,
+ol.bibliodetails span.label,
+span.required,
+#marcDocsSelect,
+#toplevelnav,
+.treeview .hitarea,
+.ui-tabs-nav li,
+.yui-g div.first,
+.yui-gb div.first,
+.yui-gc div.first,
+.yui-gc div.first div.first,
+.yui-gd div.first,
+.yui-ge div.first,
+.yui-gf div.first,
+.yui-t1 .yui-b,
+.yui-t2 .yui-b,
+.yui-t3 .yui-b
+{
+   float: right;
+}
+
+a.buttondot
+{
+   float: left;
+}
+
+ul li,
+input,
+.input_marceditor
+{
+   float: none;
+}
+
+div.sysprefs div.hint,
+.yui-g .yui-u,
+.yui-t1 #yui-main,
+.yui-t2 #yui-main,
+.yui-t3 #yui-main,
+
+{
+   float: right ;
+}
+.yui-t1 {
+float:right
+}
+
+/* Adjust margins, padding, alignment and table-element widths */
+
+.yui-t1 #yui-main,
+.yui-t2 #yui-main,
+.yui-t3 #yui-main
+{
+   margin-left: 0;
+}
+
+.yui-t1 #yui-main .yui-b,
+.yui-t2 #yui-main .yui-b
+{
+   margin-left: 0;
+   /* karam margin-right: 13em; */
+}
+
+.treeview .hitarea
+{
+   margin-left: 0;
+   margin-right: -16px;
+}
+
+div#menu li a
+{
+   margin-left: -1px;
+}
+
+div#menu,
+div.patroninfo ul,
+div.patroninfo h5,
+#guarantorsearch,
+.yui-g input
+{
+   margin-left: 0.5em;
+}
+fieldset.rows img,
+span.required
+{
+   margin-right: 0.5em;
+}
+
+fieldset.rows div.hint
+{
+   margin-right:1em;
+   margin-left:0;
+}
+
+div#header_search
+{
+   margin-right:200px;
+}
+
+.yui-g .yui-u
+{
+   padding-right: 0;
+}
+
+body
+{
+   padding-right: 1.5em;
+}
+
+.yui-u
+{
+   padding-right: 0.5em;
+}
+
+ul
+{
+   padding-left: 0;
+   padding-right: 1.1em;
+}
+
+.yui-b
+{
+   padding-bottom: 5em;
+}
+
+.treeview li {
+   padding: 3px 16px 3px 16px;
+}
+
+#login
+{
+   left: 0.5em;
+}
+
+#koha_url
+{
+   left: 2em;
+}
+
+#login,
+#koha_url
+{
+   right:auto;
+}
+
+div.listgroup,
+.yui-g p
+{
+   clear:right;
+}
+
+.yui-t2 #yui-main
+{
+   width: 75%;
+}
+
+.yui-t3 #yui-main
+{
+   width: 70%;
+}
+
+#borrowerautocomplete
+{
+   width: auto;
+}
+
+.holdcount
+{
+   line-height: 150%;
+}
+
+
+/* Borders */
+
+div#menu,
+div.patroninfo ul,
+div.patroninfo h5
+{
+   border-left: 1px solid #000;
+   border-right: none;
+}
+
+#menu ul li.active a
+{
+   border-right: 1px solid #000;
+   border-left: 0;
+}
+
+/* flip over images */
+
+.treeview li,
+.treeview li.last
+{
+   background-position-x: right !important;
+}
+/* TODO - Can we find ways to avoid this? */
+
+h1#logo,
+#koha_url,
+#login,
+.yui-t1 .yui-b
+{
+   position: absolute;
+}
+
+/*
+###############
+new added for good rtl :
+*/
+.statictabs ul li {
+    background: none repeat scroll 0px 0px rgb(230, 240, 242);
+    border-top: 1px solid rgb(185, 216, 217);
+    border-right: 1px solid rgb(185, 216, 217);
+    border-left: 1px solid rgb(185, 216, 217);
+    -moz-border-top-colors: none;
+    -moz-border-right-colors: none;
+    -moz-border-bottom-colors: none;
+    -moz-border-left-colors: none;
+    border-image: none;
+    border-bottom: 0px none !important;
+    border-top-right-radius: 4px;
+    border-top-left-radius: 4px;
+    float: right;
+    list-style: none outside none;
+    margin-bottom: 0px;
+    margin-right: 0.4em;
+    padding: 0px;
+    position: relative;
+    white-space: nowrap;
+    top: 1px;
+}
+
+div.sysprefs div.hint {
+    width: 25%;
+    float: left;
+    padding: 0.5em;
+    margin: 0.7em;
+}
+div.subfield_line label {
+    font-size: 89%;
+    float: right;
+    width: 16em;
+    text-align: right;
+    clear: right;
+}
+.yui-t3 #yui-main .yui-b {
+    margin-left: -0.0759em;
+}
+
+#doc3 {
+    background-position: right top;
+}
+
+.yui-gb{
+    /* use this will break the tools page "" width: 30%;""*/
+    float: right;
+}
+
+
+
+ul#toplevelmenu {
+    padding: 0px;
+    float: right;
+}
+.navbar .nav.pull-right {
+    float: left;
+    margin-right: 0px;
+}
+
+.navbar .nav > li {
+    float: right;
+}
+#cartmenulink {
+    background: url("../../img/cart-small.gif") no-repeat scroll right center transparent;
+    padding-right: 15px;
+}
+
+
+
+.yui-g .yui-u, .yui-g .yui-g, .yui-g .yui-gb, .yui-g .yui-gc, .yui-g .yui-gd, .yui-g .yui-ge, .yui-g .yui-gf, .yui-gc .yui-u, .yui-gd .yui-g, .yui-g .yui-gc .yui-u, .yui-ge .yui-u, .yui-ge .yui-g, .yui-gf .yui-g, .yui-gf .yui-u {
+    display: inline;
+
+}
+
+
+
+fieldset.action {
+    float: right;
+
+}
+#yui-main .yui-b {
+
+    width: auto;
+}
+
+/*Lable */
+div.homeimage {
+    background-attachment: scroll;
+    background-color: transparent;
+    background-image: url("../../img/label-creator-image.png");
+    background-position: left top;
+    background-repeat: no-repeat;
+    min-width: 800px;
+}
+div.lci_01 {
+    float: left;
+    clear: left;
+}
+
+div.lci_02 {
+    float: left;
+    clear: left;
+}
+div.lci_03 {
+    float: left;
+    clear: left;
+}
+
+
+/***********************************************************/
+
+
+#addbibliotabs .ui-tabs-panel {
+    float: right;
+}
+
+/*for the tools main page */
+.yui-gb .yui-u {
+    float: left;
+    margin-right: 2%;
+    margin-left: 0%;
+    width: 25%;
+}
+
+/*NEWS*/
+div.yui-b {
+    position: absolute;
+}
+div#yui-main{
+float:left;
+}
+/*floating taps for marceditor and other taps plases */
+.ui-tabs .ui-tabs-nav li {
+    float: right;
+}
+/*this is about the shadow image in the pref sidbar */
+div#menu li a {
+    background: -moz-linear-gradient(right center , rgb(232, 240, 246) 0%, rgb(232, 240, 246) 96%, rgb(193, 193, 193) 100%) repeat scroll 0% 0% transparent; /*firefox 6*/
+background: -webkit-gradient(linear, right top, right top, color-stop(0%,#e8f0f6), color-stop(96%,#e8f0f6), color-stop(100%,#c1c1c1)); /* Chrome,Safari4 */
+    background: -webkit-linear-gradient(right, #e8f0f6 0%,#e8f0f6 96%,#c1c1c1 100%); /* Chrome10,Safari5.1 */
+     background: -o-linear-gradient(right, #e8f0f6 0%,#e8f0f6 96%,#c1c1c1 100%); /* Opera11.10 */
+   background: -ms-linear-gradient(right, #e8f0f6 0%,#e8f0f6 96%,#c1c1c1 100%); /* IE10 */
+       background: linear-gradient(right, #e8f0f6 0%,#e8f0f6 96%,#c1c1c1 100%); /* W3C */
+}
+/*Z39 search botton */
+
+#searchheader form.fz3950bigrpad {
+    float: left;
+}
+/*check bocks*/
+p label, {
+    float: left;
+}
+
+/*the arrwos in pref.*/
+h3.expanded {
+    background: url("../../img/collapse.gif") no-repeat scroll right 6px transparent;
+    cursor: pointer;
+    padding-right: 12px;
+}
+h3.collapsed {
+    background: url("../../img/expand.gif") no-repeat scroll right 6px transparent;
+    cursor: pointer;
+    padding-right: 12px;
+
+}
+.dropdown-menu {
+    position: absolute;
+    top: 100%;
+    left: -25px;
+    z-index: 1000;
+    display: none;
+    float: left;
+    min-width: 160px;
+    padding: 5px 0px;
+    margin: 2px 0px 0px;
+    list-style: none outside none;
+    background-color: rgb(255, 255, 255);
+    border: 1px solid rgba(0, 0, 0, 0.2);
+    border-radius: 6px 6px 6px 6px;
+    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.2);
+    background-clip: padding-box;
+}
+
+
+/* */
+
+div#yui-main {
+
+    margin-right: 22em;
+}
+
+/* */
+
+div#yui-main.sysprefs {
+    margin-right: 0em;
+    float: right;
+}
index 91d0431..57c5fdb 100644 (file)
@@ -254,16 +254,20 @@ table+table {
        border : 0;
 }
 
+.highlighted-row { background-color: orange !important }
 
-tr.highlight td, tr.highlight th, tr.odd td {
+tr.highlight td,
+tr.highlight th,
+tr.odd td,
+tr.odd.highlight td {
        background-color : #F3F3F3;
-       border : 1px solid #DDDDDD;
-       border-right : 1px solid #DDDDDD;
+    border : 1px solid #BCBCBC;
+    border-right : 1px solid #BCBCBC;
 }
 
 tr.even td, tr.even.highlight td {
        background-color: #FFF;
-       border-right : 1px solid #DDDDDD;
+    border-right : 1px solid #BCBCBC;
 }
 
 td.od {
@@ -655,6 +659,12 @@ fieldset.rows label.yesno {
        width : auto;
 }
 
+fieldset.rows label.error {
+       float: none;
+       margin-left: 1em;
+       width: auto;
+}
+
 fieldset.action, div.action {
     background-color: transparent;
        clear : both;
@@ -1195,7 +1205,8 @@ div.note {
        text-decoration : underline;
  }
  
-.required {
+label.required,
+span.required {
     color : #C00;
 }
 
@@ -2550,4 +2561,12 @@ button.closebtn{padding:0;cursor:pointer;background:transparent;border:0;-webkit
 .btn-group label,
 .btn-group select {
     font-size: 13px;
-}
\ No newline at end of file
+}
+
+.waiting {
+    cursor: wait;
+}
+
+fieldset.rows table.mceListBox {
+    margin: 0;
+}
index c36698d..01ecec9 100644 (file)
@@ -1,17 +1,22 @@
 <fieldset id="acqui_basket_add">
     <legend>Add order to basket</legend>
     [% IF has_budgets %]
-    <form action="/cgi-bin/koha/acqui/neworderbiblio.pl" method="post">
-        <input type="hidden" name="booksellerid" value="[% booksellerid %]" />
-        <input type="hidden" name="basketno" value="[% basketno %]" />
-        <ul><li><label for="q">From an existing record: </label><input id="q" type="text"  size="25" name="q" />
-        <input type="submit" class="submit" value="Search" /></li>
+      <ul>
+        <li>
+          <label for="q">From an existing record: </label>
+          <form action="/cgi-bin/koha/acqui/neworderbiblio.pl" method="post">
+            <input type="hidden" name="booksellerid" value="[% booksellerid %]" />
+            <input type="hidden" name="basketno" value="[% basketno %]" />
+            <input id="q" type="text"  size="25" name="q" />
+            <input type="submit" class="submit" value="Search" />
+          </form>
+        </li>
         <li><a href="/cgi-bin/koha/acqui/newordersuggestion.pl?booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]">From a suggestion</a></li>
+        <li><a href="/cgi-bin/koha/acqui/newordersubscription.pl?booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]">From a subscription</a></li>
         <li><a href="/cgi-bin/koha/acqui/neworderempty.pl?booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]">From a new (empty) record</a></li>
         <li><a href="/cgi-bin/koha/acqui/z3950_search.pl?booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]">From an external source</a></li>
         <li><a href="/cgi-bin/koha/acqui/addorderiso2709.pl?booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]"> From a staged file</a></li>
-        </ul>
-    </form>
+      </ul>
     [% ELSE %]
         You can't create any orders unless you first <a href="/cgi-bin/koha/admin/aqbudgetperiods.pl">define a budget and a fund</a>.
     [% END %]
index 17d1138..d54cf64 100644 (file)
@@ -113,12 +113,12 @@ function finderjumpfull(page)
             <input type="hidden" name="index" value="[% index %]" />
                 <fieldset class="rows"><legend>Search options</legend>
                 <ol><li>
-                    <span class="label">Authority type</span>
+                    <span class="label">Authority type</span>
                     [% authtypecode %]
                     <input type="hidden" name="authtypecode" value="[% authtypecode %]" />
                 </li>
                 <li>
-                    <label for="mainmainentry">Main entry ($a only)</label>
+                    <label for="mainmainentry">Main entry ($a only)</label>
                     <input type="hidden" name="marclist" value="mainmainentry" />
                     <input type="hidden" name="and_or" value="and" />
                     <input type="hidden" name="excluding" value="" />
@@ -132,7 +132,7 @@ function finderjumpfull(page)
                 </li>
 
                 <li>
-                    <label for="mainentry">Main entry</label>
+                    <label for="mainentry">Main entry</label>
                     <input type="hidden" name="marclist" value="mainentry" />
                     <input type="hidden" name="and_or" value="and" />
                     <input type="hidden" name="excluding" value="" />
@@ -146,7 +146,7 @@ function finderjumpfull(page)
                 </li>
 
                 <li>
-                    <label for="marclistanywhere">Anywhere</label>
+                    <label for="marclistanywhere">Anywhere</label>
                     <input type="hidden" name="marclist" value="any" />
                     <input type="hidden" name="and_or" value="and" />
                     <input type="hidden" name="excluding" value="" />
@@ -159,7 +159,7 @@ function finderjumpfull(page)
                     <div id="yvaluecontainermarclist"></div>
                 </li>
                 <li>
-                    <label for="marclistheading">Heading match</label>
+                    <label for="marclistheading">Heading match</label>
                     <input type="hidden" name="marclist" value="match" />
                     <input type="hidden" name="and_or" value="and" />
                     <input type="hidden" name="excluding" value="" />
@@ -171,7 +171,7 @@ function finderjumpfull(page)
                     <input type="text" name="value_match" value="[% value_match |html %]" />
                 </li>
         <li>
-        <label for="orderby">Sort by </label>
+        <label for="orderby">Sort by: </label>
         <select name="orderby" id="orderby">
             <option value="">No order</option>
             <option value="HeadingAsc" selected="selected">Heading ascendant</option>
index 2dde5ad..f669d2c 100644 (file)
@@ -34,9 +34,9 @@
 
         var is_confirmed;
        if (count > 0){
-            is_confirmed = alert( count + " " +_("item(s) are attached to this record.\nYou must delete all items before deleting this record.") );
+            is_confirmed = alert( count + " " +_("item(s) are attached to this record. You must delete all items before deleting this record.") );
         } else if ( holdcount > 0 ) {
-            is_confirmed = confirm( holdcount + " " + _("holds(s) for this record \n Are you sure you want to delete this record?."));
+            is_confirmed = confirm( holdcount + " " + _("hold(s) on this record. Are you sure you want to delete this record?."));
         } else {
             is_confirmed = confirm(_("Are you sure you want to delete this record?"));
         }
@@ -59,7 +59,7 @@
         var holdcount = [% holdcount %];
 
         if ( holdcount > 0 ) {
-            alert( holdcount + " " + _("holds(s) for this record \n You must delete all holds before deleting all items.") );
+            alert( holdcount + " " + _("hold(s) on this record. You must delete all holds before deleting all items.") );
         } else if ( count > 0 ) {
             if( confirm( _("Are you sure you want to delete the") + " " + count + " " + _("attached items?") ) ) {
                 window.location="/cgi-bin/koha/cataloguing/additem.pl?op=delallitems&amp;biblionumber=[% biblionumber %]";
index f2cd877..fb283ec 100644 (file)
@@ -69,7 +69,7 @@
     [% IF ( CAN_user_updatecharges ) %]
         [% IF ( finesview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/members/boraccount.pl?borrowernumber=[% borrowernumber %]">Fines</a></li>
     [% END %]
-    [% IF ( routinglistview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/members/routing-lists.pl?borrowernumber=[% borrowernumber %]">Routing Lists</a></li>
+    [% IF ( RoutingSerials ) %][% IF ( routinglistview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/members/routing-lists.pl?borrowernumber=[% borrowernumber %]">Routing lists</a></li>[% END %]
     [% IF ( intranetreadinghistory ) %]
         [% IF ( readingrecordview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/members/readingrec.pl?borrowernumber=[% borrowernumber %]">Circulation history</a></li>
     [% END %]
index ced2858..abcdccd 100644 (file)
@@ -72,6 +72,7 @@ in the global namespace %]
         [% IF ( CAN_user_updatecharges ) %]
        [% IF ( finesview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/members/boraccount.pl?borrowernumber=[% borrower.borrowernumber %]">Fines</a></li>
        [% END %]
+    [% IF ( RoutingSerials ) %][% IF ( routinglistview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/members/routing-lists.pl?borrowernumber=[% borrowernumber %]">Routing lists</a></li>[% END %]
     [% IF ( intranetreadinghistory ) %][% IF ( readingrecordview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/members/readingrec.pl?borrowernumber=[% borrower.borrowernumber %]">Circulation history</a></li>[% END %]
     [% IF ( CAN_user_parameters ) %][% IF ( logview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/tools/viewlog.pl?do_it=1&amp;modules=MEMBERS&amp;modules=circulation&amp;object=[% borrower.borrowernumber %]&amp;src=circ">Modification log</a></li>[% END %]
     [% IF ( EnhancedMessagingPreferences ) %]
index a883def..7c9722c 100644 (file)
@@ -8,6 +8,9 @@
 [% ELSE %]
     <link rel="stylesheet" type="text/css" href="[% themelang %]/css/staff-global.css" />
 [% END %]
+[% IF ( bidi ) %]
+   <link rel="stylesheet" type="text/css" href="[% themelang %]/css/right-to-left.css" />
+[% END %]
 [% IF ( IntranetUserCSS ) %]<style type="text/css">[% IntranetUserCSS %]</style>[% END %]
 <script type="text/javascript" src="[% interface %]/lib/jquery/jquery.js"></script>
 <script type="text/javascript" src="[% interface %]/lib/jquery/jquery-ui.js"></script>
@@ -15,6 +18,7 @@
 <script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.cookie.min.js"></script>
 <script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.highlight-3.js"></script>
 <script type="text/javascript" src="[% interface %]/lib/bootstrap/bootstrap.min.js"></script>
+<script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.validate.min.js"></script>
 
 [% IF ( login ) %]
     <link rel="stylesheet" type="text/css" href="[% themelang %]/css/login.css" />
@@ -36,6 +40,7 @@
 
 <!-- koha core js -->
 <script type="text/javascript" src="[% themelang %]/js/staff-global.js"></script>
+[% INCLUDE 'validator-strings.inc' %]
 [% IF ( intranetuserjs ) %]
     <script type="text/javascript">
     //<![CDATA[
index d75b36e..4a26d79 100644 (file)
@@ -30,9 +30,6 @@
                             [% IF ( CAN_user_tools ) %]
                             <li><a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a></li>
                             [% END %]
-                            [% IF ( UseKohaPlugins && CAN_user_plugins ) %]
-                            <li><a href="/cgi-bin/koha/plugins/plugins-home.pl">Plugins</a></li>
-                            [% END %]
                             [% IF ( CAN_user_parameters ) %]
                             <li><a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a></li>
                             [% END %]
index da8d781..72acc21 100644 (file)
@@ -9,6 +9,9 @@
 [% ELSE %]
 <link rel="stylesheet" type="text/css" href="[% themelang %]/css/staff-global.css" />
 [% END %]
+[% IF ( bidi ) %]
+   <link rel="stylesheet" type="text/css" href="[% themelang %]/css/right-to-left.css" />
+[% END %]
 <script type="text/javascript" src="[% interface %]/lib/jquery/jquery.js"></script>
 <script type="text/javascript" src="[% interface %]/lib/jquery/jquery-ui.js"></script>
 <script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.hotkeys.min.js"></script>
index 3bdcec8..787b852 100644 (file)
@@ -131,7 +131,7 @@ function searchToHold(){
         <button class="btn btn-small dropdown-toggle" data-toggle="dropdown">More <span class="caret"></span></button>
             <ul class="dropdown-menu">
                 [% IF ( CAN_user_borrowers ) %]
-                    <li><a id="renewpatron" href="/cgi-bin/koha/members/moremember.pl?reregistration=y&amp;borrowernumber=[% borrowernumber %]">Renew patron</a></li>
+                    <li><a id="renewpatron" href="/cgi-bin/koha/members/setstatus.pl?borrowernumber=[% borrowernumber %]&amp;cardnumber=[% cardnumber %]&amp;destination=[% destination %]&amp;reregistration=y">Renew patron</a></li>
                 [% ELSE %]
                     <li class="disabled"><a id="renewpatron" href="#">Renew patron</a></li>
                 [% END %]
index b08c5ca..ed6b067 100644 (file)
@@ -52,7 +52,7 @@
       [% ELSE %]
       <td>-</td>
       [% END %]
-      [% IF ( messaging_preference.transport_sms ) %]
+
       [% IF ( SMSSendDriver ) %]<td>
           [% IF ( messaging_form_inactive ) %]
               [% IF ( messaging_preference.transports_sms ) %]
@@ -80,9 +80,6 @@
               [% END %]
           [% END %]
       </td>[% END %]
-      [% ELSE %]
-      <td>-</td>
-      [% END %]
 
       [% IF ( TalkingTechItivaPhone ) %]<td>
           [% IF ( messaging_form_inactive ) %]
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/patroncards-batches-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/patroncards-batches-toolbar.inc
deleted file mode 100644 (file)
index 226210c..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-<div id="toolbar">
-    <script type="text/JavaScript">
-        //<![CDATA[
-           function DeleteConfirm() {
-                var msg = "Are you sure you want to delete batch [% batch_id %]?"
-                var answer = confirm(msg);
-                if (answer) {
-                    window.location = "/cgi-bin/koha/patroncards/manage.pl?op=delete&amp;card_element=batch&amp;element_id=[% batch_id %]";
-                }
-                else {
-                    return; // abort delete
-                }
-            };
-            function Remove() {
-                items = new Array;
-                item_num = new Array;
-                if(document.items.action.length > 0) {
-                    for (var i=0; i < document.items.action.length; i++) {
-                        if (document.items.action[i].checked) {
-                            items.push("label_id=" +  document.items.action[i].value);
-                            item_num.push(i+1);
-                        }
-                    }
-                    if (items.length < 1) {
-                        alert(_("Please select at least one item to delete."));
-                        return;     // no item selected
-                    }
-                    getstr = items.join("&");
-                    item_msg = item_num.join(", ");
-                    var msg = "Are you sure you want to remove card number(s): " + item_msg + " from this batch?"
-                }
-//                else if (document.items.action.checked) {
-//                    getstr = "label_id="+document.items.action.value;
-//                    var msg = "Are you sure you want to remove selected item from this batch?"
-//                }
-                else {
-                    alert(_("Please select at least label to delete."));
-                    return;     // no item selected
-                }
-                var answer = confirm(msg);
-                if (answer) {
-                    window.location = "/cgi-bin/koha/patroncards/edit-batch.pl?op=remove&amp;batch_id=[% batch_id %]&amp;" + getstr;
-                }
-                else {
-                    return; // abort delete
-                }
-            };
-            function Add() {
-                window.open("/cgi-bin/koha/patroncards/members-search.pl?batch_id=[% batch_id %]",'FindABibIndex','width=875,height=400,toolbar=no,scrollbars=yes');
-            };
-            function DeDuplicate() {
-                window.location = "/cgi-bin/koha/patroncards/edit-batch.pl?op=de_duplicate&amp;batch_id=[% batch_id %]";
-            };
-            function Xport(mode) {
-                if (mode == 'label') {
-                    patroncards= new Array;
-                    if(document.items.action.length > 0) {
-                        for (var i=0; i < document.items.action.length; i++) {
-                            if (document.items.action[i].checked) {
-                                patroncards.push("label_id=" +  document.items.action[i].value);
-                            }
-                        }
-                        if (patroncards.length < 1) {
-                            alert(_("Please select at least one card to export."));
-                            return;     // no batch selected
-                        }
-                        getstr = patroncards.join("&");
-                    }
-                    else if (document.items.action.checked) {
-                        getstr = document.items.action.value;
-                    }
-                    else {
-                        alert(_("Please select at least one card to export."));
-                        return;     // no batch selected
-                    }
-                    return GB_showCenter('Export labels', "/cgi-bin/koha/patroncards/print.pl?batch_id=[% batch_id %]&" + getstr, 700, 800);
-                }
-                else if (mode == 'batch') {
-                    return GB_showCenter('Export labels', "/cgi-bin/koha/patroncards/print.pl?batch_id=[% batch_id %]", 700, 800);
-                }
-                else {
-                    // some pass-thru error trapping just in case...
-                }
-            };
-           function selected_layout() {
-                if (document.items.action.length) {
-                for (i=0;i<document.items.action.length;i++){
-                    if (document.items.action[i].checked==true){
-                        return(document.items.action[i].value);
-                    }
-                };
-                }
-                else {
-                    if (document.items.action.checked){
-                        return(document.items.action.value);
-                    }
-                };
-                alert(_("Please select at least one item."));
-                return (-1);
-            };
-
-        // prepare DOM for YUI Toolbar
-         $(document).ready(function() {
-            $("#additemsc").empty();
-            $("#removeitemsc").empty();
-            $("#deletebatchc").empty();
-            $("#deduplicatec").empty();
-            $("#exportitemsc").empty();
-            $("#exportbatchc").empty();
-            yuiToolbar();
-         });
-        // YUI Toolbar Functions
-        function yuiToolbar() {
-            new YAHOO.widget.Button({
-                id: "additems",
-                type: "link",
-                href: "#",
-                label: _("Add item(s)"),
-                container: "additemsc",
-                onclick: {fn:function(){Add()}}
-            });
-
-            new YAHOO.widget.Button({
-                id: "removeitems",
-                type: "link",
-                href: "#",
-                label: _("Remove item(s)"),
-                container: "removeitemsc",
-                onclick: {fn:function(){Remove()}}
-            });
-
-            new YAHOO.widget.Button({
-                id: "deletebatch",
-                type: "link",
-                href: "#",
-                label: _("Delete batch"),
-                container: "deletebatchc",
-                onclick: {fn:function(){DeleteConfirm()}}
-            });
-
-            new YAHOO.widget.Button({
-                id: "deduplicate",
-                type: "link",
-                href: "#",
-                label: _("Remove duplicates"),
-                container: "deduplicatec",
-                onclick: {fn:function(){DeDuplicate()}}
-            });
-
-            new YAHOO.widget.Button({
-                id: "exportitems",
-                type: "link",
-                href: "#",
-                label: _("Export item(s)"),
-                container: "exportitemsc",
-                onclick: {fn:function(){Xport('label')}}
-            });
-
-            new YAHOO.widget.Button({
-                id: "exportbatch",
-                type: "link",
-                href: "#",
-                label: _("Export batch"),
-                container: "exportbatchc",
-                onclick: {fn:function(){Xport('batch')}}
-            });
-            new YAHOO.widget.Button("deletebatch");
-        }
-        //]]>
-    </script>
-    <ul class="toolbar">
-        <li id="additemsc"><a id="additems" href="#">Add item(s)</a></li>[% IF ( table_loop ) %]
-        <li id="removeitemsc"><a id="removeitems" href="#">Remove item(s)</a></li>
-        <li id="deletebatchc"><a id="deletebatch" href="#">Delete batch</a></li>
-        <li id="deduplicatec"><a id="deduplicate" href="#">Remove duplicates</a></li>
-        <li id="exportitemsc"><a id="exportitems" href="#">Export item(s)</a></li>
-        <li id="exportbatchc"><a id="exportbatch" href="#">Export batch</a></li>[% END %]
-    </ul>
-</div>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/subscriptions-search.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/subscriptions-search.inc
new file mode 100644 (file)
index 0000000..db65f93
--- /dev/null
@@ -0,0 +1,54 @@
+<div id="advsearch">
+    <form action="" method="get">
+        <fieldset class="brief">
+            <a id="unfold_advsearch" style="cursor:pointer" onclick="$('#advsearch_form').slideToggle(400);">Advanced search</a>
+            <div id="advsearch_form" style="display:none">
+            <ol>
+              <li>
+                <label for="issn">ISSN:</label>
+                <input type="text" id="issn" name="ISSN_filter" value="[% ISSN_filter %]" />
+              </li>
+              <li>
+                <label for="title">Title:</label>
+                <input type="text" id="title" name="title_filter" value="[% title_filter %]" />
+              </li>
+              <li>
+                <label for="ean">EAN:</label>
+                <input type="text" id="ean" name="EAN_filter" value="[% EAN_filter %]" />
+              </li>
+              <li>
+                <label for="publisher">Publisher:</label>
+                <input type="text" id="publisher" name="publisher_filter" value="[% publisher_filter %]" />
+              </li>
+              <li>
+                <label for="supplier">Supplier:</label>
+                <input type="text" id="supplier" name="supplier_filter" value="[% supplier_filter %]" />
+              </li>
+              <li>
+                <label for="branch">Branch:</label>
+                <select id="branch" name="branch_filter">
+                  <option value="">All</option>
+                  [% FOREACH branch IN branches_loop %]
+                    [% IF (branch.selected) %]
+                      <option selected="branch.selected" value="[% branch.branchcode %]">[% branch.branchname %]</option>
+                    [% ELSE %]
+                      <option value="[% branch.branchcode %]">[% branch.branchname %]</option>
+                    [% END %]
+                  [% END %]
+                </select>
+              </li>
+            </ol>
+            <input type="hidden" name="searched" value="1" />
+            [% IF (booksellerid) %]
+                <input type="hidden" name="booksellerid" value="[% booksellerid %]" />
+            [% END %]
+            [% IF (basketno) %]
+                <input type="hidden" name="basketno" value="[% basketno %]" />
+            [% END %]
+            <fieldset class="action">
+              <input type="submit" value="Search" />
+            </fieldset>
+            </div>
+        </fieldset>
+    </form>
+</div>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/validator-strings.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/validator-strings.inc
new file mode 100644 (file)
index 0000000..2ca4430
--- /dev/null
@@ -0,0 +1,23 @@
+<script type="text/javascript">
+//<![CDATA[
+$(document).ready(function(){
+    jQuery.extend(jQuery.validator.messages, {
+        required: _("This field is required."),
+        remote: _("Please fix this field."),
+        email: _("Please enter a valid email address."),
+        url: _("Please enter a valid URL."),
+        date: _("Please enter a valid date."),
+        dateISO: _("Please enter a valid date (ISO)."),
+        number: _("Please enter a valid number."),
+        digits: _("Please enter only digits."),
+        equalTo: _("Please enter the same value again."),
+        maxlength: $.validator.format(_("Please enter no more than {0} characters.")),
+        minlength: $.validator.format(_("Please enter at least {0} characters.")),
+        rangelength: $.validator.format(_("Please enter a value between {0} and {1} characters long.")),
+        range: $.validator.format(_("Please enter a value between {0} and {1}.")),
+        max: $.validator.format(_("Please enter a value less than or equal to {0}.")),
+        min: $.validator.format(_("Please enter a value greater than or equal to {0}."))
+    });
+});
+//]]>
+</script>
index 968334b..c9a45c0 100644 (file)
@@ -15,20 +15,20 @@ KOHA.AJAX = {
         KOHA.xhr = xhr;
         if ( !xhr.getResponseHeader( 'content-type' ).match( 'application/json' ) ) {
             // Something really failed
-            humanMsg.displayAlert( _("Internal Server Error, please reload the page") );
+            humanMsg.displayAlert( MSG_INTERNAL_SERVER_ERROR );
             return;
         }
 
         var error = eval( '(' + xhr.responseText + ')' );
 
         if ( error.type == 'auth' ) {
-            humanMsg.displayMsg( _("You need to log in again, your session has timed out") );
+            humanMsg.displayMsg( MSG_SESSION_TIMED_OUT );
         }
 
         if ( callback ) {
             callback( error );
         } else {
-            humanMsg.displayAlert( _("Error; your data might not have been saved") );
+            humanMsg.displayAlert( MSG_DATA_NOT_SAVED );
         }
     },
     MarkRunning: function ( selector, text ) {
index e604bdc..614e698 100644 (file)
@@ -342,8 +342,8 @@ function UnCloneField(index) {
     } else {
         // unclone a subfield, check if there will remain one subfield
         var subfieldCode = getFieldAndSubfieldCode(index);
-        // subfield divs with id begining with original field and subfield field code
-        var cloneSubfields = $('.subfield_line[id^="subfield'+subfieldCode+'"]');
+        // subfield divs of same field with id begining with original field and subfield field code
+        var cloneSubfields = $(original).parent().children('.subfield_line[id^="subfield'+subfieldCode+'"]');
         if (cloneSubfields.length > 1) {
             canUnclone = true;
         }
index b350211..703944e 100644 (file)
@@ -470,4 +470,27 @@ jQuery.extend( jQuery.fn.dataTableExt.oSort, {
     }
 } );
 
-}());
\ No newline at end of file
+}());
+/* Plugin to allow sorting on data stored in a span's title attribute
+ *
+ * Ex: <td><span title="[% ISO_date %]">[% formatted_date %]</span></td>
+ *
+ * In DataTables config:
+ *     "aoColumns": [
+ *        { "sType": "title-string" },
+ *      ]
+ * http://datatables.net/plug-ins/sorting#hidden_title_string
+ */
+jQuery.extend( jQuery.fn.dataTableExt.oSort, {
+    "title-string-pre": function ( a ) {
+        return a.match(/title="(.*?)"/)[1].toLowerCase();
+    },
+
+    "title-string-asc": function ( a, b ) {
+        return ((a < b) ? -1 : ((a > b) ? 1 : 0));
+    },
+
+    "title-string-desc": function ( a, b ) {
+        return ((a < b) ? 1 : ((a > b) ? -1 : 0));
+    }
+} );
\ No newline at end of file
index 351ffe9..28bf5c7 100644 (file)
@@ -154,7 +154,7 @@ function check_form_borrowers(nav){
         alert(message+"\n"+message_champ);
         return false;
     } else {
-        document.form.submit();
+        return true;
     }
 }
 
index ed0d92f..73be545 100644 (file)
@@ -97,10 +97,13 @@ function hideAllColumns(){
 
   $(document).ready(function() {
     hideColumns();
-    $("#itemst").tablesorter({
-      widgets : ['zebra'],
-      headers: {0:{sorter: false}}
-    });
+    $("#itemst").dataTable($.extend(true, {}, dataTablesDefaults, {
+        "sDom": 't',
+        "aoColumnDefs": [
+            { "aTargets": [ 0 ], "bSortable": false, "bSearchable": false }
+        ],
+        "bPaginate": false
+    }));
     $("#selectallbutton").click(function(){
       $("#itemst").checkCheckboxes();
       return false;
index f21b122..2bf385f 100644 (file)
@@ -10,9 +10,11 @@ function _(s) { return s; } // dummy function for gettext
     if($("#header_search #circ_search").length > 0){ $(document).bind('keydown','Alt+u',function (){ $("#header_search").tabs("select","#circ_search"); $("#findborrower").focus(); }); } else { $(document).bind('keydown','Alt+u',function(){ location.href="/cgi-bin/koha/circ/circulation.pl"; }); }
     if($("#header_search #catalog_search").length > 0){ $(document).bind('keydown','Alt+q',function (){ $("#header_search").tabs("select","#catalog_search"); $("#search-form").focus(); }); } else { $(document).bind('keydown','Alt+q',function(){ location.href="/cgi-bin/koha/catalogue/search.pl"; }); }
     $(".focus").focus();
+    $(".validated").validate();
 });
 
 
+
 // http://jennifermadden.com/javascript/stringEnterKeyDetector.html
 function checkEnter(e){ //e is event object passed from function invocation
        var characterCode; // literal character code will be stored in this variable
@@ -37,6 +39,7 @@ function clearHoldFor(){
 
 jQuery.fn.preventDoubleFormSubmit = function() {
     jQuery(this).submit(function() {
+    $("body, form input[type='submit'], form button[type='submit'], form a").addClass('waiting');
         if (this.beenSubmitted)
             return false;
         else
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/changelog b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/changelog
deleted file mode 100644 (file)
index e03e51f..0000000
+++ /dev/null
@@ -1,1278 +0,0 @@
-Version 2.1.2 (2007-08-21)\r
-       Added fix for polluting third partly libraries that insist on messing with internal objects.\r
-       Added new save_on_tinymce_forms option to control when triggerSave is to be called.\r
-       Added mceContentBody class to template plugin preview.\r
-       Fixed bug where background color didn't work as expected in Opera.\r
-       Fixed bug where empty p tags where created on source code edit when forced_root_block was used.\r
-       Fixed bug where it was impossible to remove alignment using the align buttons.\r
-       Fixed bug where a empty URL was reported as a possible email link in advlink dialog.\r
-       Fixed bug where Opera would destroy the body if you pressed return 3 times in the beginning of a list.\r
-       Fixed bug where getHTML would return an empty string in IE sometimes.\r
-       Fixed bug where tinyMCE.selectedInstance is null after mceRemoveControl.\r
-       Fixed bug where remove_script_host option didn't work with media plugin.\r
-       Fixed bug with the convert_urls option and anchors in the advlink plugin.\r
-       Fixed issue with missing entityDecode statement for new document confirm.\r
-       Fixed issue with incorrect font value for Sans-serif.\r
-       Fixed problem with some youtube video urls.\r
-Version 2.1.1.1 (2007-05-14)\r
-       Fixed bug where dot notaion for some callback options didn't work.\r
-       Fixed bug where valid_child_elements option didn't work.\r
-       Fixed bug where form trigger wasn't executed when keyboard was used to submit form.\r
-Version 2.1.1 (2007-05-08)\r
-       Added new forced_root_block option. Forces inline elements or text nodes into block elements.\r
-       Added new fullpage_hide_in_source_view option to fullpage plugin.\r
-       Added new youtube/googlevideo support to media plugin. Simply paste a YouTube/Google URL and it will embed it.\r
-       Added new cancel button/control to the save plugin. This will undo all changes and execute a optional callback.\r
-       Added new remove_trailing_nbsp option that removes &nsbp; entities when paragraphs are filled with contents.\r
-       Added new default_document option this enables you to specify a document to be loaded into TinyMCE by default.\r
-       Added new detection for external and mail links. It will now ask to add http or mailto prefixes to these.\r
-       Cleaned up the source code by removing some obsolete code.\r
-       Removed debug option, no longer needed since the devkit does it better.\r
-       Removed old IE 5.0 code and reduced the overall code by using smarter prototype add methods.\r
-       Removed encoding of apos/' characters since they only time they need to be escaped is when placed in apos based attribs.\r
-       Fixed bug where local urls with params like ?param=x was converted into /?param=x if relative_urls was set to true. \r
-       Fixed bug where the clsids for wmp in media plugin was handled as RealMedia.\r
-       Fixed bug where template plugin was inserting blank_page in FF.\r
-       Fixed bug where it was impossible to remove the width/height of images in IE.\r
-       Fixed bug where replace with empty contents in the replace dialog didn't work in FF.\r
-       Fixed bug where the advanced themes insert image dialog produces a SSL warning if running over HTTPS in IE.\r
-       Fixed bug where links directly to a anchor with a editor in IE failed due to the frameset fix.\r
-       Fixed bug with numeric entity encoding not converting the first character in string.\r
-       Fixed bug with new color picker not closing correctly some times.\r
-       Fixed bug where FF was auto generating BR elements at the end of LI elements.\r
-       Fixed bug where more colors link failed if the page had a base element in page.\r
-       Fixed bug where link dialog produced error when importing CSS classes.\r
-       Fixed bug where fullpage plugin inserted extra > at the end of doctype.\r
-       Fixed bug where fullpage plugin didn't remove internal mce_src/mce_href items correctly.\r
-       Fixed bug where fullpage plugin height was incorrect on Linux.\r
-       Fixed bug where media plugin did a incorrect comparation of width/height.\r
-       Fixed bug with pressing return/enter inside a paragraph in a non IE browser.\r
-       Fixed bug with autoplay option for QT not being enabled by default in the media plugin.\r
-       Fixed bug where isDirty state of instances was incorrect if a form submit handler didn't submit the form.\r
-       Fixed bug where isDirty state was incorrect if another form was submitted.\r
-       Fixed bug with getHTML not returning correct content if run twice on a row in IE.\r
-       Fixed bug where setting class to "not set" in the advimage dialog in IE didn't remove the class attribute.\r
-       Fixed bug where mceToggleEditor command didn't work with other elements such as DIVs.\r
-       Fixed bug where link dialog didn't close if editing a link and having inlinepopups enabled.\r
-       Fixed bug where the hidden textarea was updated even if the instance was hidden with mceToggleEditor.\r
-       Fixed bug where IE7 was reporting undefined error if the iframe didn't load fast enough over https.\r
-       Fixed bug where a space was created after links, it will now just place the cursor after the link.\r
-       Fixed bug where false param values in media plugin wasn't stored correctly in IE.\r
-       Fixed bug with missing cursor if a instance was totally empty in Gecko.\r
-       Fixed so classes can be applied to images using the style select dropdown in FF and Opera.\r
-       Fixed so the width/height fields of the advanced themes image dialogs can take more that 3 characters.\r
-       Fixed so store/restore selection logic works in Opera and Safari (Nightly).\r
-       Fixed so the remove column/row icons are more clear in the table plugin. Contributed by Ferenc Veres.\r
-       Fixed so both title and alt attributes of buttons are set. Contributed by BigBrownChunx.\r
-       Fixed so if ctrl key is hold down the default browser context menu will appear.\r
-       Fixed so the mceResetDesignMode command resets the designmode and useCSS values more correctly.\r
-       Fixed so custom namespaces on tags can be used in all browsers like <myns:tag>.\r
-       Fixed problem with source editor using mono instead of monospace as a font family.\r
-       Fixed problem with Opera detection, it now detects Opera even if it spoofs another browser.\r
-       Fixed problem where TinyMCE failed to initialized if used together with libraries like Scriptaculous.\r
-Version 2.1.0 (2007-02-13)\r
-       Added new template plugin, this supports simple snippets and advanced smart templates.\r
-       Added new attributes dialog for xhtmlxtras plugin. Based on contribution by Ryan Demmer.\r
-       Added new bbcode plugin, currently only support for PunBB but more might be added in the future.\r
-       Added new support for table captions, captions can now be toggled on or off on tables.\r
-       Added new more colors link for text/background color menus.\r
-       Added new more advanced color picker based on a contribution by Tristan Poet.\r
-       Added new functionality to always keep inlinepopups in viewable area contributed by Joshua T. Corbin.\r
-       Added new maximize button for inlinepopups contributed by Joshua T. Corbin.\r
-       Added new mceToggleEditor command. Toggles visibility of a editor instance on/off.\r
-       Added new showInstance/hideInstance callbacks. Used by mceToggleEditor command.\r
-       Added support for Ctrl+v handling for non IE browsers when the paste_auto_cleanup_on_paste option was used with the paste plugin.\r
-       Fixed issue where focus wasn't returned to editor after using a inlinepopup. Contributed by Andy Skelton.\r
-       Fixed issue where fullscreen.htm file used the _dev version of the JavaScript.\r
-       Fixed issue with TinyMCE forcing absolute links for document local anchors. Ex: #a got converted into b.htm#a\r
-       Fixed issue where initialization failed some times with Drupal.\r
-       Fixed issue with rtl languages and the new color picker menus.\r
-       Fixed major bug where url convertion logic wasn't executed correctly.\r
-       Fixed bug where text color/background color menus wasn't visible in fullscreen mode.\r
-       Fixed bug where text color/background color menus wasn't hidden when switching to/from fullscreen mode.\r
-       Fixed bug where embed elements was converted into ibed elements.\r
-       Fixed bug where contrain proportions in advimage dialog wasn't working.\r
-       Fixes bug where an inlinepopup wouldn't close if mcWindows.selectedWindow was nullified contributed by Joshua T. Corbin.\r
-       Fixed bug where style dropdown wasn't unique for each editor instance if diffrent content_css files where used.\r
-       Fixed bug with the noneditable plugin and IE. Only the last element was uneditable.\r
-       Fixed bug with link dialog and Firebug sometimes produced a TINYMCE_UNIQUEURL not defined error.\r
-       Fixed so the fix_list_elements option is enabled by default to produce more valid XHTML code.\r
-       Fixed so that all more info links on plugins point to the wiki in the about dialog.\r
-       Fixed so there is two new button names forecolorpicker and backcolorpicker these can be used to make plain old color picker buttons.\r
-       Removed the forcing of a space inside alt attributes by the advimage plugin since the default valid_elements rule defaults to "".\r
-Version 2.0.9 (2007-01-09)\r
-       Added support for fullscreen new window mode since the other method was problematic for some.\r
-       Added new hide_selects_on_submit option. Enables the possibility to enable/disable disabling of TinyMCE select elements.\r
-       Added new removeInstance callback for plugins and also a new remove_instance_callback option.\r
-       Added warning if flash and media plugin is used at the same time. Flash plugin should be replaced with media plugin.\r
-       Fixed so that fullscreen can be used even if placed in absolute positioned divs with borders etc.\r
-       Fixed so that contextmenu on named anchors doesn't display the link/unlink items.\r
-       Fixed so that wrap in source editor dialog works in Opera.\r
-       Fixed so that single quotes/&#39; is only applied to text nodes not attributes.\r
-       Fixed so that the emotions dialog is a little wider to avoid the FF bug with statusbar content alignment.\r
-       Fixed issue where TinyMCE wasn't restoring scroll position after fullscreen mode switch.\r
-       Fixed some HTML issues in style plugin dialog. Contributed by Michael Keck.\r
-       Fixed bug where color selection menu was visible for instances that got removed.\r
-       Fixed bug where it wasn't possible to remove block formatting with format select box.\r
-       Fixed bug with xhtmlxtras plugin not working when convert_fonts_to_spans option enabled.\r
-       Fixed bug where element path elements wasn't entity encoded properly.\r
-       Fixed bug where IE 7 produced a invalid attribute exception for some URLs.\r
-       Fixed bug where the fix_table_elements option moved tables out of divs and not just P and H1-6 elements.\r
-       Fixed bug where drop menu for spellchecker didn't work in IE.\r
-       Fixed bug with noneditable plugin. The classes where removed sometimes.\r
-       Fixed bug where media plugin failed if single quotes wasn't entity encoded.\r
-       Fixed bug where fullscreen mode switched the way bold/italic/underline works in FF.\r
-       Fixed bug where style plugin could modify body element of editor instance.\r
-       Fixed bugs and issues with searchreplace plugin.\r
-       Fixed bug where windows using inlinepopups where invisible when using fullscreen mode. Contributed by Joshua T. Corbin.\r
-       Fixed bug where inlinepopups where settings style values without px suffix. Contributed by Joshua T. Corbin.\r
-       Fixed bug where externaltoolbar where causing problems in fullscreen mode. Contributed by Joshua T. Corbin.\r
-       Fixed alignment problems of buttons inside the search/replace dialog. Contributed by Dongsu Jang.\r
-       Optimized event/callback execution by a factor of 10.\r
-       Optimized cleanup engine by factor of 2 on some documents.\r
-       Optimized shortcut and key event handling logic.\r
-Version 2.0.8 (2006-10-23)\r
-       Added class select lists for all xhtmlxtras dialogs, custom values can still be added.\r
-       Added missing documentation for devkit, xhtmlxtras, visualchars and nonbreaking plugins.\r
-       Added new gecko_spellcheck option, this enables you to disable/enable the FF 2.0 spellchecker.\r
-       Fixed so that the media can be modified using the context menu.\r
-       Fixed bug where media plugin wasn't working if convert_fonts_to_span option was enabled.\r
-       Fixed bug where media plugin produced errors on older IE versions.\r
-       Fixed bug where media plugin was breaking when prototype was used on the same page.\r
-       Fixed bug where cite and datetime attributes wasn't added to the default valid_elements list for del and ins.\r
-       Fixed bug where insert date in xhtmlxtras plugin wasn't placed in language pack.\r
-       Fixed bug where new fullscreen mode didn't function in IE with XHTML transitional doctype.\r
-       Fixed bug where new text and hilite text previews generated ghost layers in IE.\r
-       Fixed bug where fullscreen mode produced an error is the resizing was disabled.\r
-       Fixed bug where BR elements wasn't removed from PRE elements when apply_source_formatting was enabled.\r
-       Fixed bug where JS errors where thrown in IE if TinyMCE was placed in a frameset.\r
-       Fixed bug where devkit reported errors if TinyMCE was places in a frameset.\r
-       Fixed bug where auto_focus option didn't work in IE.\r
-       Fixed bug where FF leaked memory on some event handlers.\r
-       Fixed bug where Fullscreen plugin didn't fill containing elements if they where absolute.\r
-       Fixed bug where IE 7 hover out CSS events wasn't triggered correctly due to a IE bug.\r
-       Fixed bug where contextmenu plugin showed a incorrect flash menu item if the media plugin was enabled.\r
-       Fixed bug where 100% width of TinyMCE instances didn't work correctly.\r
-       Fixed issue where the image icon was selected when a user selected a media object.\r
-       Fixed issue where select elements where disabled if AJAX or custom submit triggers where used.\r
-       Fixed issue where formatblock command could insert invalid elements.\r
-       Fixed issue with duplicate default rules for abbr in valid_elements.\r
-       Fixed issue where the devkit wasn't the frontmost layer all the time.\r
-Version 2.0.7 (2006-10-17)\r
-       Added new visualchars plugin. Enables users to see custom chars like &nbsp;.\r
-       Added new nonbreaking plugin. Enables users to insert &nbsp; characters.\r
-       Added new devkit plugin. Gives TinyMCE developers more information.\r
-       Added new xhtmlxtras plugin. Based on work contributed by Andrew Tetlaw.\r
-       Added new text and hilite color picker layers to the advanced theme.\r
-       Added new media plugin, this handles flash, quicktime, windows media player, real player.\r
-       Added new valid_child_elements option. Enables you to remove non valid child nodes from parents.\r
-       Added new required attribute flag to the valid_elements option.\r
-       Added new popup_css add option. Enables you to add an additional css to all popups.\r
-       Added new table_default_border, table_default_cellpadding, table_default_cellspacing options to table plugin.\r
-       Added new RegExp support for editor_selector/editor_deselector options.\r
-       Added new validation class. Implemented in various dialogs.\r
-       Added new createTag and createTagHTML methods to the API.\r
-       Added new shortcut keys for h1-h6,p,div,address elements by keys Ctrl+1-9.\r
-       Added lightbox, nofollow and tag as possible rel attribute values in the advlink dialog.\r
-       Added new table delete control for the table plugin.\r
-       Added new updated search/replace dialogs. Contributed by Felix Riesterer.\r
-       Added image browser support for style plugin.\r
-       Fixed bugs and issues with the lastest Safari Nightly build.\r
-       Fixed bugs where data was set outside the current function scopes.\r
-       Fixed bug where all plugin and theme callback methods had the "this" reference incorrectly set to window.\r
-       Fixed bug where a call to moveToBookmark method resulted in a error is called on a hidden TinyMCE instance.\r
-       Fixed bug where script element contents and event attributes where HTML encoded.\r
-       Fixed bug where TinyMCE didn't load if a base element and relative URL to TinyMCE where used in MSIE.\r
-       Fixed bug where TinyMCE didn't function in MSIE 5.0.1 because call method wasn't available.\r
-       Fixed bug where context menu location wasn't correct if the user scrolled down on page.\r
-       Fixed bug where nodes wasn't selected correctly in Opera 9.\r
-       Fixed bug with setOuterHTML function. This had some impacts on the spellchecker plugin.\r
-       Fixed bug where spaces in the body node of the document couldn't be deleted.\r
-       Fixed bug where images lost focus in IE if they where placed in a resizable div.\r
-       Fixed bug where isDirty state was set after calling user specific onsubmit function.\r
-       Fixed bug where editor_selector/editor_deselector matched incorrectly on some names.\r
-       Fixed bug where contextmenu was placed in the wrong location in FF.\r
-       Fixed bug where images had a href attribute displayed in it's element path title.\r
-       Fixed bug where forms_utils.js function where using a relative URL to the current theme.\r
-       Fixed bug where cursor was placed at a incorrect location after mceInsertContent call in Gecko.\r
-       Fixed bug where selection/caret is moved to top of document on a cleanup in Gecko.\r
-       Fixed bug where button elements was forced closed.\r
-       Fixed bug where comma separated content_css option wasn't working with the preview plugin.\r
-       Fixed bug where DIV element named doc caused errors in IE.\r
-       Fixed bug where the selectedInstance wasn't updated correctly if the user clicked outside of the body of a editor area.\r
-       Fixed bug where strong and em wasn't handled correctly in Gecko browsers if the user added them by using the source editor.\r
-       Fixed bug where script tag was removed if it was the first element in IE and convert_fonts_to_span option was enabled.\r
-       Fixed bug when converting empty divs to editor instances didn't work in IE.\r
-       Fixed bug where Gecko produces a BR tag at the end of a single line of content.\r
-       Fixed bug where the entity_encoding numeric wasn't converting &nbsp; to &#160;.\r
-       Fixed bug where fullpage plugin produced an error if the first thing was to edit the header data.\r
-       Fixed bug where background attribute of body element in fullpage plugin produced error in IE.\r
-       Fixed bug where Opera was reporting errors if the width/height of a editor area was set to a percent value.\r
-       Fixed bug where JS error was produced in IE if you tried to insert a row/column.\r
-       Fixed bug where IE was causing flicker if the browser cache was disabled and the button_tile_map option is enabled.\r
-       Fixed bug where onchange callback wasn't executed on a mceInsertContent command.\r
-       Fixed bug where custom classes on anchor elements was removed.\r
-       Fixed bug where force_br_newlines options produced errors in Opera.\r
-       Fixed bugs with table selection not beeing restored correctly when actions where performed.\r
-       Fixed issue where a link wasn't removed on unlink in gecko if only the caret was placed within the link.\r
-       Fixed so that the valid attribute values for the valid_elements rules are case insensitive.\r
-       Fixed so that the fullscreen plugin uses the current document area instead of a new window/popup.\r
-       Fixed so that the cleanup callback is executed on themes.\r
-       Fixed so that document local anchors isn't forced absolute.\r
-       Fixed so that the initialization is even faster both editor instanced and dialogs.\r
-       Fixed so that the force_p_newlines option works on Opera & Safari. This is enabled by default.\r
-       Fixed so that empty td cells are padded with &nbsp; by default. This can be changed with the extended_valid_elements option.\r
-       Fixed so that the theme_advanced_disable option works with RowLayout.\r
-       Fixed so that string serialization is alot faster in all browsers. Makes the cleanup logic a lot faster.\r
-       Fixed issue with language variable in replace dialog in the searchreplace plugin.\r
-       Fixed various CSS compatiblity issues with MSIE 7 beta 3.\r
-       Renamed some image names in style and layer plugins for compatiblity with Drupal.\r
-       Fixed some HTML and CSS issues with the style properties plugin.\r
-       Fixed so the addMCEControl method returns the new editor instance id.\r
-       Fixed translation issues with the style properties dialog, patch contributed by TOMASIAN.\r
-       Removed the need for adding language codes to plugins. Since the online service now merges old ones with en.\r
-Version 2.0.6.1 (2006-05-04)\r
-       Fixed issue where the layer and style plugins couldn't be added in incorrect order.\r
-       Fixed issue with Firefox nl not beeing defined in triggerSave correctly.\r
-Version 2.0.6 (2006-05-03)\r
-       Added new theme_advanced_source_editor_wrap option, this gives the possibility to force word wrapping.\r
-       Added new support for using div,blockquote,dt,dd,code,samp as a items in the theme_advanced_blockformats option.\r
-       Added new strict_loading_mode option, this switches the loading method from document.write to DOM.
-       Added new hidden_tab_class, display_tab_class options for resolving the MSIE image dimension bug.
-       Added new absolute layer support, this was added to a new plugin called layer.
-       Added new CSS style properties support, this was as a plugin called style.
-       Fixed bug where TinyMCE was reporting a warning when inserting a image while running on HTTPS.
-       Fixed bug where pressing the browser back button after submit removed empty paragraphs in MSIE.
-       Fixed bug where links the same page as the editor page was converted into a /.
-       Fixed bug where the getSelectedHTML method was returning undefined when selecting controls in MSIE.
-       Fixed bug with unterminated string literal errors where reported in some browsers.
-       Fixed bug where src and href where converted into xsrc and xhref in text.
-       Fixed bug where two characters where removed by backspace sometimes in Gecko.
-       Fixed bug where class drop list wasn't visible in some of the table dialogs.
-       Fixed bug where br elements where incorrectly removed within paragraphs on backspace.
-       Fixed bug where drag/drop operations failed in MSIE when editor height was set to a % value.\r
-       Fixed bug where width/height was lost on images if they where placed in hidden tabs in MSIE.\r
-       Fixed bugs with CSS auto import parsing, contributed by Scott Eade.\r
-       Fixed compatiblity issues with MSIE 5.0. Some RegExps needed to be rewritten.\r
-       Fixed issue that made it impossible to remove the entity code/name for &#39;.\r
-       Fixed issue with odd <br></br> elements not beeing handled properly.\r
-       Fixed issue where TinyMCE couldn't be loaded in a XML document.\r
-       Fixed issue with contextmenu beeing placed outside of visible area on Gecko browsers.\r
-       Fixed issue whith area tag not being closed.\r
-Version 2.0.5.1 (2006-03-22)\r
-       Fixed bug where emtpy paragraphs sometimes got removed in MSIE.\r
-       Fixed bug where autosave plugin was running even in fullscreen mode.\r
-       Fixed bug where browse and color image button urls in form_utils.js where hardcoded.\r
-Version 2.0.5 (2006-03-21)\r
-       Added API docs for the TinyMCE_Popup class that is used by all dialogs in TinyMCE.\r
-       Added new TinyMCE_Layer class to the core of TinyMCE plugins will be using this later on.\r
-       Added new loadPlugin function, use this to load external plugins.\r
-       Added instructions on how to contribute language packs.\r
-       Added new support for multiple content_css files, based on contribution by Man-Chicken.\r
-       Added new table_cell_limit, table_row_limit, table_col_limit options, based on contribution by Man-Chicken.\r
-       Added new fix_list_elements option, if this is set to true UL/OL lists will be forced XHTML valid on cleanup.\r
-       Added new fix_table_elements, if this is set to true tables will be moved outside paragraphs.\r
-       Fixed so input and button as closed elements in the cleanup logic.\r
-       Fixed so the mceButtonSelected is more visible with darker background in the editor_ui.css.\r
-       Fixed issue where charmap.js was calling switchClass that's reserved for buttons.\r
-       Fixed issue where the directionality option wasn't used in the preview plugin.\r
-       Fixed issues with nestled bullet lists pasted from Word 2003.\r
-       Fixed bug where button wasn't selected correctly in MSIE due to a CSS issue.\r
-       Fixed bug where ask mode wasn't working on DIV elements in Firefox and Opera.\r
-       Fixed bug where the mceAddFrameControl command wasn't working correctly.\r
-       Fixed bug where language packs wasn't imported correctly in plugins loaded externaly.\r
-       Fixed bug where focusing external input elements was visible in element path under MSIE.\r
-       Fixed bug where fullscreen plugin wasn't opening the window fullscreen in Firefox.\r
-       Fixed bug where style select dropdown wasn't working in Firefox when used in fullscreen mode.\r
-       Fixed bug where the fix_content_duplication wasn't working anymore.\r
-       Fixed bug where MSIE sometimes generated empty paragraphs.\r
-       Fixed bug where MSIE sometimes generated tags like <//tag>.\r
-       Fixed bug where the directionality option produced a error for the color picker dialog.\r
-       Fixed bug where configured callback options wasn't executed correctly in fullscreen mode.\r
-       Fixed bug where tags got generated as <*> some times in Gecko.\r
-       Fixed bug where the cursor was placed within a the anchor when inserting a new one in Gecko.\r
-       Fixed bug where convert_fonts_to_span option wasn't working correctly with new cleanup engine.\r
-       Fixed various language pack issues such as invalid characters.\r
-       Fixed naming conflict with zoom plugin and the format select box.\r
-       Fixed so that the initialization of the editor is slightly faster.\r
-       Removed all language packs except the english one from the core package. [BREAKS COMPATIBLITY]\r
-Version 2.0.4 (2006-02-24)\r
-       Fixed bug where fullscreen plugin was using the tinymce_dev.js script.\r
-       Fixed bug where events where having a return true; statement infront of them.\r
-       Fixed bug where theme_advanced_toolbar_location option wasn't working.\r
-       Fixed bug where select lists wasn't working if you touched them with the tab key.\r
-       Fixed bug where auto reset design mode wasn't working correctly.\r
-       Fixed bug where null was inserted in paste button action in MSIE.\r
-       Fixed bug where _template plugin had a , instead of . character on e.type.\r
-       Fixed bug where src, href where replaced to xsrc and xhref in comments.\r
-       Fixed bug where paste_cleanup_on_paste option wasn't working correctly with the paste plugin.\r
-       Fixed bug where MSIE was reporting an error when TinyMCE was placed in a frame and not focused.\r
-       Fixed bug where clipboard_msg wasn't entity decoded corectly before displaying it in confirm box.\r
-       Fixed bug where mceRemoveControl wasn't working correctly on DIV elements.\r
-       Fixed bug where mceInsertContent/mceReplaceContent produced error when a empty string was inserted.\r
-       Fixed so the default valid_elements option is more XHTML valid.\r
-       Fixed issue where style formatting wasn't handled when pasting content from Word.\r
-       Fixed issue where ' characters wasn't entity encoded, they are now encoded into &#39; and not &apos;.\r
-       Fixed issue with empty paragraphs, these are now filled with &nsbp; if they are empty.\r
-       Added documentation on how the # prefix can be used in the valid_elements option.\r
-       Added new options paste_remove_styles and paste_remove_spans to paste plugin.\r
-       Added possibility to have empty default attributes values.\r
-Version 2.0.3 (2006-02-13)\r
-       Added missing buttons to button reference page in documentation.\r
-       Added dt,dl,dd elements to default_valid elements config value.\r
-       Added new support for self registrering plugins.\r
-       Added new callback for themes and plugins handleEvent and the handle_event_callback option.\r
-       Added new execcommand_callback option, this enables you to add custom execcommand logic on page level.\r
-       Added new custom_shortcuts option, this enables you to disable plugin/theme specific keyboard shortcuts.\r
-       Added new addShortcut to TinyMCE_Control, this enables plugin to register custom keyboard shortcuts.\r
-       Added new getButtonHTML function to TinyMCE core, this function makes it easier for plugins/themes to make buttons.\r
-       Added more documentation on how to write plugins and updated the _template plugin.\r
-       Added more documentation on how to write custom themes.\r
-       Fixed so the default window size of the source editor is larger in the advanced theme.\r
-       Fixed so all internal plugins use the new auto registration and separation logic.\r
-       Fixed so all internal themes use the new auto registration and separation logic.\r
-       Fixed so the Safari warning is switched off by default.\r
-       Fixed so cursor position isn't moved when performing a cleanup.\r
-       Fixed so cursor position is correct when performing undo/redo actions.\r
-       Fixed so all themes/plugins now use a:hover to produce the mouse over button effect.\r
-       Fixed so it uses the DOMContentLoaded and onreadystatechange instead of onload.\r
-       Fixed so the simple theme also supports the button_tile_map option.\r
-       Fixed so the selection/cursor is moved to the beginning of area on search/replace.\r
-       Fixed callback handling to reduce logic, improve performance and flexibility.\r
-       Fixed documentarion error for the paste plugin, contributed by Jochen Metzger.\r
-       Fixed bug that made the cleanup process to hang MSIE on specific content.\r
-       Fixed bug with absolute to relative URL convertion logic if the absolute URL didn't have a path.\r
-       Fixed bug where about.htm in advanced theme refered to a non existing css file.\r
-       Fixed bug with defParam and the event_elements option.\r
-       Fixed bug where fullscreen plugin wasn't correctly setup with editor contents.\r
-       Fixed bug where paste/drop converted relative URLs incorrectly in MSIE.\r
-       Fixed bug with inlinepopups not restoring selection on close window in MSIE.\r
-       Fixed bug where selection was lost when a new column/row was inserted in a table running in Gecko.\r
-       Fixed bug where save plugin wasn't working in fullscreen mode.\r
-       Fixed bug where fullscreen plugin wasn't working in Opera.\r
-       Fixed bug where editor resizing in advanced theme wasn't working in Opera.\r
-       Fixed bug where cursor position was placed at the end of instance on word paste.\r
-       Fixed bug where a tinyMCE is undefined error was reported in Firefox.\r
-       Fixed compatiblity issues with new cleanup plugin and the prototype.js library.\r
-       Renamed the mceItemEditable/mceItemNonEditable to mceEditable/mceNonEditable.\r
-       Renamed the TinyMCEControl class to TinyMCE_Control, TinyMCE_ is the valid class prefix.\r
-       Removed the getInsertLinkTemplate and getInsertImageTemplate functions from themes and from API.\r
-       Removed insertImage and insertLink from TinyMCE core, they are moved to the advanced theme.\r
-       Removed opacity workaround made for Opera Preview 1, download Opera Preview 2 instead.\r
-       Removed search backward function from replace dialog since it could result in a infinite loop.\r
-       Marked insertlink_callback, insertimage_callback options as deprecated these can be replaced with execcommand_callback.\r
-       Moved selection specific methods to a new class. For example inst.selectNode is now inst.selection.selectNode.\r
-       Updated German language pack, contributed by Ace Man.\r
-Version 2.0.2 (2006-01-24)\r
-       Added updated Danish language pack contributed by Jan Moelgaard, John Dalsgaard and Bo Frederiksen.\r
-       Added updated Czech language pack contributed by michi aka mishal.\r
-       Added new Slovenian language pack contributed by Domen Kosir.\r
-       Added new Turkish language pack contributed by Engin Dumlu.\r
-       Added new save_onsavecallback option to the save plugin, this function is called on save.\r
-       Added new save_enablewhendirty option to the save plugin, this will disable the button until changes are made.\r
-       Added new onpageload callback event, this event is called when the page is loaded but before instances are made.\r
-       Added new accessibility_focus option, this enables you to control if buttons should be tab focusable or not.\r
-       Added new greek alpha character to charmap dialog.\r
-       Added new Scaron,scaron,Alpha entities to the default value of the entities option thanks to Kevin Rodgers.\r
-       Added new contextmenu items link.unlink,advhr contributed by Speednet.\r
-       Added new paste_insert_word_content_callback option for the paste plugin.\r
-       Added new cleanup plugin, this will replace the one inside the core ones it's considered stable.\r
-       Added cancel button to color picker contributed by Speednet.\r
-       Fixed various documentation errors and typos, modified the FAQ.\r
-       Fixed issue where the first handleNodeChange call was done to early in initialization.\r
-       Fixed issue with Dutch language pack for advlink plugin.\r
-       Fixed issue where dialogs was to short when dialog_type option was set to modal in MSIE.\r
-       Fixed bug where insert image under Gecko resulted in a broken image if it was inserted a the beginning of a element.\r
-       Fixed bug where mceVisualAid class wasn't removed from TH elements on save.\r
-       Fixed bug where the href attribute area elements gets converted to xhref.\r
-       Fixed bug with document relative anchors being forced absolute even when the convert_urls was set to false.\r
-       Fixed bug where some plugins produced &gr; intead of &gt; entities on string encoding.\r
-       Fixed bug where some characters in charmap dialog was double encoded in Firefox/Gecko.\r
-       Fixed bug with XML core entities wasn't encoded when using raw or numeric value in entity_encoding option.\r
-       Fixed bug where classes was removed from table,td,th elements when the verify_css_classes option was enabled.\r
-       Fixed bug where elements was getting a visual aid class if a default or force class attribute value rule was used.\r
-       Fixed bug where strong/em rules didn't handle the -/+ prefixes correctly under Firefox/Mozilla.\r
-       Fixed bug where non textarea elements didn't work when submiting content.\r
-       Fixed bug where a access denied error was produced when using contextmenu together with modal dialogs under MSIE.\r
-       Fixed bug where fullscreen plugin didn't call custom cleanup functions when passing content back and forth.\r
-       Fixed issue where default rule for font tags didn't have a + prefix in valid_elements.\r
-       Fixed issue with CSS where "arrow" was used instead of "default" for cursor replacement.\r
-       Fixed issue where the replace button replaced the current selection first time it was used.\r
-       Fixed issue with missing title for the advhr dialog.\r
-       Fixed issue with div not beeing usable in the theme_advanced_blockformats option.\r
-       Fixed issue in with translation in the German language pack.\r
-       Fixed so the word wrap toggle for source view functions in Firefox/Mozilla.\r
-       Fixed so title attribute of emotion images gets inserted aswell as alt.\r
-       Fixed so the insert return on popups is checked by default in advlink.\r
-       Fixed so url gets filled when empty if a user selects a popup url.\r
-       Fixed so some init settings gets trimmed from whitespace.\r
-       Fixed so charmap closes when a char is selected since most of the time users only need one char.\r
-       Fixed so the link and image dialogs of advanced theme are styled with the new 2.x layout.\r
-       Fixed accessibility issuew with the link, image and advhr dialogs.\r
-       Fixed so the advhr dialog uses the new 2.x layout.\r
-       Fixed XHTML compliance for Preview plugin contributed by Bo Frederiksen.\r
-       Fixed entity decoding problem with insert button of the advhr plugin contributed by Bo Frederiksen.\r
-Version 2.0.1 (2005-12-02)\r
-       Fixed critical bug in some MSIE versions when submiting content.\r
-Version 2.0 (2005-12-01)\r
-       Added new paste_replace_list option to the paste plugin, this replaces some MS specific characters into normal characters.\r
-       Added new convert_urls option, this was required to address some issues with Firefox 1.5.\r
-       Added new paste_create_linebreaks option to paste plugin contributed by Kevin Rodgers.\r
-       Added new advimage_update_dimensions_onchange option to advimage plugin, this is enabled by default.\r
-       Added new table_inline_editing option, this enables you to toggle the inline table editing controls in FF 1.5.\r
-       Added new object_resizing option, this enables you to toggle the resizing controls of table and images in FF 1.5.\r
-       Added updated simplified Chinese language pack contributed by Wang Yang (tom_cat).\r
-       Added updated Dutch language pack contributed by Mark van der Sanden.\r
-       Added updated French language pack contributed by Normand Lamoureux.\r
-       Added updated Polish language pack contributed by Wooya.\r
-       Added updated Brazilian Portuguese language pack contributed by Marcio Barbosa.\r
-       Added new Traditional Chinese language pack contributed by Twapweb.\r
-       Added new Slovak language pack contributed by Vladimir VASIL.\r
-       Added new Norwegian Nynorsk pack contributed by Knut B. Jacobsen.\r
-       Fixed bug where getting init settings in handleNodeChange callback wasn't working correctly when multiple configs where used.\r
-       Fixed bug with urls being converted into incorrect values in Firefox 1.5.\r
-       Fixed bug where editor and cursor was flickering when TinyMCE was placed in a hidden div in Firefox 1.5.\r
-       Fixed bug with missing parenthesis in a MSIE setInnerHTML call.\r
-       Fixed bug where MSIE was producing a "Invalid source HTML for this operation" javascript error when placed in P tags.\r
-       Fixed bug where some styles with RGB values was parsed/serialized incorrectly in Firefox/Mozilla.\r
-       Fixed bug where reset form action didn't reset all editor instances to their original values.\r
-       Fixed bug where a javascript exception whas thrown when the editor was resized to a negative value in MSIE.\r
-       Fixed bug where inserting custom characters or date/time within a font element removed formatting in Firefox/Mozilla.\r
-       Fixed bug where image urls was inserted incorrectly if relative_urls was set to false due to issues with inserthtml command.\r
-       Fixed bug where encoding option wasn't working correctly becurse the entities list wasn't initialized.\r
-       Fixed bug where MSIE removed the first comment from the HTML of a mceInsertContent call.\r
-       Fixed bug where update all cells in table/row wasn't working on some tables with lots of whitespace.\r
-       Fixed bug with td background attribute when inline_styles option was set to true in MSIE.\r
-       Fixed bug where forms submitted with accesskey or return produced a JS error in Firefox 1.5.\r
-       Fixed bug with URL convertion logic not converting paths correctly to relative/absolute URLs.\r
-       Fixed bug where inline_styles option and flash moviews produced strange results.\r
-       Fixed bug where tabs and links where opened in a new window in MSIE when dialog_type option was set to modal.\r
-       Fixed bug where dialogs didn't open in Opera if the dialog_type option was set to modal.\r
-       Fixed bug where the table plugin wasn't working with the inlinepopups plugin while running in MSIE.\r
-       Fixed bug where embed elements whasn't parsed correctly by the flash plugin if no object tag was surrounding it.\r
-       Fixed bug where contents wasn't stored/restored when using the browser back button in Firefox 1.5.\r
-       Fixed issue where the ghost resize handles in Firefox/Mozilla was appearing when resizing images/tables.\r
-       Fixed issue with constrain proportions feature in advimage plugin, when trying to reset the values to blank.\r
-       Fixed issue where inlinepopups option couldn't be enabled/disabled on individual instances.\r
-       Fixed issue where TDs was created instead of TH elements when inserting a column on a row with TH elements.\r
-       Fixed issue with editor_selector/editor_deselector options couldn't be used when mode was specific_textareas.\r
-       Fixed issue where font selection produced null face attributes in MSIE.\r
-       Fixed issue where document local anchors where prefixed with the document name.\r
-       Fixed issue where link/image dialogs of the advanced theme didn't open using inlinepopups when enabled.\r
-       Fixed so the CSS select list gets hidden in the link dialog in advanced theme if there isn't any CSS classes.\r
-       Fixed so that the onsubmit handler of a form was processed correctly when posting using the save plugin.\r
-       Fixed so TinyMCE makes some very simple cleanups even if cleanup option is set to false.\r
-       Fixed so alignment button gifs have the justify prefix, such as justifyleft, for compatiblity with Drupal.\r
-       Fixed compatiblity issues with the .NET version of TinyMCE Compressor.\r
-       Fixed performance issue with fullscreen plugin, it switches back to normal view a lot faster now.\r
-       Fixed issues with mceSelectList class in advanced theme and compressed it some.\r
-       Renamed the Norwegian language pack from no to nb since it's "Norwegian Bokmål".\r
-Version 2.0RC4 (2005-10-30)\r
-       Fixed bug with font face/size/color wasn't working correctly in Firefox 1.5b1.\r
-       Fixed bug where all actions where dispatching the onbeforeunload event.\r
-       Fixed bug where buttons in fullscreen mode wasn't working in MSIE.\r
-       Fixed bug where style removal with drop list wasn't working correctly.\r
-       Fixed bug where element path list or return key some times didn't scroll to the right location.\r
-       Fixed bug where return key in Firefox/Mozilla some times produced a error.\r
-       Fixed bug where MSIE was presenting a alert box about insecure items when running TinyMCE over HTTPS.\r
-       Fixed bug where TR/TD elements width/height attributes produced a JS error on cleanup.\r
-       Fixed bug where Polish Ctrl+Alt+Z executed the undo function instead of inserting national character.\r
-       Fixed bug where editor couldn't be initialized if no rows or height where specified on a textarea.\r
-       Fixed bug where comments sometimes got removed from HTML code.\r
-       Fixed bug with advimage not inserting onmouseover attribute correctly.\r
-       Fixed bug where anchors with child nodes messed up list elements.\r
-       Fixed bug where apply_source_formatting option wasn't working when used together with remove_linebreaks.\r
-       Fixed bug where empty paragraphs where invisible in Firefox. These are now padded with a &nbsp;.\r
-       Fixed bug where tables without a border attribute didn't get visual aid borders until cleanup.\r
-       Fixed bug with URL convertion, absolute URLs to the same domain without trailing slash produced incorrect results.\r
-       Fixed bug with URL convertion of urls like this somedir/?id=3 produced somedir?id=3.\r
-       Fixed bug with weird cursor movement when pressing return/enter in a list when running on Firefox/Mozilla.\r
-       Fixed bug where contents where deleted sometimes when user pressed return/enter running on Firefox/Mozilla.\r
-       Fixed bug where style elements what generated empty in MSIE, but using style tags is not recommended.\r
-       Fixed bug with not beeing able to have absolute urls in the external_link_list_url and simmilar.\r
-       Fixed bug with bold, italic, underline, strikethrough buttons not beeing selected correctly.\r
-       Fixed bug with font size and font face select list not beeing selected correctly.\r
-       Fixed bug where document anchors was incorrectly converted if document_base_url was defined.\r
-       Fixed bug where changing border width/color of a table didn't update CSS styles correcty.\r
-       Fixed bug where emotions plugin didn't insert a new smiley the second time you insert one.\r
-       Fixed bug with blockquote command produced javascript error when used on lists in MSIE.\r
-       Fixed bug with cleanup converting flash elements to images.\r
-       Fixed bug where class wasn't selected in drop list of advlink/advimage dialogs when editing links/images.\r
-       Fixed bug where cellpadding/cellspacing/scope wasn't correctly handled in MSIE 5.5SP2.\r
-       Fixed bug where hreflang,charset and type attributes wasn't returned correctly in MSIE 5.5SP2.\r
-       Fixed bug with broken image URLs when user clicked the cleanup button in Firefox 1.5b2.\r
-       Fixed some compatiblity issues with call to createStyleSheet and event.target setup.\r
-       Fixed more compatiblity issues with scripts extending core JS logic such as the Array class.\r
-       Fixed issue where paragraphs wasn't generated if user pressed returned inside a H1-H6 running on Firefox/Mozilla.\r
-       Fixed issue with context menu plugin messing up some onclick events.\r
-       Fixed issue with missing </tbody> HTML in advanced theme.\r
-       Fixed issue with Finnish language pack, it wasn't working at all.\r
-       Fixed issue where button control styles needed to be overriden in default editor_ui.css.\r
-       Fixed issue with a broken link in the documentation to the theme_advanced_resize_horizontal option.\r
-       Fixed issue with missing var declaration of a buttons variable in the advanced theme.\r
-       Fixed issue with missing block elements in block element regexp.\r
-       Fixed issue where advhr plugin didn't produce valid attribute for noshade.\r
-       Fixed issue with misslabeled option, plaintext_create_paragraphs is renamed to paste_create_paragraphs.\r
-       Fixed issue where remove_script_host and relative_urls where treated as true if they where specified as strings.\r
-       Fixed issue with charmap, made it easier to select/click characters.\r
-       Fixed issue with search/replace dialogs not being refocused in MSIE.\r
-       Fixed issues with dialogs being to small if large class names where added. Made sure they can grow.\r
-       Fixed issues with some dialogs being to small in NS 7.2 and not working correctly in NS 7.1.\r
-       Fixed missing HEAD element in fullscreen.htm file, contributed by monkeybrain.\r
-       Fixed some HTML issues with the advhr plugin, contributed by monkeybrain.\r
-       Fixed some small issues with the span element rule of the XHTML rule set in valid_elements documentation.\r
-       Added new Opera 9 support, most of the functions is working in the prerelease of Opera 9.\r
-       Added new paste_strip_class_attributes option to paste plugin, contributed by monkeybrain.\r
-       Added new merge_styles_invalid_parents option, allows users to control what elements gets styles.\r
-       Added new theme_advanced_resizing_use_cookie option, this enables you to disable the cookie used by resize.\r
-       Added new function that converts all font elements to span elements when the editor loads.\r
-       Added new force_hex_style_colors option, enables you to control the color format of CSS styles.\r
-       Added new convert_fonts_to_spans option, this option converts fonts to span elements.\r
-       Added new font_size_classes option, this option is used together with convert_fonts_to_spans.\r
-       Added new doctype option, enables you to control the internal doctype declaration.\r
-       Added new event_elements option contributed by happy_noodle_boy.\r
-       Added new path tooltips for font, span and flash elements such as color, font-family, src and so forth.\r
-       Added trim_span_elements back again, this option removes unneeded span elements.\r
-       Added documentation of the apply_source_formatting option.\r
-       Added updated Danish language pack, contributed by Jan Moelgaard.\r
-       Added updated Hebrew language pack, contributed by Liron Newman.\r
-       Added updated Russian language pack, contributed by Vladimir Vitkovsky.\r
-       Added updated Finnish language pack, contributed by Tuomo Aura.\r
-       Added updated Spanish language pack, contributed by Adolfo Sanz De Diego.\r
-       Added updated Italian language pack, contributed by grueff.\r
-       Added updated Icelandic language pack, contributed by Johannes Birgir Jensson.\r
-       Removed option convert_fonts_to_styles due to various compatiblity issues. Use convert_fonts_to_spans instead.\r
-Version 2.0RC3 (2005-09-26)\r
-       Fixed bug where colorpicker in table plugin wasn't working in Mozilla/Firefox.\r
-       Fixed bug where closed anchors produced strange results. Anchors are now forced open.\r
-       Fixed bug where the font style/color functions wasn't producing correct results.\r
-       Fixed bug where buttons not working if a target was defined in head element.\r
-       Fixed bug where paragraphs wasn't generated when pressing return/enter in a floating div.\r
-       Fixed bug where anchor contents was getting lost, contents of anchors are now placed behind them.\r
-       Fixed bug where style info such font size/face/color was removing parent elements such as LI.\r
-       Fixed bug where %I wasn't inserting correct hour in the insertdatetime plugin.\r
-       Fixed bug where MSIE sometimes doesn't output attributes correctly, contributed by Luke Bennett.\r
-       Fixed bug where images was lost if the user pressed return after a image in a TD on FF.\r
-       Fixed bug where empty non block elements where produced when hitting return in Gecko browsers.\r
-       Fixed bug where it was impossible to update tables.\r
-       Fixed various bugs and issues with removeformatting function it will now remove classes and styles.\r
-       Fixed compatiblity issues with prototype.js and other scripts that modifies the Object.prototype.\r
-       Fixed issue where a unnecessary dir and style attribute was generated on the blockquote command in MSIE.\r
-       Fixed issue with access denied error if page contained iframes with external URLs.\r
-       Fixed issue where the plugin links in about dialog was linking to blank.\r
-       Fixed issue with useCSS command not working in Deer park beta.\r
-       Fixed XHTML table compatiblity issues. Placed bordercolor and height in styles instead of attributes.\r
-       Fixed issue with tables getting empty summary attribute in MSIE.\r
-       Fixes so the insert custom character dialog is accessible through keyboard.\r
-       Removed _self as the default target for links inorder to produce more XHTML compliant code.\r
-       Removed bordercolor field from table row properties dialog since this is not a valid attribute.\r
-       Added accessibility warnings to image and table plugin. These can be disabled by the accessibility_warnings option.\r
-       Added updated Danish language pack, contributed by Jan Moelgaard.\r
-       Added updated Hebrew language pack, contributed by Liron Newman.\r
-       Added updated Norwegian language pack, contributed by Knut B. Jacobsen.\r
-       Added updated German language pack, contributed by salzbermat.\r
-Version 2.0RC2 (2005-09-12)\r
-       Fixed bug with plugin tab in about dialog not working in MSIE 5.01.\r
-       Fixed bug issues with paste and noneditable plugin in MSIE 5.01.\r
-       Fixed bug where dialogs in the search/replace plugin was to small.\r
-       Fixed bug where about dialog sometimes produced unknown runtime error in MSIE.\r
-       Fixed bug where é and í characters was converted the wrong entities.\r
-       Fixed bug where it was possible to click on the disabled link icon when nothing was selected.\r
-       Fixed bug where autosave plugin wasn't working with JS submit calls or the save plugin.\r
-       Fixed bug where file/image browser wasn't working with the default link/image dialogs.\r
-       Fixed bug where style attributes where parsed/serialized incorrectly when using - and #.\r
-       Fixed bug where inline popups plugin wasn't working when loading the compressed JS files.\r
-       Fixed bug with contextmenu showing theme image dialog instead of advimage dialog.\r
-       Fixed bug with flash plugin trying to include a empty external list JS file.\r
-       Fixed bug with some fields beeing to short if the file browser was disabled.\r
-       Fixed bug where contextmenu wasn't recognizing flash elements.\r
-       Fixed bug where border styles on images and tables was removed.\r
-       Fixed accessibility issue with colorpicker, added titles and keyboard access.\r
-       Fixed accessibility issue with toolbar buttons, all toolbar buttons are now wrapped in links.\r
-       Fixed accessibility issue width browse buttons, these are now wrapped in links.\r
-       Fixed accessibility issue with select lists, all select lists has now keyboard access.\r
-       Fixed accessibility issues with missing labels in various dialogs.\r
-       Fixed accessibility issue with the emotions plugin, this one now inserts a alt text for smileys.\r
-       Fixed accessibility issue with the locationbar, menubar and so fort in advlink plugin.\r
-       Fixed accessibility issue with TOC in english help pages. This is not wrapped in a acronym element.\r
-       Fixed issue with the directionality plugin. It will now get disabled on invalid elements.\r
-       Fixed issue where popups was the wrong size a new resizeToInnerSize function resizes popups to the correct size.\r
-       Fixed so empty <a> elements gets removed since they serve no purpose.\r
-       Added support for TinyMCE grabbing text from input elements if specified in exact mode.\r
-       Added language specific relative popup width/heights to all build in dialogs.\r
-       Added missing browser for popup url in advlink plugin.\r
-       Added missing delete table icon to context menu.\r
-       Added so it's possible to see the target value in the target select dropdown in the advlink plugin.\r
-       Updated the documentation to include information about the new language packs.\r
-       Updated the swedish language pack.\r
-Version 2.0RC1 (2005-09-06)\r
-       Renamed CSS classes mcePathTop,mcePathBottom,mcePath to mceStatusbarTop,mceStatusbarBottom,mceStatusbar. [BREAKS COMPATIBLITY].\r
-       Moved all theme CSS files to a css directory within the theme. [BREAKS COMPATIBLITY].\r
-       Removed the default theme since the advanced theme can be configured to be as the default theme. [BREAKS COMPATIBLITY].\r
-       Removed closeDialog method from TinyMCE use tinyMCEPopup.close(); instead of tinyMCE.closeDialog();. [BREAKS COMPATIBLITY].\r
-       Removed the auto_cleanup_word option, since the paste plugin now handles this better than the build in function.\r
-       Added improved undo/redo and onchange handling. All modifications are now undo/redo:able.\r
-       Added new mceBeginUndoLevel/mceEndUndoLevel commands. Used to begin/end a undo/redo:able action.\r
-       Added new link dialog with tab interface and lots of new fields and options.\r
-       Added new image dialog with tab interface and lots of new fields and options.\r
-       Added new about dialog with tab interface, this one replaces the old help dialog.\r
-       Added new table dialogs with tab interface and lots of new fileds and options.\r
-       Added new utils directory in tiny_mce script dir. This directory contains various utility classes.\r
-       Added new TinyMCEPopup class to tiny_mce_popup.js, used for common popup logic.\r
-       Added new inlinepopups plugin, this makes the popup windows to open as DHTML windows (divs).\r
-       Added new version info constants to TinyMCE (majorVersion, minorVersion, releaseDate).\r
-       Added new resizing functionality to the advanced theme, the editor instance can now be resized.\r
-       Added new theme_advanced_resizing option, enables/disables the new resizing functionality.\r
-       Added new theme_advanced_resize_horizontal option, enables/disables the horizontal resizing.\r
-       Added new theme_advanced_path option, enables/disables the element path functionality in statusbar.\r
-       Added new compressed icons about 1/3 of the original size, contributed by Jozef.\r
-       Added new center support of images, images are now wrapped in a div with alignment.\r
-       Added new - character to the valid_elements/extended_valid_elements options this feature removes empty elements.\r
-       Added new setup_content_dom and submit_content types to custom cleanup callbacks.\r
-       Added new inst parameter to custom cleanup callbacks, this is a reference to the editor instance.\r
-       Added new mceColorPicker command to the advanced theme, enables the possibility invoke the color picker.\r
-       Added new safari_warning option, this enables you to disable the alert that gets presented when running on Safari.\r
-       Added new editor_selector/editor_deselector options that enables you to specify a include/exclude from convertion class.\r
-       Added new tinyMCE.addToLang function to reduce the overall size of the language files.\r
-       Added new auto save plugin. This plugin will confirm that the user want's the leave any modifications unsaved.\r
-       Added new noneditable plugin. This plugin enables you to disable/enable the possibility to edit various elements.\r
-       Added new word example, to better illustrate how TinyMCE is to be used when pasting content from Office/Word.\r
-       Added missing entities eactute,iacute,oacute,uacute,Aacute,Eacute,Iacute,Oacute,Uacute,Yacute,Aacute.\r
-       Added updated Hebrew language pack contributed by Liron Newman.\r
-       Added visual aid icon for invisible anchors elements.\r
-       Added new insert table and delete table commands to context menu.\r
-       Added new convert_fonts_to_styles option, this option controls if font or span will be used when using font size, color etc.\r
-       Renamed the theme_advanced_path_location to theme_advanced_statusbar_location.\r
-       Moved all popup javascript logic into external .js files, inorder to separate presentation and logic.\r
-       Removed the automatic resizing of popups. Better to use relative window sizes for each language when opening a dialog.\r
-       Fixed issue where the character map dialog lost focus when inserting a char.\r
-       Fixed issue where the attribute values where not XML encoded correctly. For example: & will be &amp;.\r
-       Fixed performance issue with the table plugin, it was executing logic even when it was inactive.\r
-       Fixed so the directionality gets inherited by all popups/dialogs.\r
-       Fixed so the CSS file content_css loads after the theme content CSS, user specific CSS extends theme CSS.\r
-       Fixed so more than 3 toolbar rows may be added in when using the default simple layout.\r
-       Fixed so the insertdatetime plugin polls it's default date formats from the language pack.\r
-       Fixes so auto_reset_designmode is enabled by default, to avoid the question about the editor not working in tabs.\r
-       Fixed better inline styles support for images and tables.\r
-       Fixed duplicate IDs on advanced theme with external toolbar, contributed by Miguel Fortea.\r
-       Fixed issue with remove formatting under MSIE, if all contents of a element is selected the element is also selected.\r
-       Fixed issue with visual aids not being removed from content when cleanup is disabled. But it's NOT recommended to disable the cleanup.\r
-       Fixed bug where return/enter key sometimes produced empty elements in MSIE.\r
-       Fixed bug where link list was generated twice in the advanced themes link dialog.\r
-       Fixed bug issue where embed was converted in to ibed due to some invalid regexps.\r
-       Fixed bug where summary attribute on tables got lost in MSIE.\r
-       Fixed bug where the editor scrolled to the top of content when the pasting text with the paste plugin.\r
-       Fixed bug where external toolbar wasn't translated, contributed by Miguel Fortea.\r
-       Fixed bug where the editor had a incorrect height, contributed by Miguel Fortea.\r
-       Fixed bug where visual aid class where presented in element path.\r
-       Fixed bug where HR elements with a id set to "null" produced runtime error in MSIE.\r
-       Fixed bug where isDirty wasn't working due to the same function name and variable name.\r
-       Fixed bug where events like onclick wasn't removed/stored correctly in old MSIE.\r
-Version 1.45 (2005-06-23)\r
-       Fixed so the newdocument button shows again, was removed by accident in RC2.\r
-       Fixed so styles drop down in link dialog gets hidden if no classes are defined.\r
-       Fixed bug where Paste command in context menu wasn't working.\r
-       Fixed bug issue with not having a base href element in preview plugin.\r
-       Fixed bug where input elements produced double type/value attributes in MSIE.\r
-       Fixed so the check for empty contents in cleanup handled uppercase elements.\r
-       Added a alert box is a popup is blocked by a popup blocker.\r
-       Added updated dutch language pack, contributed by Fred Stuurman.\r
-       Added a confirm dialog for the newdocument action.\r
-       Added mceContentBody class to the iframe document body.\r
-       Added allowtransparency attribute to iframe.\r
-       Added fix where some HTML content produced runtime error in MSIE.\r
-       Added a lot better Safari support, but many things are still very buggy.\r
-       Added flash_wmode, flash_quality and flash_menu options for the flash plugin.\r
-       Added new dialog_type option, this enables you to switch back to modal dialogs in MSIE.\r
-       Updated Canadian French table language pack contributed by Virtuelcom.\r
-       Fixed some minor issues with Simplified Chinese language pack.\r
-       Re-added Tahoma font to font drop list, was removed in previous version.\r
-Version 1.45 RC2 (2005-06-15)\r
-       Fixed bug where paste_use_dialog option for the paste plugin wasn't working correctly.\r
-       Fixed bug issue with setContent not calling custom cleanups correctly. Inflicts the Flash plugin.\r
-       Fixed bug where external_link_list_url/external_image_list_url in fullscreen mode.\r
-       Fixed so TinyMCE doesn't use modal dialogs on MSIE, these where giving some problems with for example lost sessions.\r
-       Fixed the auto resize function for popups to use new logic.\r
-       Fixed so callback functions gets called correctly from fullscreen mode.\r
-       Fixed misspelled language pack for canadian french in the advimage plugin.\r
-       Fixed so openWindow can open use absolute URL:s.\r
-       Fixed bug issue where auto_cleanup_word sometimes didn't work in MSIE.\r
-       Fixed bug issue where the close button in dialogs wasn't available on Firefox on MacOSX.\r
-       Added new pastetext icon contributed by speednet.\r
-       Added new browsers option that enables you to specify what browsers is to be WYSIWYG enabled or not.\r
-       Added partial Catalan translation contributed by Marc Bria Ramírez.\r
-       Added portuguese Brazil translation contributed by João Borges.\r
-       Added updated Simplified Chinese language pack contributed by cube316.\r
-       Added beforeunload handler for fullscreen plugin so contents gets updated when the window is closed.\r
-       Added a new fullscreen_settings option for the fullscreen plugin contributed by David Glick.\r
-       Added new insert table command to context menu when user clicks within a table.\r
-       Added new advimage_constrain_proportions option to advimage plugin, contributed by Knut B. Jacobsen.\r
-       Added updated advanced theme with a new external toolbar location option, contributed by Man-Chicken (http://www.zoomshare.com/).\r
-       Added new tiny_mce_gzip.php file, this PHP script merges and compressed the requested .js files to improve loading times.\r
-       Added updated czech language pack, contributed by Stanislav Lacko.\r
-       Added new mceRemoveNode command, this command removes a node and inserts the node contents instead.\r
-       Added new behavior to format select box, you can now remove a paragraph by selecting -- Format --.\r
-       Removed ?rnd from external_link_list_url/external_image_list_url since it doesn't work well with serverside scripts.\r
-Version 1.45 RC1 (2005-05-27)\r
-       Fixed bug where character map inserted &amp; and &lt;/&gt; when using & < >.\r
-       Fixed so paragraphs containing &nbsp; is converted to numeric or raw if entity_encoding is set.\r
-       Fixed bug in searchreplace plugin when user tried to search on a empty string or the editor contents was empty.\r
-       Fixed repaint/trail graphics issues with images and tables in FF/Mozilla.\r
-       Fixed some memory leaks in TinyMCE core and context menu plugin, only MSIE was inflicted by this.\r
-       Fixed stange issue where elements sometimes disappeared in MSIE.\r
-       Fixed URL convertion problems with onmouseover, onmouseout image urls in advimage plugin.\r
-       Fixed URL convertion problems with Flash plugin.\r
-       Fixed the experimental Safari support, some features work some doesn't.
-       Fixed bug where multiple a elements where created when updating links on images in FF/Mozilla.
-       Fixed bug in importCSS function, was having a meaning less if statement.
-       Fixed so the contextmenu plugin uses images from the configurated theme instead of the advanced theme.
-       Fixed so the external_link_list_url/external_image_list_url options can use relative or absolute path.
-       Fixed so the external_link_list_url/external_image_list_url has a random query parameter to prevent it from cache.
-       Added new mceInsertRawHTML command, this inserts raw as it is HTML code in the selected position.
-       Added paste plain text plugin contributed by Ryan Demmer, converted it into a paste plugin.
-       Added updated paste plugin contributed by speednet, includes paste directly feature for MSIE.
-       Added split/merge table cells support, to table plugin and context menus.
-       Added cut/copy/paste table rows functionality to context menu and table plugin.
-       Added new mceSetContent command, this does the same as the setContent function.
-       Added new clear all/new document icon to advanced theme.
-       Added new remove formatting and select text color icons.\r
-       Added new directionality plugin to better support languages that write from right to left.\r
-       Added new fullscreen plugin, enables users to toggle fullscreen editing mode.\r
-       Added a new template/tutorial plugin to aid people in the development of own plugins.\r
-       Removed visual_table_style and replaced it with visual_table_class. [BREAKS COMPATIBLITY].\r
-       Renamed urlconvertor_callback option to urlconverter_callback.\r
-Version 1.44 (2005-05-03)\r
-       Fixed bug with contextmenu not showing at the correct location in MSIE.\r
-       Fixed bug where a error was produced by the Flash plugin if the user reloaded the page in MSIE.\r
-       Fixed issue where mceAddControl and mceRemoveControl commands produced a error in MSIE.\r
-       Fixed bug when images and flash movies where mixed in the editor produced strange results.\r
-       Fixed so trailing / characters isn't removed from URLs.\r
-       Fixed so the contextmenu uses a diffrent method of loading it's custom CSS file.\r
-       Fixed getAttributes problem, it should read getAttribute.\r
-       Fixed so "Edit HTML source" window may be maximized.\r
-       Added French eacute entitiy to default entities option.\r
-       Added a height CSS value for the element path in advanced themes editor_ui.css since it keept bobbing up and down.\r
-       Added updated Polish language pack contributed by Marcin Szymon Sznyra.\r
-       Added better window auto resize method for most dialogs.\r
-       Added new feature to set what tags are to be left open in valid_elements. Add a + before the element names to enable.\r
-       Added nowrap for the editor table cells, sometimes the editors controls wrapped.\r
-       Updated German language pack contributed by Krokogras.\r
-Version 1.44 RC2 (2005-04-25)\r
-       Fixed bug with host prefixes and port numbers when having relative_urls set to false and remove_script_host set to true.\r
-       Fixed bug when site absolute URLs for example /something was converted incorrectly in Firefox/Mozilla.\r
-       Fixed bug where the link wasn't auto selected in the drop list in the advanced themes default link dialog.\r
-       Fixed bug issue with the flash plugin and croping out characters before and after the movie.\r
-       Fixed bug where the editor jumped to top of editor area on enter/return when doctype was set to XML Transitional.\r
-       Fixed bug where context menu was appearing in the wrong location if the window was resized.\r
-       Fixed bug in the context menu where table properties wasn't working.\r
-       Fixed bug where a selectorText exception was trown if the CSS file contained @import or @charset.\r
-       Fixed bug where bold/italic/strikethough/underline wasn't selected/unselected in toolbar some times.\r
-       Fixed issue with hspace and vspace when having the inline_styles option enabled. Contributed by speednet.\r
-       Fixed bug where access denied error was thrown sometimes in MSIE.\r
-       Fixed so images without src won't be inserted.\r
-       Fixed some issues with width/height fields in the advimage plugin.\r
-       Fixed so the contextmenu plugin doesn't appear in MSIE 5.0, now functions with 5.5+.\r
-       Added filebrowser icon to mouse over and mouse out fields in the advimage plugin.\r
-       Added filebrowser icon to popup field in the advlink plugin.\r
-       Added so the triggerSave function gets auto executed when a user calls submit on a form, this can be disabled with the submit_patch option.\r
-       Added missing readme.txt file for the context menu plugin.\r
-       Added new border and background color fields to table dialog, based on contribution by Neirda. Enable them by the table_color_fields option.\r
-       Removed some old outdated items from FAQ.\r
-Version 1.44 RC1 (2005-04-20)\r
-       Fixed bug where width/height attributes of a image wasn't stored some times in Firefox/Mozilla.\r
-       Fixed bug where P elements where created if a user pressed return/enter within a h1-h6 in Firefox/Mozilla.\r
-       Fixed bug where the remove format fuction didn't work some times in MSIE.\r
-       Fixed so backspace/delete gets added in one undo level in MSIE (improves performance).\r
-       Fixed so the "Could not find element by id or name" alert only shows when the debug option is set to true.\r
-       Fixed bug where bold/italic didn't work in Mozilla 1.3.\r
-       Fixed bug where width/height of a hidden TinyMCE instance where incorrect.\r
-       Fixed so the function layout of classes in tiny_mce_src.js uses prototype keyword instead of TinyMCE_ prefix (reduces size).\r
-       Fixed bug where triggerNodeChange produced javascript error some times in MSIE.\r
-       Fixed some issues in the Swedish and Spanish language packs.\r
-       Fixed bug where first undo level wasn't working correctly.\r
-       Fixed so flash plugin loads it's needed CSS data from within the plugin.\r
-       Fixed button images and CSS in the simple theme.\r
-       Fixed so the simple example shows how to use the simple theme instead of the default theme.\r
-       Fixed so cleanup default values can be set to empty. For example alt= generated alt="" on img elements.\r
-       Fixed memory leaks in MSIE (circular closure problem) events are now removed in a better way.\r
-       Fixed bug where URLs where converted incorrectly if the editor page URL contained / characters.\r
-       Fixed bug where table guidlines didn't work correctly when using the build in Mozilla table buttons.\r
-       Fixed bug where the Flash plugin was breaking other elements.\r
-       Added new contextmenu plugin, this plugin adds a menu if the user right clicks/uses the contextmenu on elements.\r
-       Added new multiple configuration support, the init method may now be called multiple times.\r
-       Added new remove_linebreaks option, this option is enabled by default and removes all HTML code linebreaks.\r
-       Added new behavior to the textarea_trigger option, if mode is textareas and trigger is false those elements will not be converted into editors.\r
-       Added new entity_encoding option, enabled user to better control the behavior of how character are converted into entities.\r
-       Added new isDirty command to TinyMCEControl, this method returns true if the user has done any modifications to the content.\r
-       Added new onchange_callback option, this callback is executed when contents within the editor instance is changed.\r
-       Added new init function for themes/plugins this gets called when a editor instance has finished it's setup.\r
-       Added new init_instance_callback option this callback is executed when instances are added to the editor.\r
-       Added new cleanup option this option enables users to totaly disable the whole cleanup process.\r
-       Added new importCSS method to TinyMCE. This method allows plugins and themes to load custom CSS files on initialization.\r
-       Added new getSelectedHTML method to TinyMCEControl class, this method returns the currently selected HTML contents.\r
-       Added new getSelectedText method to TinyMCEControl class, this method returns the currently selected contents as text.\r
-       Added new removeclass behavior to the removeformat button. The current class will be removed if no contents is selected.\r
-       Added new queryInstanceCommandValue and queryInstanceCommandState methods.\r
-       Added new option button_tile_map, this option contols the usage of button tile maps and is disabled by default.\r
-Version 1.43 (2005-03-06)\r
-       Fixed bug with ask option not working at all.\r
-       Fixed bug where a "instance is not defined bug" error was produced.\r
-       Fixed bug with empty image src produced a error.\r
-       Fixed so the simple and default theme used the same CSS style as the advanced theme.\r
-       Fixed bug with the relative to absolute URL convertion logic if a empty string was passed used.\r
-       Fixed parse error bug with the source editor some servers can't handle XML PI declarations.\r
-       Fixed bug issue with HR elements in MSIE, if a specific work pattern where used a runtime error was produced by MSIE.\r
-       Fixed bug in the URL convertor logic, port numbers was not correctly handled.\r
-       Fixed issue where the cursor was placed before a insert of custom charater or date/time.\r
-       Fixed bug where the editor height option didn't work on MSIE.\r
-       Fixed bug where a linefeed within a table cell broke the table in Firefox/Mozilla.\r
-       Fixed bug where return/enter key after a image removed all content.\r
-       Fixed bug where return/enter key sometimes produced nestled P elements.\r
-       Fixed bug where the editor was stealing focus on load in MSIE.\r
-       Fixed bug where the visual aid logic forces width/height attributes on tables.\r
-       Fixed bug where getCSSClasses some times returned null value.\r
-       Fixed issue where the lang_insert/lang_update language variables wasn't entity decoded.\r
-       Fixed so the image/link/flash drop list gets auto selected thanks goes to Randy Simons and salzbermat.\r
-       Fixed so remove formatting button in MSIE removes all classes aswell.\r
-       Fixed issue where output contained single br element when the editor area was empty.\r
-       Added new %A/%a/%B/%b format chunks to insertdatetime, these insert localized date names such as January.\r
-       Added new oninit callback option for TinyMCE this callback is executed when all editor instances been initialized.\r
-       Added new preview panel to dialog in the advimage plugin, contributed by Virtuelcom.\r
-       Added element class name to element path in the advanced theme.\r
-       Updated Canadian French table language pack contributed by Virtuelcom.\r
-       Updated the swedish language pack, contributed by Mats Löfström, York Consulting AB.\r
-Version 1.42 (2005-02-14)\r
-       Fixed bug with the element path beeing resized if width/height of editor was 100%.\r
-       Fixed bug with reloading/flicker of all button images in MSIE if browser cache is disabled.\r
-       Fixed backspace/delete bug in Firefox, some times the cursor got stuck.\r
-       Fixed bug issues with enter/return key in Firefox/Mozilla.\r
-       Fixed bug where copy/paste and drag drop of images/links failed in Firefox/Mozilla if a document_base_url is provided.\r
-       Fixed so when relative_urls is set to false it forces absolute URLs for images/links.\r
-       Fixed so the _src.js suffix versions of the themes and plugins gets loaded with the tiny_mce_src.js script is used.\r
-       Fixed so verify_css_classes option is disabled by default.\r
-       Fixed bug where tables where resized when toggling visual aid in Firefox/Mozilla.\r
-       Fixed bugs with advhr plugin running in a hidden div element.\r
-       Added new auto_focus option that enabled a specific editor area to be focused on startup.\r
-       Added a extra argument to the filebrowser callback inorder to get the calling window reference.\r
-       Added a new persian (farsi) language pack contributed by Morteza Zafari.\r
-       Added new more nice looking icons contributed by Morteza Zafari and Michael Keck. The old icons are available in a separate icon pack.\r
-       Added updated Canadian French language pack contributed by Virtuelcom.\r
-       Added updated French languahe pack contributed by Laurent Dran.\r
-       Added updated German language pack contributed by Tobias Heer.\r
-       Added some documentation regarding the layout manager options made by SlyD.\r
-Version 1.41 (2005-01-31)\r
-       Added new table plugin, all table code is moved into this plugin [BREAKS COMPATIBLITY].\r
-       Added new external_link_list_url/external_image_list_url options for better backend integration.\r
-       Added new file_browser_callback option for better backend integration.\r
-       Added new layout manager code into the advanced theme, contributed by SlyD.\r
-       Added new nowrap option, enables so users may change the word wraping behavior.\r
-       Added new Thai language pack contributed by Innozent.\r
-       Added obfuscated version of all plugins and themes to reduce over all startup/download time.\r
-       Added Simplified Chinese language pack contributed by cube316.\r
-       Added a updated Czech language pack thanks to Josef Klimosz.\r
-       Fixed issue where anchor elements where closed. This results in browser problems with the outputed HTML.\r
-       Fixed bug where the first return key press didn't produce a paragraph in Firefox/Mozilla.\r
-       Fixed bug in the searchreplace plugin where replace content sometimes fails in Firefox/Mozilla.\r
-       Fixed so all language packs now uses the ISO-639-2 code instead of ISO 3166-1 [BREAKS COMPATIBLITY].\r
-       Fixed some issues with the force_br_newlines option in MSIE.\r
-       Fixed bug where the backspace or delete key produced BR elements in Firefox/Mozilla.\r
-       Fixed bug issue with link and image dialogs of the default theme/simple example.\r
-       Fixed some bugs when having the editor hidden in a tab/div, contributed by Ernst de Moor.\r
-       Fixed some character issues with the Danish language packs, contributed by someone unknown.\r
-Version 1.40 (2005-01-09)\r
-       Added a new default value for the font size drop down, if no font size where found this gets selected.\r
-       Added a auto resize window feature, this is enabled by default but can be disabled with a window argument.\r
-       Added a new print plugin, prints the current editor contents to a printer.\r
-       Added a new searchreplace plugin, adds a search, searchnext and replace button.\r
-       Fixed bug issue where buttons didn't display correctly on some Firefox installations.\r
-       Fixed issue with value and type attributes of input elements getting lost in cleanup on MSIE.\r
-       Fixed so that the getEditorInstance command is public, returns a TinyMCEControl by id.\r
-       Fixed issue where "true" and "false" string wasn't treated as booleans in TinyMCE init options.\r
-       Fixed so cursor/mousepointer allways remains a arrow in all themes when rolling over buttons.\r
-       Fixed the popup windows so they are mode "modal" in Mozilla/Firefox.\r
-       Fixed so the ask question is displayed when elements are focused with the tab key.\r
-       Fixed so the ask option works when mode option is set to exact.\r
-       Fixed issue with visualaids on tables not working correctly when the user uses the tab key in Firefox/Mozilla.\r
-       Fixed some bugs with the mceSetCSSClass class command and the element path.\r
-       Fixed a new version of the mceInsertContent command.\r
-       Fixed so the auto_cleanup_word option is disabled by default.\r
-       Removed the langs of the zoom plugin, it now uses + instead of the "zoom" word.\r
-Version 1.391 (2005-01-04)\r
-       Fixed major spacebar bug in MSIE, spacebar was disabled.\r
-Version 1.39 (2005-01-04)\r
-       Updated the Flash plugin with a new version, contributed by jamesw.\r
-       Added new setWindowArg function, useful if plugins are to call other plugins.\r
-       Added new save plugin, this plugin adds a save/submit form button to tinyMCE, contributed by SlyD.\r
-       Added new hilite color support, sets a background-color style on the selected text.\r
-       Added new variable replacement popup URLs, check the openWindow function documentation for details.\r
-       Added new force_p_newlines option, forces P elements on return/enter key in Mozilla/Firefox.\r
-       Added new theme_advanced_path_location, adds a element path list.\r
-       Added new theme_advanced_toolbar_align option, defaults to center.\r
-       Added new Portuguese translation contributed by José Pedro Pereira.\r
-       Added new mceSelectNode and mceSelectNodeDepth commands.\r
-       Added new add_unload_trigger option, this adds a unload triggerSave call. Enabled by default.\r
-       Added am/pm time format to the insertdatetime plugin.\r
-       Fixed font color and size attribute bug, contributed by Vincent FIACK.\r
-       Fixed className undefined bug, Firefox/Mozilla produced a console error sometimes.\r
-       Fixed so mceSetCSSClass command may be applied to all sorts of elements.\r
-       Fixed so anchor elements can be removed by setting the anchor name to nothing.\r
-       Fixed typing performance some in Firefox/Mozilla, removed some nodechange triggers.\r
-       Fixed so the zoom plugin is invisible in MSIE 5.0, since zoom isn't available in that browser.\r
-       Fixed bug with the emotions plugin in MSIE 5.0, it was opening a new window.\r
-       Fixed so contents stay within the editor if the user hits the back/forward buttons.\r
-       Fixed bug where the window.name property was set to the image name.\r
-       Fixed so anchors links within the same page are made relative when relative_urls are set to false.\r
-       Updated the advanced theme so most of the images are loaded from a tiled image, improves loading time.\r
-       Updated the Swedish language pack, contributed by Martin.\r
-       Updated the readme.txt in the advlink plugin, was some problems with the valid_elements.\r
-       Updated the default CSS for the advanced theme some, added button backgrounds to look like office2k.\r
-Version 1.38 (2004-11-28)\r
-       Added new textarea field for form elements when debug mode is enabled, contributed by Michael Keck.\r
-       Added new spacer item support for the theme_advanced_buttons<n> options, contributed by Michael Keck.\r
-       Added new selection borders for images and hr elements, contributed by Michael Keck.\r
-       Added new advhr plugin, this plugin handles advanced settings on HR elements, contributed by Michael Keck.\r
-       Added new german language pack for the preview plugin, contributed by Michael Keck.\r
-       Added new word wrap and source formatting to the source editor, contributed by Michael Keck.\r
-       Added new updated charmap, contributed by Michael Keck.\r
-       Added new flash plugin that enabled flash movied to be handled, contributed by Michael Keck.\r
-       Added the old cut/copy/paste commands to the advanced theme, these are not visible by default.\r
-       Added new theme_advanced_buttons<N>_add_before option to advanced theme.\r
-       Added new "update" button title for a popup windows.\r
-       Added new zoom prefix language variable to the zoom plugin.\r
-       Added new entities option, that enables you to config entity code to name convertion.\r
-       Added new custom cleanup possibility to plugins.\r
-       Added new cleanup_callback option, adds the possibilty to add custom cleanup logic.\r
-       Added new Norwegian language pack, contributed by Sten Aksel Heien.\r
-       Added new Korean language pack, contributed by Setzer Gabbiani.\r
-       Fixed the layout of the color picker, contributed by Michael Keck.\r
-       Fixed so the preview plugin doesn't include the any toolsbars in preview popup window, contributed by Michael Keck.\r
-       Fixed bug where anchors elements was treated as links.\r
-       Fixed so all popup windows are modal dialogs in MSIE.\r
-       Fixed bug where the word "null" sometimes appares in HTML after cleanup in Firefox/Mozilla.\r
-       Fixed bug where form elements with missing name attributes produced errors.\r
-       Fixed some default value bugs and issues with the new advlink plugin.\r
-       Fixed the link/image dialog sizes in the SE language pack.\r
-       Fixed the content duplication bug, it seems to be fixed anyway, if not please let me know.\r
-       Fixed bug where plugin handleNodeChange extentions broke the theme function.\r
-Version 1.37 (2004-11-12)\r
-       Added new mceResetDesignMode command that can be used when the editor is placed in tabs.\r
-       Added new updated Italian language pack thanks goes to "Fabrix Xm" for the contribtion.\r
-       Added new greek language pack thanks goes to "Jacaranda Bill" for the contribution.\r
-       Added new french language pack thanks goes to "Pat Boens" for the contribution.\r
-       Added new russian language pack thanks goes to "Roman Filippov" for the contribution.\r
-       Added new updated Dutch language pack thanks goes to Arnoud van Delden and Ernst de Moor for the contribution.\r
-       Added new convert_newlines_to_brs option, that enables newlines to be converted to br elements.\r
-       Added new custom_undo_redo_keyboard_shortcuts option, enables keyboard shortcuts to be enabled/disabled.\r
-       Added new auto_reset_designmode option, thats resets the design mode when a editor instance is focused.\r
-       Added new form reset handler, resets the contents of TinyMCE areas when the onreset event is trigged.\r
-       Added new skip_cleanup parameter to triggerSave, this parameter is optional and defaults to false.\r
-       Added new lang_underline_img language variable to all themes.\r
-       Added new title attribute to all images, enables tooltips in Mozilla and Firefox.\r
-       Added new insert and cancel CSS id's for all submit and cancel buttons.\r
-       Added new full featured example that includes all available plugins and buttons.\r
-       Added new advlink and advimage plugins to TinyMCE, these are more advanced link and image tools. Contributed by Michael Keck.\r
-       Added new parameters to insertImage and insertLink commands. Contributed by Michael Keck.\r
-       Added updated compatiblity chart, includes a matrix table thanks goes to Ernst de Moor.\r
-       Added new insert image icon contributed by Arnoud van Delden and Ernst de Moor.\r
-       Added window focus on all popup windows, contributed by Arnoud van Delden and Ernst de Moor.\r
-       Fixed some issues with the char map added some characters and removed duplicate ones, contributed by Arnoud van Delden and Ernst de Moor.\r
-       Fixed the insert row icon, rotated it 180 degrees, contributed by Arnoud van Delden and Ernst de Moor.\r
-       Fixed the visual aid icon, made it a bit darker. Contributed by Arnoud van Delden and Ernst de Moor.\r
-       Fixed some issues with entity encoding in source editor aswell as in core cleanup code.\r
-       Fixed bug where the auto import CSS feature imported invalid CSS rules with : or spaces.\r
-       Fixed bug where unnecessary entity encoding of characters was done.\r
-       Fixed the window sizes some to better function on MSIE with SP2.\r
-       Fixed some issued with the auto word cleanup feature, fixes some issued with content duplication.\r
-       Fixed bug that made the editor to throw weird error when HTML code includes <!a or <!/a> content.\r
-       Fixed bug where the style attribute was returned on images in source output even if it was disabled.\r
-       Fixed issue where the UI form elements of TinyMCE was submitted with the form submit.\r
-Version 1.36 (2004-10-19)\r
-       Added a newly modified version of the German language pack from "krokogras".\r
-       Added auto resizing to popup windows with the same name.\r
-       Added example page for the plugin_preview_pageurl option in the preview plugin.\r
-       Fixed issue with link button auto enable/disable feature when content selection was made with the keyboard.\r
-       Fixed bug where events wasn't handled correctly in MSIE 5.5 and some 6.0 versions.\r
-       Fixed so align on images gets set as float style when the inline_styles option is enabled.\r
-       Fixed so solid border style isn't applied on elements with a border when the inline_styles option is enabled.\r
-       Fixed some issues with tables and the inline_styles option.\r
-       Fixed back button issue with MSIE, iframes was placed in browser history.\r
-Version 1.35 (2004-10-13)\r
-       Added so that whitespace gets stripped in plugin and theme_advanced_buttons options.\r
-       Added custom plugin_preview_pageurl option to preview plugin.\r
-       Added Canadian French language packs for the new plugins, contributed by Virtuelcom.\r
-       Added new theme_advanced_blockformats option.\r
-       Added new title support to advanced theme link dialog.\r
-       Added new Ctrl+B/I/U keyboard shortcuts for Firefox.\r
-       Added Polish language pack contributed by "revyag".\r
-       Added Taiwanese language pack contributed by "Jim Kou".\r
-       Added updated German language pack contributed by "Krokogras".\r
-       Fixed some issues with ieSpell including better language support.\r
-       Fixed bug with default value in valid_elements not working in Firefox some times.\r
-       Fixed bug when focusing links without selecting any characters.\r
-       Fixed some typos in Swedish language pack.\r
-       Fixed bug with content selection and link button auto enable/disable feature.\r
-       Fixed bug issue when "theme_advanced_buttons<N>" options where left empty.\r
-       Fixed various bugs with absolute URLs.\r
-Version 1.34 (2004-10-03)\r
-       Added new insertdatetime plugin, inserts date/time in various formats.\r
-       Added new preview plugin, previews the HTML page in a new window.\r
-       Added new zoom plugin, adds the possibility zoom the editor in MSIE.\r
-       Added new emotions plugin, adds the possibility to add smileys.\r
-       Fixed so that TinyMCE functions on MSIE 5.0 again.\r
-       Fixed so that TinyMCE functions better on Mozilla 1.3.\r
-       Fixed so that the cursor doesn't jump to the top when setting styles.\r
-       Fixed bug with STRONG and EM elements wasn't handled correctly in Firefox.\r
-       Optimized the key handling some, gives better typing performance.\r
-       Removed key down statusbar debug info.\r
-Version 1.33 (2004-09-29)\r
-       Removed the need of loading blank.html, iframes are now created dynamicly.\r
-       Fixed bug when selecting tables, MSIE was casting errors.\r
-       Fixed bug with pluginurl variable.\r
-       Fixed bug when tinyMCE.selectedElement error was cast in Mozilla.\r
-       Added new Arabic language pack contributed by Hani Suleiman.\r
-       Added "lang_dir" support to language packs like Arabic.\r
-Version 1.32 (2004-09-25)\r
-       Added new ieSpell plugin, only works in MSIE.\r
-       Added new "theme_advanced_buttons<N>_add" option.\r
-       Added new importPluginLanguagePack function.\r
-       Added new Danish language pack contributed by Jan Moelgaard.\r
-       Added updated German language pack contributed by Christopher Müller.\r
-       Added new any_selection to handleNodeChange callback.\r
-       Modified so link/unlink is dimmed if nothing is selected.\r
-       Fixed bug when deleting images in Firefox.\r
-       Changed the plugin location to a new plugin directory.\r
-       Renamed the "theme_plugins" option to "plugins".\r
-Version 1.31 (2004-09-18)\r
-       Added Canadian French language pack, contributed by Virtuelcom.\r
-       Added so link/unlink buttons gets selected when user enters a link element.\r
-       Fixed URL bug when drag dropping/copy pasting images in Mozilla.\r
-       Fixed so mso style attribs don't get trimmed if auto_cleanup_word option is set to false.\r
-       Fixed bug with text alignment buttons.\r
-       Fixed bug with CSS auto import function in MSIE.\r
-       Fixed initialization bugs and issues.\r
-Version 1.30 (2004-09-10)\r
-       Fixed bug issue where the editor was stealing focus from location bar.\r
-       Fixed bug issue with absolute aligned images lost focus when using tools.\r
-       Fixed bug #1025483, Url converting broken.\r
-       Added ability to send command values in advanced theme button list, contributed by someone helpfull.\r
-       Added new cleanup_on_startup option, to increase startup speed.\r
-       Added new inline_styles partly based on a contribution by Victor Nilsson.\r
-       Added new named anchor support.\r
-       Added custom_undo_redo_levels option.\r
-Version 1.29 (2004-09-08)\r
-       Added new getEditorId function, to retrive the editor id of a form element.\r
-       Readded so cleanup is automaticly executed on editor startup in MSIE.\r
-       Added some various cleanup fixes for MS Word HTML.\r
-       Added new auto_cleanup_word option, enabled auto MS Word HTML cleanup on paste events.\r
-       Fixed parameter issue with insertImage function. Bug #1022863.\r
-       Fixed bug #1022874, Where the small theme had underline command on strikethrough button.\r
-       Fixed some bugs with table commands.\r
-       Fixed bug #1023204, mceRemoveControl brings back the old HTML.\r
-       Fixed bug issue with tinyMCE.selectedInstance in Mozilla.\r
-       Fixed bug issue with Mozilla not saving content.\r
-Version 1.28 (2004-09-04)\r
-       Added new Finnish language pack thanks to Urho Konttori.\r
-       Added new rowseparator as a possible value of the theme_advanced_buttons<n> options.\r
-       Added new theme_advanced_toolbar_location option.\r
-       Added new uid variable option to valid_elements. (Generates unique IDs)\r
-       Added new "directionality" option to support languages like Arabic.\r
-       Added new character map button/window.\r
-       Added new guidelines/visual aid toggle button.\r
-       Reduced the source of the advanced theme some, and added some better comments.\r
-       Separated the default theme in to files aswell.\r
-       Removed source area size options and made source editor resizable instead.\r
-       Increased the default width and height of the source editor.\r
-       Fixed bug where image width/height default to 0x0 if these attributes wasn't defined.\r
-       Fixed some bug issues with MSIE 5.5.\r
-Version 1.27 (2004-08-29)\r
-       Added new cleanup logic, with new options and smarter behavior.\r
-       Added new "trim_span_elements" option (removed unneeded span elements).\r
-       Added new "verify_css_classes" option (verifies so class attributes contain a valid class).\r
-       Added new "verify_html" option (enables/disabled verification of elements and attributes).\r
-       Added new value verification type to "valid_elements" option.\r
-       Added new simple wildcard support in "valid_elements" option.\r
-       Added class as a valid attribute to table elements by default.\r
-       Added so non existent classes gets removed HTML output.\r
-       Added fix for &nbsp; entities, so they get converted correctly.\r
-       Added new class select box in table dialog.\r
-       Added hr as a default valid element.\r
-       Fixed some issues with the language packs.\r
-       Fixed some weird bugs and issues with hr elements.\r
-       Fixed bug where Mozilla was casting exceptions on keypress.\r
-Version 1.26 (2004-08-25)\r
-       Added a better way to create theme popup windows (External files).\r
-       Added new getWindowArg function, returns window arguments in theme popups.\r
-       Modified the advanced theme to adopt the new theme popup idea.\r
-       Fixed critical Mozilla bug, where the editor didn't work at all some times.\r
-       Fixed bug with auto CSS class import feature running on Firefox.\r
-Version 1.25 (2004-08-22)\r
-       Added new format select box in advanced theme (Can be disabled).\r
-       Added new "theme_advanced_disable" option to advanced theme.\r
-       Added some new elements to default list of valid elements (Format select box elements).\r
-       Added new font face, forecolor and font size support, these are not enabled by default.\r
-       Added new "mceAddControl" command, enables users to dynamicly add editors.\r
-       Added new execInstanceCommand function, check the documentation for details.\r
-       Added new "mceSetAttribute" command.\r
-       Modified the themes so that the focus alert doesn't popup as often as before.\r
-       Modified the "mceRemoveControl" command so it can handle element id aswell as editor ids.\r
-       Fixed some bugs and issues with the new custom undo/redo logic.\r
-       Fixed weird Mozilla bug #997860.\r
-Version 1.24 (2004-08-17)\r
-       Modified so that span with CSS classes that don't exists get removed.\r
-       Added new "custom_undo_redo" option, this option is enabled by default.\r
-       Added new "fix_content_duplication" option, that fixes some MSIE content duplication issues.\r
-       Added new "mceFocus" command, that changes focus to the specified editor instance.\r
-       Added new "mceReplaceContent" command, that enables users to replace the current selection.\r
-       Fixed so styles including spaces doesn't get listed in style selection box.\r
-       Fixed bug with form element names and exact mode in Mozilla.\r
-       Fixed so tiny_mce_src.js can be used aswell as tiny_mce.js.\r
-       Converted some of the language packs to better support unicode.\r
-Version 1.23 (2004-07-31)\r
-       Modified the mceSetCSSClass command to address bug #997071.\r
-       Added new Hungarian language pack thanks to 2XP.\r
-       Added new callback "setupcontent_callback" check the manual for details.\r
-       Fixed bug #994506, where empty theme_plugins option generated a 404 error.\r
-       Fixed bug #999332, where image properties wasn't removed if the user deleted the image.\r
-Version 1.22 (2004-07-19)\r
-       Fixed bug #989846, Image resize bug.\r
-       Changed so that style attribute values get converted to lowercase in MSIE.\r
-       Changed so the alignment called "middle" is "center" in table properties.\r
-       Fixed so visual aids work correctly after using the source editor.\r
-       Fixed some issues with anchor links.\r
-       Fixed so that javascript: links can be used.\r
-       Added width/height options for the advanced source editor.\r
-       Fixed bug issue with URL:s containing quotes or single quotes.\r
-       Fixed so that document_base_url can point to another domain.\r
-Version 1.21 (2004-07-12)\r
-       Added new "theme_plugins" option, check the manuals for details.\r
-       Added new "execCommand" plugin extention possibility.\r
-       Added new "buttons<n>" config options to the advanced theme.\r
-       Added new "mceRemoveControl" command.\r
-       Added Spanish language pack thanks to "Alvaro Velasco".\r
-       Fixed first click bug.\r
-       Fixed so CSS url:s can be absolute.\r
-       Updated the FAQ regarding the Cut/Copy/Paste issue.\r
-Version 1.20 (2004-07-05)\r
-       Fixed bug issue #983257, JS runtime error when template contains no controls.\r
-       Removed cut/copy/paste commands and icons due to security reasons in Mozilla.\r
-       Added Czech language pack, thanks goes to "Pavel Novák" for the contribution.\r
-       Fixed minor bug regarding empty attributes.\r
-       Fixed so the "extended_valid_elements" overrides previous declarations.\r
-Version 1.19 (2004-06-28)\r
-       Fixed focus bug that appared on Linux version of Mozilla.\r
-       Fixed major bug issues with some Firefox/Firebird versions on Linux.\r
-       Fixed minor visual aid bugs on tables.\r
-       Fixed minor bugs with table commands.\r
-       Fixed scroll issue in HTML source windows on Mozilla/Linux.\r
-       Added a compatiblity chart to the manuals.\r
-Version 1.18 (2004-06-20)\r
-       Added new option "remove_script_host".\r
-       Some minor fixes to the mceInsertContent command.\r
-       Fixed some issues with visual aids for tables.\r
-       Fixed strange focus bug in MSIE.\r
-       Updated some of the documentation.\r
-Version 1.17 (2004-06-16)\r
-       Fixed bug, #972666 - Doesn't save edits when id != name.\r
-       Added more Italian, user manuals. Thanks goes to "Fabrix Xm".\r
-       Added Dutch language pack thanks to "Meint Post".\r
-       Modified the MSIE version of mceInsertContent command.\r
-Version 1.16 (2004-06-14)\r
-       Added new table dialog and TinyMCE_<theme>_getInsertTableTemplate template function.\r
-       Added auto class import feature and Italian language pack thanks goes to "Lorenzo Pavani".\r
-       Added border, alignment, vspace, hspace, width, height fields to the image properties dialog in advanced theme.\r
-       Updates advanced theme help pages for Swedish and English.\r
-       Fixed some minor issues with the mceSetCSSClass command.\r
-       Fixed minor MSIE bug in built in default URL convertor.\r
-       Fixed some image alignment issues.\r
-       Fixed support for site root script paths like src="/jscripts/tiny_mce.js".\r
-       Removed the use of "TinyMCE_advanced_cssClasses" from "advanced" theme.\r
-       Modified the default value of "valid_elements" to include table align and class as valid attributes.\r
-       Modified the default value of "valid_elements" to set img border attribute to 0 by default instead of by force.\r
-       Modified so that popup windows gets centered on screen.\r
-Version 1.15 (2004-06-09)\r
-       Added new "advanced" theme, that adds some new functions.\r
-       Added new public js functions "getContent, setContent, applyTemplate, openWindow".\r
-       Added new custom command "mceSetCSSClass", that sets css class of the selection.\r
-       Added new custom command "mceInsertContent", that inserts HTML content.\r
-       Added class attributes to some of the elements in the default value of "valid_elements".\r
-       Added ability to have theme specific language packs by the js function "importThemeLanguagePack".\r
-       Added more documentation to the usage and themes sections.\r
-       Added table support, with custom commands and in advanced theme.\r
-       Modified the advanced example to include the new advanced theme.\r
-       Fixed tooltips for buttons in Mozilla.\r
-Version 1.14 (2004-06-07)\r
-       Added new conversion possibility to save callback.\r
-       Added some more usage documentation.\r
-       Fixed some issues will updateContent function in Mozilla.\r
-       Fixed some issues with relative paths.\r
-       Fixed small Mozilla issue with visual aids.\r
-       Fixed so that the default theme sets image border to 0.\r
-       Fixed bug #968079, Removing editor buttons in template can cause errors.\r
-Version 1.13 (2004-06-04)\r
-       Fixed critical bug where the editor didn't work at all in MSIE.\r
-       Fixed bug where table visual aids didn't work in Mozilla.\r
-Version 1.12 (2004-06-03)\r
-       Added updateContent function thanks to "Jürgen Baute" contribution.\r
-       Added documentation of the diffrent public javascript functions of tinyMCE.\r
-       Fixed bug #965615, Empty editor content returns "<br />" as value after cleanup.\r
-       Fixed bug where Bold and Italic didn't work correctly in Mozilla.\r
-Version 1.11 (2004-06-01)\r
-       Added new option "document_base_url", it's used when converting absolute URLs to relative ones.\r
-       Added so that align button sets the align attribute of selected images.\r
-       Fixed bug when / was passed within query string to the editors page.\r
-       Fixed bug #961041, Image attributes are not removed.\r
-Version 1.1 (2004-05-26)\r
-       Fixed bug #960112 JavaScript error when opening image window.\r
-       Fixed bug #926644 Multiple forms with elements having the same name failed.\r
-       Added function so that "specific_textareas" mode handles the "ask" option.\r
-       Added new option "focus_alert", to remove annoying focus alert message.\r
-Version 1.09 (2004-05-24)\r
-       Added new option "extended_valid_elements", this option adds extra elements to the "valid_elements" list.\r
-       Fixed bug #958637, Resized images are displayed in original size\r
-       Fixed bug #958942, Bug on realitive_urls (Bug with absolute URLs to insertlink_callback, insertimage_callback callbacks)\r
-       Fixed bug #958498, Unable to change Bold and italic text in Mozilla. \r
-Version 1.08 (2004-05-21)\r
-       Added new attributes "border, hspace, vspace, width, height, align" to the getInsertImageTemplate theme function.\r
-       Added new relative_urls option, this new feature converts all absolute URLs to relative URLs and it's on by default.\r
-       Fixed bug #956007, the CSS theme URL:s was allways pointing to the default theme.\r
-       Fixed bug where enter/return key produced a error in the insert link popup window form. (This was done in the default template)\r
-       Fixed bug #957681, Could not delete text without first adding character bug in Mozilla.\r
-Version 1.07 (2004-05-10)\r
-       Added experimental support for option "force_br_newlines" to address bug #922416 and feature request #936270.\r
-       Fixed bug with mailto: links.\r
-Version 1.06 (2004-04-15) \r
-       Added new German language pack. Thanks goes to "Simon Rupf" for the contribution.\r
-       Added new German/Swedish bold/italic language specific icons to both default and simple theme.\r
-       Added new Swedish documentation. \r
-Version 1.05 (2004-04-02) \r
-       Added new Italian language pack and documentation. Thanks goes to "Fabrix Xm" for the contribution.\r
-       Fixed missing "lang_help_desc" definition in UK and SE langpacks.\r
-       Added better documentation for the "valid_elements" option and it's format.\r
-       Added new "preformatted" option to address feature request #927948.\r
-       Added browser checker so that the script don't break on non compatible browsers.\r
-       Fixed bug #926639, now the editor instance gets resized if a width/height is specified in %.\r
-       Added new simple theme, this theme has only basic functions. \r
-Version 1.04 (2004-03-30) \r
-       Fixed bug when insertLink and insertImage function didn't use the url_convertor callback.\r
-       Fixed MSIE bug when images was 32x32 on initialization on slow connections.\r
-       Fixed bug that made request on images with wrong path, produced some 404 error in webserver logs.\r
-       Fixed MSIE bug where users could add images outside of the editor scope. \r
-Version 1.03 (2004-03-26) \r
-       Added new "add_form_submit_trigger" this option is default and is added on all document forms within the page. To address bug #923362\r
-       Moved javascript sourcecode file to "jscripts/tiny_mce/tiny_mce_src.js".\r
-       Added new obfuscated version of tinymce to reduce size of script.\r
-       Added some performance boosting code to the switchClassSticky function.\r
-       Removed the "autosave" option, this is no longer needed and is replaced with "add_form_submit_trigger" or triggerSave call.\r
-       Fixed undo bug in MSIE.\r
-       Removed some unused eventhandlers results in better performance. \r
-Version 1.02 (2004-03-26) \r
-       Added new handleNodeChange callback to themes.\r
-       Fixed some bugs regarding events and themes function checks.\r
-       Fixed bug issue when user focused nodes with keyboard. \r
-Version 1.01 (2004-03-12) \r
-       Added some more documentation.\r
-       Added new "visual" option to editor.\r
-       Fixed bug on empty P elements.\r
-       Fixed bug on table width/height. \r
-Version 1.0 (2004-03-11) \r
-       Added new "debug" option and fixed some path issues.  \r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/docs/index.html b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/docs/index.html
deleted file mode 100644 (file)
index 1709c88..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-<title>TinyMCE Documentation - Index</title>\r
-</head>\r
-<body onload="document.location='http://wiki.moxiecode.com/index.php/TinyMCE:Index';">\r
-Redirecting to http://wiki.moxiecode.com/index.php/TinyMCE:Index ..\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_advanced.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_advanced.css
deleted file mode 100644 (file)
index 28b1d1c..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-body {\r
-       background-color: #FFFFFF;\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 12px;\r
-       color: #880000;\r
-       scrollbar-3dlight-color: #F0F0EE;\r
-       scrollbar-arrow-color: #676662;\r
-       scrollbar-base-color: #F0F0EE;\r
-       scrollbar-darkshadow-color: #DDDDDD;\r
-       scrollbar-face-color: #E0E0DD;\r
-       scrollbar-highlight-color: #F0F0EE;\r
-       scrollbar-shadow-color: #F0F0EE;\r
-       scrollbar-track-color: #F5F5F5;\r
-}\r
-\r
-.header1 {\r
-       font-weight: bold;\r
-       font-size: 14px\r
-}\r
-\r
-.header2 {\r
-       font-weight: bold;\r
-       font-size: 12px;\r
-       color: #FF0000\r
-}\r
-\r
-.header3 {\r
-       font-weight: normal;\r
-       font-size: 12px;\r
-       color: #0000FF\r
-}\r
-\r
-.tablerow1 {\r
-       background-color: #BBBBBB;\r
-}\r
-\r
-td {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 12px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_advanced.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_advanced.htm
deleted file mode 100644 (file)
index c223393..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-<title>Advanced example</title>\r
-<!-- tinyMCE -->\r
-<script language="javascript" type="text/javascript" src="../jscripts/tiny_mce/tiny_mce.js"></script>\r
-<script language="javascript" type="text/javascript">\r
-       tinyMCE.init({\r
-               theme : "advanced",\r
-               mode : "exact",\r
-               elements : "elm1,elm2",\r
-               save_callback : "customSave",\r
-               content_css : "example_advanced.css",\r
-               extended_valid_elements : "a[href|target|name]",\r
-               plugins : "table",\r
-               theme_advanced_buttons3_add_before : "tablecontrols,separator",\r
-               //invalid_elements : "a",\r
-               theme_advanced_styles : "Header 1=header1;Header 2=header2;Header 3=header3;Table Row=tableRow1", // Theme specific setting CSS classes\r
-               //execcommand_callback : "myCustomExecCommandHandler",\r
-               debug : false\r
-       });\r
-\r
-       // Custom event handler\r
-       function myCustomExecCommandHandler(editor_id, elm, command, user_interface, value) {\r
-               var linkElm, imageElm, inst;\r
-\r
-               switch (command) {\r
-                       case "mceLink":\r
-                               inst = tinyMCE.getInstanceById(editor_id);\r
-                               linkElm = tinyMCE.getParentElement(inst.selection.getFocusElement(), "a");\r
-\r
-                               if (linkElm)\r
-                                       alert("Link dialog has been overriden. Found link href: " + tinyMCE.getAttrib(linkElm, "href"));\r
-                               else\r
-                                       alert("Link dialog has been overriden.");\r
-\r
-                               return true;\r
-\r
-                       case "mceImage":\r
-                               inst = tinyMCE.getInstanceById(editor_id);\r
-                               imageElm = tinyMCE.getParentElement(inst.selection.getFocusElement(), "img");\r
-\r
-                               if (imageElm)\r
-                                       alert("Image dialog has been overriden. Found image src: " + tinyMCE.getAttrib(imageElm, "src"));\r
-                               else\r
-                                       alert("Image dialog has been overriden.");\r
-\r
-                               return true;\r
-               }\r
-\r
-               return false; // Pass to next handler in chain\r
-       }\r
-\r
-       // Custom save callback, gets called when the contents is to be submitted\r
-       function customSave(id, content) {\r
-               alert(id + "=" + content);\r
-       }\r
-</script>\r
-<!-- /tinyMCE -->\r
-\r
-</head>\r
-<body>\r
-\r
-<a href="example_full.htm">[Full featured example]</a> [Advanced example] <a href="example_simple.htm">[Simple example]</a> <a href="example_word.htm">[Word example]</a>\r
-\r
-<h3>Advanced example</h3>\r
-This page shows a more complex usage of TinyMCE. On this page the mode is set to convert specific elements in this case a DIV element and a TEXTAREA into editor instances. The example below uses a custom CSS, thats why the text is red and it allso uses the &quot;advanced&quot; theme that includes more options than the default one. The code allso includes examples of custom call back functions and much more. Notice the submit button at the end of the page, this button triggers a save action. Read more about the features and possible settings of TinyMCE in the <a href="../docs/index.html">manual</a>.<br />\r
-<br />\r
-\r
-<!-- Form with textare element with width: 100% -->\r
-<form method="post" action="http://tinymce.moxiecode.com/dump.php?example=true">\r
-<textarea name="elm1" style="width:100%" rows="15">\r
-       Some &lt;b&gt;element&lt;/b&gt;, this is to be editor 1. &lt;br /&gt; This editor instance has a 100% width to it.\r
-       &lt;p&gt;Some paragraph. &lt;a href=&quot;http://www.sourceforge.net&quot;&gt;Some link&lt;/a&gt;&lt;/p&gt;\r
-       &lt;img src=&quot;logo.jpg&quot;&gt;\r
-</textarea>\r
-<br />\r
-<input type="button" name="save" value="save" onclick="tinyMCE.triggerSave();" />\r
-</form>\r
-\r
-<!-- Div elements that gets to be a editor instance aswell -->\r
-<div id="elm2" style="width:450px; height:250px">\r
-       Some <b>element</b>, this is to be editor 2. <br /> This editor instance is a DIV element instead of a textarea.\r
-       <p>Some paragraph. <a href="http://www.sourceforge.net">Some link</a></p>\r
-       <img src="logo.jpg" />\r
-</div>\r
-\r
-<br />\r
-\r
-Some custom actions:\r
-<a href="javascript:tinyMCE.execCommand('Bold');">[Bold]</a> | \r
-<a href="javascript:tinyMCE.execCommand('Italic');">[Italic]</a>\r
-<a href="javascript:void(0);" onclick="tinyMCE.execCommand('mceInsertContent',false,'<b>Hello world!!</b>');">[Insert some HTML]</a>\r
-<a href="javascript:void(0);" onclick="tinyMCE.execCommand('mceReplaceContent',false,'<!-- comment --><b>{$selection}</b>');">[Replace selection]</a>\r
-\r
-<br />\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_flash_list.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_flash_list.js
deleted file mode 100644 (file)
index ad0daac..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// This list may be created by a server logic page PHP/ASP/ASPX/JSP in some backend system.\r
-// There flash movies will be displayed as a dropdown in all flash dialogs if the "flash_external_list_url"\r
-// option is defined in TinyMCE init.\r
-\r
-var tinyMCEFlashList = new Array(\r
-       // Name, URL\r
-       ["Some Flash 1", "test1.swf"],\r
-       ["Some Flash 2", "test2.swf"]\r
-);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_full.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_full.css
deleted file mode 100644 (file)
index 8d7b128..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-body {\r
-       background-color: #FFFFFF;\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 10px;\r
-       scrollbar-3dlight-color: #F0F0EE;\r
-       scrollbar-arrow-color: #676662;\r
-       scrollbar-base-color: #F0F0EE;\r
-       scrollbar-darkshadow-color: #DDDDDD;\r
-       scrollbar-face-color: #E0E0DD;\r
-       scrollbar-highlight-color: #F0F0EE;\r
-       scrollbar-shadow-color: #F0F0EE;\r
-       scrollbar-track-color: #F5F5F5;\r
-}\r
-\r
-td {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 10px;\r
-}\r
-\r
-pre {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 10px;\r
-}\r
-\r
-.example1 {\r
-       font-weight: bold;\r
-       font-size: 14px\r
-}\r
-\r
-.example2 {\r
-       font-weight: bold;\r
-       font-size: 12px;\r
-       color: #FF0000\r
-}\r
-\r
-.tablerow1 {\r
-       background-color: #BBBBBB;\r
-}\r
-\r
-thead {\r
-       background-color: #FFBBBB;\r
-}\r
-\r
-tfoot {\r
-       background-color: #BBBBFF;\r
-}\r
-\r
-th {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 13px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_full.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_full.htm
deleted file mode 100644 (file)
index fdaba10..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-<title>Full featured example</title>\r
-<!-- TinyMCE -->\r
-<script language="javascript" type="text/javascript" src="../jscripts/tiny_mce/tiny_mce_dev.js"></script>\r
-<script language="javascript" type="text/javascript">\r
-       tinyMCE.init({\r
-               mode : "textareas",\r
-               theme : "advanced",\r
-               plugins : "devkit,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",\r
-               theme_advanced_buttons1_add_before : "save,newdocument,separator",\r
-               theme_advanced_buttons1_add : "fontselect,fontsizeselect",\r
-               theme_advanced_buttons2_add : "separator,insertdate,inserttime,preview,separator,forecolor,backcolor",\r
-               theme_advanced_buttons2_add_before: "cut,copy,paste,pastetext,pasteword,separator,search,replace,separator",\r
-               theme_advanced_buttons3_add_before : "tablecontrols,separator",\r
-               theme_advanced_buttons3_add : "emotions,iespell,media,advhr,separator,print,separator,ltr,rtl,separator,fullscreen",\r
-               theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,|,code",\r
-               theme_advanced_toolbar_location : "top",\r
-               theme_advanced_toolbar_align : "left",\r
-               theme_advanced_path_location : "bottom",\r
-               content_css : "example_full.css",\r
-           plugin_insertdate_dateFormat : "%Y-%m-%d",\r
-           plugin_insertdate_timeFormat : "%H:%M:%S",\r
-               extended_valid_elements : "hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]",\r
-               external_link_list_url : "example_link_list.js",\r
-               external_image_list_url : "example_image_list.js",\r
-               flash_external_list_url : "example_flash_list.js",\r
-               media_external_list_url : "example_media_list.js",\r
-               template_external_list_url : "example_template_list.js",\r
-               file_browser_callback : "fileBrowserCallBack",\r
-               theme_advanced_resize_horizontal : false,\r
-               theme_advanced_resizing : true,\r
-               nonbreaking_force_tab : true,\r
-               apply_source_formatting : true,\r
-               template_replace_values : {\r
-                       username : "Jack Black",\r
-                       staffid : "991234"\r
-               },\r
-               relat2ive_urls : false,\r
-               rem2ove_script_host : false\r
-       });\r
-\r
-       function fileBrowserCallBack(field_name, url, type, win) {\r
-               // This is where you insert your custom filebrowser logic\r
-               alert("Example of filebrowser callback: field_name: " + field_name + ", url: " + url + ", type: " + type);\r
-\r
-               // Insert new URL, this would normaly be done in a popup\r
-               win.document.forms[0].elements[field_name].value = "someurl.htm";\r
-       }\r
-</script>\r
-<!-- /TinyMCE -->\r
-</head>\r
-<body>\r
-\r
-[Full featured example] <a href="example_advanced.htm">[Advanced example]</a> <a href="example_simple.htm">[Simple example]</a>  <a href="example_word.htm">[Word example]</a>\r
-<form method="post" action="http://tinymce.moxiecode.com/dump.php?example=true">\r
-       <h3>Full featured example</h3>\r
-       This page shows all available plugins that are included in the TinyMCE distribution. Some of these plugins will only be visible on MSIE due to the lack of some support in FF. For more details on the various options on TinyMCE check the <a href="../docs/index.html">manual</a> or for more third party plugins check the plugin section.<br /><br />\r
-       <textarea id="elm1" name="elm1" rows="15" cols="80" style="width: 100%">\r
-               &lt;span class=&quot;example1&quot;&gt;Test header 1&lt;/span&gt;&lt;br /&gt;\r
-               &lt;span class=&quot;example2&quot;&gt;Test header 2&lt;/span&gt;&lt;br /&gt;\r
-               &lt;span class=&quot;example3&quot;&gt;Test header 3&lt;/span&gt;&lt;br /&gt;\r
-               Some &lt;b&gt;element&lt;/b&gt;, this is to be editor 1. &lt;br /&gt; This editor instance has a 100% width to it.\r
-               &lt;p&gt;Some paragraph. &lt;a href=&quot;http://www.sourceforge.net&quot;&gt;Some link&lt;/a&gt;&lt;/p&gt;\r
-               &lt;img src=&quot;logo.jpg&quot;&gt;\r
-       </textarea>\r
-       <br />\r
-       <input type="submit" name="save" value="Submit" />\r
-       <input type="reset" name="reset" value="Reset" />\r
-</form>\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_image_list.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_image_list.js
deleted file mode 100644 (file)
index 6d04fbc..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// This list may be created by a server logic page PHP/ASP/ASPX/JSP in some backend system.\r
-// There images will be displayed as a dropdown in all image dialogs if the "external_link_image_url"\r
-// option is defined in TinyMCE init.\r
-\r
-var tinyMCEImageList = new Array(\r
-       // Name, URL\r
-       ["Logo 1", "logo.jpg"],\r
-       ["Logo 2 Over", "logo_over.jpg"]\r
-);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_link_list.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_link_list.js
deleted file mode 100644 (file)
index 0d46433..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-// This list may be created by a server logic page PHP/ASP/ASPX/JSP in some backend system.\r
-// There links will be displayed as a dropdown in all link dialogs if the "external_link_list_url"\r
-// option is defined in TinyMCE init.\r
-\r
-var tinyMCELinkList = new Array(\r
-       // Name, URL\r
-       ["Moxiecode", "http://www.moxiecode.com"],\r
-       ["Freshmeat", "http://www.freshmeat.com"],\r
-       ["Sourceforge", "http://www.sourceforge.com"]\r
-);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_media_list.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_media_list.js
deleted file mode 100644 (file)
index e06b292..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// This list may be created by a server logic page PHP/ASP/ASPX/JSP in some backend system.\r
-// There flash movies will be displayed as a dropdown in all media dialog if the "media_external_list_url"\r
-// option is defined in TinyMCE init.\r
-\r
-var tinyMCEMediaList = new Array(\r
-       // Name, URL\r
-       ["Some Flash 1", "test1.swf"],\r
-       ["Some Flash 2", "test2.swf"]\r
-);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_simple.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_simple.htm
deleted file mode 100644 (file)
index 82652bf..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-<meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8" />\r
-<title>Simple example</title>\r
-<!-- tinyMCE -->\r
-<script language="javascript" type="text/javascript" src="../jscripts/tiny_mce/tiny_mce.js"></script>\r
-<script language="javascript" type="text/javascript">\r
-       // Notice: The simple theme does not use all options some of them are limited to the advanced theme\r
-       tinyMCE.init({\r
-               mode : "textareas",\r
-               theme : "simple"\r
-       });\r
-</script>\r
-<!-- /tinyMCE -->\r
-\r
-</head>\r
-<body>\r
-\r
-<a href="example_full.htm">[Full featured example]</a> <a href="example_advanced.htm">[Advanced example]</a> [Simple example] <a href="example_word.htm">[Word example]</a>\r
-\r
-<form method="post" action="http://tinymce.moxiecode.com/dump.php?example=true">\r
-<h3>Simple example</h3>\r
-This page shows how to use TinyMCE on a HTML page in the most common and simple way. On this page each TEXTAREA\r
-element gets converted to a editor instance on page load. Notice how TinyMCE tries to match the width and height of the old text area elements. Read more about the features and settings of TinyMCE in the <a href="../docs/index.html">manual</a>.<br /><br />\r
-\r
-<textarea id="elm1" name="elm1" rows="10" cols="40">\r
-       Some &lt;b&gt;element&lt;/b&gt;, this is to be editor 1.\r
-       &lt;p&gt;Some paragraph. &lt;a href=&quot;http://www.sourceforge.net&quot;&gt;Some link&lt;/a&gt;&lt;/p&gt;\r
-       &lt;img src=&quot;logo.jpg&quot;&gt;\r
-</textarea>\r
-\r
-<br />\r
-\r
-<textarea id="elm2" name="elm2" rows="15" cols="32">\r
-       Some &lt;b&gt;element&lt;/b&gt;, this is to be editor 2.\r
-       &lt;p&gt;Some paragraph. &lt;a href=&quot;http://www.sourceforge.net&quot;&gt;Some link&lt;/a&gt;&lt;/p&gt;\r
-       &lt;img src=&quot;logo.jpg&quot;&gt;\r
-</textarea>\r
-<br />\r
-       <input type="submit" name="save" value="Submit" />\r
-       <input type="reset" name="reset" value="Reset" />\r
-</form>\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_template.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_template.htm
deleted file mode 100644 (file)
index aa4ac5c..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-<title>Template plugin example</title>\r
-<!-- TinyMCE -->\r
-<script language="javascript" type="text/javascript" src="../jscripts/tiny_mce/tiny_mce_dev.js"></script>\r
-<script language="javascript" type="text/javascript">\r
-       function exampleTemplateFunction(elm) {\r
-               elm.innerHTML = prompt("Please enter your favourite colour.", "Color");\r
-       }\r
-\r
-       var Invoice = {\r
-               calculate : function(table) {\r
-                       var _n = function(s) {\r
-                               var n = parseFloat(s.replace(/[^-\d\.]/g,''));\r
-                               return isNaN(n) ? 0 : n;\r
-                       }\r
-\r
-                       var total = 0;\r
-                       var r = table.tBodies[0].rows;\r
-\r
-                       for(var x = 0; x < r.length; x++) {\r
-                               var c = r[x].cells;\r
-                               var t = _n(c[1].innerHTML)*_n(c[2].innerHTML);\r
-                               total += t;\r
-                               c[3].innerHTML = '$' + t; \r
-                       }\r
-\r
-                       table.tFoot.rows[0].cells[1].innerHTML = '$' + total;\r
-               }\r
-       }\r
-\r
-       var WordCount = {\r
-               getText : function() {\r
-                       var inst = tinyMCE.selectedInstance;\r
-                       var na = [];\r
-                       tinyMCE.getNodeTree(inst.getBody(), na, 3);\r
-                       for(var x = 0; x < na.length; x++) {\r
-                               if(na[x].nodeValue && na[x].nodeValue.length > 3) {\r
-                                       na[x] = na[x].nodeValue;\r
-                               } else {\r
-                                       na[x] = '';\r
-                               }\r
-                       }\r
-                       return na.join('');\r
-               },\r
-\r
-               count : function(elm) {\r
-                       var s = WordCount.getText();\r
-                       elm.innerHTML = '' + s.split(' ').length;\r
-               },\r
-\r
-               charCount : function(elm) {\r
-                       var s = WordCount.getText();\r
-                       elm.innerHTML = '' + s.length;\r
-               }\r
-       }\r
-\r
-       tinyMCE.init({\r
-               mode : "textareas",\r
-               theme : "advanced",\r
-               plugins : "devkit,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",\r
-               theme_advanced_buttons1_add_before : "save,newdocument,separator",\r
-               theme_advanced_buttons1_add : "fontselect,fontsizeselect",\r
-               theme_advanced_buttons2_add : "separator,insertdate,inserttime,preview,separator,forecolor,backcolor,advsearchreplace",\r
-               theme_advanced_buttons2_add_before: "cut,copy,paste,pastetext,pasteword,separator,search,replace,separator",\r
-               theme_advanced_buttons3_add_before : "tablecontrols,separator",\r
-               theme_advanced_buttons3_add : "emotions,iespell,media,advhr,separator,print,separator,ltr,rtl,separator,fullscreen",\r
-               theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,|,visualchars,nonbreaking,|,template,|,code",\r
-               theme_advanced_toolbar_location : "top",\r
-               theme_advanced_toolbar_align : "left",\r
-               theme_advanced_path_location : "bottom",\r
-               content_css : "example_full.css",\r
-           plugin_insertdate_dateFormat : "%Y-%m-%d",\r
-           plugin_insertdate_timeFormat : "%H:%M:%S",\r
-               extended_valid_elements : "hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style|title|tsrc],*[mcetmpldtesrc]",\r
-               external_link_list_url : "example_link_list.js",\r
-               external_image_list_url : "example_image_list.js",\r
-               flash_external_list_url : "example_flash_list.js",\r
-               media_external_list_url : "example_media_list.js",\r
-               file_browser_callback : "fileBrowserCallBack",\r
-               theme_advanced_resize_horizontal : false,\r
-               theme_advanced_resizing : true,\r
-               nonbreaking_force_tab : true,\r
-               apply_source_formatting : true,\r
-               template_cdate_classes : "cdate creationdate",\r
-               template_mdate_classes : "mdate somedate",\r
-               template_selected_content_classes : "selcontent",\r
-               template_cdate_format : "%m/%d/%Y : %H:%M:%S",\r
-               template_mdate_format : "%m/%d/%Y : %H:%M:%S",\r
-               template_replace_values : {\r
-                       username : "Andrew Tetlaw",\r
-                       "invoice-items" : Invoice.calculate,\r
-                       "word-count" : WordCount.count,\r
-                       "char-count" : WordCount.charCount\r
-               },\r
-               template_templates : [\r
-                       {\r
-                               title : 'Editing Details',\r
-                               src : 'templates/editing_details.htm',\r
-                               description : "Timestamps, editor's name and a comment area"\r
-                       },\r
-                       {\r
-                               title : 'Invoice Template',\r
-                               src : 'templates/invoice.htm',\r
-                               description : 'Fill in the rows and the totals are calculated automatically'\r
-                       },\r
-                       {\r
-                               title : 'Word Count',\r
-                               src : 'templates/count.htm',\r
-                               description : 'Word count for editor content'\r
-                       },\r
-                       {\r
-                               title : 'Editors Comment',\r
-                               src : 'templates/editors_comment.htm',\r
-                               description : 'Add a comment about the selected text'\r
-                       }\r
-               ]\r
-       });\r
-       \r
-\r
-</script>\r
-<!-- /TinyMCE -->\r
-</head>\r
-<body>\r
-\r
-<a href="example_full.htm">[Full featured example]</a> <a href="example_advanced.htm">[Advanced example]</a> <a href="example_simple.htm">[Simple example]</a>  <a href="example_word.htm">[Word example]</a>\r
-<form method="get" action="">\r
-       <h3>Template example</h3>\r
-       This example shows how to make more advanced templates that execute logic.<br /><br />\r
-       <textarea id="elm1" name="elm1" rows="15" cols="80" style="width: 100%">\r
-               &lt;span class=&quot;example1&quot;&gt;Test header 1&lt;/span&gt;&lt;br /&gt;\r
-               &lt;span class=&quot;example2&quot;&gt;Test header 2&lt;/span&gt;&lt;br /&gt;\r
-               &lt;span class=&quot;example3&quot;&gt;Test header 3&lt;/span&gt;&lt;br /&gt;\r
-               Some &lt;b&gt;element&lt;/b&gt;, this is to be editor 1. &lt;br /&gt; This editor instance has a 100% width to it.\r
-               &lt;p&gt;Some paragraph. &lt;a href=&quot;http://www.sourceforge.net&quot;&gt;Some link&lt;/a&gt;&lt;/p&gt;\r
-               &lt;img src=&quot;logo.jpg&quot;&gt;\r
-       </textarea>\r
-       <br />\r
-       <input type="submit" name="save" value="Submit" />\r
-       <input type="reset" name="reset" value="Reset" />\r
-</form>\r
-\r
-</body>\r
-</html>\r
-\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_template_list.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_template_list.js
deleted file mode 100644 (file)
index e06d357..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// This list may be created by a server logic page PHP/ASP/ASPX/JSP in some backend system.\r
-// There templates will be displayed as a dropdown in all media dialog if the "template_external_list_url"\r
-// option is defined in TinyMCE init.\r
-\r
-var tinyMCETemplateList = [\r
-       // Name, URL, Description\r
-       ["Simple snippet", "templates/snippet1.htm", "Simple HTML snippet."],\r
-       ["Layout", "templates/layout1.htm", "HTML Layout."]\r
-];
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_word.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_word.css
deleted file mode 100644 (file)
index aafc71f..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-body {\r
-       background-color: #FFFFFF;\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 10px;\r
-       scrollbar-3dlight-color: #F0F0EE;\r
-       scrollbar-arrow-color: #676662;\r
-       scrollbar-base-color: #F0F0EE;\r
-       scrollbar-darkshadow-color: #DDDDDD;\r
-       scrollbar-face-color: #E0E0DD;\r
-       scrollbar-highlight-color: #F0F0EE;\r
-       scrollbar-shadow-color: #F0F0EE;\r
-       scrollbar-track-color: #F5F5F5;\r
-}\r
-\r
-td {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 10px;\r
-}\r
-\r
-pre {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 10px;\r
-}\r
-\r
-.example1 {\r
-       font-weight: bold;\r
-       font-size: 14px\r
-}\r
-\r
-.example2 {\r
-       font-weight: bold;\r
-       font-size: 12px;\r
-       color: #FF0000\r
-}\r
-\r
-.tablerow1 {\r
-       background-color: #BBBBBB;\r
-}\r
-\r
-/* Fix for MS Office style paragraphs (MsoNormal) */\r
-p {\r
-       margin: 0;\r
-       padding: 0;\r
-}\r
-\r
-/* Fix for MS Office unindeted lists */\r
-.unIndentedList {\r
-       margin: 0;\r
-       padding: 0;\r
-       list-style-position: inside;\r
-}\r
-\r
-.unIndentedList li {\r
-       padding: 0;\r
-}\r
-\r
-/* Fix for MS Office UL lists */\r
-ul {\r
-       margin-top: 0;\r
-       margin-bottom: 0;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_word.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/example_word.htm
deleted file mode 100644 (file)
index 08653d2..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-<title>Word example</title>\r
-<!-- TinyMCE -->\r
-<script language="javascript" type="text/javascript" src="../jscripts/tiny_mce/tiny_mce.js"></script>\r
-<script language="javascript" type="text/javascript">\r
-       tinyMCE.init({\r
-               mode : "textareas",\r
-               theme : "advanced",\r
-               plugins : "table,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,zoom,media,searchreplace,print,contextmenu,paste,directionality,fullscreen",\r
-               theme_advanced_buttons1_add_before : "save,newdocument,separator",\r
-               theme_advanced_buttons1_add : "fontselect,fontsizeselect",\r
-               theme_advanced_buttons2_add : "separator,insertdate,inserttime,preview,zoom,separator,forecolor,backcolor",\r
-               theme_advanced_buttons2_add_before: "cut,copy,paste,pastetext,pasteword,separator,search,replace,separator",\r
-               theme_advanced_buttons3_add_before : "tablecontrols,separator",\r
-               theme_advanced_buttons3_add : "emotions,iespell,media,advhr,separator,print,separator,ltr,rtl,separator,fullscreen",\r
-               theme_advanced_toolbar_location : "top",\r
-               theme_advanced_toolbar_align : "left",\r
-               theme_advanced_statusbar_location : "bottom",\r
-               content_css : "example_word.css",\r
-           plugi2n_insertdate_dateFormat : "%Y-%m-%d",\r
-           plugi2n_insertdate_timeFormat : "%H:%M:%S",\r
-               external_link_list_url : "example_link_list.js",\r
-               external_image_list_url : "example_image_list.js",\r
-               media_external_list_url : "example_media_list.js",\r
-               file_browser_callback : "fileBrowserCallBack",\r
-               paste_use_dialog : false,\r
-               theme_advanced_resizing : true,\r
-               theme_advanced_resize_horizontal : false,\r
-               theme_advanced_link_targets : "_something=My somthing;_something2=My somthing2;_something3=My somthing3;",\r
-               paste_auto_cleanup_on_paste : true,\r
-               paste_convert_headers_to_strong : false,\r
-               paste_strip_class_attributes : "all",\r
-               paste_remove_spans : false,\r
-               paste_remove_styles : false             \r
-       });\r
-\r
-       function fileBrowserCallBack(field_name, url, type, win) {\r
-               // This is where you insert your custom filebrowser logic\r
-               alert("Filebrowser callback: field_name: " + field_name + ", url: " + url + ", type: " + type);\r
-\r
-               // Insert new URL, this would normaly be done in a popup\r
-               win.document.forms[0].elements[field_name].value = "someurl.htm";\r
-       }\r
-</script>\r
-<!-- /TinyMCE -->\r
-</head>\r
-<body>\r
-\r
-<a href="example_full.htm">[Full featured example]</a> <a href="example_advanced.htm">[Advanced example]</a> <a href="example_simple.htm">[Simple example]</a> [Word example]\r
-\r
-<form method="post" action="http://tinymce.moxiecode.com/dump.php?example=true">\r
-       <h3>Word example</h3>\r
-       This example shows you how TinyMCE can be configurated to function with Word content in the best possible way. TinyMCE is configured to auto convert/cleanup pasted Word content in this example. It's has also a custom CSS that makes paragraphs marginless as in Word.<br /><br />\r
-       <textarea id="elm1" name="elm1" rows="15" cols="80" style="width: 100%">\r
-               &lt;p&gt;Some paragraph&lt;/p&gt;\r
-               &lt;p&gt;Some other paragraph&lt;/p&gt;\r
-               &lt;p&gt;Some &lt;b&gt;element&lt;/b&gt;, this is to be editor 1. &lt;br /&gt; This editor instance has a 100% width to it.\r
-               &lt;p&gt;Some paragraph. &lt;a href=&quot;http://www.sourceforge.net&quot;&gt;Some link&lt;/a&gt;&lt;/p&gt;\r
-               &lt;img src=&quot;logo.jpg&quot;&gt;</p>\r
-       </textarea>\r
-       <br />\r
-       <input type="submit" name="save" value="Submit" />\r
-       <input type="reset" name="reset" value="Reset" />\r
-</form>\r
-\r
-</body>\r
-</html>
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/logo.jpg b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/logo.jpg
deleted file mode 100644 (file)
index ad535d6..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/logo.jpg and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/logo_over.jpg b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/logo_over.jpg
deleted file mode 100644 (file)
index 79fcd88..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/logo_over.jpg and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/count.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/count.htm
deleted file mode 100644 (file)
index b15c6e8..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<!-- Template contents HTML outside the DIV will not be inserted -->\r
-\r
-<div class="mceTmpl">\r
-       <p><em>Word Count: <span class="word-count">0</span>, Character count: <span class="char-count">0</span></em></p>\r
-</div>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/editing_details.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/editing_details.htm
deleted file mode 100644 (file)
index 5b5f314..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-<!-- Template contents HTML outside the DIV will not be inserted -->\r
-\r
-<div class="mceTmpl">\r
-       <table>\r
-               <thead>\r
-                       <tr><th>Created</th><th>Modified</th><th>By</th>\r
-               </thead>\r
-\r
-               <tbody>\r
-                       <tr><td class="cdate">Creation Date</td><td class="mdate">Last Modified</td><td class="username">UserName</td></tr>\r
-                       <tr><td class="comment" colspan="3">Please insert editors comment here</td></tr>\r
-               </tbody>\r
-       </table>\r
-</div>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/editors_comment.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/editors_comment.htm
deleted file mode 100644 (file)
index 77d455d..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<!-- Template contents HTML outside the DIV will not be inserted -->\r
-\r
-<div class="mceTmpl">\r
-       <p class="selcontent" style="background-color: yellow">Selected Content</p>\r
-       <p style="padding: 3px;color:#666;border:1px solid #CCC;">\r
-               <strong>Editors Comment</strong> (<span class="cdate"></span>)<br />\r
-               [Insert your comment here]\r
-       </p>\r
-</div>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/invoice.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/invoice.htm
deleted file mode 100644 (file)
index 333f4db..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-<!-- Template contents HTML outside the DIV will not be inserted -->\r
-\r
-<div class="mceTmpl">\r
-       <h1>Invoice # [invoice number] </h1>\r
-       <p>\r
-               [Client details]\r
-       </p>\r
-\r
-       <h2>Invoice Items</h2>\r
-\r
-       <table class="invoice-items">\r
-               <thead>\r
-                       <tr><th class="col1">Item</th><th class="col2">Qty</th><th class="col3">Unit Cost</th><th class="col4">Total</th></tr>\r
-               </thead>\r
-\r
-               <tbody>\r
-                       <tr><td>Item Description</td><td>1</td><td>$0.00</td><td>$0.00</td></tr>\r
-                       <tr><td>Item Description</td><td>1</td><td>$0.00</td><td>$0.00</td></tr>\r
-                       <tr><td>Item Description</td><td>1</td><td>$0.00</td><td>$0.00</td></tr>\r
-               </tbody>\r
-\r
-               <tfoot>\r
-                       <tr><td colspan="3">Invoice Total</td><td id="invoice-total"></td></tr>\r
-               </tfoot>\r
-       </table>\r
-</div>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/layout1.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/layout1.htm
deleted file mode 100644 (file)
index a38df3e..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<table border="1">\r
-       <thead>\r
-               <tr>\r
-                       <td>Column 1</td>\r
-                       <td>Column 2</td>\r
-               </tr>\r
-       </thead>\r
-\r
-       <tbody>\r
-               <tr>\r
-                       <td>Username: {$username}</td>\r
-                       <td>Staffid: {$staffid}</td>\r
-               </tr>\r
-       </tbody>\r
-</table>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/snippet1.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/examples/templates/snippet1.htm
deleted file mode 100644 (file)
index b2520be..0000000
+++ /dev/null
@@ -1 +0,0 @@
-This is just some <strong>code</strong>.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/blank.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/blank.htm
deleted file mode 100644 (file)
index 5a4a5a5..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>blank_page</title>\r
-       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />\r
-</head>\r
-<body class="mceContentBody">\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/langs/en.js
deleted file mode 100644 (file)
index c093eaf..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-bold_desc : 'Bold (Ctrl+B)',\r
-italic_desc : 'Italic (Ctrl+I)',\r
-underline_desc : 'Underline (Ctrl+U)',\r
-striketrough_desc : 'Strikethrough',\r
-justifyleft_desc : 'Align left',\r
-justifycenter_desc : 'Align center',\r
-justifyright_desc : 'Align right',\r
-justifyfull_desc : 'Align full',\r
-bullist_desc : 'Unordered list',\r
-numlist_desc : 'Ordered list',\r
-outdent_desc : 'Outdent',\r
-indent_desc : 'Indent',\r
-undo_desc : 'Undo (Ctrl+Z)',\r
-redo_desc : 'Redo (Ctrl+Y)',\r
-link_desc : 'Insert/edit link',\r
-unlink_desc : 'Unlink',\r
-image_desc : 'Insert/edit image',\r
-cleanup_desc : 'Cleanup messy code',\r
-focus_alert : 'A editor instance must be focused before using this command.',\r
-edit_confirm : 'Do you want to use the WYSIWYG mode for this textarea?',\r
-insert_link_title : 'Insert/edit link',\r
-insert : 'Insert',\r
-update : 'Update',\r
-cancel : 'Cancel',\r
-insert_link_url : 'Link URL',\r
-insert_link_target : 'Target',\r
-insert_link_target_same : 'Open link in the same window',\r
-insert_link_target_blank : 'Open link in a new window',\r
-insert_image_title : 'Insert/edit image',\r
-insert_image_src : 'Image URL',\r
-insert_image_alt : 'Image description',\r
-help_desc : 'Help',\r
-bold_img : "bold.gif",\r
-italic_img : "italic.gif",\r
-underline_img : "underline.gif",\r
-clipboard_msg : 'Copy/Cut/Paste is not available in Mozilla and Firefox.\nDo you want more information about this issue?',\r
-popup_blocked : 'Sorry, but we have noticed that your popup-blocker has disabled a window that provides application functionality. You will need to disable popup blocking on this site in order to fully utilize this tool.'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/langs/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/langs/readme.txt
deleted file mode 100644 (file)
index 9c3a9d9..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-Beginning with version 2.0.5 the language packs are no\r
-longer included with the core distribution.\r
-Language packs can be downloaded from the TinyMCE website:\r
-http://tinymce.moxiecode.com/download.php\r
-\r
-The language pack codes are based on ISO-639-1:\r
-http://www.loc.gov/standards/iso639-2/englangn.html\r
-\r
-Plrease try using entities if possible. Like &aring; etc for non a-z characters.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/license.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/license.txt
deleted file mode 100644 (file)
index 60d6d4c..0000000
+++ /dev/null
@@ -1,504 +0,0 @@
-                 GNU LESSER GENERAL PUBLIC LICENSE\r
-                      Version 2.1, February 1999\r
-\r
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.\r
- 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA\r
- Everyone is permitted to copy and distribute verbatim copies\r
- of this license document, but changing it is not allowed.\r
-\r
-[This is the first released version of the Lesser GPL.  It also counts\r
- as the successor of the GNU Library Public License, version 2, hence\r
- the version number 2.1.]\r
-\r
-                           Preamble\r
-\r
-  The licenses for most software are designed to take away your\r
-freedom to share and change it.  By contrast, the GNU General Public\r
-Licenses are intended to guarantee your freedom to share and change\r
-free software--to make sure the software is free for all its users.\r
-\r
-  This license, the Lesser General Public License, applies to some\r
-specially designated software packages--typically libraries--of the\r
-Free Software Foundation and other authors who decide to use it.  You\r
-can use it too, but we suggest you first think carefully about whether\r
-this license or the ordinary General Public License is the better\r
-strategy to use in any particular case, based on the explanations below.\r
-\r
-  When we speak of free software, we are referring to freedom of use,\r
-not price.  Our General Public Licenses are designed to make sure that\r
-you have the freedom to distribute copies of free software (and charge\r
-for this service if you wish); that you receive source code or can get\r
-it if you want it; that you can change the software and use pieces of\r
-it in new free programs; and that you are informed that you can do\r
-these things.\r
-\r
-  To protect your rights, we need to make restrictions that forbid\r
-distributors to deny you these rights or to ask you to surrender these\r
-rights.  These restrictions translate to certain responsibilities for\r
-you if you distribute copies of the library or if you modify it.\r
-\r
-  For example, if you distribute copies of the library, whether gratis\r
-or for a fee, you must give the recipients all the rights that we gave\r
-you.  You must make sure that they, too, receive or can get the source\r
-code.  If you link other code with the library, you must provide\r
-complete object files to the recipients, so that they can relink them\r
-with the library after making changes to the library and recompiling\r
-it.  And you must show them these terms so they know their rights.\r
-\r
-  We protect your rights with a two-step method: (1) we copyright the\r
-library, and (2) we offer you this license, which gives you legal\r
-permission to copy, distribute and/or modify the library.\r
-\r
-  To protect each distributor, we want to make it very clear that\r
-there is no warranty for the free library.  Also, if the library is\r
-modified by someone else and passed on, the recipients should know\r
-that what they have is not the original version, so that the original\r
-author's reputation will not be affected by problems that might be\r
-introduced by others.\r
-\r
-  Finally, software patents pose a constant threat to the existence of\r
-any free program.  We wish to make sure that a company cannot\r
-effectively restrict the users of a free program by obtaining a\r
-restrictive license from a patent holder.  Therefore, we insist that\r
-any patent license obtained for a version of the library must be\r
-consistent with the full freedom of use specified in this license.\r
-\r
-  Most GNU software, including some libraries, is covered by the\r
-ordinary GNU General Public License.  This license, the GNU Lesser\r
-General Public License, applies to certain designated libraries, and\r
-is quite different from the ordinary General Public License.  We use\r
-this license for certain libraries in order to permit linking those\r
-libraries into non-free programs.\r
-\r
-  When a program is linked with a library, whether statically or using\r
-a shared library, the combination of the two is legally speaking a\r
-combined work, a derivative of the original library.  The ordinary\r
-General Public License therefore permits such linking only if the\r
-entire combination fits its criteria of freedom.  The Lesser General\r
-Public License permits more lax criteria for linking other code with\r
-the library.\r
-\r
-  We call this license the "Lesser" General Public License because it\r
-does Less to protect the user's freedom than the ordinary General\r
-Public License.  It also provides other free software developers Less\r
-of an advantage over competing non-free programs.  These disadvantages\r
-are the reason we use the ordinary General Public License for many\r
-libraries.  However, the Lesser license provides advantages in certain\r
-special circumstances.\r
-\r
-  For example, on rare occasions, there may be a special need to\r
-encourage the widest possible use of a certain library, so that it becomes\r
-a de-facto standard.  To achieve this, non-free programs must be\r
-allowed to use the library.  A more frequent case is that a free\r
-library does the same job as widely used non-free libraries.  In this\r
-case, there is little to gain by limiting the free library to free\r
-software only, so we use the Lesser General Public License.\r
-\r
-  In other cases, permission to use a particular library in non-free\r
-programs enables a greater number of people to use a large body of\r
-free software.  For example, permission to use the GNU C Library in\r
-non-free programs enables many more people to use the whole GNU\r
-operating system, as well as its variant, the GNU/Linux operating\r
-system.\r
-\r
-  Although the Lesser General Public License is Less protective of the\r
-users' freedom, it does ensure that the user of a program that is\r
-linked with the Library has the freedom and the wherewithal to run\r
-that program using a modified version of the Library.\r
-\r
-  The precise terms and conditions for copying, distribution and\r
-modification follow.  Pay close attention to the difference between a\r
-"work based on the library" and a "work that uses the library".  The\r
-former contains code derived from the library, whereas the latter must\r
-be combined with the library in order to run.\r
-\r
-                 GNU LESSER GENERAL PUBLIC LICENSE\r
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\r
-\r
-  0. This License Agreement applies to any software library or other\r
-program which contains a notice placed by the copyright holder or\r
-other authorized party saying it may be distributed under the terms of\r
-this Lesser General Public License (also called "this License").\r
-Each licensee is addressed as "you".\r
-\r
-  A "library" means a collection of software functions and/or data\r
-prepared so as to be conveniently linked with application programs\r
-(which use some of those functions and data) to form executables.\r
-\r
-  The "Library", below, refers to any such software library or work\r
-which has been distributed under these terms.  A "work based on the\r
-Library" means either the Library or any derivative work under\r
-copyright law: that is to say, a work containing the Library or a\r
-portion of it, either verbatim or with modifications and/or translated\r
-straightforwardly into another language.  (Hereinafter, translation is\r
-included without limitation in the term "modification".)\r
-\r
-  "Source code" for a work means the preferred form of the work for\r
-making modifications to it.  For a library, complete source code means\r
-all the source code for all modules it contains, plus any associated\r
-interface definition files, plus the scripts used to control compilation\r
-and installation of the library.\r
-\r
-  Activities other than copying, distribution and modification are not\r
-covered by this License; they are outside its scope.  The act of\r
-running a program using the Library is not restricted, and output from\r
-such a program is covered only if its contents constitute a work based\r
-on the Library (independent of the use of the Library in a tool for\r
-writing it).  Whether that is true depends on what the Library does\r
-and what the program that uses the Library does.\r
-  \r
-  1. You may copy and distribute verbatim copies of the Library's\r
-complete source code as you receive it, in any medium, provided that\r
-you conspicuously and appropriately publish on each copy an\r
-appropriate copyright notice and disclaimer of warranty; keep intact\r
-all the notices that refer to this License and to the absence of any\r
-warranty; and distribute a copy of this License along with the\r
-Library.\r
-\r
-  You may charge a fee for the physical act of transferring a copy,\r
-and you may at your option offer warranty protection in exchange for a\r
-fee.\r
-\r
-  2. You may modify your copy or copies of the Library or any portion\r
-of it, thus forming a work based on the Library, and copy and\r
-distribute such modifications or work under the terms of Section 1\r
-above, provided that you also meet all of these conditions:\r
-\r
-    a) The modified work must itself be a software library.\r
-\r
-    b) You must cause the files modified to carry prominent notices\r
-    stating that you changed the files and the date of any change.\r
-\r
-    c) You must cause the whole of the work to be licensed at no\r
-    charge to all third parties under the terms of this License.\r
-\r
-    d) If a facility in the modified Library refers to a function or a\r
-    table of data to be supplied by an application program that uses\r
-    the facility, other than as an argument passed when the facility\r
-    is invoked, then you must make a good faith effort to ensure that,\r
-    in the event an application does not supply such function or\r
-    table, the facility still operates, and performs whatever part of\r
-    its purpose remains meaningful.\r
-\r
-    (For example, a function in a library to compute square roots has\r
-    a purpose that is entirely well-defined independent of the\r
-    application.  Therefore, Subsection 2d requires that any\r
-    application-supplied function or table used by this function must\r
-    be optional: if the application does not supply it, the square\r
-    root function must still compute square roots.)\r
-\r
-These requirements apply to the modified work as a whole.  If\r
-identifiable sections of that work are not derived from the Library,\r
-and can be reasonably considered independent and separate works in\r
-themselves, then this License, and its terms, do not apply to those\r
-sections when you distribute them as separate works.  But when you\r
-distribute the same sections as part of a whole which is a work based\r
-on the Library, the distribution of the whole must be on the terms of\r
-this License, whose permissions for other licensees extend to the\r
-entire whole, and thus to each and every part regardless of who wrote\r
-it.\r
-\r
-Thus, it is not the intent of this section to claim rights or contest\r
-your rights to work written entirely by you; rather, the intent is to\r
-exercise the right to control the distribution of derivative or\r
-collective works based on the Library.\r
-\r
-In addition, mere aggregation of another work not based on the Library\r
-with the Library (or with a work based on the Library) on a volume of\r
-a storage or distribution medium does not bring the other work under\r
-the scope of this License.\r
-\r
-  3. You may opt to apply the terms of the ordinary GNU General Public\r
-License instead of this License to a given copy of the Library.  To do\r
-this, you must alter all the notices that refer to this License, so\r
-that they refer to the ordinary GNU General Public License, version 2,\r
-instead of to this License.  (If a newer version than version 2 of the\r
-ordinary GNU General Public License has appeared, then you can specify\r
-that version instead if you wish.)  Do not make any other change in\r
-these notices.\r
-\r
-  Once this change is made in a given copy, it is irreversible for\r
-that copy, so the ordinary GNU General Public License applies to all\r
-subsequent copies and derivative works made from that copy.\r
-\r
-  This option is useful when you wish to copy part of the code of\r
-the Library into a program that is not a library.\r
-\r
-  4. You may copy and distribute the Library (or a portion or\r
-derivative of it, under Section 2) in object code or executable form\r
-under the terms of Sections 1 and 2 above provided that you accompany\r
-it with the complete corresponding machine-readable source code, which\r
-must be distributed under the terms of Sections 1 and 2 above on a\r
-medium customarily used for software interchange.\r
-\r
-  If distribution of object code is made by offering access to copy\r
-from a designated place, then offering equivalent access to copy the\r
-source code from the same place satisfies the requirement to\r
-distribute the source code, even though third parties are not\r
-compelled to copy the source along with the object code.\r
-\r
-  5. A program that contains no derivative of any portion of the\r
-Library, but is designed to work with the Library by being compiled or\r
-linked with it, is called a "work that uses the Library".  Such a\r
-work, in isolation, is not a derivative work of the Library, and\r
-therefore falls outside the scope of this License.\r
-\r
-  However, linking a "work that uses the Library" with the Library\r
-creates an executable that is a derivative of the Library (because it\r
-contains portions of the Library), rather than a "work that uses the\r
-library".  The executable is therefore covered by this License.\r
-Section 6 states terms for distribution of such executables.\r
-\r
-  When a "work that uses the Library" uses material from a header file\r
-that is part of the Library, the object code for the work may be a\r
-derivative work of the Library even though the source code is not.\r
-Whether this is true is especially significant if the work can be\r
-linked without the Library, or if the work is itself a library.  The\r
-threshold for this to be true is not precisely defined by law.\r
-\r
-  If such an object file uses only numerical parameters, data\r
-structure layouts and accessors, and small macros and small inline\r
-functions (ten lines or less in length), then the use of the object\r
-file is unrestricted, regardless of whether it is legally a derivative\r
-work.  (Executables containing this object code plus portions of the\r
-Library will still fall under Section 6.)\r
-\r
-  Otherwise, if the work is a derivative of the Library, you may\r
-distribute the object code for the work under the terms of Section 6.\r
-Any executables containing that work also fall under Section 6,\r
-whether or not they are linked directly with the Library itself.\r
-\r
-  6. As an exception to the Sections above, you may also combine or\r
-link a "work that uses the Library" with the Library to produce a\r
-work containing portions of the Library, and distribute that work\r
-under terms of your choice, provided that the terms permit\r
-modification of the work for the customer's own use and reverse\r
-engineering for debugging such modifications.\r
-\r
-  You must give prominent notice with each copy of the work that the\r
-Library is used in it and that the Library and its use are covered by\r
-this License.  You must supply a copy of this License.  If the work\r
-during execution displays copyright notices, you must include the\r
-copyright notice for the Library among them, as well as a reference\r
-directing the user to the copy of this License.  Also, you must do one\r
-of these things:\r
-\r
-    a) Accompany the work with the complete corresponding\r
-    machine-readable source code for the Library including whatever\r
-    changes were used in the work (which must be distributed under\r
-    Sections 1 and 2 above); and, if the work is an executable linked\r
-    with the Library, with the complete machine-readable "work that\r
-    uses the Library", as object code and/or source code, so that the\r
-    user can modify the Library and then relink to produce a modified\r
-    executable containing the modified Library.  (It is understood\r
-    that the user who changes the contents of definitions files in the\r
-    Library will not necessarily be able to recompile the application\r
-    to use the modified definitions.)\r
-\r
-    b) Use a suitable shared library mechanism for linking with the\r
-    Library.  A suitable mechanism is one that (1) uses at run time a\r
-    copy of the library already present on the user's computer system,\r
-    rather than copying library functions into the executable, and (2)\r
-    will operate properly with a modified version of the library, if\r
-    the user installs one, as long as the modified version is\r
-    interface-compatible with the version that the work was made with.\r
-\r
-    c) Accompany the work with a written offer, valid for at\r
-    least three years, to give the same user the materials\r
-    specified in Subsection 6a, above, for a charge no more\r
-    than the cost of performing this distribution.\r
-\r
-    d) If distribution of the work is made by offering access to copy\r
-    from a designated place, offer equivalent access to copy the above\r
-    specified materials from the same place.\r
-\r
-    e) Verify that the user has already received a copy of these\r
-    materials or that you have already sent this user a copy.\r
-\r
-  For an executable, the required form of the "work that uses the\r
-Library" must include any data and utility programs needed for\r
-reproducing the executable from it.  However, as a special exception,\r
-the materials to be distributed need not include anything that is\r
-normally distributed (in either source or binary form) with the major\r
-components (compiler, kernel, and so on) of the operating system on\r
-which the executable runs, unless that component itself accompanies\r
-the executable.\r
-\r
-  It may happen that this requirement contradicts the license\r
-restrictions of other proprietary libraries that do not normally\r
-accompany the operating system.  Such a contradiction means you cannot\r
-use both them and the Library together in an executable that you\r
-distribute.\r
-\r
-  7. You may place library facilities that are a work based on the\r
-Library side-by-side in a single library together with other library\r
-facilities not covered by this License, and distribute such a combined\r
-library, provided that the separate distribution of the work based on\r
-the Library and of the other library facilities is otherwise\r
-permitted, and provided that you do these two things:\r
-\r
-    a) Accompany the combined library with a copy of the same work\r
-    based on the Library, uncombined with any other library\r
-    facilities.  This must be distributed under the terms of the\r
-    Sections above.\r
-\r
-    b) Give prominent notice with the combined library of the fact\r
-    that part of it is a work based on the Library, and explaining\r
-    where to find the accompanying uncombined form of the same work.\r
-\r
-  8. You may not copy, modify, sublicense, link with, or distribute\r
-the Library except as expressly provided under this License.  Any\r
-attempt otherwise to copy, modify, sublicense, link with, or\r
-distribute the Library is void, and will automatically terminate your\r
-rights under this License.  However, parties who have received copies,\r
-or rights, from you under this License will not have their licenses\r
-terminated so long as such parties remain in full compliance.\r
-\r
-  9. You are not required to accept this License, since you have not\r
-signed it.  However, nothing else grants you permission to modify or\r
-distribute the Library or its derivative works.  These actions are\r
-prohibited by law if you do not accept this License.  Therefore, by\r
-modifying or distributing the Library (or any work based on the\r
-Library), you indicate your acceptance of this License to do so, and\r
-all its terms and conditions for copying, distributing or modifying\r
-the Library or works based on it.\r
-\r
-  10. Each time you redistribute the Library (or any work based on the\r
-Library), the recipient automatically receives a license from the\r
-original licensor to copy, distribute, link with or modify the Library\r
-subject to these terms and conditions.  You may not impose any further\r
-restrictions on the recipients' exercise of the rights granted herein.\r
-You are not responsible for enforcing compliance by third parties with\r
-this License.\r
-\r
-  11. If, as a consequence of a court judgment or allegation of patent\r
-infringement or for any other reason (not limited to patent issues),\r
-conditions are imposed on you (whether by court order, agreement or\r
-otherwise) that contradict the conditions of this License, they do not\r
-excuse you from the conditions of this License.  If you cannot\r
-distribute so as to satisfy simultaneously your obligations under this\r
-License and any other pertinent obligations, then as a consequence you\r
-may not distribute the Library at all.  For example, if a patent\r
-license would not permit royalty-free redistribution of the Library by\r
-all those who receive copies directly or indirectly through you, then\r
-the only way you could satisfy both it and this License would be to\r
-refrain entirely from distribution of the Library.\r
-\r
-If any portion of this section is held invalid or unenforceable under any\r
-particular circumstance, the balance of the section is intended to apply,\r
-and the section as a whole is intended to apply in other circumstances.\r
-\r
-It is not the purpose of this section to induce you to infringe any\r
-patents or other property right claims or to contest validity of any\r
-such claims; this section has the sole purpose of protecting the\r
-integrity of the free software distribution system which is\r
-implemented by public license practices.  Many people have made\r
-generous contributions to the wide range of software distributed\r
-through that system in reliance on consistent application of that\r
-system; it is up to the author/donor to decide if he or she is willing\r
-to distribute software through any other system and a licensee cannot\r
-impose that choice.\r
-\r
-This section is intended to make thoroughly clear what is believed to\r
-be a consequence of the rest of this License.\r
-\r
-  12. If the distribution and/or use of the Library is restricted in\r
-certain countries either by patents or by copyrighted interfaces, the\r
-original copyright holder who places the Library under this License may add\r
-an explicit geographical distribution limitation excluding those countries,\r
-so that distribution is permitted only in or among countries not thus\r
-excluded.  In such case, this License incorporates the limitation as if\r
-written in the body of this License.\r
-\r
-  13. The Free Software Foundation may publish revised and/or new\r
-versions of the Lesser General Public License from time to time.\r
-Such new versions will be similar in spirit to the present version,\r
-but may differ in detail to address new problems or concerns.\r
-\r
-Each version is given a distinguishing version number.  If the Library\r
-specifies a version number of this License which applies to it and\r
-"any later version", you have the option of following the terms and\r
-conditions either of that version or of any later version published by\r
-the Free Software Foundation.  If the Library does not specify a\r
-license version number, you may choose any version ever published by\r
-the Free Software Foundation.\r
-\r
-  14. If you wish to incorporate parts of the Library into other free\r
-programs whose distribution conditions are incompatible with these,\r
-write to the author to ask for permission.  For software which is\r
-copyrighted by the Free Software Foundation, write to the Free\r
-Software Foundation; we sometimes make exceptions for this.  Our\r
-decision will be guided by the two goals of preserving the free status\r
-of all derivatives of our free software and of promoting the sharing\r
-and reuse of software generally.\r
-\r
-                           NO WARRANTY\r
-\r
-  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO\r
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.\r
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR\r
-OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY\r
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE\r
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\r
-PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE\r
-LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME\r
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\r
-\r
-  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN\r
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY\r
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU\r
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR\r
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE\r
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING\r
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A\r
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF\r
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH\r
-DAMAGES.\r
-\r
-                    END OF TERMS AND CONDITIONS\r
-\r
-           How to Apply These Terms to Your New Libraries\r
-\r
-  If you develop a new library, and you want it to be of the greatest\r
-possible use to the public, we recommend making it free software that\r
-everyone can redistribute and change.  You can do so by permitting\r
-redistribution under these terms (or, alternatively, under the terms of the\r
-ordinary General Public License).\r
-\r
-  To apply these terms, attach the following notices to the library.  It is\r
-safest to attach them to the start of each source file to most effectively\r
-convey the exclusion of warranty; and each file should have at least the\r
-"copyright" line and a pointer to where the full notice is found.\r
-\r
-    <one line to give the library's name and a brief idea of what it does.>\r
-    Copyright (C) <year>  <name of author>\r
-\r
-    This library is free software; you can redistribute it and/or\r
-    modify it under the terms of the GNU Lesser General Public\r
-    License as published by the Free Software Foundation; either\r
-    version 2.1 of the License, or (at your option) any later version.\r
-\r
-    This library is distributed in the hope that it will be useful,\r
-    but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
-    Lesser General Public License for more details.\r
-\r
-    You should have received a copy of the GNU Lesser General Public\r
-    License along with this library; if not, write to the Free Software\r
-    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA\r
-\r
-Also add information on how to contact you by electronic and paper mail.\r
-\r
-You should also get your employer (if you work as a programmer) or your\r
-school, if any, to sign a "copyright disclaimer" for the library, if\r
-necessary.  Here is a sample; alter the names:\r
-\r
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the\r
-  library `Frob' (a library for tweaking knobs) written by James Random Hacker.\r
-\r
-  <signature of Ty Coon>, 1 April 1990\r
-  Ty Coon, President of Vice\r
-\r
-That's all there is to it!\r
-\r
-\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css
deleted file mode 100644 (file)
index 7ff36bd..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-input.radio {\r
-       border: 1px none #000000;\r
-       background-color: transparent;\r
-       vertical-align: middle;\r
-}\r
-\r
-.panel_wrapper div.current {\r
-       height: 80px;\r
-}\r
-\r
-#width {\r
-       width: 50px;\r
-       vertical-align: middle;\r
-}\r
-\r
-#width2 {\r
-       width: 50px;\r
-       vertical-align: middle;\r
-}\r
-\r
-#size {\r
-       width: 100px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js
deleted file mode 100644 (file)
index ffff3a1..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('advhr');var TinyMCE_AdvancedHRPlugin={getInfo:function(){return{longname:'Advanced HR',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advhr',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){switch(cn){case"advhr":return tinyMCE.getButtonHTML(cn,'lang_insert_advhr_desc','{$pluginurl}/images/advhr.gif','mceAdvancedHr')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceAdvancedHr":var template=new Array();template['file']='../../plugins/advhr/rule.htm';template['width']=250;template['height']=160;template['width']+=tinyMCE.getLang('lang_advhr_delta_width',0);template['height']+=tinyMCE.getLang('lang_advhr_delta_height',0);var size="",width="",noshade="";if(tinyMCE.selectedElement!=null&&tinyMCE.selectedElement.nodeName.toLowerCase()=="hr"){tinyMCE.hrElement=tinyMCE.selectedElement;if(tinyMCE.hrElement){size=tinyMCE.hrElement.getAttribute('size')?tinyMCE.hrElement.getAttribute('size'):"";width=tinyMCE.hrElement.getAttribute('width')?tinyMCE.hrElement.getAttribute('width'):"";noshade=tinyMCE.hrElement.getAttribute('noshade')?tinyMCE.hrElement.getAttribute('noshade'):""}tinyMCE.openWindow(template,{editor_id:editor_id,size:size,width:width,noshade:noshade,mceDo:'update'})}else{if(tinyMCE.isMSIE){tinyMCE.execInstanceCommand(editor_id,'mceInsertContent',false,'<hr />')}else{tinyMCE.openWindow(template,{editor_id:editor_id,inline:"yes",size:size,width:width,noshade:noshade,mceDo:'insert'})}}return true}return false},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){if(node==null)return;do{if(node.nodeName=="HR"){tinyMCE.switchClass(editor_id+'_advhr','mceButtonSelected');return true}}while((node=node.parentNode));tinyMCE.switchClass(editor_id+'_advhr','mceButtonNormal');return true}};tinyMCE.addPlugin("advhr",TinyMCE_AdvancedHRPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js
deleted file mode 100644 (file)
index 1005e05..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('advhr');\r
-\r
-var TinyMCE_AdvancedHRPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Advanced HR',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advhr',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               }\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "advhr":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_insert_advhr_desc', '{$pluginurl}/images/advhr.gif', 'mceAdvancedHr');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       /**\r
-        * Executes the mceAdvanceHr command.\r
-        */\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceAdvancedHr":\r
-                               var template = new Array();\r
-\r
-                               template['file']   = '../../plugins/advhr/rule.htm'; // Relative to theme\r
-                               template['width']  = 250;\r
-                               template['height'] = 160;\r
-\r
-                               template['width']  += tinyMCE.getLang('lang_advhr_delta_width', 0);\r
-                               template['height'] += tinyMCE.getLang('lang_advhr_delta_height', 0);\r
-\r
-                               var size = "", width = "", noshade = "";\r
-                               if (tinyMCE.selectedElement != null && tinyMCE.selectedElement.nodeName.toLowerCase() == "hr") {\r
-                                       tinyMCE.hrElement = tinyMCE.selectedElement;\r
-\r
-                                       if (tinyMCE.hrElement) {\r
-                                               size    = tinyMCE.hrElement.getAttribute('size') ? tinyMCE.hrElement.getAttribute('size') : "";\r
-                                               width   = tinyMCE.hrElement.getAttribute('width') ? tinyMCE.hrElement.getAttribute('width') : "";\r
-                                               noshade = tinyMCE.hrElement.getAttribute('noshade') ? tinyMCE.hrElement.getAttribute('noshade') : "";\r
-                                       }\r
-\r
-                                       tinyMCE.openWindow(template, {editor_id : editor_id, size : size, width : width, noshade : noshade, mceDo : 'update'});\r
-                               } else {\r
-                                       if (tinyMCE.isMSIE) {\r
-                                               tinyMCE.execInstanceCommand(editor_id, 'mceInsertContent', false,'<hr />');\r
-                                       } else {\r
-                                               tinyMCE.openWindow(template, {editor_id : editor_id, inline : "yes", size : size, width : width, noshade : noshade, mceDo : 'insert'});\r
-                                       }\r
-                               }\r
-\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               if (node == null)\r
-                       return;\r
-\r
-               do {\r
-                       if (node.nodeName == "HR") {\r
-                               tinyMCE.switchClass(editor_id + '_advhr', 'mceButtonSelected');\r
-                               return true;\r
-                       }\r
-               } while ((node = node.parentNode));\r
-\r
-               tinyMCE.switchClass(editor_id + '_advhr', 'mceButtonNormal');\r
-\r
-               return true;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("advhr", TinyMCE_AdvancedHRPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/images/advhr.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/images/advhr.gif
deleted file mode 100644 (file)
index e2f8658..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/images/advhr.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/jscripts/rule.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/jscripts/rule.js
deleted file mode 100644 (file)
index ddaacd7..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       var formObj = document.forms[0];\r
-       formObj.width.value  = tinyMCE.getWindowArg('width');\r
-       formObj.size.value   = tinyMCE.getWindowArg('size');\r
-       formObj.insert.value = tinyMCE.getLang('lang_' + tinyMCE.getWindowArg('mceDo'),'Insert',true);\r
-       if (tinyMCE.getWindowArg('noshade')) {\r
-               formObj.noshade.checked = true;\r
-       }\r
-       if (tinyMCE.getWindowArg('width').lastIndexOf('%')!=-1) {\r
-               formObj.width2.value = "%";\r
-               formObj.width.value  = formObj.width.value.substring(0,formObj.width.value.length-1);\r
-       }\r
-}\r
-\r
-function insertHR() {\r
-       var formObj = document.forms[0];\r
-       var width   = formObj.width.value;\r
-       var size    = formObj.size.value;\r
-       var html = '<hr';\r
-       if (size!='' && size!=0) {\r
-               html += ' size="' + size + '"';\r
-       }\r
-       if (width!='' && width!=0) {\r
-               html += ' width="' + width;\r
-               if (formObj.width2.value=='%') {\r
-                       html += '%';\r
-               }\r
-               html += '"';\r
-       }\r
-       if (formObj.noshade.checked==true) {\r
-               html += ' noshade="noshade"';\r
-       }\r
-       html += ' />';\r
-\r
-       tinyMCEPopup.execCommand("mceInsertContent", true, html);\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function cancelAction() {\r
-       tinyMCEPopup.close();\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/langs/en.js
deleted file mode 100644 (file)
index 8194764..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-insert_advhr_desc : 'Horizontale rule',\r
-insert_advhr_width : 'Width',\r
-insert_advhr_size : 'Height',\r
-insert_advhr_noshade : 'No shadow'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/rule.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advhr/rule.htm
deleted file mode 100644 (file)
index 6f6034d..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_insert_advhr_desc}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/rule.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <link href="css/advhr.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');">\r
-<form onsubmit="insertHR();return false;" action="#">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_insert_advhr_desc}</a></span></li>\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-               <div id="general_panel" class="panel current">\r
-                       <table border="0" cellpadding="4" cellspacing="0">\r
-                    <tr>\r
-                        <td><label for="width">{$lang_insert_advhr_width}</label></td>\r
-                        <td nowrap="nowrap">\r
-                            <input id="width" name="width" type="text" value="" />\r
-                            <select name="width2" id="width2">\r
-                                <option value="">px</option>\r
-                                <option value="%">%</option>\r
-                            </select>\r
-                        </td>\r
-                    </tr>\r
-                    <tr>\r
-                        <td><label for="size">{$lang_insert_advhr_size}</label></td>\r
-                        <td><select id="size" name="size">\r
-                            <option value="">Normal</option>\r
-                            <option value="1">1</option>\r
-                            <option value="2">2</option>\r
-                            <option value="3">3</option>\r
-                            <option value="4">4</option>\r
-                            <option value="5">5</option>\r
-                        </select></td>\r
-                    </tr>\r
-                    <tr>\r
-                        <td><label for="noshade">{$lang_insert_advhr_noshade}</label></td>\r
-                        <td><input type="checkbox" name="noshade" id="noshade" class="radio" /></td>\r
-                    </tr>\r
-            </table>\r
-               </div>\r
-       </div>\r
-\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertHR();" />\r
-               </div>\r
-\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css
deleted file mode 100644 (file)
index abf4405..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/* CSS file for advimage plugin popup */\r
-\r
-.mceImageList {\r
-       width: 280px;\r
-}\r
-\r
-.mceActionPanel {\r
-       margin-top: 7px;\r
-}\r
-\r
-.alignPreview {\r
-       border: 1px solid black;\r
-       width: 140px;\r
-       height: 140px;\r
-       overflow: hidden;\r
-       padding: 5px;\r
-}\r
-\r
-.checkbox {\r
-       border: 0;\r
-}\r
-\r
-.panel_wrapper div.current {\r
-       height: 305px;\r
-}\r
-\r
-#prev {\r
-       margin: 0;\r
-       border: 1px\r
-       solid black;\r
-       width: 99%;\r
-       height: 150px;\r
-       overflow: auto;\r
-}\r
-\r
-#align, #classlist {\r
-       width: 150px;\r
-}\r
-\r
-#width, #height {\r
-       vertical-align: middle;\r
-       width: 50px;\r
-       text-align: center;\r
-}\r
-\r
-#vspace, #hspace, #border {\r
-       vertical-align: middle;\r
-       width: 30px;\r
-       text-align: center;\r
-}\r
-\r
-#classlist {\r
-       width: 180px;\r
-}\r
-\r
-input {\r
-       width: 280px;\r
-}\r
-\r
-#constrain, #onmousemovecheck {\r
-       width: auto;\r
-}\r
-\r
-#id, #dir, #lang, #usemap, #longdesc {\r
-       width: 200px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js
deleted file mode 100644 (file)
index 79b1452..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('advimage');var TinyMCE_AdvancedImagePlugin={getInfo:function(){return{longname:'Advanced image',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){switch(cn){case"image":return tinyMCE.getButtonHTML(cn,'lang_image_desc','{$themeurl}/images/image.gif','mceAdvImage')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceAdvImage":var template=new Array();template['file']='../../plugins/advimage/image.htm';template['width']=480;template['height']=380;template['width']+=tinyMCE.getLang('lang_advimage_delta_width',0);template['height']+=tinyMCE.getLang('lang_advimage_delta_height',0);var inst=tinyMCE.getInstanceById(editor_id);var elm=inst.getFocusElement();if(elm!=null&&tinyMCE.getAttrib(elm,'class').indexOf('mceItem')!=-1)return true;tinyMCE.openWindow(template,{editor_id:editor_id,inline:"yes"});return true}return false},cleanup:function(type,content){switch(type){case"insert_to_editor_dom":var imgs=content.getElementsByTagName("img"),src,i;for(i=0;i<imgs.length;i++){var onmouseover=tinyMCE.cleanupEventStr(tinyMCE.getAttrib(imgs[i],'onmouseover'));var onmouseout=tinyMCE.cleanupEventStr(tinyMCE.getAttrib(imgs[i],'onmouseout'));if((src=this._getImageSrc(onmouseover))!=""){if(tinyMCE.getParam('convert_urls'))src=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'],src);imgs[i].setAttribute('onmouseover',"this.src='"+src+"';")}if((src=this._getImageSrc(onmouseout))!=""){if(tinyMCE.getParam('convert_urls'))src=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'],src);imgs[i].setAttribute('onmouseout',"this.src='"+src+"';")}}break;case"get_from_editor_dom":var imgs=content.getElementsByTagName("img");for(var i=0;i<imgs.length;i++){var onmouseover=tinyMCE.cleanupEventStr(tinyMCE.getAttrib(imgs[i],'onmouseover'));var onmouseout=tinyMCE.cleanupEventStr(tinyMCE.getAttrib(imgs[i],'onmouseout'));if((src=this._getImageSrc(onmouseover))!=""){if(tinyMCE.getParam('convert_urls'))src=eval(tinyMCE.settings['urlconverter_callback']+"(src, null, true);");imgs[i].setAttribute('onmouseover',"this.src='"+src+"';")}if((src=this._getImageSrc(onmouseout))!=""){if(tinyMCE.getParam('convert_urls'))src=eval(tinyMCE.settings['urlconverter_callback']+"(src, null, true);");imgs[i].setAttribute('onmouseout',"this.src='"+src+"';")}}break}return content},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){if(node==null)return;do{if(node.nodeName=="IMG"&&tinyMCE.getAttrib(node,'class').indexOf('mceItem')==-1){tinyMCE.switchClass(editor_id+'_advimage','mceButtonSelected');return true}}while((node=node.parentNode));tinyMCE.switchClass(editor_id+'_advimage','mceButtonNormal');return true},_getImageSrc:function(s){var sr,p=-1;if(!s)return"";if((p=s.indexOf('this.src='))!=-1){sr=s.substring(p+10);sr=sr.substring(0,sr.indexOf('\''));return sr}return""}};tinyMCE.addPlugin("advimage",TinyMCE_AdvancedImagePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js
deleted file mode 100644 (file)
index fbfd654..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('advimage');\r
-\r
-var TinyMCE_AdvancedImagePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Advanced image',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "image":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_image_desc', '{$themeurl}/images/image.gif', 'mceAdvImage');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               switch (command) {\r
-                       case "mceAdvImage":\r
-                               var template = new Array();\r
-\r
-                               template['file']   = '../../plugins/advimage/image.htm';\r
-                               template['width']  = 480;\r
-                               template['height'] = 380;\r
-\r
-                               // Language specific width and height addons\r
-                               template['width']  += tinyMCE.getLang('lang_advimage_delta_width', 0);\r
-                               template['height'] += tinyMCE.getLang('lang_advimage_delta_height', 0);\r
-\r
-                               var inst = tinyMCE.getInstanceById(editor_id);\r
-                               var elm = inst.getFocusElement();\r
-\r
-                               if (elm != null && tinyMCE.getAttrib(elm, 'class').indexOf('mceItem') != -1)\r
-                                       return true;\r
-\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id, inline : "yes"});\r
-\r
-                               return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       cleanup : function(type, content) {\r
-               switch (type) {\r
-                       case "insert_to_editor_dom":\r
-                               var imgs = content.getElementsByTagName("img"), src, i;\r
-                               for (i=0; i<imgs.length; i++) {\r
-                                       var onmouseover = tinyMCE.cleanupEventStr(tinyMCE.getAttrib(imgs[i], 'onmouseover'));\r
-                                       var onmouseout = tinyMCE.cleanupEventStr(tinyMCE.getAttrib(imgs[i], 'onmouseout'));\r
-\r
-                                       if ((src = this._getImageSrc(onmouseover)) != "") {\r
-                                               if (tinyMCE.getParam('convert_urls'))\r
-                                                       src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], src);\r
-\r
-                                               imgs[i].setAttribute('onmouseover', "this.src='" + src + "';");\r
-                                       }\r
-\r
-                                       if ((src = this._getImageSrc(onmouseout)) != "") {\r
-                                               if (tinyMCE.getParam('convert_urls'))\r
-                                                       src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], src);\r
-\r
-                                               imgs[i].setAttribute('onmouseout', "this.src='" + src + "';");\r
-                                       }\r
-                               }\r
-                               break;\r
-\r
-                       case "get_from_editor_dom":\r
-                               var imgs = content.getElementsByTagName("img");\r
-                               for (var i=0; i<imgs.length; i++) {\r
-                                       var onmouseover = tinyMCE.cleanupEventStr(tinyMCE.getAttrib(imgs[i], 'onmouseover'));\r
-                                       var onmouseout = tinyMCE.cleanupEventStr(tinyMCE.getAttrib(imgs[i], 'onmouseout'));\r
-\r
-                                       if ((src = this._getImageSrc(onmouseover)) != "") {\r
-                                               if (tinyMCE.getParam('convert_urls'))\r
-                                                       src = eval(tinyMCE.settings['urlconverter_callback'] + "(src, null, true);");\r
-\r
-                                               imgs[i].setAttribute('onmouseover', "this.src='" + src + "';");\r
-                                       }\r
-\r
-                                       if ((src = this._getImageSrc(onmouseout)) != "") {\r
-                                               if (tinyMCE.getParam('convert_urls'))\r
-                                                       src = eval(tinyMCE.settings['urlconverter_callback'] + "(src, null, true);");\r
-\r
-                                               imgs[i].setAttribute('onmouseout', "this.src='" + src + "';");\r
-                                       }\r
-                               }\r
-                               break;\r
-               }\r
-\r
-               return content;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               if (node == null)\r
-                       return;\r
-\r
-               do {\r
-                       if (node.nodeName == "IMG" && tinyMCE.getAttrib(node, 'class').indexOf('mceItem') == -1) {\r
-                               tinyMCE.switchClass(editor_id + '_advimage', 'mceButtonSelected');\r
-                               return true;\r
-                       }\r
-               } while ((node = node.parentNode));\r
-\r
-               tinyMCE.switchClass(editor_id + '_advimage', 'mceButtonNormal');\r
-\r
-               return true;\r
-       },\r
-\r
-       /**\r
-        * Returns the image src from a scripted mouse over image str.\r
-        *\r
-        * @param {string} s String to get real src from.\r
-        * @return Image src from a scripted mouse over image str.\r
-        * @type string\r
-        */\r
-       _getImageSrc : function(s) {\r
-               var sr, p = -1;\r
-\r
-               if (!s)\r
-                       return "";\r
-\r
-               if ((p = s.indexOf('this.src=')) != -1) {\r
-                       sr = s.substring(p + 10);\r
-                       sr = sr.substring(0, sr.indexOf('\''));\r
-\r
-                       return sr;\r
-               }\r
-\r
-               return "";\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("advimage", TinyMCE_AdvancedImagePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm
deleted file mode 100644 (file)
index d07c65f..0000000
+++ /dev/null
@@ -1,241 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_insert_image_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/validate.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/functions.js"></script>\r
-       <link href="css/advimage.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body id="advimage" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-    <form onsubmit="insertAction();return false;" action="#"> \r
-               <div class="tabs">\r
-                       <ul>\r
-                               <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_advimage_tab_general}</a></span></li>\r
-                               <li id="appearance_tab"><span><a href="javascript:mcTabs.displayTab('appearance_tab','appearance_panel');" onmousedown="return false;">{$lang_advimage_tab_appearance}</a></span></li>\r
-                               <li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{$lang_advimage_tab_advanced}</a></span></li>\r
-                       </ul>\r
-               </div>\r
-\r
-               <div class="panel_wrapper">\r
-                       <div id="general_panel" class="panel current">\r
-                               <fieldset>\r
-                                               <legend>{$lang_advimage_general}</legend>\r
-\r
-                                               <table class="properties">\r
-                                                       <tr>\r
-                                                               <td class="column1"><label id="srclabel" for="src">{$lang_insert_image_src}</label></td>\r
-                                                               <td colspan="2"><table border="0" cellspacing="0" cellpadding="0">\r
-                                                                       <tr> \r
-                                                                         <td><input name="src" type="text" id="src" value="" onchange="showPreviewImage(this.value);" /></td> \r
-                                                                         <td id="srcbrowsercontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                                 </table></td>\r
-                                                       </tr>\r
-                                                       <tr id="imagelistsrcrow">\r
-                                                               <td class="column1"><label for="imagelistsrc">{$lang_image_list}</label></td>\r
-                                                               <td colspan="2" id="imagelistsrccontainer">&nbsp;</td>\r
-                                                       </tr>\r
-                                                       <tr> \r
-                                                               <td class="column1"><label id="altlabel" for="alt">{$lang_insert_image_alt}</label></td> \r
-                                                               <td colspan="2"><input id="alt" name="alt" type="text" value="" /></td> \r
-                                                       </tr> \r
-                                                       <tr> \r
-                                                               <td class="column1"><label id="titlelabel" for="title">{$lang_advimage_title}</label></td> \r
-                                                               <td colspan="2"><input id="title" name="title" type="text" value="" /></td> \r
-                                                       </tr>\r
-                                               </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset>\r
-                                       <legend>{$lang_advimage_preview}</legend>\r
-                                       <div id="prev"></div>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="appearance_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_advimage_tab_appearance}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr> \r
-                                                       <td class="column1"><label id="alignlabel" for="align">{$lang_insert_image_align}</label></td> \r
-                                                       <td><select id="align" name="align" onchange="changeAppearance();"> \r
-                                                                       <option value="">{$lang_insert_image_align_default}</option> \r
-                                                                       <option value="baseline">{$lang_insert_image_align_baseline}</option> \r
-                                                                       <option value="top">{$lang_insert_image_align_top}</option> \r
-                                                                       <option value="middle">{$lang_insert_image_align_middle}</option> \r
-                                                                       <option value="bottom">{$lang_insert_image_align_bottom}</option> \r
-                                                                       <option value="texttop">{$lang_insert_image_align_texttop}</option> \r
-                                                                       <option value="absmiddle">{$lang_insert_image_align_absmiddle}</option> \r
-                                                                       <option value="absbottom">{$lang_insert_image_align_absbottom}</option> \r
-                                                                       <option value="left">{$lang_insert_image_align_left}</option> \r
-                                                                       <option value="right">{$lang_insert_image_align_right}</option> \r
-                                                               </select> \r
-                                                       </td>\r
-                                                       <td rowspan="6" valign="top">\r
-                                                               <div class="alignPreview">\r
-                                                                       <img id="alignSampleImg" src="images/sample.gif" alt="{$lang_advimage_example_img}" />\r
-                                                                       Lorem ipsum, Dolor sit amet, consectetuer adipiscing loreum ipsum edipiscing elit, sed diam\r
-                                                                       nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.Loreum ipsum\r
-                                                                       edipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam\r
-                                                                       erat volutpat.\r
-                                                               </div>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="widthlabel" for="width">{$lang_insert_image_dimensions}</label></td>\r
-                                                       <td nowrap="nowrap">\r
-                                                               <input name="width" type="text" id="width" value="" size="5" maxlength="5" class="size" onchange="changeHeight();" /> x \r
-                                                               <input name="height" type="text" id="height" value="" size="5" maxlength="5" class="size" onchange="changeWidth();" /> px\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td>&nbsp;</td>\r
-                                                       <td><table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="constrain" type="checkbox" name="constrain" class="checkbox" /></td>\r
-                                                                               <td><label id="constrainlabel" for="constrain">{$lang_advimage_constrain_proportions}</label></td>\r
-                                                                       </tr>\r
-                                                               </table></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="vspacelabel" for="vspace">{$lang_insert_image_vspace}</label></td> \r
-                                                       <td><input name="vspace" type="text" id="vspace" value="" size="3" maxlength="3" class="number" onchange="changeAppearance();updateStyle();" />\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr> \r
-                                                       <td class="column1"><label id="hspacelabel" for="hspace">{$lang_insert_image_hspace}</label></td> \r
-                                                       <td><input name="hspace" type="text" id="hspace" value="" size="3" maxlength="3" class="number" onchange="changeAppearance();updateStyle();" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="borderlabel" for="border">{$lang_insert_image_border}</label></td> \r
-                                                       <td><input id="border" name="border" type="text" value="" size="3" maxlength="3" class="number" onchange="changeAppearance();updateStyle();" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="classlabel" for="classlist">{$lang_class_name}</label></td>\r
-                                                       <td colspan="2">\r
-                                                                <select id="classlist" name="classlist">\r
-                                                                       <option value="" selected>{$lang_not_set}</option>\r
-                                                                </select>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="stylelabel" for="style">{$lang_advimage_style}</label></td> \r
-                                                       <td colspan="2"><input id="style" name="style" type="text" value="" onchange="styleUpdated();" /></td> \r
-                                               </tr>\r
-\r
-                                               <!-- <tr>\r
-                                                       <td class="column1"><label id="classeslabel" for="classes">{$lang_advimage_classes}</label></td> \r
-                                                       <td colspan="2"><input id="classes" name="classes" type="text" value="" onchange="selectByValue(this.form,'classlist',this.value,true);" /></td> \r
-                                               </tr> -->\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="advanced_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_advimage_swap_image}</legend>\r
-\r
-                                       <input type="checkbox" id="onmousemovecheck" name="onmousemovecheck" class="checkbox" onclick="changeMouseMove();" />\r
-                                       <label id="onmousemovechecklabel" for="onmousemovecheck">{$lang_advimage_alt_image}</label>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0" width="100%">\r
-                                                       <tr>\r
-                                                               <td class="column1"><label id="onmouseoversrclabel" for="onmouseoversrc">{$lang_advimage_mouseover}</label></td> \r
-                                                               <td><table border="0" cellspacing="0" cellpadding="0"> \r
-                                                                       <tr> \r
-                                                                         <td><input id="onmouseoversrc" name="onmouseoversrc" type="text" value="" /></td> \r
-                                                                         <td id="onmouseoversrccontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                                 </table></td>\r
-                                                       </tr>\r
-                                                       <tr id="imagelistoverrow">\r
-                                                               <td class="column1"><label for="imagelistover">{$lang_image_list}</label></td>\r
-                                                               <td id="imagelistovercontainer">&nbsp;</td>\r
-                                                       </tr>\r
-                                                       <tr> \r
-                                                               <td class="column1"><label id="onmouseoutsrclabel" for="onmouseoutsrc">{$lang_advimage_mouseout}</label></td> \r
-                                                               <td class="column2"><table border="0" cellspacing="0" cellpadding="0"> \r
-                                                                       <tr> \r
-                                                                         <td><input id="onmouseoutsrc" name="onmouseoutsrc" type="text" value="" /></td> \r
-                                                                         <td id="onmouseoutsrccontainer">&nbsp;</td>\r
-                                                                       </tr> \r
-                                                                 </table></td> \r
-                                                       </tr>\r
-                                                       <tr id="imagelistoutrow">\r
-                                                               <td class="column1"><label for="imagelistout">{$lang_image_list}</label></td>\r
-                                                               <td id="imagelistoutcontainer">&nbsp;</td>\r
-                                                       </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset>\r
-                                       <legend>{$lang_advimage_misc}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="idlabel" for="id">{$lang_advimage_id}</label></td> \r
-                                                       <td><input id="id" name="id" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="dirlabel" for="dir">{$lang_advimage_langdir}</label></td> \r
-                                                       <td>\r
-                                                               <select id="dir" name="dir" onchange="changeAppearance();"> \r
-                                                                               <option value="">{$lang_not_set}</option> \r
-                                                                               <option value="ltr">{$lang_advimage_ltr}</option> \r
-                                                                               <option value="rtl">{$lang_advimage_rtl}</option> \r
-                                                               </select>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="langlabel" for="lang">{$lang_advimage_langcode}</label></td> \r
-                                                       <td>\r
-                                                               <input id="lang" name="lang" type="text" value="" />\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="usemaplabel" for="usemap">{$lang_advimage_image_map}</label></td> \r
-                                                       <td>\r
-                                                               <input id="usemap" name="usemap" type="text" value="" />\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="longdesclabel" for="longdesc">{$lang_advimage_long_desc}</label></td>\r
-                                                       <td><table border="0" cellspacing="0" cellpadding="0">\r
-                                                                       <tr>\r
-                                                                         <td><input id="longdesc" name="longdesc" type="text" value="" /></td>\r
-                                                                         <td id="longdesccontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table></td> \r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-               </div>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div style="float: left">\r
-                               <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertAction();" />\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="cancelAction();" />\r
-                       </div>\r
-               </div>\r
-    </form>\r
-</body> \r
-</html> \r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/images/sample.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/images/sample.gif
deleted file mode 100644 (file)
index 53bf689..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/images/sample.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/jscripts/functions.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/jscripts/functions.js
deleted file mode 100644 (file)
index fc6b707..0000000
+++ /dev/null
@@ -1,538 +0,0 @@
-/* Functions for the advimage plugin popup */\r
-\r
-var preloadImg = null;\r
-var orgImageWidth, orgImageHeight;\r
-\r
-function preinit() {\r
-       // Initialize\r
-       tinyMCE.setWindowArg('mce_windowresize', false);\r
-\r
-       // Import external list url javascript\r
-       var url = tinyMCE.getParam("external_image_list_url");\r
-       if (url != null) {\r
-               // Fix relative\r
-               if (url.charAt(0) != '/' && url.indexOf('://') == -1)\r
-                       url = tinyMCE.documentBasePath + "/" + url;\r
-\r
-               document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '"></sc'+'ript>');\r
-       }\r
-}\r
-\r
-function convertURL(url, node, on_save) {\r
-       return eval("tinyMCEPopup.windowOpener." + tinyMCE.settings['urlconverter_callback'] + "(url, node, on_save);");\r
-}\r
-\r
-function getImageSrc(str) {\r
-       var pos = -1;\r
-\r
-       if (!str)\r
-               return "";\r
-\r
-       if ((pos = str.indexOf('this.src=')) != -1) {\r
-               var src = str.substring(pos + 10);\r
-\r
-               src = src.substring(0, src.indexOf('\''));\r
-\r
-               if (tinyMCE.getParam('convert_urls'))\r
-                       src = convertURL(src, null, true);\r
-\r
-               return src;\r
-       }\r
-\r
-       return "";\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       var formObj = document.forms[0];\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var elm = inst.getFocusElement();\r
-       var action = "insert";\r
-       var html = "";\r
-\r
-       // Image list src\r
-       html = getImageListHTML('imagelistsrc','src','onSelectMainImage');\r
-       if (html == "")\r
-               document.getElementById("imagelistsrcrow").style.display = 'none';\r
-       else\r
-               document.getElementById("imagelistsrccontainer").innerHTML = html;\r
-\r
-       // Image list oversrc\r
-       html = getImageListHTML('imagelistover','onmouseoversrc');\r
-       if (html == "")\r
-               document.getElementById("imagelistoverrow").style.display = 'none';\r
-       else\r
-               document.getElementById("imagelistovercontainer").innerHTML = html;\r
-\r
-       // Image list outsrc\r
-       html = getImageListHTML('imagelistout','onmouseoutsrc');\r
-       if (html == "")\r
-               document.getElementById("imagelistoutrow").style.display = 'none';\r
-       else\r
-               document.getElementById("imagelistoutcontainer").innerHTML = html;\r
-\r
-       // Src browser\r
-       html = getBrowserHTML('srcbrowser','src','image','advimage');\r
-       document.getElementById("srcbrowsercontainer").innerHTML = html;\r
-\r
-       // Over browser\r
-       html = getBrowserHTML('oversrcbrowser','onmouseoversrc','image','advimage');\r
-       document.getElementById("onmouseoversrccontainer").innerHTML = html;\r
-\r
-       // Out browser\r
-       html = getBrowserHTML('outsrcbrowser','onmouseoutsrc','image','advimage');\r
-       document.getElementById("onmouseoutsrccontainer").innerHTML = html;\r
-\r
-       // Longdesc browser\r
-       html = getBrowserHTML('longdescbrowser','longdesc','file','advimage');\r
-       document.getElementById("longdesccontainer").innerHTML = html;\r
-\r
-       // Resize some elements\r
-       if (isVisible('srcbrowser'))\r
-               document.getElementById('src').style.width = '260px';\r
-\r
-       if (isVisible('oversrcbrowser'))\r
-               document.getElementById('onmouseoversrc').style.width = '260px';\r
-\r
-       if (isVisible('outsrcbrowser'))\r
-               document.getElementById('onmouseoutsrc').style.width = '260px';\r
-\r
-       if (isVisible('longdescbrowser'))\r
-               document.getElementById('longdesc').style.width = '180px';\r
-\r
-       // Check action\r
-       if (elm != null && elm.nodeName == "IMG")\r
-               action = "update";\r
-\r
-       formObj.insert.value = tinyMCE.getLang('lang_' + action, 'Insert', true); \r
-\r
-       if (action == "update") {\r
-               var src = tinyMCE.getAttrib(elm, 'src');\r
-               var onmouseoversrc = getImageSrc(tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmouseover')));\r
-               var onmouseoutsrc = getImageSrc(tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmouseout')));\r
-\r
-               src = convertURL(src, elm, true);\r
-\r
-               // Use mce_src if found\r
-               var mceRealSrc = tinyMCE.getAttrib(elm, 'mce_src');\r
-               if (mceRealSrc != "") {\r
-                       src = mceRealSrc;\r
-\r
-                       if (tinyMCE.getParam('convert_urls'))\r
-                               src = convertURL(src, elm, true);\r
-               }\r
-\r
-               if (onmouseoversrc != "" && tinyMCE.getParam('convert_urls'))\r
-                       onmouseoversrc = convertURL(onmouseoversrc, elm, true);\r
-\r
-               if (onmouseoutsrc != "" && tinyMCE.getParam('convert_urls'))\r
-                       onmouseoutsrc = convertURL(onmouseoutsrc, elm, true);\r
-\r
-               // Setup form data\r
-               var style = tinyMCE.parseStyle(tinyMCE.getAttrib(elm, "style"));\r
-\r
-               // Store away old size\r
-               orgImageWidth = trimSize(getStyle(elm, 'width'))\r
-               orgImageHeight = trimSize(getStyle(elm, 'height'));\r
-\r
-               formObj.src.value    = src;\r
-               formObj.alt.value    = tinyMCE.getAttrib(elm, 'alt');\r
-               formObj.title.value  = tinyMCE.getAttrib(elm, 'title');\r
-               formObj.border.value = trimSize(getStyle(elm, 'border', 'borderWidth'));\r
-               formObj.vspace.value = tinyMCE.getAttrib(elm, 'vspace');\r
-               formObj.hspace.value = tinyMCE.getAttrib(elm, 'hspace');\r
-               formObj.width.value  = orgImageWidth;\r
-               formObj.height.value = orgImageHeight;\r
-               formObj.onmouseoversrc.value = onmouseoversrc;\r
-               formObj.onmouseoutsrc.value  = onmouseoutsrc;\r
-               formObj.id.value  = tinyMCE.getAttrib(elm, 'id');\r
-               formObj.dir.value  = tinyMCE.getAttrib(elm, 'dir');\r
-               formObj.lang.value  = tinyMCE.getAttrib(elm, 'lang');\r
-               formObj.longdesc.value  = tinyMCE.getAttrib(elm, 'longdesc');\r
-               formObj.usemap.value  = tinyMCE.getAttrib(elm, 'usemap');\r
-               formObj.style.value  = tinyMCE.serializeStyle(style);\r
-\r
-               // Select by the values\r
-               if (tinyMCE.isMSIE)\r
-                       selectByValue(formObj, 'align', getStyle(elm, 'align', 'styleFloat'));\r
-               else\r
-                       selectByValue(formObj, 'align', getStyle(elm, 'align', 'cssFloat'));\r
-\r
-               addClassesToList('classlist', 'advimage_styles');\r
-\r
-               selectByValue(formObj, 'classlist', tinyMCE.getAttrib(elm, 'class'));\r
-               selectByValue(formObj, 'imagelistsrc', src);\r
-               selectByValue(formObj, 'imagelistover', onmouseoversrc);\r
-               selectByValue(formObj, 'imagelistout', onmouseoutsrc);\r
-\r
-               updateStyle();\r
-               showPreviewImage(src, true);\r
-               changeAppearance();\r
-\r
-               window.focus();\r
-       } else\r
-               addClassesToList('classlist', 'advimage_styles');\r
-\r
-       // If option enabled default contrain proportions to checked\r
-       if (tinyMCE.getParam("advimage_constrain_proportions", true))\r
-               formObj.constrain.checked = true;\r
-\r
-       // Check swap image if valid data\r
-       if (formObj.onmouseoversrc.value != "" || formObj.onmouseoutsrc.value != "")\r
-               setSwapImageDisabled(false);\r
-       else\r
-               setSwapImageDisabled(true);\r
-}\r
-\r
-function setSwapImageDisabled(state) {\r
-       var formObj = document.forms[0];\r
-\r
-       formObj.onmousemovecheck.checked = !state;\r
-\r
-       setBrowserDisabled('overbrowser', state);\r
-       setBrowserDisabled('outbrowser', state);\r
-\r
-       if (formObj.imagelistover)\r
-               formObj.imagelistover.disabled = state;\r
-\r
-       if (formObj.imagelistout)\r
-               formObj.imagelistout.disabled = state;\r
-\r
-       formObj.onmouseoversrc.disabled = state;\r
-       formObj.onmouseoutsrc.disabled  = state;\r
-}\r
-\r
-function setAttrib(elm, attrib, value) {\r
-       var formObj = document.forms[0];\r
-       var valueElm = formObj.elements[attrib];\r
-\r
-       if (typeof(value) == "undefined" || value == null) {\r
-               value = "";\r
-\r
-               if (valueElm)\r
-                       value = valueElm.value;\r
-       }\r
-\r
-       if (value != "") {\r
-               elm.setAttribute(attrib, value);\r
-\r
-               if (attrib == "style")\r
-                       attrib = "style.cssText";\r
-\r
-               if (attrib == "longdesc")\r
-                       attrib = "longDesc";\r
-\r
-               if (attrib == "width") {\r
-                       attrib = "style.width";\r
-                       value = value + "px";\r
-                       value = value.replace(/%px/g, 'px');\r
-               }\r
-\r
-               if (attrib == "height") {\r
-                       attrib = "style.height";\r
-                       value = value + "px";\r
-                       value = value.replace(/%px/g, 'px');\r
-               }\r
-\r
-               if (attrib == "class")\r
-                       attrib = "className";\r
-\r
-               eval('elm.' + attrib + "=value;");\r
-       } else {\r
-               if (attrib == 'class')\r
-                       elm.className = '';\r
-\r
-               elm.removeAttribute(attrib);\r
-       }\r
-}\r
-\r
-function makeAttrib(attrib, value) {\r
-       var formObj = document.forms[0];\r
-       var valueElm = formObj.elements[attrib];\r
-\r
-       if (typeof(value) == "undefined" || value == null) {\r
-               value = "";\r
-\r
-               if (valueElm)\r
-                       value = valueElm.value;\r
-       }\r
-\r
-       if (value == "")\r
-               return "";\r
-\r
-       // XML encode it\r
-       value = value.replace(/&/g, '&amp;');\r
-       value = value.replace(/\"/g, '&quot;');\r
-       value = value.replace(/</g, '&lt;');\r
-       value = value.replace(/>/g, '&gt;');\r
-\r
-       return ' ' + attrib + '="' + value + '"';\r
-}\r
-\r
-function insertAction() {\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var elm = inst.getFocusElement();\r
-       var formObj = document.forms[0];\r
-       var src = formObj.src.value;\r
-       var onmouseoversrc = formObj.onmouseoversrc.value;\r
-       var onmouseoutsrc = formObj.onmouseoutsrc.value;\r
-\r
-       if (!AutoValidator.validate(formObj)) {\r
-               alert(tinyMCE.getLang('lang_invalid_data'));\r
-               return false;\r
-       }\r
-\r
-       if (tinyMCE.getParam("accessibility_warnings")) {\r
-               if (formObj.alt.value == "" && !confirm(tinyMCE.getLang('lang_advimage_missing_alt', '', true)))\r
-                       return;\r
-       }\r
-\r
-       if (onmouseoversrc && onmouseoversrc != "")\r
-               onmouseoversrc = "this.src='" + convertURL(onmouseoversrc, tinyMCE.imgElement) + "';";\r
-\r
-       if (onmouseoutsrc && onmouseoutsrc != "")\r
-               onmouseoutsrc = "this.src='" + convertURL(onmouseoutsrc, tinyMCE.imgElement) + "';";\r
-\r
-       if (elm != null && elm.nodeName == "IMG") {\r
-               setAttrib(elm, 'src', convertURL(src, tinyMCE.imgElement));\r
-               setAttrib(elm, 'mce_src', src);\r
-               setAttrib(elm, 'alt');\r
-               setAttrib(elm, 'title');\r
-               setAttrib(elm, 'border');\r
-               setAttrib(elm, 'vspace');\r
-               setAttrib(elm, 'hspace');\r
-               setAttrib(elm, 'width');\r
-               setAttrib(elm, 'height');\r
-               setAttrib(elm, 'onmouseover', onmouseoversrc);\r
-               setAttrib(elm, 'onmouseout', onmouseoutsrc);\r
-               setAttrib(elm, 'id');\r
-               setAttrib(elm, 'dir');\r
-               setAttrib(elm, 'lang');\r
-               setAttrib(elm, 'longdesc');\r
-               setAttrib(elm, 'usemap');\r
-               setAttrib(elm, 'style');\r
-               setAttrib(elm, 'class', getSelectValue(formObj, 'classlist'));\r
-               setAttrib(elm, 'align', getSelectValue(formObj, 'align'));\r
-\r
-               //tinyMCEPopup.execCommand("mceRepaint");\r
-\r
-               // Repaint if dimensions changed\r
-               if (formObj.width.value != orgImageWidth || formObj.height.value != orgImageHeight)\r
-                       inst.repaint();\r
-\r
-               // Refresh in old MSIE\r
-               if (tinyMCE.isMSIE5)\r
-                       elm.outerHTML = elm.outerHTML;\r
-       } else {\r
-               var html = "<img";\r
-\r
-               html += makeAttrib('src', convertURL(src, tinyMCE.imgElement));\r
-               html += makeAttrib('mce_src', src);\r
-               html += makeAttrib('alt');\r
-               html += makeAttrib('title');\r
-               html += makeAttrib('border');\r
-               html += makeAttrib('vspace');\r
-               html += makeAttrib('hspace');\r
-               html += makeAttrib('width');\r
-               html += makeAttrib('height');\r
-               html += makeAttrib('onmouseover', onmouseoversrc);\r
-               html += makeAttrib('onmouseout', onmouseoutsrc);\r
-               html += makeAttrib('id');\r
-               html += makeAttrib('dir');\r
-               html += makeAttrib('lang');\r
-               html += makeAttrib('longdesc');\r
-               html += makeAttrib('usemap');\r
-               html += makeAttrib('style');\r
-               html += makeAttrib('class', getSelectValue(formObj, 'classlist'));\r
-               html += makeAttrib('align', getSelectValue(formObj, 'align'));\r
-               html += " />";\r
-\r
-               tinyMCEPopup.execCommand("mceInsertContent", false, html);\r
-       }\r
-\r
-       tinyMCE._setEventsEnabled(inst.getBody(), false);\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function cancelAction() {\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function changeAppearance() {\r
-       var formObj = document.forms[0];\r
-       var img = document.getElementById('alignSampleImg');\r
-\r
-       if (img) {\r
-               img.align = formObj.align.value;\r
-               img.border = formObj.border.value;\r
-               img.hspace = formObj.hspace.value;\r
-               img.vspace = formObj.vspace.value;\r
-       }\r
-}\r
-\r
-function changeMouseMove() {\r
-       var formObj = document.forms[0];\r
-\r
-       setSwapImageDisabled(!formObj.onmousemovecheck.checked);\r
-}\r
-\r
-function updateStyle() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       if (tinyMCE.getParam('inline_styles', false)) {\r
-               st['width'] = formObj.width.value == '' ? '' : formObj.width.value + "px";\r
-               st['height'] = formObj.height.value == '' ? '' : formObj.height.value + "px";\r
-               st['border-width'] = formObj.border.value == '' ? '' : formObj.border.value + "px";\r
-               st['margin-top'] = formObj.vspace.value == '' ? '' : formObj.vspace.value + "px";\r
-               st['margin-bottom'] = formObj.vspace.value == '' ? '' : formObj.vspace.value + "px";\r
-               st['margin-left'] = formObj.hspace.value == '' ? '' : formObj.hspace.value + "px";\r
-               st['margin-right'] = formObj.hspace.value == '' ? '' : formObj.hspace.value + "px";\r
-       } else {\r
-               st['width'] = st['height'] = st['border-width'] = null;\r
-\r
-               if (st['margin-top'] == st['margin-bottom'])\r
-                       st['margin-top'] = st['margin-bottom'] = null;\r
-\r
-               if (st['margin-left'] == st['margin-right'])\r
-                       st['margin-left'] = st['margin-right'] = null;\r
-       }\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
-\r
-function styleUpdated() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       if (st['width'])\r
-               formObj.width.value = st['width'].replace('px', '');\r
-\r
-       if (st['height'])\r
-               formObj.height.value = st['height'].replace('px', '');\r
-\r
-       if (st['margin-top'] && st['margin-top'] == st['margin-bottom'])\r
-               formObj.vspace.value = st['margin-top'].replace('px', '');\r
-\r
-       if (st['margin-left'] && st['margin-left'] == st['margin-right'])\r
-               formObj.hspace.value = st['margin-left'].replace('px', '');\r
-\r
-       if (st['border-width'])\r
-               formObj.border.value = st['border-width'].replace('px', '');\r
-}\r
-\r
-function changeHeight() {\r
-       var formObj = document.forms[0];\r
-\r
-       if (!formObj.constrain.checked || !preloadImg) {\r
-               updateStyle();\r
-               return;\r
-       }\r
-\r
-       if (formObj.width.value == "" || formObj.height.value == "")\r
-               return;\r
-\r
-       var temp = (parseInt(formObj.width.value) / parseInt(preloadImg.width)) * preloadImg.height;\r
-       formObj.height.value = temp.toFixed(0);\r
-       updateStyle();\r
-}\r
-\r
-function changeWidth() {\r
-       var formObj = document.forms[0];\r
-\r
-       if (!formObj.constrain.checked || !preloadImg) {\r
-               updateStyle();\r
-               return;\r
-       }\r
-\r
-       if (formObj.width.value == "" || formObj.height.value == "")\r
-               return;\r
-\r
-       var temp = (parseInt(formObj.height.value) / parseInt(preloadImg.height)) * preloadImg.width;\r
-       formObj.width.value = temp.toFixed(0);\r
-       updateStyle();\r
-}\r
-\r
-function onSelectMainImage(target_form_element, name, value) {\r
-       var formObj = document.forms[0];\r
-\r
-       formObj.alt.value = name;\r
-       formObj.title.value = name;\r
-\r
-       resetImageData();\r
-       showPreviewImage(formObj.elements[target_form_element].value, false);\r
-}\r
-\r
-function showPreviewImage(src, start) {\r
-       var formObj = document.forms[0];\r
-\r
-       selectByValue(document.forms[0], 'imagelistsrc', src);\r
-\r
-       var elm = document.getElementById('prev');\r
-       var src = src == "" ? src : tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], src);\r
-\r
-       if (!start && tinyMCE.getParam("advimage_update_dimensions_onchange", true))\r
-               resetImageData();\r
-\r
-       if (src == "")\r
-               elm.innerHTML = "";\r
-       else\r
-               elm.innerHTML = '<img id="previewImg" src="' + src + '" border="0" onload="updateImageData(' + start + ');" onerror="resetImageData();" />'\r
-}\r
-\r
-function updateImageData(start) {\r
-       var formObj = document.forms[0];\r
-\r
-       preloadImg = document.getElementById('previewImg');\r
-\r
-       if (!start && formObj.width.value == "")\r
-               formObj.width.value = preloadImg.width;\r
-\r
-       if (!start && formObj.height.value == "")\r
-               formObj.height.value = preloadImg.height;\r
-\r
-       updateStyle();\r
-}\r
-\r
-function resetImageData() {\r
-       var formObj = document.forms[0];\r
-       formObj.width.value = formObj.height.value = "";        \r
-}\r
-\r
-function getSelectValue(form_obj, field_name) {\r
-       var elm = form_obj.elements[field_name];\r
-\r
-       if (elm == null || elm.options == null)\r
-               return "";\r
-\r
-       return elm.options[elm.selectedIndex].value;\r
-}\r
-\r
-function getImageListHTML(elm_id, target_form_element, onchange_func) {\r
-       if (typeof(tinyMCEImageList) == "undefined" || tinyMCEImageList.length == 0)\r
-               return "";\r
-\r
-       var html = "";\r
-\r
-       html += '<select id="' + elm_id + '" name="' + elm_id + '"';\r
-       html += ' class="mceImageList" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="this.form.' + target_form_element + '.value=';\r
-       html += 'this.options[this.selectedIndex].value;';\r
-\r
-       if (typeof(onchange_func) != "undefined")\r
-               html += onchange_func + '(\'' + target_form_element + '\',this.options[this.selectedIndex].text,this.options[this.selectedIndex].value);';\r
-\r
-       html += '"><option value="">---</option>';\r
-\r
-       for (var i=0; i<tinyMCEImageList.length; i++)\r
-               html += '<option value="' + tinyMCEImageList[i][1] + '">' + tinyMCEImageList[i][0] + '</option>';\r
-\r
-       html += '</select>';\r
-\r
-       return html;\r
-\r
-       // tinyMCE.debug('-- image list start --', html, '-- image list end --');\r
-}\r
-\r
-// While loading\r
-preinit();\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en.js
deleted file mode 100644 (file)
index ffd7e30..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('advimage',{\r
-tab_general : 'General',\r
-tab_appearance : 'Appearance',\r
-tab_advanced : 'Advanced',\r
-general : 'General',\r
-title : 'Title',\r
-preview : 'Preview',\r
-constrain_proportions : 'Constrain proportions',\r
-langdir : 'Language direction',\r
-langcode : 'Language code',\r
-long_desc : 'Long description link',\r
-style : 'Style',\r
-classes : 'Classes',\r
-ltr : 'Left to right',\r
-rtl : 'Right to left',\r
-id : 'Id',\r
-image_map : 'Image map',\r
-swap_image : 'Swap image',\r
-alt_image : 'Alternative image',\r
-mouseover : 'for mouse over',\r
-mouseout : 'for mouse out',\r
-misc : 'Miscellaneous',\r
-example_img : 'Appearance&nbsp;preview&nbsp;image',\r
-missing_alt : 'Are you sure you want to continue without including an Image Description? Without  it the image may not be accessible to some users with disabilities, or to those using a text browser, or browsing the Web with images turned off.'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advimage/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css
deleted file mode 100644 (file)
index 0cb37bd..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/* CSS file for advimage plugin popup */\r
-\r
-.mceLinkList, .mceAnchorList, #targetlist {\r
-       width: 280px;\r
-}\r
-\r
-.mceActionPanel {\r
-       margin-top: 7px;\r
-}\r
-\r
-.panel_wrapper div.current {\r
-       height: 320px;\r
-}\r
-\r
-#classlist, #title, #href {\r
-       width: 280px;\r
-}\r
-\r
-#popupurl, #popupname {\r
-       width: 200px;\r
-}\r
-\r
-#popupwidth, #popupheight, #popupleft, #popuptop {\r
-       width: 30px;\r
-       vertical-align: middle;\r
-       text-align: center;\r
-}\r
-\r
-#id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {\r
-       width: 200px;\r
-}\r
-\r
-#events_panel input {\r
-       width: 200px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js
deleted file mode 100644 (file)
index 66602fa..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('advlink');var TinyMCE_AdvancedLinkPlugin={getInfo:function(){return{longname:'Advanced link',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){inst.addShortcut('ctrl','k','lang_advlink_desc','mceAdvLink')},getControlHTML:function(cn){switch(cn){case"link":return tinyMCE.getButtonHTML(cn,'lang_link_desc','{$themeurl}/images/link.gif','mceAdvLink')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceAdvLink":var inst=tinyMCE.getInstanceById(editor_id),anySelection=false;var focusElm=inst.getFocusElement(),selectedText=inst.selection.getSelectedText();if(tinyMCE.selectedElement)anySelection=(tinyMCE.selectedElement.nodeName.toLowerCase()=="img")||(selectedText&&selectedText.length>0);if(anySelection||(focusElm!=null&&focusElm.nodeName=="A")){tinyMCE.openWindow({file:'../../plugins/advlink/link.htm',width:480+tinyMCE.getLang('lang_advlink_delta_width',0),height:400+tinyMCE.getLang('lang_advlink_delta_height',0)},{editor_id:editor_id,inline:"yes"})}return true}return false},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){if(node==null)return;do{if(node.nodeName=="A"&&tinyMCE.getAttrib(node,'href')!=""){tinyMCE.switchClass(editor_id+'_advlink','mceButtonSelected');return true}}while((node=node.parentNode));if(any_selection){tinyMCE.switchClass(editor_id+'_advlink','mceButtonNormal');return true}tinyMCE.switchClass(editor_id+'_advlink','mceButtonDisabled');return true}};tinyMCE.addPlugin("advlink",TinyMCE_AdvancedLinkPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js
deleted file mode 100644 (file)
index 0fed63f..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 268 2007-04-28 15:52:59Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('advlink');\r
-\r
-var TinyMCE_AdvancedLinkPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Advanced link',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               inst.addShortcut('ctrl', 'k', 'lang_advlink_desc', 'mceAdvLink');\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "link":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_link_desc', '{$themeurl}/images/link.gif', 'mceAdvLink');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               switch (command) {\r
-                       case "mceAdvLink":\r
-                               var inst = tinyMCE.getInstanceById(editor_id), anySelection = false;\r
-                               var focusElm = inst.getFocusElement(), selectedText = inst.selection.getSelectedText();\r
-\r
-                               if (tinyMCE.selectedElement)\r
-                                       anySelection = (tinyMCE.selectedElement.nodeName.toLowerCase() == "img") || (selectedText && selectedText.length > 0);\r
-\r
-                               if (anySelection || (focusElm != null && focusElm.nodeName == "A")) {\r
-                                       tinyMCE.openWindow({\r
-                                               file : '../../plugins/advlink/link.htm',\r
-                                               width : 480 + tinyMCE.getLang('lang_advlink_delta_width', 0),\r
-                                               height : 400 + tinyMCE.getLang('lang_advlink_delta_height', 0)\r
-                                       }, {\r
-                                               editor_id : editor_id,\r
-                                               inline : "yes"\r
-                                       });\r
-                               }\r
-\r
-                               return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               if (node == null)\r
-                       return;\r
-\r
-               do {\r
-                       if (node.nodeName == "A" && tinyMCE.getAttrib(node, 'href') != "") {\r
-                               tinyMCE.switchClass(editor_id + '_advlink', 'mceButtonSelected');\r
-                               return true;\r
-                       }\r
-               } while ((node = node.parentNode));\r
-\r
-               if (any_selection) {\r
-                       tinyMCE.switchClass(editor_id + '_advlink', 'mceButtonNormal');\r
-                       return true;\r
-               }\r
-\r
-               tinyMCE.switchClass(editor_id + '_advlink', 'mceButtonDisabled');\r
-\r
-               return true;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("advlink", TinyMCE_AdvancedLinkPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/jscripts/functions.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/jscripts/functions.js
deleted file mode 100644 (file)
index 6812596..0000000
+++ /dev/null
@@ -1,587 +0,0 @@
-/* Functions for the advlink plugin popup */\r
-\r
-var templates = {\r
-       "window.open" : "window.open('${url}','${target}','${options}')"\r
-};\r
-\r
-function preinit() {\r
-       // Initialize\r
-       tinyMCE.setWindowArg('mce_windowresize', false);\r
-\r
-       // Import external list url javascript\r
-       var url = tinyMCE.getParam("external_link_list_url");\r
-       if (url != null) {\r
-               // Fix relative\r
-               if (url.charAt(0) != '/' && url.indexOf('://') == -1)\r
-                       url = tinyMCE.documentBasePath + "/" + url;\r
-\r
-               document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '"></sc'+'ript>');\r
-       }\r
-}\r
-\r
-function changeClass() {\r
-       var formObj = document.forms[0];\r
-       formObj.classes.value = getSelectValue(formObj, 'classlist');\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       var formObj = document.forms[0];\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var elm = inst.getFocusElement();\r
-       var action = "insert";\r
-       var html;\r
-\r
-       document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','advlink');\r
-       document.getElementById('popupurlbrowsercontainer').innerHTML = getBrowserHTML('popupurlbrowser','popupurl','file','advlink');\r
-       document.getElementById('linklisthrefcontainer').innerHTML = getLinkListHTML('linklisthref','href');\r
-       document.getElementById('anchorlistcontainer').innerHTML = getAnchorListHTML('anchorlist','href');\r
-       document.getElementById('targetlistcontainer').innerHTML = getTargetListHTML('targetlist','target');\r
-\r
-       // Link list\r
-       html = getLinkListHTML('linklisthref','href');\r
-       if (html == "")\r
-               document.getElementById("linklisthrefrow").style.display = 'none';\r
-       else\r
-               document.getElementById("linklisthrefcontainer").innerHTML = html;\r
-\r
-       // Resize some elements\r
-       if (isVisible('hrefbrowser'))\r
-               document.getElementById('href').style.width = '260px';\r
-\r
-       if (isVisible('popupurlbrowser'))\r
-               document.getElementById('popupurl').style.width = '180px';\r
-\r
-       elm = tinyMCE.getParentElement(elm, "a");\r
-       if (elm != null && elm.nodeName == "A")\r
-               action = "update";\r
-\r
-       formObj.insert.value = tinyMCE.getLang('lang_' + action, 'Insert', true); \r
-\r
-       setPopupControlsDisabled(true);\r
-\r
-       if (action == "update") {\r
-               var href = tinyMCE.getAttrib(elm, 'href');\r
-\r
-               href = convertURL(href, elm, true);\r
-\r
-               // Use mce_href if found\r
-               var mceRealHref = tinyMCE.getAttrib(elm, 'mce_href');\r
-               if (mceRealHref != "") {\r
-                       href = mceRealHref;\r
-\r
-                       if (tinyMCE.getParam('convert_urls'))\r
-                               href = convertURL(href, elm, true);\r
-               }\r
-\r
-               var onclick = tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onclick'));\r
-\r
-               // Setup form data\r
-               setFormValue('href', href);\r
-               setFormValue('title', tinyMCE.getAttrib(elm, 'title'));\r
-               setFormValue('id', tinyMCE.getAttrib(elm, 'id'));\r
-               setFormValue('style', tinyMCE.serializeStyle(tinyMCE.parseStyle(tinyMCE.getAttrib(elm, "style"))));\r
-               setFormValue('rel', tinyMCE.getAttrib(elm, 'rel'));\r
-               setFormValue('rev', tinyMCE.getAttrib(elm, 'rev'));\r
-               setFormValue('charset', tinyMCE.getAttrib(elm, 'charset'));\r
-               setFormValue('hreflang', tinyMCE.getAttrib(elm, 'hreflang'));\r
-               setFormValue('dir', tinyMCE.getAttrib(elm, 'dir'));\r
-               setFormValue('lang', tinyMCE.getAttrib(elm, 'lang'));\r
-               setFormValue('tabindex', tinyMCE.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != "undefined" ? elm.tabindex : ""));\r
-               setFormValue('accesskey', tinyMCE.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != "undefined" ? elm.accesskey : ""));\r
-               setFormValue('type', tinyMCE.getAttrib(elm, 'type'));\r
-               setFormValue('onfocus', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onfocus')));\r
-               setFormValue('onblur', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onblur')));\r
-               setFormValue('onclick', onclick);\r
-               setFormValue('ondblclick', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'ondblclick')));\r
-               setFormValue('onmousedown', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmousedown')));\r
-               setFormValue('onmouseup', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmouseup')));\r
-               setFormValue('onmouseover', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmouseover')));\r
-               setFormValue('onmousemove', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmousemove')));\r
-               setFormValue('onmouseout', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmouseout')));\r
-               setFormValue('onkeypress', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onkeypress')));\r
-               setFormValue('onkeydown', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onkeydown')));\r
-               setFormValue('onkeyup', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onkeyup')));\r
-               setFormValue('target', tinyMCE.getAttrib(elm, 'target'));\r
-               setFormValue('classes', tinyMCE.getAttrib(elm, 'class'));\r
-\r
-               // Parse onclick data\r
-               if (onclick != null && onclick.indexOf('window.open') != -1)\r
-                       parseWindowOpen(onclick);\r
-               else\r
-                       parseFunction(onclick);\r
-\r
-               // Select by the values\r
-               selectByValue(formObj, 'dir', tinyMCE.getAttrib(elm, 'dir'));\r
-               selectByValue(formObj, 'rel', tinyMCE.getAttrib(elm, 'rel'));\r
-               selectByValue(formObj, 'rev', tinyMCE.getAttrib(elm, 'rev'));\r
-               selectByValue(formObj, 'linklisthref', href);\r
-\r
-               if (href.charAt(0) == '#')\r
-                       selectByValue(formObj, 'anchorlist', href);\r
-\r
-               addClassesToList('classlist', 'advlink_styles');\r
-\r
-               selectByValue(formObj, 'classlist', tinyMCE.getAttrib(elm, 'class'), true);\r
-               selectByValue(formObj, 'targetlist', tinyMCE.getAttrib(elm, 'target'), true);\r
-       } else\r
-               addClassesToList('classlist', 'advlink_styles');\r
-\r
-       window.focus();\r
-}\r
-\r
-function checkPrefix(n) {\r
-       if (!Validator.isEmpty(n) && Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCE.getLang('lang_is_email')))\r
-               n.value = 'mailto:' + n.value;\r
-\r
-       if (/^\s*www./i.test(n.value) && confirm(tinyMCE.getLang('lang_is_external')))\r
-               n.value = 'http://' + n.value;\r
-}\r
-\r
-function setFormValue(name, value) {\r
-       document.forms[0].elements[name].value = value;\r
-}\r
-\r
-function convertURL(url, node, on_save) {\r
-       return eval("tinyMCEPopup.windowOpener." + tinyMCE.settings['urlconverter_callback'] + "(url, node, on_save);");\r
-}\r
-\r
-function parseWindowOpen(onclick) {\r
-       var formObj = document.forms[0];\r
-\r
-       // Preprocess center code\r
-       if (onclick.indexOf('return false;') != -1) {\r
-               formObj.popupreturn.checked = true;\r
-               onclick = onclick.replace('return false;', '');\r
-       } else\r
-               formObj.popupreturn.checked = false;\r
-\r
-       var onClickData = parseLink(onclick);\r
-\r
-       if (onClickData != null) {\r
-               formObj.ispopup.checked = true;\r
-               setPopupControlsDisabled(false);\r
-\r
-               var onClickWindowOptions = parseOptions(onClickData['options']);\r
-               var url = onClickData['url'];\r
-\r
-               if (tinyMCE.getParam('convert_urls'))\r
-                       url = convertURL(url, null, true);\r
-\r
-               formObj.popupname.value = onClickData['target'];\r
-               formObj.popupurl.value = url;\r
-               formObj.popupwidth.value = getOption(onClickWindowOptions, 'width');\r
-               formObj.popupheight.value = getOption(onClickWindowOptions, 'height');\r
-\r
-               formObj.popupleft.value = getOption(onClickWindowOptions, 'left');\r
-               formObj.popuptop.value = getOption(onClickWindowOptions, 'top');\r
-\r
-               if (formObj.popupleft.value.indexOf('screen') != -1)\r
-                       formObj.popupleft.value = "c";\r
-\r
-               if (formObj.popuptop.value.indexOf('screen') != -1)\r
-                       formObj.popuptop.value = "c";\r
-\r
-               formObj.popuplocation.checked = getOption(onClickWindowOptions, 'location') == "yes";\r
-               formObj.popupscrollbars.checked = getOption(onClickWindowOptions, 'scrollbars') == "yes";\r
-               formObj.popupmenubar.checked = getOption(onClickWindowOptions, 'menubar') == "yes";\r
-               formObj.popupresizable.checked = getOption(onClickWindowOptions, 'resizable') == "yes";\r
-               formObj.popuptoolbar.checked = getOption(onClickWindowOptions, 'toolbar') == "yes";\r
-               formObj.popupstatus.checked = getOption(onClickWindowOptions, 'status') == "yes";\r
-               formObj.popupdependent.checked = getOption(onClickWindowOptions, 'dependent') == "yes";\r
-\r
-               buildOnClick();\r
-       }\r
-}\r
-\r
-function parseFunction(onclick) {\r
-       var formObj = document.forms[0];\r
-       var onClickData = parseLink(onclick);\r
-\r
-       // TODO: Add stuff here\r
-}\r
-\r
-function getOption(opts, name) {\r
-       return typeof(opts[name]) == "undefined" ? "" : opts[name];\r
-}\r
-\r
-function setPopupControlsDisabled(state) {\r
-       var formObj = document.forms[0];\r
-\r
-       formObj.popupname.disabled = state;\r
-       formObj.popupurl.disabled = state;\r
-       formObj.popupwidth.disabled = state;\r
-       formObj.popupheight.disabled = state;\r
-       formObj.popupleft.disabled = state;\r
-       formObj.popuptop.disabled = state;\r
-       formObj.popuplocation.disabled = state;\r
-       formObj.popupscrollbars.disabled = state;\r
-       formObj.popupmenubar.disabled = state;\r
-       formObj.popupresizable.disabled = state;\r
-       formObj.popuptoolbar.disabled = state;\r
-       formObj.popupstatus.disabled = state;\r
-       formObj.popupreturn.disabled = state;\r
-       formObj.popupdependent.disabled = state;\r
-\r
-       setBrowserDisabled('popupurlbrowser', state);\r
-}\r
-\r
-function parseLink(link) {\r
-       link = link.replace(new RegExp('&#39;', 'g'), "'");\r
-\r
-       var fnName = link.replace(new RegExp("\\s*([A-Za-z0-9\.]*)\\s*\\(.*", "gi"), "$1");\r
-\r
-       // Is function name a template function\r
-       var template = templates[fnName];\r
-       if (template) {\r
-               // Build regexp\r
-               var variableNames = template.match(new RegExp("'?\\$\\{[A-Za-z0-9\.]*\\}'?", "gi"));\r
-               var regExp = "\\s*[A-Za-z0-9\.]*\\s*\\(";\r
-               var replaceStr = "";\r
-               for (var i=0; i<variableNames.length; i++) {\r
-                       // Is string value\r
-                       if (variableNames[i].indexOf("'${") != -1)\r
-                               regExp += "'(.*)'";\r
-                       else // Number value\r
-                               regExp += "([0-9]*)";\r
-\r
-                       replaceStr += "$" + (i+1);\r
-\r
-                       // Cleanup variable name\r
-                       variableNames[i] = variableNames[i].replace(new RegExp("[^A-Za-z0-9]", "gi"), "");\r
-\r
-                       if (i != variableNames.length-1) {\r
-                               regExp += "\\s*,\\s*";\r
-                               replaceStr += "<delim>";\r
-                       } else\r
-                               regExp += ".*";\r
-               }\r
-\r
-               regExp += "\\);?";\r
-\r
-               // Build variable array\r
-               var variables = new Array();\r
-               variables["_function"] = fnName;\r
-               var variableValues = link.replace(new RegExp(regExp, "gi"), replaceStr).split('<delim>');\r
-               for (var i=0; i<variableNames.length; i++)\r
-                       variables[variableNames[i]] = variableValues[i];\r
-\r
-               return variables;\r
-       }\r
-\r
-       return null;\r
-}\r
-\r
-function parseOptions(opts) {\r
-       if (opts == null || opts == "")\r
-               return new Array();\r
-\r
-       // Cleanup the options\r
-       opts = opts.toLowerCase();\r
-       opts = opts.replace(/;/g, ",");\r
-       opts = opts.replace(/[^0-9a-z=,]/g, "");\r
-\r
-       var optionChunks = opts.split(',');\r
-       var options = new Array();\r
-\r
-       for (var i=0; i<optionChunks.length; i++) {\r
-               var parts = optionChunks[i].split('=');\r
-\r
-               if (parts.length == 2)\r
-                       options[parts[0]] = parts[1];\r
-       }\r
-\r
-       return options;\r
-}\r
-\r
-function buildOnClick() {\r
-       var formObj = document.forms[0];\r
-\r
-       if (!formObj.ispopup.checked) {\r
-               formObj.onclick.value = "";\r
-               return;\r
-       }\r
-\r
-       var onclick = "window.open('";\r
-       var url = formObj.popupurl.value;\r
-\r
-       if (tinyMCE.getParam('convert_urls'))\r
-               url = convertURL(url, null, true);\r
-\r
-       onclick += url + "','";\r
-       onclick += formObj.popupname.value + "','";\r
-\r
-       if (formObj.popuplocation.checked)\r
-               onclick += "location=yes,";\r
-\r
-       if (formObj.popupscrollbars.checked)\r
-               onclick += "scrollbars=yes,";\r
-\r
-       if (formObj.popupmenubar.checked)\r
-               onclick += "menubar=yes,";\r
-\r
-       if (formObj.popupresizable.checked)\r
-               onclick += "resizable=yes,";\r
-\r
-       if (formObj.popuptoolbar.checked)\r
-               onclick += "toolbar=yes,";\r
-\r
-       if (formObj.popupstatus.checked)\r
-               onclick += "status=yes,";\r
-\r
-       if (formObj.popupdependent.checked)\r
-               onclick += "dependent=yes,";\r
-\r
-       if (formObj.popupwidth.value != "")\r
-               onclick += "width=" + formObj.popupwidth.value + ",";\r
-\r
-       if (formObj.popupheight.value != "")\r
-               onclick += "height=" + formObj.popupheight.value + ",";\r
-\r
-       if (formObj.popupleft.value != "") {\r
-               if (formObj.popupleft.value != "c")\r
-                       onclick += "left=" + formObj.popupleft.value + ",";\r
-               else\r
-                       onclick += "left='+(screen.availWidth/2-" + (formObj.popupwidth.value/2) + ")+',";\r
-       }\r
-\r
-       if (formObj.popuptop.value != "") {\r
-               if (formObj.popuptop.value != "c")\r
-                       onclick += "top=" + formObj.popuptop.value + ",";\r
-               else\r
-                       onclick += "top='+(screen.availHeight/2-" + (formObj.popupheight.value/2) + ")+',";\r
-       }\r
-\r
-       if (onclick.charAt(onclick.length-1) == ',')\r
-               onclick = onclick.substring(0, onclick.length-1);\r
-\r
-       onclick += "');";\r
-\r
-       if (formObj.popupreturn.checked)\r
-               onclick += "return false;";\r
-\r
-       // tinyMCE.debug(onclick);\r
-\r
-       formObj.onclick.value = onclick;\r
-\r
-       if (formObj.href.value == "")\r
-               formObj.href.value = url;\r
-}\r
-\r
-function setAttrib(elm, attrib, value) {\r
-       var formObj = document.forms[0];\r
-       var valueElm = formObj.elements[attrib.toLowerCase()];\r
-\r
-       if (typeof(value) == "undefined" || value == null) {\r
-               value = "";\r
-\r
-               if (valueElm)\r
-                       value = valueElm.value;\r
-       }\r
-\r
-       if (value != "") {\r
-               elm.setAttribute(attrib.toLowerCase(), value);\r
-\r
-               if (attrib == "style")\r
-                       attrib = "style.cssText";\r
-\r
-               if (attrib.substring(0, 2) == 'on')\r
-                       value = 'return true;' + value;\r
-\r
-               if (attrib == "class")\r
-                       attrib = "className";\r
-\r
-               eval('elm.' + attrib + "=value;");\r
-       } else\r
-               elm.removeAttribute(attrib);\r
-}\r
-\r
-function getAnchorListHTML(id, target) {\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var nodes = inst.getBody().getElementsByTagName("a"), name, i;\r
-       var html = "";\r
-\r
-       html += '<select id="' + id + '" name="' + id + '" class="mceAnchorList" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="this.form.' + target + '.value=';\r
-       html += 'this.options[this.selectedIndex].value;">';\r
-       html += '<option value="">---</option>';\r
-\r
-       for (i=0; i<nodes.length; i++) {\r
-               if ((name = tinyMCE.getAttrib(nodes[i], "name")) != "")\r
-                       html += '<option value="#' + name + '">' + name + '</option>';\r
-       }\r
-\r
-       html += '</select>';\r
-\r
-       return html;\r
-}\r
-\r
-function insertAction() {\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var elm = inst.getFocusElement();\r
-\r
-       checkPrefix(document.forms[0].href);\r
-\r
-       elm = tinyMCE.getParentElement(elm, "a");\r
-\r
-       tinyMCEPopup.execCommand("mceBeginUndoLevel");\r
-\r
-       // Create new anchor elements\r
-       if (elm == null) {\r
-               if (tinyMCE.isSafari)\r
-                       tinyMCEPopup.execCommand("mceInsertContent", false, '<a href="#mce_temp_url#">' + inst.selection.getSelectedHTML() + '</a>');\r
-               else\r
-                       tinyMCEPopup.execCommand("createlink", false, "#mce_temp_url#");\r
-\r
-               var elementArray = tinyMCE.getElementsByAttributeValue(inst.getBody(), "a", "href", "#mce_temp_url#");\r
-               for (var i=0; i<elementArray.length; i++) {\r
-                       var elm = elementArray[i];\r
-\r
-                       // Move cursor to end\r
-                       try {\r
-                               tinyMCE.selectedInstance.selection.collapse(false);\r
-                       } catch (ex) {\r
-                               // Ignore\r
-                       }\r
-\r
-                       // Move cursor behind the new anchor\r
-                       // Don't remember why this was needed so it's now removed\r
-                       /*\r
-                       if (tinyMCE.isGecko) {\r
-                               var sp = inst.getDoc().createTextNode(" ");\r
-\r
-                               if (elm.nextSibling)\r
-                                       elm.parentNode.insertBefore(sp, elm.nextSibling);\r
-                               else\r
-                                       elm.parentNode.appendChild(sp);\r
-\r
-                               // Set range after link\r
-                               var rng = inst.getDoc().createRange();\r
-                               rng.setStartAfter(elm);\r
-                               rng.setEndAfter(elm);\r
-\r
-                               // Update selection\r
-                               var sel = inst.getSel();\r
-                               sel.removeAllRanges();\r
-                               sel.addRange(rng);\r
-                       }\r
-                       */\r
-\r
-                       setAllAttribs(elm);\r
-               }\r
-       } else\r
-               setAllAttribs(elm);\r
-\r
-       tinyMCE._setEventsEnabled(inst.getBody(), false);\r
-       tinyMCEPopup.execCommand("mceEndUndoLevel");\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function setAllAttribs(elm) {\r
-       var formObj = document.forms[0];\r
-       var href = formObj.href.value;\r
-       var target = getSelectValue(formObj, 'targetlist');\r
-\r
-       // Make anchors absolute\r
-       if (href.charAt(0) != '#' && tinyMCE.getParam('convert_urls'))\r
-               href = convertURL(href, elm);\r
-\r
-       setAttrib(elm, 'href', href);\r
-       setAttrib(elm, 'mce_href', href);\r
-       setAttrib(elm, 'title');\r
-       setAttrib(elm, 'target', target == '_self' ? '' : target);\r
-       setAttrib(elm, 'id');\r
-       setAttrib(elm, 'style');\r
-       setAttrib(elm, 'class', getSelectValue(formObj, 'classlist'));\r
-       setAttrib(elm, 'rel');\r
-       setAttrib(elm, 'rev');\r
-       setAttrib(elm, 'charset');\r
-       setAttrib(elm, 'hreflang');\r
-       setAttrib(elm, 'dir');\r
-       setAttrib(elm, 'lang');\r
-       setAttrib(elm, 'tabindex');\r
-       setAttrib(elm, 'accesskey');\r
-       setAttrib(elm, 'type');\r
-       setAttrib(elm, 'onfocus');\r
-       setAttrib(elm, 'onblur');\r
-       setAttrib(elm, 'onclick');\r
-       setAttrib(elm, 'ondblclick');\r
-       setAttrib(elm, 'onmousedown');\r
-       setAttrib(elm, 'onmouseup');\r
-       setAttrib(elm, 'onmouseover');\r
-       setAttrib(elm, 'onmousemove');\r
-       setAttrib(elm, 'onmouseout');\r
-       setAttrib(elm, 'onkeypress');\r
-       setAttrib(elm, 'onkeydown');\r
-       setAttrib(elm, 'onkeyup');\r
-\r
-       // Refresh in old MSIE\r
-       if (tinyMCE.isMSIE5)\r
-               elm.outerHTML = elm.outerHTML;\r
-}\r
-\r
-function getSelectValue(form_obj, field_name) {\r
-       var elm = form_obj.elements[field_name];\r
-\r
-       if (elm == null || elm.options == null)\r
-               return "";\r
-\r
-       return elm.options[elm.selectedIndex].value;\r
-}\r
-\r
-function getLinkListHTML(elm_id, target_form_element, onchange_func) {\r
-       if (typeof(tinyMCELinkList) == "undefined" || tinyMCELinkList.length == 0)\r
-               return "";\r
-\r
-       var html = "";\r
-\r
-       html += '<select id="' + elm_id + '" name="' + elm_id + '"';\r
-       html += ' class="mceLinkList" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="this.form.' + target_form_element + '.value=';\r
-       html += 'this.options[this.selectedIndex].value;';\r
-\r
-       if (typeof(onchange_func) != "undefined")\r
-               html += onchange_func + '(\'' + target_form_element + '\',this.options[this.selectedIndex].text,this.options[this.selectedIndex].value);';\r
-\r
-       html += '"><option value="">---</option>';\r
-\r
-       for (var i=0; i<tinyMCELinkList.length; i++)\r
-               html += '<option value="' + tinyMCELinkList[i][1] + '">' + tinyMCELinkList[i][0] + '</option>';\r
-\r
-       html += '</select>';\r
-\r
-       return html;\r
-\r
-       // tinyMCE.debug('-- image list start --', html, '-- image list end --');\r
-}\r
-\r
-function getTargetListHTML(elm_id, target_form_element) {\r
-       var targets = tinyMCE.getParam('theme_advanced_link_targets', '').split(';');\r
-       var html = '';\r
-\r
-       html += '<select id="' + elm_id + '" name="' + elm_id + '" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="this.form.' + target_form_element + '.value=';\r
-       html += 'this.options[this.selectedIndex].value;">';\r
-\r
-       html += '<option value="_self">' + tinyMCE.getLang('lang_advlink_target_same') + '</option>';\r
-       html += '<option value="_blank">' + tinyMCE.getLang('lang_advlink_target_blank') + ' (_blank)</option>';\r
-       html += '<option value="_parent">' + tinyMCE.getLang('lang_advlink_target_parent') + ' (_parent)</option>';\r
-       html += '<option value="_top">' + tinyMCE.getLang('lang_advlink_target_top') + ' (_top)</option>';\r
-\r
-       for (var i=0; i<targets.length; i++) {\r
-               var key, value;\r
-\r
-               if (targets[i] == "")\r
-                       continue;\r
-\r
-               key = targets[i].split('=')[0];\r
-               value = targets[i].split('=')[1];\r
-\r
-               html += '<option value="' + key + '">' + value + ' (' + key + ')</option>';\r
-       }\r
-\r
-       html += '</select>';\r
-\r
-       return html;\r
-}\r
-\r
-// While loading\r
-preinit();\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en.js
deleted file mode 100644 (file)
index 1d50e4e..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('advlink',{\r
-general_tab : 'General',\r
-popup_tab : 'Popup',\r
-events_tab : 'Events',\r
-advanced_tab : 'Advanced',\r
-general_props : 'General properties',\r
-popup_props : 'Popup properties',\r
-event_props : 'Events',\r
-advanced_props : 'Advanced properties',\r
-popup_opts : 'Options',\r
-anchor_names : 'Anchors',\r
-target_same : 'Open in this window / frame',\r
-target_parent : 'Open in parent window / frame',\r
-target_top : 'Open in top frame (replaces all frames)',\r
-target_blank : 'Open in new window',\r
-popup : 'Javascript popup',\r
-popup_url : 'Popup URL',\r
-popup_name : 'Window name',\r
-popup_return : 'Insert \'return false\'',\r
-popup_scrollbars : 'Show scrollbars',\r
-popup_statusbar : 'Show status bar',\r
-popup_toolbar : 'Show toolbars',\r
-popup_menubar : 'Show menu bar',\r
-popup_location : 'Show location bar',\r
-popup_resizable : 'Make window resizable',\r
-popup_dependent : 'Dependent (Mozilla/Firefox only)',\r
-popup_size : 'Size',\r
-popup_position : 'Position (X/Y)',\r
-id : 'Id',\r
-style: 'Style',\r
-classes : 'Classes',\r
-target_name : 'Target name',\r
-langdir : 'Language direction',\r
-target_langcode : 'Target language',\r
-langcode : 'Language code',\r
-encoding : 'Target character encoding',\r
-mime : 'Target MIME type',\r
-rel : 'Relationship page to target',\r
-rev : 'Relationship target to page',\r
-tabindex : 'Tabindex',\r
-accesskey : 'Accesskey',\r
-ltr : 'Left to right',\r
-rtl : 'Right to left'\r
-});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm
deleted file mode 100644 (file)
index 95d89a1..0000000
+++ /dev/null
@@ -1,338 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_insert_link_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/validate.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/functions.js"></script>\r
-       <link href="css/advlink.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body id="advlink" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-    <form onsubmit="insertAction();return false;" action="#">\r
-               <div class="tabs">\r
-                       <ul>\r
-                               <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_advlink_general_tab}</a></span></li>\r
-                               <li id="popup_tab"><span><a href="javascript:mcTabs.displayTab('popup_tab','popup_panel');" onmousedown="return false;">{$lang_advlink_popup_tab}</a></span></li>\r
-                               <li id="events_tab"><span><a href="javascript:mcTabs.displayTab('events_tab','events_panel');" onmousedown="return false;">{$lang_advlink_events_tab}</a></span></li>\r
-                               <li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{$lang_advlink_advanced_tab}</a></span></li>\r
-                       </ul>\r
-               </div>\r
-\r
-               <div class="panel_wrapper">\r
-                       <div id="general_panel" class="panel current">\r
-                               <fieldset>\r
-                                       <legend>{$lang_advlink_general_props}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                 <td nowrap="nowrap"><label id="hreflabel" for="href">{$lang_insert_link_url}</label></td>\r
-                                                 <td><table border="0" cellspacing="0" cellpadding="0">\r
-                                                               <tr>\r
-                                                                 <td><input id="href" name="href" type="text" value="" onchange="selectByValue(this.form,'linklisthref',this.value);" /></td>\r
-                                                                 <td id="hrefbrowsercontainer">&nbsp;</td>\r
-                                                               </tr>\r
-                                                         </table></td>\r
-                                               </tr>\r
-                                               <tr id="linklisthrefrow">\r
-                                                       <td class="column1"><label for="linklisthref">{$lang_link_list}</label></td>\r
-                                                       <td colspan="2" id="linklisthrefcontainer">&nbsp;</td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="anchorlist">{$lang_advlink_anchor_names}</label></td>\r
-                                                       <td colspan="2" id="anchorlistcontainer">&nbsp;</td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td><label id="targetlistlabel" for="targetlist">{$lang_insert_link_target}</label></td>\r
-                                                       <td id="targetlistcontainer">&nbsp;</td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label id="titlelabel" for="title">{$lang_theme_insert_link_titlefield}</label></td>\r
-                                                       <td><input id="title" name="title" type="text" value="" /></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td><label id="classlabel" for="classlist">{$lang_class_name}</label></td>\r
-                                                       <td>\r
-                                                                <select id="classlist" name="classlist" onchange="changeClass();">\r
-                                                                       <option value="" selected>{$lang_not_set}</option>\r
-                                                                </select>\r
-                                                       </td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="popup_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_advlink_popup_props}</legend>\r
-\r
-                                       <input type="checkbox" id="ispopup" name="ispopup" class="radio" onclick="setPopupControlsDisabled(!this.checked);buildOnClick();" />\r
-                                       <label id="ispopuplabel" for="ispopup">{$lang_advlink_popup}</label>\r
-\r
-                                       <table border="0" cellpadding="0" cellspacing="4">\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="popupurl">{$lang_advlink_popup_url}</label>&nbsp;</td>\r
-                                                       <td>\r
-                                                               <table border="0" cellspacing="0" cellpadding="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="text" name="popupurl" id="popupurl" value="" onchange="buildOnClick();" /></td>\r
-                                                                               <td id="popupurlbrowsercontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="popupname">{$lang_advlink_popup_name}</label>&nbsp;</td>\r
-                                                       <td><input type="text" name="popupname" id="popupname" value="" onchange="buildOnClick();" /></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label>{$lang_advlink_popup_size}</label>&nbsp;</td>\r
-                                                       <td nowrap="nowrap">\r
-                                                               <input type="text" id="popupwidth" name="popupwidth" value="" onchange="buildOnClick();" /> x\r
-                                                               <input type="text" id="popupheight" name="popupheight" value="" onchange="buildOnClick();" /> px\r
-                                                       </td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap" id="labelleft"><label>{$lang_advlink_popup_position}</label>&nbsp;</td>\r
-                                                       <td nowrap="nowrap">\r
-                                                               <input type="text" id="popupleft" name="popupleft" value="" onchange="buildOnClick();" /> /                                \r
-                                                               <input type="text" id="popuptop" name="popuptop" value="" onchange="buildOnClick();" /> (c /c = center)\r
-                                                       </td>\r
-                                               </tr>\r
-                                       </table>\r
-\r
-                                       <fieldset>\r
-                                               <legend>{$lang_advlink_popup_opts}</legend>\r
-\r
-                                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                                       <tr>\r
-                                                               <td><input type="checkbox" id="popuplocation" name="popuplocation" class="checkbox" onchange="buildOnClick();" /></td>\r
-                                                               <td nowrap="nowrap"><label id="popuplocationlabel" for="popuplocation">{$lang_advlink_popup_location}</label></td>\r
-                                                               <td><input type="checkbox" id="popupscrollbars" name="popupscrollbars" class="checkbox" onchange="buildOnClick();" /></td>\r
-                                                               <td nowrap="nowrap"><label id="popupscrollbarslabel" for="popupscrollbars">{$lang_advlink_popup_scrollbars}</label></td>\r
-                                                       </tr>\r
-                                                       <tr>\r
-                                                               <td><input type="checkbox" id="popupmenubar" name="popupmenubar" class="checkbox" onchange="buildOnClick();" /></td>\r
-                                                               <td nowrap="nowrap"><label id="popupmenubarlabel" for="popupmenubar">{$lang_advlink_popup_menubar}</label></td>\r
-                                                               <td><input type="checkbox" id="popupresizable" name="popupresizable" class="checkbox" onchange="buildOnClick();" /></td>\r
-                                                               <td nowrap="nowrap"><label id="popupresizablelabel" for="popupresizable">{$lang_advlink_popup_resizable}</label></td>\r
-                                                       </tr>\r
-                                                       <tr>\r
-                                                               <td><input type="checkbox" id="popuptoolbar" name="popuptoolbar" class="checkbox" onchange="buildOnClick();" /></td>\r
-                                                               <td nowrap="nowrap"><label id="popuptoolbarlabel" for="popuptoolbar">{$lang_advlink_popup_toolbar}</label></td>\r
-                                                               <td><input type="checkbox" id="popupdependent" name="popupdependent" class="checkbox" onchange="buildOnClick();" /></td>\r
-                                                               <td nowrap="nowrap"><label id="popupdependentlabel" for="popupdependent">{$lang_advlink_popup_dependent}</label></td>\r
-                                                       </tr>\r
-                                                       <tr>\r
-                                                               <td><input type="checkbox" id="popupstatus" name="popupstatus" class="checkbox" onchange="buildOnClick();" /></td>\r
-                                                               <td nowrap="nowrap"><label id="popupstatuslabel" for="popupstatus">{$lang_advlink_popup_statusbar}</label></td>\r
-                                                               <td><input type="checkbox" id="popupreturn" name="popupreturn" class="checkbox" onchange="buildOnClick();" checked="checked" /></td>\r
-                                                               <td nowrap="nowrap"><label id="popupreturnlabel" for="popupreturn">{$lang_advlink_popup_return}</label></td>\r
-                                                       </tr>\r
-                                               </table>\r
-                                       </fieldset>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="advanced_panel" class="panel">\r
-                       <fieldset>\r
-                                       <legend>{$lang_advlink_advanced_props}</legend>\r
-\r
-                                       <table border="0" cellpadding="0" cellspacing="4">\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="idlabel" for="id">{$lang_advlink_id}</label></td> \r
-                                                       <td><input id="id" name="id" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="stylelabel" for="style">{$lang_advlink_style}</label></td>\r
-                                                       <td><input type="text" id="style" name="style" value="" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="classeslabel" for="classes">{$lang_advlink_classes}</label></td>\r
-                                                       <td><input type="text" id="classes" name="classes" value="" onchange="selectByValue(this.form,'classlist',this.value,true);" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="targetlabel" for="target">{$lang_advlink_target_name}</label></td>\r
-                                                       <td><input type="text" id="target" name="target" value="" onchange="selectByValue(this.form,'targetlist',this.value,true);" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="dirlabel" for="dir">{$lang_advlink_langdir}</label></td> \r
-                                                       <td>\r
-                                                               <select id="dir" name="dir"> \r
-                                                                               <option value="">{$lang_not_set}</option> \r
-                                                                               <option value="ltr">{$lang_advlink_ltr}</option> \r
-                                                                               <option value="rtl">{$lang_advlink_rtl}</option> \r
-                                                               </select>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="hreflanglabel" for="hreflang">{$lang_advlink_target_langcode}</label></td>\r
-                                                       <td><input type="text" id="hreflang" name="hreflang" value="" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="langlabel" for="lang">{$lang_advlink_langcode}</label></td> \r
-                                                       <td>\r
-                                                               <input id="lang" name="lang" type="text" value="" />\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="charsetlabel" for="charset">{$lang_advlink_encoding}</label></td>\r
-                                                       <td><input type="text" id="charset" name="charset" value="" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="typelabel" for="type">{$lang_advlink_mime}</label></td>\r
-                                                       <td><input type="text" id="type" name="type" value="" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="rellabel" for="rel">{$lang_advlink_rel}</label></td>\r
-                                                       <td><select id="rel" name="rel"> \r
-                                                                       <option value="">{$lang_not_set}</option> \r
-                                                                       <option value="lightbox">Lightbox</option> \r
-                                                                       <option value="alternate">Alternate</option> \r
-                                                                       <option value="designates">Designates</option> \r
-                                                                       <option value="stylesheet">Stylesheet</option> \r
-                                                                       <option value="start">Start</option> \r
-                                                                       <option value="next">Next</option> \r
-                                                                       <option value="prev">Prev</option> \r
-                                                                       <option value="contents">Contents</option> \r
-                                                                       <option value="index">Index</option> \r
-                                                                       <option value="glossary">Glossary</option> \r
-                                                                       <option value="copyright">Copyright</option> \r
-                                                                       <option value="chapter">Chapter</option> \r
-                                                                       <option value="subsection">Subsection</option> \r
-                                                                       <option value="appendix">Appendix</option> \r
-                                                                       <option value="help">Help</option> \r
-                                                                       <option value="bookmark">Bookmark</option>\r
-                                                                       <option value="nofollow">No Follow</option>\r
-                                                                       <option value="tag">Tag</option>\r
-                                                               </select> \r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="revlabel" for="rev">{$lang_advlink_rev}</label></td>\r
-                                                       <td><select id="rev" name="rev"> \r
-                                                                       <option value="">{$lang_not_set}</option> \r
-                                                                       <option value="alternate">Alternate</option> \r
-                                                                       <option value="designates">Designates</option> \r
-                                                                       <option value="stylesheet">Stylesheet</option> \r
-                                                                       <option value="start">Start</option> \r
-                                                                       <option value="next">Next</option> \r
-                                                                       <option value="prev">Prev</option> \r
-                                                                       <option value="contents">Contents</option> \r
-                                                                       <option value="index">Index</option> \r
-                                                                       <option value="glossary">Glossary</option> \r
-                                                                       <option value="copyright">Copyright</option> \r
-                                                                       <option value="chapter">Chapter</option> \r
-                                                                       <option value="subsection">Subsection</option> \r
-                                                                       <option value="appendix">Appendix</option> \r
-                                                                       <option value="help">Help</option> \r
-                                                                       <option value="bookmark">Bookmark</option> \r
-                                                               </select> \r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="tabindexlabel" for="tabindex">{$lang_advlink_tabindex}</label></td>\r
-                                                       <td><input type="text" id="tabindex" name="tabindex" value="" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="accesskeylabel" for="accesskey">{$lang_advlink_accesskey}</label></td>\r
-                                                       <td><input type="text" id="accesskey" name="accesskey" value="" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="events_panel" class="panel">\r
-                       <fieldset>\r
-                                       <legend>{$lang_advlink_event_props}</legend>\r
-\r
-                                       <table border="0" cellpadding="0" cellspacing="4">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onfocus">onfocus</label></td> \r
-                                                       <td><input id="onfocus" name="onfocus" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onblur">onblur</label></td> \r
-                                                       <td><input id="onblur" name="onblur" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onclick">onclick</label></td> \r
-                                                       <td><input id="onclick" name="onclick" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="ondblclick">ondblclick</label></td> \r
-                                                       <td><input id="ondblclick" name="ondblclick" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onmousedown">onmousedown</label></td> \r
-                                                       <td><input id="onmousedown" name="onmousedown" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onmouseup">onmouseup</label></td> \r
-                                                       <td><input id="onmouseup" name="onmouseup" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onmouseover">onmouseover</label></td> \r
-                                                       <td><input id="onmouseover" name="onmouseover" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onmousemove">onmousemove</label></td> \r
-                                                       <td><input id="onmousemove" name="onmousemove" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onmouseout">onmouseout</label></td> \r
-                                                       <td><input id="onmouseout" name="onmouseout" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onkeypress">onkeypress</label></td> \r
-                                                       <td><input id="onkeypress" name="onkeypress" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onkeydown">onkeydown</label></td> \r
-                                                       <td><input id="onkeydown" name="onkeydown" type="text" value="" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="onkeyup">onkeyup</label></td> \r
-                                                       <td><input id="onkeyup" name="onkeyup" type="text" value="" /></td> \r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-               </div>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div style="float: left">\r
-                               <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertAction();" />\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-                       </div>\r
-               </div>\r
-    </form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/advlink/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js
deleted file mode 100644 (file)
index e347646..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('autosave');var TinyMCE_AutoSavePlugin={getInfo:function(){return{longname:'Auto save',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autosave',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},_beforeUnloadHandler:function(){var n,inst,anyDirty=false,msg=tinyMCE.getLang("lang_autosave_unload_msg");if(tinyMCE.getParam("fullscreen_is_enabled"))return;for(n in tinyMCE.instances){inst=tinyMCE.instances[n];if(!tinyMCE.isInstance(inst))continue;if(inst.isDirty())return msg}return}};window.onbeforeunload=TinyMCE_AutoSavePlugin._beforeUnloadHandler;tinyMCE.addPlugin("autosave",TinyMCE_AutoSavePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin_src.js
deleted file mode 100644 (file)
index f76aeeb..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('autosave');\r
-\r
-var TinyMCE_AutoSavePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Auto save',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autosave',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       // Private plugin internal methods\r
-\r
-       _beforeUnloadHandler : function() {\r
-               var n, inst, anyDirty = false, msg = tinyMCE.getLang("lang_autosave_unload_msg");\r
-\r
-               if (tinyMCE.getParam("fullscreen_is_enabled"))\r
-                       return;\r
-\r
-               for (n in tinyMCE.instances) {\r
-                       inst = tinyMCE.instances[n];\r
-\r
-                       if (!tinyMCE.isInstance(inst))\r
-                               continue;\r
-\r
-                       if (inst.isDirty())\r
-                               return msg;\r
-               }\r
-\r
-               return;\r
-       }\r
-};\r
-\r
-window.onbeforeunload = TinyMCE_AutoSavePlugin._beforeUnloadHandler;\r
-\r
-tinyMCE.addPlugin("autosave", TinyMCE_AutoSavePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/langs/en.js
deleted file mode 100644 (file)
index 0195133..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-// EN lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-autosave_unload_msg : 'The changes you made will be lost if you navigate away from this page.'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/autosave/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js
deleted file mode 100644 (file)
index 805aaf4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-var TinyMCE_BBCodePlugin={getInfo:function(){return{longname:'BBCode Plugin',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/bbcode',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},cleanup:function(type,content){var dialect=tinyMCE.getParam('bbcode_dialect','punbb').toLowerCase();switch(type){case"insert_to_editor":content=this['_'+dialect+'_bbcode2html'](content);break;case"get_from_editor":content=this['_'+dialect+'_html2bbcode'](content);break}return content},_punbb_html2bbcode:function(s){s=tinyMCE.trim(s);function rep(re,str){s=s.replace(re,str)};rep(/<a href=\"(.*?)\".*?>(.*?)<\/a>/gi,"[url]$1[/url]");rep(/<font.*?color=\"(.*?)\".*?class=\"codeStyle\".*?>(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]");rep(/<font.*?color=\"(.*?)\".*?class=\"quoteStyle\".*?>(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]");rep(/<font.*?class=\"codeStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]");rep(/<font.*?class=\"quoteStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]");rep(/<font.*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[color=$1]$2[/color]");rep(/<font>(.*?)<\/font>/gi,"$1");rep(/<img.*?src=\"(.*?)\".*?\/>/gi,"[img]$1[/img]");rep(/<span class=\"codeStyle\">(.*?)<\/span>/gi,"[code]$1[/code]");rep(/<span class=\"quoteStyle\">(.*?)<\/span>/gi,"[quote]$1[/quote]");rep(/<strong class=\"codeStyle\">(.*?)<\/strong>/gi,"[code][b]$1[/b][/code]");rep(/<strong class=\"quoteStyle\">(.*?)<\/strong>/gi,"[quote][b]$1[/b][/quote]");rep(/<em class=\"codeStyle\">(.*?)<\/em>/gi,"[code][i]$1[/i][/code]");rep(/<em class=\"quoteStyle\">(.*?)<\/em>/gi,"[quote][i]$1[/i][/quote]");rep(/<u class=\"codeStyle\">(.*?)<\/u>/gi,"[code][u]$1[/u][/code]");rep(/<u class=\"quoteStyle\">(.*?)<\/u>/gi,"[quote][u]$1[/u][/quote]");rep(/<\/(strong|b)>/gi,"[/b]");rep(/<(strong|b)>/gi,"[b]");rep(/<\/(em|i)>/gi,"[/i]");rep(/<(em|i)>/gi,"[i]");rep(/<\/u>/gi,"[/u]");rep(/<u>/gi,"[u]");rep(/<br \/>/gi,"\n");rep(/<br\/>/gi,"\n");rep(/<br>/gi,"\n");rep(/<p>/gi,"");rep(/<\/p>/gi,"\n");rep(/&nbsp;/gi," ");rep(/&quot;/gi,"\"");rep(/&lt;/gi,"<");rep(/&gt;/gi,">");rep(/&amp;/gi,"&");rep(/&undefined;/gi,"'");return s},_punbb_bbcode2html:function(s){s=tinyMCE.trim(s);function rep(re,str){s=s.replace(re,str)};rep(/\n/gi,"<br />");rep(/\[b\]/gi,"<strong>");rep(/\[\/b\]/gi,"</strong>");rep(/\[i\]/gi,"<em>");rep(/\[\/i\]/gi,"</em>");rep(/\[u\]/gi,"<u>");rep(/\[\/u\]/gi,"</u>");rep(/\[url\](.*?)\[\/url\]/gi,"<a href=\"$1\">$1</a>");rep(/\[img\](.*?)\[\/img\]/gi,"<img src=\"$1\" />");rep(/\[color=(.*?)\](.*?)\[\/color\]/gi,"<font color=\"$1\">$2</font>");rep(/\[code\](.*?)\[\/code\]/gi,"<span class=\"codeStyle\">$1</span>&nbsp;");rep(/\[quote.*?\](.*?)\[\/quote\]/gi,"<span class=\"quoteStyle\">$1</span>&nbsp;");return s}};tinyMCE.addPlugin("bbcode",TinyMCE_BBCodePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js
deleted file mode 100644 (file)
index 1d38317..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-var TinyMCE_BBCodePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'BBCode Plugin',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/bbcode',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       cleanup : function(type, content) {\r
-               var dialect = tinyMCE.getParam('bbcode_dialect', 'punbb').toLowerCase();\r
-\r
-               switch (type) {\r
-                       case "insert_to_editor":\r
-                               content = this['_' + dialect + '_bbcode2html'](content);\r
-                               break;\r
-\r
-                       case "get_from_editor":\r
-                               content = this['_' + dialect + '_html2bbcode'](content);\r
-                               break;\r
-               }\r
-\r
-               return content;\r
-       },\r
-\r
-       // Private methods\r
-\r
-       // HTML -> BBCode in PunBB dialect\r
-       _punbb_html2bbcode : function(s) {\r
-               s = tinyMCE.trim(s);\r
-\r
-               function rep(re, str) {\r
-                       s = s.replace(re, str);\r
-               };\r
-\r
-               // example: <strong> to [b]\r
-               rep(/<a href=\"(.*?)\".*?>(.*?)<\/a>/gi,"[url]$1[/url]");\r
-               rep(/<font.*?color=\"(.*?)\".*?class=\"codeStyle\".*?>(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]");\r
-               rep(/<font.*?color=\"(.*?)\".*?class=\"quoteStyle\".*?>(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]");\r
-               rep(/<font.*?class=\"codeStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]");\r
-               rep(/<font.*?class=\"quoteStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]");\r
-               rep(/<font.*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[color=$1]$2[/color]");\r
-               rep(/<font>(.*?)<\/font>/gi,"$1");\r
-               rep(/<img.*?src=\"(.*?)\".*?\/>/gi,"[img]$1[/img]");\r
-               rep(/<span class=\"codeStyle\">(.*?)<\/span>/gi,"[code]$1[/code]");\r
-               rep(/<span class=\"quoteStyle\">(.*?)<\/span>/gi,"[quote]$1[/quote]");\r
-               rep(/<strong class=\"codeStyle\">(.*?)<\/strong>/gi,"[code][b]$1[/b][/code]");\r
-               rep(/<strong class=\"quoteStyle\">(.*?)<\/strong>/gi,"[quote][b]$1[/b][/quote]");\r
-               rep(/<em class=\"codeStyle\">(.*?)<\/em>/gi,"[code][i]$1[/i][/code]");\r
-               rep(/<em class=\"quoteStyle\">(.*?)<\/em>/gi,"[quote][i]$1[/i][/quote]");\r
-               rep(/<u class=\"codeStyle\">(.*?)<\/u>/gi,"[code][u]$1[/u][/code]");\r
-               rep(/<u class=\"quoteStyle\">(.*?)<\/u>/gi,"[quote][u]$1[/u][/quote]");\r
-               rep(/<\/(strong|b)>/gi,"[/b]");\r
-               rep(/<(strong|b)>/gi,"[b]");\r
-               rep(/<\/(em|i)>/gi,"[/i]");\r
-               rep(/<(em|i)>/gi,"[i]");\r
-               rep(/<\/u>/gi,"[/u]");\r
-               rep(/<u>/gi,"[u]");\r
-               rep(/<br \/>/gi,"\n");\r
-               rep(/<br\/>/gi,"\n");\r
-               rep(/<br>/gi,"\n");\r
-               rep(/<p>/gi,"");\r
-               rep(/<\/p>/gi,"\n");\r
-               rep(/&nbsp;/gi," ");\r
-               rep(/&quot;/gi,"\"");\r
-               rep(/&lt;/gi,"<");\r
-               rep(/&gt;/gi,">");\r
-               rep(/&amp;/gi,"&");\r
-               rep(/&undefined;/gi,"'"); // quickfix\r
-\r
-               return s; \r
-       },\r
-\r
-       // BBCode -> HTML from PunBB dialect\r
-       _punbb_bbcode2html : function(s) {\r
-               s = tinyMCE.trim(s);\r
-\r
-               function rep(re, str) {\r
-                       s = s.replace(re, str);\r
-               };\r
-\r
-               // example: [b] to <strong>\r
-               rep(/\n/gi,"<br />");\r
-               rep(/\[b\]/gi,"<strong>");\r
-               rep(/\[\/b\]/gi,"</strong>");\r
-               rep(/\[i\]/gi,"<em>");\r
-               rep(/\[\/i\]/gi,"</em>");\r
-               rep(/\[u\]/gi,"<u>");\r
-               rep(/\[\/u\]/gi,"</u>");\r
-               rep(/\[url\](.*?)\[\/url\]/gi,"<a href=\"$1\">$1</a>");\r
-               rep(/\[img\](.*?)\[\/img\]/gi,"<img src=\"$1\" />");\r
-               rep(/\[color=(.*?)\](.*?)\[\/color\]/gi,"<font color=\"$1\">$2</font>");\r
-               rep(/\[code\](.*?)\[\/code\]/gi,"<span class=\"codeStyle\">$1</span>&nbsp;");\r
-               rep(/\[quote.*?\](.*?)\[\/quote\]/gi,"<span class=\"quoteStyle\">$1</span>&nbsp;");\r
-\r
-               return s; \r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("bbcode", TinyMCE_BBCodePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/cleanup/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/cleanup/editor_plugin.js
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/cleanup/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/cleanup/editor_plugin_src.js
deleted file mode 100644 (file)
index 8e1312f..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 162 2007-01-03 16:16:52Z spocke $\r
- *\r
- * Experimental plugin for new Cleanup routine, this logic will be moved into the core ones it's stable enougth.\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Dummy file since cleanup is now moved to core */\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/cleanup/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/cleanup/readme.txt
deleted file mode 100644 (file)
index d1a6466..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Dummy plugin since cleanup is now moved into core.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/css/contextmenu.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/css/contextmenu.css
deleted file mode 100644 (file)
index fb37214..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-.contextMenuIEPopup {\r
-       padding: 0;\r
-       margin: 0;\r
-       border: 0;\r
-       overflow: hidden;\r
-}\r
-\r
-.contextMenu {\r
-       position: absolute;\r
-       cursor: default;\r
-       z-index: 1000;\r
-       border: 1px solid #D4D0C8;\r
-       background-color: #FFFFFF;\r
-}\r
-\r
-.contextMenuItem, .contextMenuItemOver {\r
-}\r
-\r
-.contextMenuSeparator {\r
-       width: 100%;\r
-       background-color: #D4D0C8;\r
-       border: 0;\r
-}\r
-\r
-.contextMenuImage, .contextMenuItemDisabled {\r
-       border: 0;\r
-}\r
-\r
-.contextMenuIcon {\r
-       background-color: #F0F0EE;\r
-}\r
-\r
-.contextMenuItemOver .contextMenuIcon {\r
-       background-color: #B6BDD2;\r
-}\r
-\r
-.contextMenuIcon {\r
-       background-color: #F0F0EE;\r
-}\r
-\r
-.contextMenuItemDisabled img {\r
-       filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30);\r
-       -moz-opacity:0.3;\r
-       opacity: 0.3;\r
-}\r
-\r
-.contextMenuText {\r
-       font-family: Tahoma, Verdana, Arial, Helvetica;\r
-       font-size: 11px;\r
-       line-height: 20px;\r
-}\r
-\r
-.contextMenuItemDisabled {\r
-       color: #AAAAAA;\r
-}\r
-\r
-.contextMenuText a {\r
-       display: block;\r
-       line-height: 20px;\r
-       width: 100%;\r
-       text-decoration: none;\r
-       color: black;\r
-       font-weight: normal;\r
-       margin: 0;\r
-       padding: 0;\r
-}\r
-\r
-.contextMenuText a:hover {\r
-       background-color: #B6BDD2;\r
-       text-decoration: none !important;\r
-       font-weight: normal;\r
-       margin: 0;\r
-       padding: 0;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js
deleted file mode 100644 (file)
index 8426e0b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-if(!tinyMCE.settings['contextmenu_skip_plugin_css']){tinyMCE.loadCSS(tinyMCE.baseURL+"/plugins/contextmenu/css/contextmenu.css")}var TinyMCE_ContextMenuPlugin={_contextMenu:null,getInfo:function(){return{longname:'Context menus',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){if(tinyMCE.isMSIE5_0&&tinyMCE.isOpera)return;TinyMCE_ContextMenuPlugin._contextMenu=new TinyMCE_ContextMenu({commandhandler:"TinyMCE_ContextMenuPlugin._commandHandler",spacer_image:tinyMCE.baseURL+"/plugins/contextmenu/images/spacer.gif"});tinyMCE.addEvent(inst.getDoc(),"click",TinyMCE_ContextMenuPlugin._hideContextMenu);tinyMCE.addEvent(inst.getDoc(),"keypress",TinyMCE_ContextMenuPlugin._hideContextMenu);tinyMCE.addEvent(inst.getDoc(),"keydown",TinyMCE_ContextMenuPlugin._hideContextMenu);tinyMCE.addEvent(document,"click",TinyMCE_ContextMenuPlugin._hideContextMenu);tinyMCE.addEvent(document,"keypress",TinyMCE_ContextMenuPlugin._hideContextMenu);tinyMCE.addEvent(document,"keydown",TinyMCE_ContextMenuPlugin._hideContextMenu);if(tinyMCE.isGecko){tinyMCE.addEvent(inst.getDoc(),"contextmenu",function(e){TinyMCE_ContextMenuPlugin._showContextMenu(tinyMCE.isMSIE?inst.contentWindow.event:e,inst)})}else tinyMCE.addEvent(inst.getDoc(),"contextmenu",TinyMCE_ContextMenuPlugin._onContextMenu)},_onContextMenu:function(e){var elm=tinyMCE.isMSIE?e.srcElement:e.target;var targetInst,body;if((body=tinyMCE.getParentElement(elm,"body"))!=null){for(var n in tinyMCE.instances){var inst=tinyMCE.instances[n];if(!tinyMCE.isInstance(inst))continue;if(body==inst.getBody()){targetInst=inst;break}}return TinyMCE_ContextMenuPlugin._showContextMenu(tinyMCE.isMSIE?targetInst.contentWindow.event:e,targetInst)}},_showContextMenu:function(e,inst){if(e.ctrlKey)return true;function getAttrib(elm,name){return elm.getAttribute(name)?elm.getAttribute(name):""}var x,y,elm,contextMenu;var pos=tinyMCE.getAbsPosition(inst.iframeElement);x=tinyMCE.isMSIE?e.screenX:pos.absLeft+(e.pageX-inst.getBody().scrollLeft);y=tinyMCE.isMSIE?e.screenY:pos.absTop+(e.pageY-inst.getBody().scrollTop);elm=tinyMCE.isMSIE?e.srcElement:e.target;contextMenu=this._contextMenu;contextMenu.inst=inst;window.setTimeout(function(){var theme=tinyMCE.getParam("theme");contextMenu.clearAll();var sel=inst.selection.getSelectedText().length!=0||elm.nodeName=="IMG";contextMenu.addItem(tinyMCE.baseURL+"/themes/"+theme+"/images/cut.gif","$lang_cut_desc","Cut","",!sel);contextMenu.addItem(tinyMCE.baseURL+"/themes/"+theme+"/images/copy.gif","$lang_copy_desc","Copy","",!sel);contextMenu.addItem(tinyMCE.baseURL+"/themes/"+theme+"/images/paste.gif","$lang_paste_desc","Paste","",false);if(sel||(elm?(elm.nodeName=='A'&&tinyMCE.getAttrib(elm,'name')=='')||(elm.nodeName=='IMG'):false)){contextMenu.addSeparator();contextMenu.addItem(tinyMCE.baseURL+"/themes/advanced/images/link.gif","$lang_link_desc",inst.hasPlugin("advlink")?"mceAdvLink":"mceLink");contextMenu.addItem(tinyMCE.baseURL+"/themes/advanced/images/unlink.gif","$lang_unlink_desc","unlink","",(elm?(elm.nodeName!='A')&&(elm.nodeName!='IMG'):true))}elm=tinyMCE.getParentElement(elm,"img,table,td"+(inst.hasPlugin("advhr")?',hr':''));if(elm){switch(elm.nodeName){case"IMG":contextMenu.addSeparator();if(tinyMCE.hasPlugin('flash')&&tinyMCE.getAttrib(elm,'class').indexOf('mceItemFlash')!=-1)contextMenu.addItem(tinyMCE.baseURL+"/plugins/flash/images/flash.gif","$lang_flash_props","mceFlash");else if(tinyMCE.hasPlugin('media')&&/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(tinyMCE.getAttrib(elm,'class')))contextMenu.addItem(tinyMCE.baseURL+"/plugins/flash/images/flash.gif","$lang_media_title","mceMedia");else contextMenu.addItem(tinyMCE.baseURL+"/themes/"+theme+"/images/image.gif","$lang_image_props_desc",inst.hasPlugin("advimage")?"mceAdvImage":"mceImage");break;case"HR":contextMenu.addSeparator();contextMenu.addItem(tinyMCE.baseURL+"/plugins/advhr/images/advhr.gif","$lang_insert_advhr_desc","mceAdvancedHr");break;case"TABLE":case"TD":if(inst.hasPlugin("table")){var colspan=(elm.nodeName=="TABLE")?"":getAttrib(elm,"colspan");var rowspan=(elm.nodeName=="TABLE")?"":getAttrib(elm,"rowspan");colspan=colspan==""?"1":colspan;rowspan=rowspan==""?"1":rowspan;contextMenu.addSeparator();contextMenu.addItem(tinyMCE.baseURL+"/themes/"+theme+"/images/cut.gif","$lang_table_cut_row_desc","mceTableCutRow");contextMenu.addItem(tinyMCE.baseURL+"/themes/"+theme+"/images/copy.gif","$lang_table_copy_row_desc","mceTableCopyRow");contextMenu.addItem(tinyMCE.baseURL+"/themes/"+theme+"/images/paste.gif","$lang_table_paste_row_before_desc","mceTablePasteRowBefore","",inst.tableRowClipboard==null);contextMenu.addItem(tinyMCE.baseURL+"/themes/"+theme+"/images/paste.gif","$lang_table_paste_row_after_desc","mceTablePasteRowAfter","",inst.tableRowClipboard==null);contextMenu.addSeparator();contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table.gif","$lang_table_desc","mceInsertTable","insert");contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table.gif","$lang_table_props_desc","mceInsertTable");contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_cell_props.gif","$lang_table_cell_desc","mceTableCellProps");contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_delete.gif","$lang_table_del","mceTableDelete");contextMenu.addSeparator();contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_row_props.gif","$lang_table_row_desc","mceTableRowProps");contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_insert_row_before.gif","$lang_table_row_before_desc","mceTableInsertRowBefore");contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_insert_row_after.gif","$lang_table_row_after_desc","mceTableInsertRowAfter");contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_delete_row.gif","$lang_table_delete_row_desc","mceTableDeleteRow");contextMenu.addSeparator();contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_insert_col_before.gif","$lang_table_col_before_desc","mceTableInsertColBefore");contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_insert_col_after.gif","$lang_table_col_after_desc","mceTableInsertColAfter");contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_delete_col.gif","$lang_table_delete_col_desc","mceTableDeleteCol");contextMenu.addSeparator();contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_split_cells.gif","$lang_table_split_cells_desc","mceTableSplitCells","",(colspan=="1"&&rowspan=="1"));contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table_merge_cells.gif","$lang_table_merge_cells_desc","mceTableMergeCells","",false)}break}}else{if(inst.hasPlugin("table")){contextMenu.addSeparator();contextMenu.addItem(tinyMCE.baseURL+"/plugins/table/images/table.gif","$lang_table_desc","mceInsertTable","insert")}}contextMenu.show(x,y)},10);tinyMCE.cancelEvent(e);return false},_hideContextMenu:function(){if(TinyMCE_ContextMenuPlugin._contextMenu)TinyMCE_ContextMenuPlugin._contextMenu.hide()},_commandHandler:function(command,value){var cm=TinyMCE_ContextMenuPlugin._contextMenu;cm.hide();var ui=false;if(command=="mceInsertTable"||command=="mceTableCellProps"||command=="mceTableRowProps"||command=="mceTableMergeCells")ui=true;if(command=="Paste")value=null;if(tinyMCE.getParam("dialog_type")=="modal"&&tinyMCE.isMSIE){window.setTimeout(function(){cm.inst.execCommand(command,ui,value)},100)}else cm.inst.execCommand(command,ui,value)}};tinyMCE.addPlugin("contextmenu",TinyMCE_ContextMenuPlugin);function TinyMCE_ContextMenu(settings){var doc,self=this;function defParam(key,def_val){settings[key]=typeof(settings[key])!="undefined"?settings[key]:def_val}this.isMSIE=(navigator.appName=="Microsoft Internet Explorer");this.contextMenuDiv=document.createElement("div");this.contextMenuDiv.className="contextMenu";this.contextMenuDiv.setAttribute("class","contextMenu");this.contextMenuDiv.style.display="none";this.contextMenuDiv.style.position='absolute';this.contextMenuDiv.style.zindex=1000;this.contextMenuDiv.style.left='0';this.contextMenuDiv.style.top='0';this.contextMenuDiv.unselectable="on";document.body.appendChild(this.contextMenuDiv);defParam("commandhandler","");defParam("spacer_image","images/spacer.gif");this.items=new Array();this.settings=settings;this.html="";if(tinyMCE.isMSIE&&!tinyMCE.isMSIE5_0&&!tinyMCE.isOpera){this.pop=window.createPopup();doc=this.pop.document;doc.open();doc.write('<html><head><link href="'+tinyMCE.baseURL+'/plugins/contextmenu/css/contextmenu.css" rel="stylesheet" type="text/css" /></head><body unselectable="yes" class="contextMenuIEPopup"></body></html>');doc.close()}};TinyMCE_ContextMenu.prototype={clearAll:function(){this.html="";this.contextMenuDiv.innerHTML=""},addSeparator:function(){this.html+='<tr class="contextMenuItem"><td class="contextMenuIcon"><img src="'+this.settings['spacer_image']+'" width="20" height="1" class="contextMenuImage" /></td><td><img class="contextMenuSeparator" width="1" height="1" src="'+this.settings['spacer_image']+'" /></td></tr>'},addItem:function(icon,title,command,value,disabled){if(title.charAt(0)=='$')title=tinyMCE.getLang(title.substring(1));var onMouseDown='';var html='';if(tinyMCE.isMSIE&&!tinyMCE.isMSIE5_0)onMouseDown='contextMenu.execCommand(\''+command+'\', \''+value+'\');return false;';else onMouseDown=this.settings['commandhandler']+'(\''+command+'\', \''+value+'\');return false;';if(icon=="")icon=this.settings['spacer_image'];if(!disabled)html+='<tr class="contextMenuItem">';else html+='<tr class="contextMenuItemDisabled">';html+='<td class="contextMenuIcon"><img src="'+icon+'" width="20" height="20" class="contextMenuImage" /></td>';html+='<td><div class="contextMenuText">';html+='<a href="javascript:void(0);" onclick="'+onMouseDown+'" onmousedown="return false;">&#160;';html+=title;html+='&#160;</a>';html+='</div></td>';html+='</tr>';this.html+=html},show:function(x,y){var vp,width,height,yo;if(this.html=="")return;var html='';html+='<a href="#"></a><table border="0" cellpadding="0" cellspacing="0">';html+=this.html;html+='</table>';this.contextMenuDiv.innerHTML=html;this.contextMenuDiv.style.display="block";width=this.contextMenuDiv.offsetWidth;height=this.contextMenuDiv.offsetHeight;this.contextMenuDiv.style.display="none";if(tinyMCE.isMSIE&&!tinyMCE.isMSIE5_0&&!tinyMCE.isOpera){this.pop.document.body.innerHTML='<div class="contextMenu">'+html+"</div>";this.pop.document.tinyMCE=tinyMCE;this.pop.document.contextMenu=this;this.pop.show(x,y,width,height)}else{vp=this.getViewPort();yo=tinyMCE.isMSIE5_0?document.body.scrollTop:self.pageYOffset;this.contextMenuDiv.style.left=(x>vp.left+vp.width-width?vp.left+vp.width-width:x)+'px';this.contextMenuDiv.style.top=(y>vp.top+vp.height-height?vp.top+vp.height-height:y)+'px';this.contextMenuDiv.style.display="block"}},getViewPort:function(){return{left:self.pageXOffset||self.document.documentElement.scrollLeft||self.document.body.scrollLeft,top:self.pageYOffset||self.document.documentElement.scrollTop||self.document.body.scrollTop,width:document.documentElement.offsetWidth||document.body.offsetWidth,height:self.innerHeight||document.documentElement.clientHeight||document.body.clientHeight}},hide:function(){if(tinyMCE.isMSIE&&!tinyMCE.isMSIE5_0&&!tinyMCE.isOpera)this.pop.hide();else this.contextMenuDiv.style.display="none"},execCommand:function(command,value){eval(this.settings['commandhandler']+"(command, value);")}};
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js
deleted file mode 100644 (file)
index 51340f6..0000000
+++ /dev/null
@@ -1,360 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 264 2007-04-26 20:53:09Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-if (!tinyMCE.settings['contextmenu_skip_plugin_css']) {\r
-       tinyMCE.loadCSS(tinyMCE.baseURL + "/plugins/contextmenu/css/contextmenu.css");\r
-}\r
-\r
-var TinyMCE_ContextMenuPlugin = {\r
-       // Private fields\r
-       _contextMenu : null,\r
-\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Context menus',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               // Is not working on MSIE 5.0 or Opera no contextmenu event\r
-               if (tinyMCE.isMSIE5_0 && tinyMCE.isOpera)\r
-                       return;\r
-\r
-               TinyMCE_ContextMenuPlugin._contextMenu = new TinyMCE_ContextMenu({\r
-                       commandhandler : "TinyMCE_ContextMenuPlugin._commandHandler",\r
-                       spacer_image : tinyMCE.baseURL + "/plugins/contextmenu/images/spacer.gif"\r
-               });\r
-\r
-               // Add hide event handles\r
-               tinyMCE.addEvent(inst.getDoc(), "click", TinyMCE_ContextMenuPlugin._hideContextMenu);\r
-               tinyMCE.addEvent(inst.getDoc(), "keypress", TinyMCE_ContextMenuPlugin._hideContextMenu);\r
-               tinyMCE.addEvent(inst.getDoc(), "keydown", TinyMCE_ContextMenuPlugin._hideContextMenu);\r
-               tinyMCE.addEvent(document, "click", TinyMCE_ContextMenuPlugin._hideContextMenu);\r
-               tinyMCE.addEvent(document, "keypress", TinyMCE_ContextMenuPlugin._hideContextMenu);\r
-               tinyMCE.addEvent(document, "keydown", TinyMCE_ContextMenuPlugin._hideContextMenu);\r
-\r
-               // Attach contextmenu event\r
-               if (tinyMCE.isGecko) {\r
-                       tinyMCE.addEvent(inst.getDoc(), "contextmenu", function(e) {TinyMCE_ContextMenuPlugin._showContextMenu(tinyMCE.isMSIE ? inst.contentWindow.event : e, inst);});\r
-               } else\r
-                       tinyMCE.addEvent(inst.getDoc(), "contextmenu", TinyMCE_ContextMenuPlugin._onContextMenu);\r
-       },\r
-\r
-       // Private plugin internal methods\r
-\r
-       _onContextMenu : function(e) {\r
-               var elm = tinyMCE.isMSIE ? e.srcElement : e.target;\r
-               var targetInst, body;\r
-\r
-               // Find instance\r
-               if ((body = tinyMCE.getParentElement(elm, "body")) != null) {\r
-                       for (var n in tinyMCE.instances) {\r
-                               var inst = tinyMCE.instances[n];\r
-                               if (!tinyMCE.isInstance(inst))\r
-                                       continue;\r
-\r
-                               if (body == inst.getBody()) {\r
-                                       targetInst = inst;\r
-                                       break;\r
-                               }\r
-                       }\r
-\r
-                       return TinyMCE_ContextMenuPlugin._showContextMenu(tinyMCE.isMSIE ? targetInst.contentWindow.event : e, targetInst);\r
-               }\r
-       },\r
-\r
-       _showContextMenu : function(e, inst) {\r
-               if (e.ctrlKey)\r
-                       return true;\r
-\r
-               function getAttrib(elm, name) {\r
-                       return elm.getAttribute(name) ? elm.getAttribute(name) : "";\r
-               }\r
-\r
-               var x, y, elm, contextMenu;\r
-               var pos = tinyMCE.getAbsPosition(inst.iframeElement);\r
-\r
-               x = tinyMCE.isMSIE ? e.screenX : pos.absLeft + (e.pageX - inst.getBody().scrollLeft);\r
-               y = tinyMCE.isMSIE ? e.screenY : pos.absTop + (e.pageY - inst.getBody().scrollTop);\r
-               elm = tinyMCE.isMSIE ? e.srcElement : e.target;\r
-\r
-               contextMenu = this._contextMenu;\r
-               contextMenu.inst = inst;\r
-\r
-               // Mozilla needs some time\r
-               window.setTimeout(function () {\r
-                       var theme = tinyMCE.getParam("theme");\r
-\r
-                       contextMenu.clearAll();\r
-                       var sel = inst.selection.getSelectedText().length != 0 || elm.nodeName == "IMG";\r
-\r
-                       // Default items\r
-                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/cut.gif", "$lang_cut_desc", "Cut", "", !sel);\r
-                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/copy.gif", "$lang_copy_desc", "Copy", "", !sel);\r
-                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/paste.gif", "$lang_paste_desc", "Paste", "", false);\r
-\r
-                       if (sel || (elm ? (elm.nodeName == 'A' && tinyMCE.getAttrib(elm, 'name') == '') || (elm.nodeName == 'IMG') : false)) {\r
-                               contextMenu.addSeparator();\r
-                               contextMenu.addItem(tinyMCE.baseURL + "/themes/advanced/images/link.gif", "$lang_link_desc", inst.hasPlugin("advlink") ? "mceAdvLink" : "mceLink");\r
-                               contextMenu.addItem(tinyMCE.baseURL + "/themes/advanced/images/unlink.gif", "$lang_unlink_desc", "unlink", "", (elm ? (elm.nodeName != 'A') && (elm.nodeName != 'IMG') : true));\r
-                       }\r
-\r
-                       // Get element\r
-                       elm = tinyMCE.getParentElement(elm, "img,table,td" + (inst.hasPlugin("advhr") ? ',hr' : ''));\r
-                       if (elm) {\r
-                               switch (elm.nodeName) {\r
-                                       case "IMG":\r
-                                               contextMenu.addSeparator();\r
-\r
-                                               // If flash\r
-                                               if (tinyMCE.hasPlugin('flash') && tinyMCE.getAttrib(elm, 'class').indexOf('mceItemFlash') != -1)\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/flash/images/flash.gif", "$lang_flash_props", "mceFlash");\r
-                                               else if (tinyMCE.hasPlugin('media') && /mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(tinyMCE.getAttrib(elm, 'class')))\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/flash/images/flash.gif", "$lang_media_title", "mceMedia");\r
-                                               else\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/image.gif", "$lang_image_props_desc", inst.hasPlugin("advimage") ? "mceAdvImage" : "mceImage");\r
-                                               break;\r
-\r
-                                       case "HR":\r
-                                               contextMenu.addSeparator();\r
-                                               contextMenu.addItem(tinyMCE.baseURL + "/plugins/advhr/images/advhr.gif", "$lang_insert_advhr_desc", "mceAdvancedHr");\r
-                                               break;\r
-\r
-                                       case "TABLE":\r
-                                       case "TD":\r
-                                               // Is table plugin loaded\r
-                                               if (inst.hasPlugin("table")) {\r
-                                                       var colspan = (elm.nodeName == "TABLE") ? "" : getAttrib(elm, "colspan");\r
-                                                       var rowspan = (elm.nodeName == "TABLE") ? "" : getAttrib(elm, "rowspan");\r
-\r
-                                                       colspan = colspan == "" ? "1" : colspan;\r
-                                                       rowspan = rowspan == "" ? "1" : rowspan;\r
-\r
-                                                       contextMenu.addSeparator();\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/cut.gif", "$lang_table_cut_row_desc", "mceTableCutRow");\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/copy.gif", "$lang_table_copy_row_desc", "mceTableCopyRow");\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/paste.gif", "$lang_table_paste_row_before_desc", "mceTablePasteRowBefore", "", inst.tableRowClipboard == null);\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/paste.gif", "$lang_table_paste_row_after_desc", "mceTablePasteRowAfter", "", inst.tableRowClipboard == null);\r
-\r
-       /*                                              contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/justifyleft.gif", "$lang_justifyleft_desc", "JustifyLeft", "", false);\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/justifycenter.gif", "$lang_justifycenter_desc", "JustifyCenter", "", false);\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/justifyright.gif", "$lang_justifyright_desc", "JustifyRight", "", false);\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/themes/" + theme + "/images/justifyfull.gif", "$lang_justifyfull_desc", "JustifyFull", "", false);*/\r
-                                                       contextMenu.addSeparator();\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table.gif", "$lang_table_desc", "mceInsertTable", "insert");\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table.gif", "$lang_table_props_desc", "mceInsertTable");\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_cell_props.gif", "$lang_table_cell_desc", "mceTableCellProps");\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_delete.gif", "$lang_table_del", "mceTableDelete");\r
-                                                       contextMenu.addSeparator();\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_row_props.gif", "$lang_table_row_desc", "mceTableRowProps");\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_insert_row_before.gif", "$lang_table_row_before_desc", "mceTableInsertRowBefore");\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_insert_row_after.gif", "$lang_table_row_after_desc", "mceTableInsertRowAfter");\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_delete_row.gif", "$lang_table_delete_row_desc", "mceTableDeleteRow");\r
-                                                       contextMenu.addSeparator();\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_insert_col_before.gif", "$lang_table_col_before_desc", "mceTableInsertColBefore");\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_insert_col_after.gif", "$lang_table_col_after_desc", "mceTableInsertColAfter");\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_delete_col.gif", "$lang_table_delete_col_desc", "mceTableDeleteCol");\r
-                                                       contextMenu.addSeparator();\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_split_cells.gif", "$lang_table_split_cells_desc", "mceTableSplitCells", "", (colspan == "1" && rowspan == "1"));\r
-                                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table_merge_cells.gif", "$lang_table_merge_cells_desc", "mceTableMergeCells", "", false);\r
-                                               }\r
-                                               break;\r
-                               }\r
-                       }  else {\r
-                               // Add table specific\r
-                               if (inst.hasPlugin("table")) {\r
-                                       contextMenu.addSeparator();\r
-                                       contextMenu.addItem(tinyMCE.baseURL + "/plugins/table/images/table.gif", "$lang_table_desc", "mceInsertTable", "insert");\r
-                               }\r
-                       }\r
-\r
-                       contextMenu.show(x, y);\r
-               }, 10);\r
-\r
-               // Cancel default handeling\r
-               tinyMCE.cancelEvent(e);\r
-               return false;\r
-       },\r
-\r
-       _hideContextMenu : function() {\r
-               if (TinyMCE_ContextMenuPlugin._contextMenu)\r
-                       TinyMCE_ContextMenuPlugin._contextMenu.hide();\r
-       },\r
-\r
-       _commandHandler : function(command, value) {\r
-               var cm = TinyMCE_ContextMenuPlugin._contextMenu;\r
-\r
-               cm.hide();\r
-\r
-               // UI must be true on these\r
-               var ui = false;\r
-               if (command == "mceInsertTable" || command == "mceTableCellProps" || command == "mceTableRowProps" || command == "mceTableMergeCells")\r
-                       ui = true;\r
-\r
-               if (command == "Paste")\r
-                       value = null;\r
-\r
-               if (tinyMCE.getParam("dialog_type") == "modal" && tinyMCE.isMSIE) {\r
-                       // Cell properties will generate access denied error is this isn't done?!\r
-                       window.setTimeout(function() {\r
-                               cm.inst.execCommand(command, ui, value);\r
-                       }, 100);\r
-               } else\r
-                       cm.inst.execCommand(command, ui, value);\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("contextmenu", TinyMCE_ContextMenuPlugin);\r
-\r
-// Context menu class\r
-\r
-function TinyMCE_ContextMenu(settings) {\r
-       var doc, self = this;\r
-\r
-       // Default value function\r
-       function defParam(key, def_val) {\r
-               settings[key] = typeof(settings[key]) != "undefined" ? settings[key] : def_val;\r
-       }\r
-\r
-       this.isMSIE = (navigator.appName == "Microsoft Internet Explorer");\r
-\r
-       // Setup contextmenu div\r
-       this.contextMenuDiv = document.createElement("div");\r
-       this.contextMenuDiv.className = "contextMenu";\r
-       this.contextMenuDiv.setAttribute("class", "contextMenu");\r
-       this.contextMenuDiv.style.display = "none";\r
-       this.contextMenuDiv.style.position = 'absolute';\r
-       this.contextMenuDiv.style.zindex = 1000;\r
-       this.contextMenuDiv.style.left = '0';\r
-       this.contextMenuDiv.style.top = '0';\r
-       this.contextMenuDiv.unselectable = "on";\r
-\r
-       document.body.appendChild(this.contextMenuDiv);\r
-\r
-       // Setup default values\r
-       defParam("commandhandler", "");\r
-       defParam("spacer_image", "images/spacer.gif");\r
-\r
-       this.items = new Array();\r
-       this.settings = settings;\r
-       this.html = "";\r
-\r
-       // IE Popup\r
-       if (tinyMCE.isMSIE && !tinyMCE.isMSIE5_0 && !tinyMCE.isOpera) {\r
-               this.pop = window.createPopup();\r
-               doc = this.pop.document;\r
-               doc.open();\r
-               doc.write('<html><head><link href="' + tinyMCE.baseURL + '/plugins/contextmenu/css/contextmenu.css" rel="stylesheet" type="text/css" /></head><body unselectable="yes" class="contextMenuIEPopup"></body></html>');\r
-               doc.close();\r
-       }\r
-};\r
-\r
-TinyMCE_ContextMenu.prototype = {\r
-       clearAll : function() {\r
-               this.html = "";\r
-               this.contextMenuDiv.innerHTML = "";\r
-       },\r
-\r
-       addSeparator : function() {\r
-               this.html += '<tr class="contextMenuItem"><td class="contextMenuIcon"><img src="' + this.settings['spacer_image'] + '" width="20" height="1" class="contextMenuImage" /></td><td><img class="contextMenuSeparator" width="1" height="1" src="' + this.settings['spacer_image'] + '" /></td></tr>';\r
-       },\r
-\r
-       addItem : function(icon, title, command, value, disabled) {\r
-               if (title.charAt(0) == '$')\r
-                       title = tinyMCE.getLang(title.substring(1));\r
-\r
-               var onMouseDown = '';\r
-               var html = '';\r
-\r
-               if (tinyMCE.isMSIE && !tinyMCE.isMSIE5_0)\r
-                       onMouseDown = 'contextMenu.execCommand(\'' + command + '\', \'' + value + '\');return false;';\r
-               else\r
-                       onMouseDown = this.settings['commandhandler'] + '(\'' + command + '\', \'' + value + '\');return false;';\r
-\r
-               if (icon == "")\r
-                       icon = this.settings['spacer_image'];\r
-\r
-               if (!disabled)\r
-                       html += '<tr class="contextMenuItem">';\r
-               else\r
-                       html += '<tr class="contextMenuItemDisabled">';\r
-\r
-               html += '<td class="contextMenuIcon"><img src="' + icon + '" width="20" height="20" class="contextMenuImage" /></td>';\r
-               html += '<td><div class="contextMenuText">';\r
-               html += '<a href="javascript:void(0);" onclick="' + onMouseDown + '" onmousedown="return false;">&#160;';\r
-\r
-               // Add text\r
-               html += title;\r
-\r
-               html += '&#160;</a>';\r
-               html += '</div></td>';\r
-               html += '</tr>';\r
-\r
-               // Add to main\r
-               this.html += html;\r
-       },\r
-\r
-       show : function(x, y) {\r
-               var vp, width, height, yo;\r
-\r
-               if (this.html == "")\r
-                       return;\r
-\r
-               var html = '';\r
-\r
-               html += '<a href="#"></a><table border="0" cellpadding="0" cellspacing="0">';\r
-               html += this.html;\r
-               html += '</table>';\r
-\r
-               this.contextMenuDiv.innerHTML = html;\r
-\r
-               // Get dimensions\r
-               this.contextMenuDiv.style.display = "block";\r
-               width = this.contextMenuDiv.offsetWidth;\r
-               height = this.contextMenuDiv.offsetHeight;\r
-               this.contextMenuDiv.style.display = "none";\r
-\r
-               if (tinyMCE.isMSIE && !tinyMCE.isMSIE5_0 && !tinyMCE.isOpera) {\r
-                       // Setup popup and show\r
-                       this.pop.document.body.innerHTML = '<div class="contextMenu">' + html + "</div>";\r
-                       this.pop.document.tinyMCE = tinyMCE;\r
-                       this.pop.document.contextMenu = this;\r
-                       this.pop.show(x, y, width, height);\r
-               } else {\r
-                       vp = this.getViewPort();\r
-                       yo = tinyMCE.isMSIE5_0 ? document.body.scrollTop : self.pageYOffset;\r
-                       this.contextMenuDiv.style.left = (x > vp.left + vp.width - width ? vp.left + vp.width - width : x) + 'px';\r
-                       this.contextMenuDiv.style.top = (y > vp.top + vp.height - height ? vp.top + vp.height - height : y) + 'px';\r
-                       this.contextMenuDiv.style.display = "block";\r
-               }\r
-       },\r
-\r
-       getViewPort : function() {\r
-               return {\r
-                       left : self.pageXOffset || self.document.documentElement.scrollLeft || self.document.body.scrollLeft,\r
-                       top: self.pageYOffset || self.document.documentElement.scrollTop || self.document.body.scrollTop,\r
-                       width : document.documentElement.offsetWidth || document.body.offsetWidth,\r
-                       height : self.innerHeight || document.documentElement.clientHeight || document.body.clientHeight\r
-               };\r
-       },\r
-\r
-       hide : function() {\r
-               if (tinyMCE.isMSIE && !tinyMCE.isMSIE5_0 && !tinyMCE.isOpera)\r
-                       this.pop.hide();\r
-               else\r
-                       this.contextMenuDiv.style.display = "none";\r
-       },\r
-\r
-       execCommand : function(command, value) {\r
-               eval(this.settings['commandhandler'] + "(command, value);");\r
-       }\r
-};\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/images/spacer.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/images/spacer.gif
deleted file mode 100644 (file)
index 3884865..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/images/spacer.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/contextmenu/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/css/devkit.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/css/devkit.css
deleted file mode 100644 (file)
index 27eaac0..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-body {\r
-       overflow: hidden;\r
-}\r
-\r
-h1 {\r
-       font-size: 14px;\r
-       margin: 0 0 10px 0;\r
-}\r
-\r
-h2 {\r
-       font-size: 12px;\r
-       margin: 3px 0 3px 0;\r
-}\r
-\r
-h3 {\r
-       font-size: 11px;\r
-       margin: 3px 0 3px 0;\r
-}\r
-\r
-#log {\r
-       font-family: Verdana;\r
-       border: 1px solid gray;\r
-       width: 100%; height: 240px;\r
-       overflow: scroll;\r
-       white-space: nowrap;\r
-}\r
-\r
-#log span {\r
-       display: block;\r
-}\r
-\r
-#log span.msg {\r
-       float: left;\r
-}\r
-\r
-#log span.time {\r
-       float: left;\r
-}\r
-\r
-#log br {\r
-       clear: both;\r
-}\r
-\r
-#logfilter {\r
-       width: 350px;\r
-}\r
-\r
-#logenabled {\r
-       border: 0;\r
-}\r
-\r
-#settings_panel span, #info_panel span, #content_panel span, #command_states_panel span, #undo_redo_panel span {\r
-       display: block;\r
-       margin: 5px 0 5px 0;\r
-}\r
-\r
-div.data {\r
-       width: 100%; height: 240px;\r
-       overflow: scroll;\r
-       border: 1px solid gray;\r
-}\r
-\r
-#misc_panel div.data {\r
-       height: 270px;\r
-}\r
-\r
-.data input {\r
-       width: 265px;\r
-       border: 0;\r
-}\r
-\r
-.data h2 {\r
-       margin-left: 5px;\r
-}\r
-\r
-.data h3 {\r
-       margin-left: 7px;\r
-}\r
-\r
-.data div {\r
-       margin-left: 7px;\r
-}\r
-\r
-.data table {\r
-       margin: 0 0 15px 15px;\r
-}\r
-\r
-.data p {\r
-       margin: 0; padding: 0;\r
-       margin-top: 5px;\r
-       margin-left: 5px;\r
-}\r
-\r
-table, td {\r
-       border: 1px solid gray;\r
-       border-collapse: collapse;\r
-}\r
-\r
-#flip {\r
-       position: absolute;\r
-       left: 295; top: 384px;\r
-}\r
-\r
-.bspec {\r
-       color: gray;\r
-}\r
-\r
-.dep {\r
-       color: #880000;\r
-}\r
-\r
-.col1 {\r
-       width: 265px;\r
-}\r
-\r
-div.undodata {\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/css/devkit_ui.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/css/devkit_ui.css
deleted file mode 100644 (file)
index 6713abc..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-#devkit {\r
-       position: absolute;\r
-       top: -385px; right: 0;\r
-       width: 640px; height: 390px;\r
-       border: 1px solid black;\r
-       z-index: 10000;\r
-}\r
-\r
-.devkitup {\r
-       top: -385px !important;\r
-}\r
-\r
-.devkitdown {\r
-       top: 0 !important;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/devkit.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/devkit.htm
deleted file mode 100644 (file)
index 92a339b..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_devkit_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/devkit.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/diff.js"></script>\r
-       <link href="css/devkit.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body id="devkit" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-    <form action="#">\r
-               <h1>{$lang_devkit_title}</h1>\r
-\r
-               <div class="tabs">\r
-                       <ul>\r
-                               <li id="log_tab" class="current"><span><a href="javascript:mcTabs.displayTab('log_tab','log_panel');" onmousedown="return false;">{$lang_devkit_log_tab}</a></span></li>\r
-                               <li id="info_tab"><span><a href="javascript:mcTabs.displayTab('info_tab','info_panel');" onmousedown="return false;">{$lang_devkit_info_tab}</a></span></li>\r
-                               <li id="settings_tab"><span><a href="javascript:mcTabs.displayTab('settings_tab','settings_panel');" onmousedown="return false;">{$lang_devkit_settings_tab}</a></span></li>\r
-                               <li id="content_tab"><span><a href="javascript:mcTabs.displayTab('content_tab','content_panel');" onmousedown="return false;">{$lang_devkit_content_tab}</a></span></li>\r
-                               <!-- <li id="command_states_tab"><span><a href="javascript:mcTabs.displayTab('command_states_tab','command_states_panel');" onmousedown="return false;">{$lang_devkit_command_states_tab}</a></span></li> -->\r
-                               <li id="undo_redo_tab"><span><a href="javascript:mcTabs.displayTab('undo_redo_tab','undo_redo_panel');" onmousedown="return false;">{$lang_devkit_undo_redo_tab}</a></span></li>\r
-                               <li id="misc_tab"><span><a href="javascript:mcTabs.displayTab('misc_tab','misc_panel');" onmousedown="return false;">{$lang_devkit_misc_tab}</a></span></li>\r
-                       </ul>\r
-               </div>\r
-\r
-               <div class="panel_wrapper">\r
-                       <div id="log_panel" class="panel current">\r
-                               <fieldset>\r
-                                       <legend>{$lang_devkit_log_tab}</legend>\r
-\r
-                                       <div style="float: left">\r
-                                               <label>{$lang_devkit_filter} </label><input type="text" id="logfilter" name="logfilter" value="" onchange="changeFilter(this.value);" />\r
-                                       </div>\r
-\r
-                                       <div style="float: left">\r
-                                               <input type="checkbox" id="logenabled" name="logenabled" value="true" checked="checked" onclick="toggleLog(this.checked);" />\r
-                                       </div>\r
-\r
-                                       <div style="float: right">\r
-                                               <a href="javascript:clearLog();">[{$lang_devkit_clear_log}]</a>\r
-                                       </div>\r
-\r
-                                       <br style="clear: both" />\r
-\r
-                                       <div id="log">\r
-                                       </div>\r
-\r
-                                       <input type="checkbox" id="debug_events" name="debug_events" class="checkbox" onclick="toggleDebugEvents(this.checked);" /><label for="debug_events" onclick="toggleDebugEvents(this.form.debug_events.checked);">{$lang_devkit_debug_events}</label>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="info_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_devkit_info_tab}</legend>\r
-\r
-                                       <span><a href="javascript:renderInfo();">[{$lang_devkit_refresh}]</a></span>\r
-\r
-                                       <div id="info" class="data">\r
-                                               <p>{$lang_devkit_info_help}</p>\r
-                                       </div>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="settings_panel" class="panel">\r
-                       <fieldset>\r
-                                       <legend>{$lang_devkit_settings_tab}</legend>\r
-\r
-                                       <span><a href="javascript:renderSettings();">[{$lang_devkit_refresh}]</a></span>\r
-\r
-                                       <div id="settings" class="data">\r
-                                               <p>{$lang_devkit_settings_help}</p>\r
-                                       </div>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="content_panel" class="panel">\r
-                       <fieldset>\r
-                                       <legend>{$lang_devkit_content_tab}</legend>\r
-\r
-                                       <span><a href="javascript:renderContent();">[{$lang_devkit_refresh}]</a></span>\r
-\r
-                                       <div id="content" class="data">\r
-                                               <p>{$lang_devkit_content_help}</p>\r
-                                       </div>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="command_states_panel" class="panel">\r
-                       <fieldset>\r
-                                       <legend>{$lang_devkit_command_states_tab}</legend>\r
-\r
-                                       <span><a href="javascript:renderCommandStates();">[{$lang_devkit_refresh}]</a></span>\r
-\r
-                                       <div id="command_states" class="data">\r
-                                               <p>{$lang_devkit_command_states_help}</p>\r
-                                       </div>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="undo_redo_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_devkit_undo_redo_tab}</legend>\r
-\r
-                                       <span><a href="javascript:renderUndoRedo();">[{$lang_devkit_refresh}]</a></span>\r
-\r
-                                       <div id="undo_redo" class="data">\r
-                                               <p>{$lang_devkit_undo_redo_help}</p>\r
-                                       </div>\r
-\r
-                                       <input type="checkbox" id="undo_diff" name="undo_diff" class="checkbox" /><label for="undo_diff">{$lang_devkit_undo_diff}</label>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="misc_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_devkit_misc_tab}</legend>\r
-\r
-                                       <div class="data">\r
-                                               <p>{$lang_devkit_misc_help}</p>\r
-                                               <hr />\r
-                                               <p>Selection: <a href="#" onmousedown="return storeSelection();">[Store selection]</a> <a href="#" onmousedown="return restoreSelection();">[Restore selection]</a></p>\r
-                                               <hr />\r
-                                               <div><strong>Insert custom HTML content</strong></div>\r
-                                               <div><textarea id="htmlcont" name="htmlcont" style="width: 90%" rows="5"></textarea></div>\r
-                                               <div><a href="#" onclick="return tinyMCE.execCommand('mceInsertContent',false,document.getElementById('htmlcont').value);">[Insert content]</a></div>\r
-                                               <hr />\r
-                                               <div><strong>Eval JS:</strong></div>\r
-                                               <div><textarea id="jscont" name="jscont" style="width: 90%" rows="5">tinyMCE.execCommand('Bold',false,null);</textarea></div>\r
-                                               <div><a href="#" onclick="return parent.window.eval(document.getElementById('jscont').value);">[Evaluate]</a></div>\r
-                                       </div>\r
-                               </fieldset>\r
-                       </div>\r
-               </div>\r
-    </form>\r
-\r
-       <div id="flip"><a href="javascript:toggleFlip();" onmousedown="return false;"><img id="flipbtn" src="images/flip_down.gif" border="0" /></a></div>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/editor_plugin.js
deleted file mode 100644 (file)
index 8a5d64c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('devkit');var TinyMCE_DevKitPlugin={_logFilter:'\\[(importCSS|execCommand|execInstanceCommand|debug)\\]',_logPadding:'',_startTime:null,_benchMark:false,_winLoaded:false,_isDebugEvents:false,getInfo:function(){return{longname:'Development Kit',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/devkit',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){this._setup()},_setup:function(){if(this._loaded)return;this._loaded=true;document.___TinyMCE=tinyMCE;this._logFilter=tinyMCE.getParam('devkit_log_filter',this._logFilter);this._benchMark=tinyMCE.getParam('devkit_bench_mark',false);var ifr=document.createElement('iframe');ifr.setAttribute("id","devkit");ifr.setAttribute("frameBorder","0");ifr.setAttribute("src",tinyMCE.baseURL+'/plugins/devkit/devkit.htm');document.body.appendChild(ifr);tinyMCE.importCSS(document,tinyMCE.baseURL+'/plugins/devkit/css/devkit_ui.css')},_start:function(){this._logPadding+='\u00a0';return new Date().getTime()},_end:function(st){if(this._logPadding.length>0)this._logPadding=this._logPadding.substring(0,this._logPadding.length-1);if(this._benchMark)this._log("benchmark","Execution time: "+(new Date().getTime()-st))},_log:function(t){var m,a,i,e=document.getElementById('devkit'),now=new Date().getTime();if(!this._startTime)this._startTime=now;m=(this._logPadding.length>1?this._logPadding:'')+'['+(now-this._startTime)+'] ['+t+'] ';a=this._log.arguments;for(i=1;i<a.length;i++){if(typeof(a[i])=='undefined')continue;if(i>1)m+=', ';m+=a[i]}if(!new RegExp(this._logFilter,'gi').test(m)){if(this._logPadding.length>0)this._logPadding=this._logPadding.substring(0,this._logPadding.length-1);return}if(!this._winLoaded)tinyMCE.log[tinyMCE.log.length]=m;else e.contentWindow.debug(m)},_debugEvents:function(s){var i,ld,inst,n,ev=['CheckboxStateChange','DOMAttrModified','DOMMenuItemActive','DOMMenuItemInactive','DOMMouseScroll','DOMNodeInserted','DOMNodeRemoved','RadioStateChange','blur','broadcast','change','click','close','command','commandupdate','contextmenu','dblclick','dragdrop','dragenter','dragexit','draggesture','dragover','focus','input','keydown','keypress','keyup','load','mousedown','mouseout','mouseover','mouseup','overflow','overflowchanged','popuphidden','popuphiding','popupshowing','popupshown','select','syncfrompreference','synctopreference','underflow','unload','abort','activate','afterprint','afterupdate','beforeactivate','beforecopy','beforecut','beforedeactivate','beforeeditfocus','beforepaste','beforeprint','beforeunload','beforeupdate','bounce','cellchange','controlselect','copy','cut','dataavailable','datasetchanged','datasetcomplete','deactivate','dragend','dragleave','dragstart','drop','error','errorupdate','filterchange','finish','focusin','focusout','help','layoutcomplete','losecapture','mouseenter','mouseleave','mousewheel','move','moveend','movestart','paste','propertychange','readystatechange','reset','resize','resizeend','resizestart','rowenter','rowexit','rowsdelete','rowsinserted','scroll','selectionchange','selectstart','start','stop','submit'];if(TinyMCE_DevKitPlugin._isDebugEvents==s)return;TinyMCE_DevKitPlugin._isDebugEvents=s;for(n in tinyMCE.instances){inst=tinyMCE.instances[n];if(!tinyMCE.isInstance(inst)||inst.getDoc()==ld)continue;ld=inst.getDoc();for(i=0;i<ev.length;i++){if(s)tinyMCE.addEvent(ld,ev[i],TinyMCE_DevKitPlugin._debugEvent);else tinyMCE.removeEvent(ld,ev[i],TinyMCE_DevKitPlugin._debugEvent)}}},_debugEvent:function(e){var t;e=e?e:tinyMCE.selectedInstance.getWin().event;t=e.srcElement?e.srcElement:e.target;tinyMCE.debug(e.type,t?t.nodeName:'')},_serialize:function(o){var i,v,s=TinyMCE_DevKitPlugin._serialize;if(o==null)return'null';switch(typeof o){case'string':v='\bb\tt\nn\ff\rr\""\'\'\\\\';return'"'+o.replace(new RegExp('([\u0080-\uFFFF\\x00-\\x1f\\"])','g'),function(a,b){i=v.indexOf(b);if(i+1)return'\\'+v.charAt(i+1);a=b.charCodeAt().toString(16);return'\\u'+'0000'.substring(a.length)+a})+'"';case'object':if(o instanceof Array){for(i=0,v='[';i<o.length;i++)v+=(i>0?',':'')+s(o[i]);return v+']'}v='{';for(i in o)v+=typeof o[i]!='function'?(v.length>1?',"':'"')+i+'":'+s(o[i]):'';return v+'}'}return''+o}};tinyMCE.__debug=tinyMCE.debug;tinyMCE.debug=function(){var a,i,m='',now=new Date().getTime(),start=TinyMCE_DevKitPlugin._startTime;if(!start)TinyMCE_DevKitPlugin._startTime=start=now;a=this.debug.arguments;for(i=0;i<a.length;i++){if(typeof(a[i])=='undefined')continue;if(i>0)m+=', ';m+=a[i]}TinyMCE_DevKitPlugin._log('debug',m)};tinyMCE.dump=function(o){tinyMCE.debug(TinyMCE_DevKitPlugin._serialize(o))};tinyMCE.sleep=function(t){var s=new Date().getTime(),b;while(new Date().getTime()-s<t)b=1};tinyMCE.__execCommand=tinyMCE.execCommand;tinyMCE.execCommand=function(command,user_interface,value){var r,st,dk=TinyMCE_DevKitPlugin;st=dk._start();dk._log('execCommand',command,user_interface,value);r=tinyMCE.__execCommand(command,user_interface,value);dk._end(st);return r};tinyMCE.__execInstanceCommand=tinyMCE.execInstanceCommand;tinyMCE.execInstanceCommand=function(editor_id,command,user_interface,value,focus){var r,st,dk=TinyMCE_DevKitPlugin;st=dk._start();dk._log('execInstanceCommand',editor_id,command,user_interface,value);r=tinyMCE.__execInstanceCommand(editor_id,command,user_interface,value);dk._end(st);return r};TinyMCE_Engine.prototype.__handleEvent=TinyMCE_Engine.prototype.handleEvent;TinyMCE_Engine.prototype.handleEvent=function(e){var r,st,dk=TinyMCE_DevKitPlugin;st=dk._start();dk._log('handleEvent',e.type);r=tinyMCE.__handleEvent(e);dk._end(st);return r};tinyMCE.__importCSS=tinyMCE.importCSS;tinyMCE.importCSS=function(doc,css){var r,st,dk=TinyMCE_DevKitPlugin;st=dk._start();dk._log('importCSS',doc,css);r=tinyMCE.__importCSS(doc,css);dk._end(st);return r};tinyMCE.__triggerNodeChange=tinyMCE.triggerNodeChange;tinyMCE.triggerNodeChange=function(focus,setup_content){var r,st,dk=TinyMCE_DevKitPlugin;st=dk._start();dk._log('triggerNodeChange',focus,setup_content);r=tinyMCE.__triggerNodeChange(focus,setup_content);dk._end(st);return r};tinyMCE.__dispatchCallback=tinyMCE.dispatchCallback;tinyMCE.dispatchCallback=function(i,p,n){var r,st,dk=TinyMCE_DevKitPlugin;st=dk._start();dk._log('dispatchCallback',i,p,n);r=tinyMCE.__dispatchCallback(i,p,n);dk._end(st);return r};tinyMCE.__executeCallback=tinyMCE.executeCallback;tinyMCE.executeCallback=function(i,p,n){var r,st,dk=TinyMCE_DevKitPlugin;st=dk._start();dk._log('executeCallback',i,p,n);r=tinyMCE.__executeCallback(i,p,n);dk._end(st);return r};tinyMCE.__execCommandCallback=tinyMCE.execCommandCallback;tinyMCE.execCommandCallback=function(i,p,n){var r,st,dk=TinyMCE_DevKitPlugin;st=dk._start();dk._log('execCommandCallback',i,p,n);r=tinyMCE.__execCommandCallback(i,p,n);dk._end(st);return r};tinyMCE.addPlugin("devkit",TinyMCE_DevKitPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/editor_plugin_src.js
deleted file mode 100644 (file)
index efe7256..0000000
+++ /dev/null
@@ -1,325 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-tinyMCE.importPluginLanguagePack('devkit');\r
-\r
-var TinyMCE_DevKitPlugin = {\r
-       _logFilter : '\\[(importCSS|execCommand|execInstanceCommand|debug)\\]',\r
-       _logPadding : '',\r
-       _startTime : null,\r
-       _benchMark : false,\r
-       _winLoaded : false,\r
-       _isDebugEvents : false,\r
-\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Development Kit',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/devkit',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               this._setup();\r
-       },\r
-\r
-       _setup : function() {\r
-               if (this._loaded)\r
-                       return;\r
-\r
-               this._loaded = true;\r
-\r
-               // Register a document reference for more easy access in the FF DOM inspector\r
-               document.___TinyMCE = tinyMCE;\r
-\r
-               // Setup devkit by settings\r
-               this._logFilter = tinyMCE.getParam('devkit_log_filter', this._logFilter);\r
-               this._benchMark = tinyMCE.getParam('devkit_bench_mark', false);\r
-\r
-               var ifr = document.createElement('iframe');\r
-\r
-               ifr.setAttribute("id", "devkit");\r
-               ifr.setAttribute("frameBorder", "0");\r
-               ifr.setAttribute("src", tinyMCE.baseURL + '/plugins/devkit/devkit.htm');\r
-\r
-               document.body.appendChild(ifr);\r
-\r
-               // Workaround for strange IE reload bug\r
-               //if (tinyMCE.isRealIE)\r
-               //      document.getElementById('devkit').outerHTML = document.getElementById('devkit').outerHTML;\r
-\r
-               tinyMCE.importCSS(document, tinyMCE.baseURL + '/plugins/devkit/css/devkit_ui.css');\r
-       },\r
-\r
-       _start : function() {\r
-               this._logPadding += '\u00a0';\r
-\r
-               return new Date().getTime();\r
-       },\r
-\r
-       _end : function(st) {\r
-               if (this._logPadding.length > 0)\r
-                       this._logPadding = this._logPadding.substring(0, this._logPadding.length - 1);\r
-\r
-               if (this._benchMark)\r
-                       this._log("benchmark", "Execution time: " + (new Date().getTime() - st));\r
-       },\r
-\r
-       _log : function(t) {\r
-               var m, a, i, e = document.getElementById('devkit'), now = new Date().getTime();\r
-\r
-               if (!this._startTime)\r
-                       this._startTime = now;\r
-\r
-               m = (this._logPadding.length > 1 ? this._logPadding : '') + '[' + (now - this._startTime) + '] [' + t + '] ';\r
-\r
-               a = this._log.arguments;\r
-               for (i=1; i<a.length; i++) {\r
-                       if (typeof(a[i]) == 'undefined')\r
-                               continue;\r
-\r
-                       if (i > 1)\r
-                               m += ', ';\r
-\r
-                       m += a[i];\r
-               }\r
-\r
-               if (!new RegExp(this._logFilter, 'gi').test(m)) {\r
-                       if (this._logPadding.length > 0)\r
-                               this._logPadding = this._logPadding.substring(0, this._logPadding.length - 1);\r
-\r
-                       return;\r
-               }\r
-\r
-               if (!this._winLoaded)\r
-                       tinyMCE.log[tinyMCE.log.length] = m;\r
-               else\r
-                       e.contentWindow.debug(m);\r
-       },\r
-\r
-       _debugEvents : function(s) {\r
-               var i, ld, inst, n, ev = ['CheckboxStateChange','DOMAttrModified','DOMMenuItemActive',\r
-                               'DOMMenuItemInactive','DOMMouseScroll','DOMNodeInserted','DOMNodeRemoved',\r
-                               'RadioStateChange','blur','broadcast','change','click','close','command',\r
-                               'commandupdate','contextmenu','dblclick','dragdrop','dragenter','dragexit',\r
-                               'draggesture','dragover','focus','input','keydown','keypress','keyup','load',\r
-                               'mousedown','mouseout','mouseover','mouseup','overflow','overflowchanged','popuphidden',\r
-                               'popuphiding','popupshowing','popupshown','select','syncfrompreference','synctopreference',\r
-                               'underflow','unload','abort','activate','afterprint','afterupdate','beforeactivate',\r
-                               'beforecopy','beforecut','beforedeactivate','beforeeditfocus','beforepaste','beforeprint',\r
-                               'beforeunload','beforeupdate','bounce','cellchange','controlselect','copy','cut',\r
-                               'dataavailable','datasetchanged','datasetcomplete','deactivate','dragend','dragleave',\r
-                               'dragstart','drop','error','errorupdate','filterchange','finish','focusin','focusout',\r
-                               'help','layoutcomplete','losecapture','mouseenter','mouseleave','mousewheel',\r
-                               'move','moveend','movestart','paste','propertychange','readystatechange','reset','resize',\r
-                               'resizeend','resizestart','rowenter','rowexit','rowsdelete','rowsinserted','scroll',\r
-                               'selectionchange','selectstart','start','stop','submit'];\r
-               // mousemove\r
-\r
-               if (TinyMCE_DevKitPlugin._isDebugEvents == s)\r
-                       return;\r
-\r
-               TinyMCE_DevKitPlugin._isDebugEvents = s;\r
-\r
-               for (n in tinyMCE.instances) {\r
-                       inst = tinyMCE.instances[n];\r
-\r
-                       if (!tinyMCE.isInstance(inst) || inst.getDoc() == ld)\r
-                               continue;\r
-\r
-                       ld = inst.getDoc();\r
-\r
-                       for (i=0; i<ev.length; i++) {\r
-                               if (s)\r
-                                       tinyMCE.addEvent(ld, ev[i], TinyMCE_DevKitPlugin._debugEvent);\r
-                               else\r
-                                       tinyMCE.removeEvent(ld, ev[i], TinyMCE_DevKitPlugin._debugEvent);\r
-                       }\r
-               }\r
-       },\r
-\r
-       _debugEvent : function(e) {\r
-               var t;\r
-\r
-               e = e ? e : tinyMCE.selectedInstance.getWin().event;\r
-               t = e.srcElement ? e.srcElement : e.target;\r
-\r
-               tinyMCE.debug(e.type, t ? t.nodeName : '');\r
-       },\r
-\r
-       _serialize : function(o) {\r
-               var i, v, s = TinyMCE_DevKitPlugin._serialize;\r
-\r
-               if (o == null)\r
-                       return 'null';\r
-\r
-               switch (typeof o) {\r
-                       case 'string':\r
-                               v = '\bb\tt\nn\ff\rr\""\'\'\\\\';\r
-\r
-                               return '"' + o.replace(new RegExp('([\u0080-\uFFFF\\x00-\\x1f\\"])', 'g'), function(a, b) {\r
-                                       i = v.indexOf(b);\r
-\r
-                                       if (i+1)\r
-                                               return '\\' + v.charAt(i + 1);\r
-\r
-                                       a = b.charCodeAt().toString(16);\r
-\r
-                                       return '\\u' + '0000'.substring(a.length) + a;\r
-                               }) + '"';\r
-\r
-                       case 'object':\r
-                               if (o instanceof Array) {\r
-                                       for (i=0, v = '['; i<o.length; i++)\r
-                                               v += (i > 0 ? ',' : '') + s(o[i]);\r
-\r
-                                       return v + ']';\r
-                               }\r
-\r
-                               v = '{';\r
-\r
-                               for (i in o)\r
-                                       v += typeof o[i] != 'function' ? (v.length > 1 ? ',"' : '"') + i + '":' + s(o[i]) : '';\r
-\r
-                               return v + '}';\r
-               }\r
-\r
-               return '' + o;\r
-       }\r
-};\r
-\r
-// Patch and piggy back functions\r
-tinyMCE.__debug = tinyMCE.debug;\r
-tinyMCE.debug = function() {\r
-       var a, i, m = '', now = new Date().getTime(), start = TinyMCE_DevKitPlugin._startTime;\r
-\r
-       if (!start)\r
-               TinyMCE_DevKitPlugin._startTime = start = now;\r
-\r
-       a = this.debug.arguments;\r
-       for (i=0; i<a.length; i++) {\r
-               if (typeof(a[i]) == 'undefined')\r
-                       continue;\r
-\r
-               if (i > 0)\r
-                       m += ', ';\r
-\r
-               m += a[i];\r
-       }\r
-\r
-       TinyMCE_DevKitPlugin._log('debug', m);\r
-};\r
-\r
-tinyMCE.dump = function(o) {\r
-       tinyMCE.debug(TinyMCE_DevKitPlugin._serialize(o));\r
-};\r
-\r
-tinyMCE.sleep = function(t) {\r
-       var s = new Date().getTime(), b;\r
-\r
-       while (new Date().getTime() - s < t) b=1;\r
-};\r
-\r
-tinyMCE.__execCommand = tinyMCE.execCommand;\r
-tinyMCE.execCommand = function(command, user_interface, value) {\r
-       var r, st, dk = TinyMCE_DevKitPlugin;\r
-\r
-       st = dk._start();\r
-       dk._log('execCommand', command, user_interface, value);\r
-       r = tinyMCE.__execCommand(command, user_interface, value);\r
-       dk._end(st);\r
-\r
-       return r;\r
-};\r
-\r
-tinyMCE.__execInstanceCommand = tinyMCE.execInstanceCommand;\r
-tinyMCE.execInstanceCommand = function(editor_id, command, user_interface, value, focus) {\r
-       var r, st, dk = TinyMCE_DevKitPlugin;\r
-\r
-       st = dk._start();\r
-       dk._log('execInstanceCommand', editor_id, command, user_interface, value);\r
-       r = tinyMCE.__execInstanceCommand(editor_id, command, user_interface, value);\r
-       dk._end(st);\r
-\r
-       return r;\r
-};\r
-\r
-TinyMCE_Engine.prototype.__handleEvent = TinyMCE_Engine.prototype.handleEvent;\r
-TinyMCE_Engine.prototype.handleEvent = function(e) {\r
-       var r, st, dk = TinyMCE_DevKitPlugin;\r
-\r
-       st = dk._start();\r
-       dk._log('handleEvent', e.type);\r
-       r = tinyMCE.__handleEvent(e);\r
-       dk._end(st);\r
-\r
-       return r;\r
-};\r
-\r
-tinyMCE.__importCSS = tinyMCE.importCSS;\r
-tinyMCE.importCSS = function(doc, css) {\r
-       var r, st, dk = TinyMCE_DevKitPlugin;\r
-\r
-       st = dk._start();\r
-       dk._log('importCSS', doc, css);\r
-       r = tinyMCE.__importCSS(doc, css);\r
-       dk._end(st);\r
-\r
-       return r;\r
-};\r
-\r
-tinyMCE.__triggerNodeChange = tinyMCE.triggerNodeChange;\r
-tinyMCE.triggerNodeChange = function(focus, setup_content) {\r
-       var r, st, dk = TinyMCE_DevKitPlugin;\r
-\r
-       st = dk._start();\r
-       dk._log('triggerNodeChange', focus, setup_content);\r
-       r = tinyMCE.__triggerNodeChange(focus, setup_content);\r
-       dk._end(st);\r
-\r
-       return r;\r
-};\r
-\r
-tinyMCE.__dispatchCallback = tinyMCE.dispatchCallback;\r
-tinyMCE.dispatchCallback = function(i, p, n) {\r
-       var r, st, dk = TinyMCE_DevKitPlugin;\r
-\r
-       st = dk._start();\r
-       dk._log('dispatchCallback', i, p, n);\r
-       r = tinyMCE.__dispatchCallback(i, p, n);\r
-       dk._end(st);\r
-\r
-       return r;\r
-};\r
-\r
-tinyMCE.__executeCallback = tinyMCE.executeCallback;\r
-tinyMCE.executeCallback = function(i, p, n) {\r
-       var r, st, dk = TinyMCE_DevKitPlugin;\r
-\r
-       st = dk._start();\r
-       dk._log('executeCallback', i, p, n);\r
-       r = tinyMCE.__executeCallback(i, p, n);\r
-       dk._end(st);\r
-\r
-       return r;\r
-};\r
-\r
-tinyMCE.__execCommandCallback = tinyMCE.execCommandCallback;\r
-tinyMCE.execCommandCallback = function(i, p, n) {\r
-       var r, st, dk = TinyMCE_DevKitPlugin;\r
-\r
-       st = dk._start();\r
-       dk._log('execCommandCallback', i, p, n);\r
-       r = tinyMCE.__execCommandCallback(i, p, n);\r
-       dk._end(st);\r
-\r
-       return r;\r
-};\r
-\r
-tinyMCE.addPlugin("devkit", TinyMCE_DevKitPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/images/flip_down.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/images/flip_down.gif
deleted file mode 100644 (file)
index 29a2d74..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/images/flip_down.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/images/flip_up.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/images/flip_up.gif
deleted file mode 100644 (file)
index 4b9676b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/images/flip_up.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/jscripts/devkit.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/jscripts/devkit.js
deleted file mode 100644 (file)
index 0225405..0000000
+++ /dev/null
@@ -1,331 +0,0 @@
-var devkit = parent.tinyMCE.plugins['devkit'], logEnabled = true, flip = false, book = null;\r
-\r
-function init() {\r
-       var log, i, f = document.forms[0];\r
-\r
-       devkit._winLoaded = true;\r
-\r
-       log = tinyMCE.log;\r
-\r
-       for (i=0; i<log.length; i++)\r
-               debug(log[i]);\r
-\r
-       f.logfilter.value = devkit._logFilter;\r
-}\r
-\r
-function changeFilter(f) {\r
-       devkit._logFilter = f;\r
-}\r
-\r
-function toggleLog(s) {\r
-       logEnabled = s;\r
-}\r
-\r
-function toggleFlip() {\r
-       document.getElementById('flipbtn').src = flip ? 'images/flip_down.gif' : 'images/flip_up.gif';\r
-\r
-       if (flip)\r
-               parent.document.getElementById('devkit').className = 'devkitup';\r
-       else\r
-               parent.document.getElementById('devkit').className = 'devkitdown';\r
-\r
-       flip = !flip;\r
-}\r
-\r
-function debug(s) {\r
-       var d, l, n;\r
-\r
-       if (!logEnabled || !new RegExp(devkit._logFilter, 'gi').test(s))\r
-               return;\r
-\r
-       d = document;\r
-       l = d.getElementById('log');\r
-       n = d.createElement('span');\r
-\r
-       n.innerHTML = tinyMCE.xmlEncode(s);\r
-\r
-       l.appendChild(n);\r
-       l.scrollTop = l.scrollHeight;\r
-}\r
-\r
-function renderInfo() {\r
-       var se = document.getElementById('info'), n, sn, inst, h = '', sel, rng, instCount = 0, rc;\r
-\r
-       h += '<h2>Browser info:</h2>';\r
-\r
-       h += '<table border="0" cellpadding="0" cellspacing="0" class="data">';\r
-       h += addRenderInfo('navigator.userAgent', navigator.userAgent);\r
-       h += addRenderInfo('navigator.appName', navigator.appName);\r
-       h += addRenderInfo('navigator.platform', navigator.platform);\r
-       h += addRenderInfo('navigator.language', navigator.language, 'bspec');\r
-       h += addRenderInfo('navigator.browserLanguage', navigator.browserLanguage, 'bspec');\r
-       h += addRenderInfo('navigator.systemLanguage', navigator.systemLanguage, 'bspec');\r
-       h += addRenderInfo('navigator.userLanguage', navigator.userLanguage, 'bspec');\r
-       h += addRenderInfo('opera.buildNumber("inconspicuous")', typeof(opera) != 'undefined' && opera.buildNumber ? opera.buildNumber('inconspicuous') : null, 'bspec');\r
-       h += addRenderInfo('window.innerWidth', parent.window.innerWidth, 'bspec');\r
-       h += addRenderInfo('window.innerHeight', parent.window.innerHeight, 'bspec');\r
-       h += addRenderInfo('document.body.offsetWidth', parent.document.body.offsetWidth);\r
-       h += addRenderInfo('document.body.offsetHeight', parent.document.body.offsetHeight);\r
-       h += addRenderInfo('screen.width', screen.width);\r
-       h += addRenderInfo('screen.height', screen.height);\r
-       h += addRenderInfo('screen.availWidth', screen.availWidth);\r
-       h += addRenderInfo('screen.availHeight', screen.availHeight);\r
-       h += addRenderInfo('screen.colorDepth', screen.colorDepth);\r
-       h += addRenderInfo('screen.pixelDepth', screen.pixelDepth, 'bspec');\r
-       h += addRenderInfo('document.contentType', document.contentType, 'bspec');\r
-       h += '</table>';\r
-\r
-       h += '<h2>TinyMCE_Engine info:</h2>';\r
-\r
-       h += '<table border="0" cellpadding="0" cellspacing="0" class="data">';\r
-       h += addRenderInfo('baseURL', tinyMCE.baseURL);\r
-       h += addRenderInfo('selectedInstance.editorId', tinyMCE.selectedInstance ? tinyMCE.selectedInstance.editorId : null);\r
-       h += addRenderInfo('selectedElement.nodeName', tinyMCE.selectedElement ? tinyMCE.selectedElement.nodeName : null, 'dep');\r
-       h += addRenderInfo('loadedFiles',tinyMCE.loadedFiles.join(','));\r
-       h += addRenderInfo('isMSIE', tinyMCE.isMSIE);\r
-       h += addRenderInfo('isMSIE5', tinyMCE.isMSIE5);\r
-       h += addRenderInfo('isMSIE5_0', tinyMCE.isMSIE5_0);\r
-       h += addRenderInfo('isMSIE7', tinyMCE.isMSIE7);\r
-       h += addRenderInfo('isGecko', tinyMCE.isGecko);\r
-       h += addRenderInfo('isSafari', tinyMCE.isSafari);\r
-       h += addRenderInfo('isOpera', tinyMCE.isOpera);\r
-       h += addRenderInfo('isMac', tinyMCE.isMac);\r
-       h += addRenderInfo('isNS7', tinyMCE.isNS7);\r
-       h += addRenderInfo('isNS71', tinyMCE.isNS71);\r
-       h += addRenderInfo('idCounter', tinyMCE.idCounter);\r
-       h += addRenderInfo('currentConfig', tinyMCE.currentConfig);\r
-       h += addRenderInfo('majorVersion', tinyMCE.majorVersion);\r
-       h += addRenderInfo('minorVersion', tinyMCE.minorVersion);\r
-       h += addRenderInfo('releaseDate', tinyMCE.releaseDate);\r
-       h += addRenderInfo('documentBasePath', tinyMCE.documentBasePath);\r
-       h += addRenderInfo('documentURL', tinyMCE.documentURL);\r
-       h += '</table>';\r
-\r
-       for (n in tinyMCE.instances) {\r
-               inst = tinyMCE.instances[n];\r
-\r
-               if (!tinyMCE.isInstance(inst))\r
-                       continue;\r
-\r
-               sel = inst.selection.getSel();\r
-               rng = inst.selection.getRng();\r
-\r
-               h += '<h2>TinyMCE_Control(' + (instCount++) + ') id: ' + inst.editorId + '</h2>';\r
-               h += '<table border="0" cellpadding="0" cellspacing="0" class="data">';\r
-\r
-               h += addRenderInfo('editorId', inst.editorId);\r
-               h += addRenderInfo('visualAid', inst.visualAid);\r
-               h += addRenderInfo('foreColor', inst.foreColor);\r
-               h += addRenderInfo('backColor', inst.backColor);\r
-               h += addRenderInfo('formTargetElementId', inst.formTargetElementId);\r
-               h += addRenderInfo('formElement', inst.formElement ? inst.formElement.nodeName : null);\r
-               h += addRenderInfo('oldTargetElement', inst.oldTargetElement ? inst.oldTargetElement.nodeName : null);\r
-               h += addRenderInfo('linkElement', inst.linkElement ? inst.linkElement.nodeName : null, 'dep');\r
-               h += addRenderInfo('imgElement', inst.imgElement ? inst.imgElement.nodeName : null, 'dep');\r
-               h += addRenderInfo('selectedNode', inst.selectedNode ? inst.selectedNode.nodeName : null, 'dep');\r
-               h += addRenderInfo('targetElement', inst.targetElement ? inst.targetElement.nodeName : null);\r
-               h += addRenderInfo('getBody().nodeName', inst.getBody() ? inst.getBody().nodeName : null);\r
-               h += addRenderInfo('getBody().getAttribute("id")', inst.getBody() ? inst.getBody().getAttribute("id") : null);\r
-               h += addRenderInfo('getDoc().location', inst.getDoc() ? inst.getDoc().location : null);\r
-               h += addRenderInfo('startContent', inst.startContent);\r
-               h += addRenderInfo('isHidden()', inst.isHidden());\r
-               h += addRenderInfo('isDirty()', inst.isDirty());\r
-               h += addRenderInfo('undoRedo.undoLevels.length', inst.undoRedo.undoLevels.length);\r
-               h += addRenderInfo('undoRedo.undoIndex', inst.undoRedo.undoIndex);\r
-               h += addRenderInfo('selection.getSelectedHTML()', inst.selection.getSelectedHTML());\r
-               h += addRenderInfo('selection.isCollapsed()', inst.selection.isCollapsed() || 'false');\r
-               h += addRenderInfo('selection.getSelectedText()', inst.selection.getSelectedText());\r
-               h += addRenderInfo('selection.getFocusElement().nodeName', inst.selection.getFocusElement().nodeName);\r
-               h += addRenderInfo('selection.getFocusElement().outerHTML', tinyMCE.getOuterHTML(inst.selection.getFocusElement()));\r
-\r
-               if ((tinyMCE.isGecko || tinyMCE.isOpera) && sel && rng) {\r
-                       h += addRenderInfo('selection.getSel().anchorNode.nodeName', sel.anchorNode ? sel.anchorNode.nodeName : null, 'bspec');\r
-                       h += addRenderInfo('selection.getSel().anchorOffset', sel.anchorOffset, 'bspec');\r
-                       h += addRenderInfo('selection.getSel().focusNode.nodeName', sel.focusNode ? sel.focusNode.nodeName : null, 'bspec');\r
-                       h += addRenderInfo('selection.getSel().focusOffset', sel.focusOffset, 'bspec');\r
-                       h += addRenderInfo('selection.getRng().startContainer.nodeName', rng.startContainer ? rng.startContainer.nodeName : null, 'bspec');\r
-                       h += addRenderInfo('selection.getRng().startOffset', rng.startOffset, 'bspec');\r
-                       h += addRenderInfo('selection.getRng().endContainer.nodeName', rng.endContainer ? rng.endContainer.nodeName : null, 'bspec');\r
-                       h += addRenderInfo('selection.getRng().endOffset', rng.endOffset, 'bspec');\r
-               }\r
-\r
-               if (typeof(rng.item) != 'undefined' || typeof(rng.htmlText) != 'undefined') {\r
-                       if (!rng.item) {\r
-                               h += addRenderInfo('selection.getSel().type', sel.type, 'bspec');\r
-                               h += addRenderInfo('selection.getRng().htmlText', rng.htmlText, 'bspec');\r
-                               h += addRenderInfo('selection.getRng().text', rng.text, 'bspec');\r
-                       } else\r
-                               h += addRenderInfo('selection.getRng().item(0).nodeName', rng.item(0).nodeName, 'bspec');\r
-               }\r
-\r
-               h += '</table>';\r
-       }\r
-\r
-       h += '<p>Fields marked in <strong class="bspec">gray</strong> is not cross browser and should be used with care.</p>';\r
-       h += '<p>Fields marked <strong class="dep">red</strong> are marked deprecated and will be removed in the future.</p><br />';\r
-\r
-       se.innerHTML = h;\r
-}\r
-\r
-function addRenderInfo(n, v, c) {\r
-       return '<tr><td' + (c ? ' class="' + c + '"' : '')+ '>' + n + '</td><td><input type="text" value="' + tinyMCE.xmlEncode(v != null ? ('' + v).replace(/[\r\n]/g, '') : 'null') + '" /></td></tr>';\r
-}\r
-\r
-function renderSettings() {\r
-       var se = document.getElementById('settings'), n, sn, inst, h = '', v;\r
-\r
-       for (n in tinyMCE.instances) {\r
-               inst = tinyMCE.instances[n];\r
-\r
-               if (!tinyMCE.isInstance(inst))\r
-                       continue;\r
-\r
-               h += '<h2>Instance id: ' + inst.editorId + '</h2>';\r
-               h += '<table border="0" cellpadding="0" cellspacing="0" class="data">';\r
-\r
-               for (sn in inst.settings) {\r
-                       v = inst.settings[sn];\r
-\r
-                       h += '<tr><td class="col1">' + tinyMCE.xmlEncode(sn) + '</td><td><input type="text" value="' + tinyMCE.xmlEncode(v) + '" /></td></tr>';\r
-               }\r
-\r
-               h += '</table>';\r
-       }\r
-\r
-       se.innerHTML = h;\r
-}\r
-\r
-function renderContent() {\r
-       var se = document.getElementById('content'), n, inst, h = '';\r
-\r
-       for (n in tinyMCE.instances) {\r
-               inst = tinyMCE.instances[n];\r
-\r
-               if (!tinyMCE.isInstance(inst))\r
-                       continue;\r
-\r
-               h += '<h2>Instance id: ' + inst.editorId + '</h2>';\r
-\r
-               h += '<h3>Start content - inst.startContent:</h3>';\r
-               h += '<div>' + tinyMCE.xmlEncode(inst.startContent) + '</div>';\r
-\r
-               h += '<h3>Raw content - inst.getBody().innerHTML or inst.getHTML(true):</h3>';\r
-               h += '<div>' + tinyMCE.xmlEncode(inst.getHTML(true)) + '</div>';\r
-\r
-               h += '<h3>Cleaned content - inst.getHTML():</h3>';\r
-               h += '<div>' + tinyMCE.xmlEncode(inst.getHTML()) + '</div>';\r
-\r
-               if (inst.serializedHTML) {\r
-                       h += '<h3>Serialized HTML content - inst.serializedHTML:</h3>';\r
-                       h += '<div>' + tinyMCE.xmlEncode(inst.serializedHTML) + '</div>';\r
-               }\r
-       }\r
-\r
-       se.innerHTML = h;\r
-}\r
-\r
-function renderCommandStates() {\r
-       var se = document.getElementById('command_states'), n, inst, h = '', v, ex;\r
-       var cmds = new Array('2D-Position','AbsolutePosition','BackColor','BlockDirLTR','BlockDirRTL','Bold','BrowseMode','Copy','CreateBookmark','CreateLink','Cut','Delete','DirLTR','DirRTL','EditMode','enableInlineTableEditing','enableObjectResizing','FontName','FontSize','ForeColor','FormatBlock','Indent','InsertButton','InsertFieldset','InsertHorizontalRule','InsertIFrame','InsertImage','InsertInputButton','InsertInputCheckbox','InsertInputFileUpload','InsertInputHidden','InsertInputImage','InsertInputPassword','InsertInputRadio','InsertInputReset','InsertInputSubmit','InsertInputText','InsertMarquee','InsertOrderedList','InsertParagraph','InsertSelectDropdown','InsertSelectListbox','InsertTextArea','InsertUnorderedList','Italic','JustifyCenter','JustifyFull','JustifyLeft','JustifyNone','JustifyRight','LiveResize','MultipleSelection','Open','Outdent','OverWrite','Paste','PlayImage','Redo','Refresh','RemoveFormat','SaveAs','SelectAll','SizeToControl','SizeToControlHeight','SizeToControlWidth','Stop','StopImage','StrikeThrough','styleWithCSS','Subscript','Superscript','UnBookmark','Underline','Undo','Unlink','Unselect'), i;\r
-\r
-       for (n in tinyMCE.instances) {\r
-               inst = tinyMCE.instances[n];\r
-\r
-               if (!tinyMCE.isInstance(inst))\r
-                       continue;\r
-\r
-               h += '<h2>Instance id: ' + inst.editorId + '</h2>';\r
-               h += '<table border="0" cellpadding="0" cellspacing="0" class="data">';\r
-\r
-               for (i=0; i<cmds.length; i++) {\r
-                       v = null;\r
-\r
-                       try {\r
-                               v = tinyMCE.isGecko || inst.getDoc().queryCommandSupported(cmds[i]);\r
-                               v = v ? inst.queryCommandState(cmds[i]) : 'Not supported';\r
-                       } catch (ex) {\r
-                               v = 'Not supported';\r
-                       }\r
-\r
-                       h += '<tr><td><input type="text" value="' + tinyMCE.xmlEncode(cmds[i]) + '" /></td><td><input type="text" value="' + tinyMCE.xmlEncode(v) + '" /></td></tr>';\r
-               }\r
-\r
-               h += '</table>';\r
-       }\r
-\r
-       se.innerHTML = h;\r
-}\r
-\r
-function renderUndoRedo() {\r
-       var se = document.getElementById('undo_redo'), inst, n, h = '', i, le, id, d, ur;\r
-       var f = document.forms[0];      \r
-\r
-       if (tinyMCE.undoLevels) {\r
-               le = tinyMCE.undoLevels;\r
-\r
-               h += '<h2>Global undo/redo</h2>';\r
-               h += '<table border="0" cellpadding="0" cellspacing="0" width="50%" class="data">';\r
-               h += '<tr><td>undoLevels.length</td><td>' + le.length + '</td></tr>';\r
-               h += '<tr><td>undoIndex</td><td>' + tinyMCE.undoIndex + '</td></tr>';\r
-               h += '</table>';\r
-\r
-               for (i=0; i<le.length; i++)\r
-                       h += '<h3>Level: ' + i + ', Instance: ' + (le[i] ? le[i].editorId : 'null') + '</h3>';\r
-       }\r
-\r
-       for (n in tinyMCE.instances) {\r
-               inst = tinyMCE.instances[n];\r
-\r
-               if (!tinyMCE.isInstance(inst))\r
-                       continue;\r
-\r
-               ur = inst.undoRedo;\r
-               le = ur.undoLevels;\r
-\r
-               h += '<hr /><h2>Instance id: ' + inst.editorId + '</h2>';\r
-               h += '<table border="0" cellpadding="0" cellspacing="0" width="50%" class="data">';\r
-               h += '<tr><td>undoLevels.length</td><td>' + le.length + '</td></tr>';\r
-               h += '<tr><td>undoIndex</td><td>' + ur.undoIndex + '</td></tr>';\r
-               h += '<tr><td>typingUndoIndex</td><td>' + ur.typingUndoIndex + '</td></tr>';\r
-               h += '<tr><td>undoRedo</td><td>' + ur.undoRedo + '</td></tr>';\r
-               h += '</table>';\r
-\r
-               for (i=0; i<le.length; i++) {\r
-                       h += '<h3>Level: ' + i + (!le[i].bookmark ? "" : " [bookmark]") + '</h3>';\r
-                       h += '<div class="undodata">' + tinyMCE.xmlEncode(le[i].content) + '</div>';\r
-\r
-                       if (i > 0 && f.undo_diff.checked) {\r
-                               d = diff_main(i > 0 ? le[i-1].content.replace(/[\r\n]+/g, '') : null, le[i].content.replace(/[\r\n]+/g, ''), false);\r
-                               diff_cleanup_semantic(d);\r
-                               h += '<h3>Diff ' + (i-1) + ',' + i + '</h3><div class="undodata">' + diff_prettyhtml(d) + '</div>';\r
-                       }\r
-               }\r
-       }\r
-\r
-       se.innerHTML = h;\r
-}\r
-\r
-function clearLog() {\r
-       document.getElementById('log').innerHTML = '';\r
-       devkit._startTime = null;\r
-}\r
-\r
-function cancelAction() {\r
-       parent.document.getElementById('devkit').style.display = 'none';\r
-}\r
-\r
-function toggleDebugEvents(s) {\r
-       devkit._debugEvents(s);\r
-}\r
-\r
-function storeSelection() {\r
-       book = tinyMCE.selectedInstance.selection.getBookmark();\r
-\r
-       return false;\r
-}\r
-\r
-function restoreSelection() {\r
-       tinyMCE.selectedInstance.selection.moveToBookmark(book);\r
-\r
-       return false;\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/jscripts/diff.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/jscripts/diff.js
deleted file mode 100644 (file)
index 87b96cc..0000000
+++ /dev/null
@@ -1,1192 +0,0 @@
-// Diff_Match_Patch v1.3\r
-// Computes the difference between two texts to create a patch.\r
-// Applies the patch onto another text, allowing for errors.\r
-// Copyright (C) 2006 Neil Fraser\r
-// http://neil.fraser.name/software/diff_match_patch/\r
-\r
-// This program is free software; you can redistribute it and/or\r
-// modify it under the terms of the GNU General Public License\r
-// as published by the Free Software Foundation.\r
-\r
-// This program is distributed in the hope that it will be useful,\r
-// but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-// GNU General Public License (www.gnu.org) for more details.\r
-\r
-\r
-// Constants.\r
-// Redefine these in your program to override the defaults.\r
-\r
-// Number of seconds to map a diff before giving up.  (0 for infinity)\r
-var DIFF_TIMEOUT = 1.0;\r
-// Cost of an empty edit operation in terms of edit characters.\r
-var DIFF_EDIT_COST = 4;\r
-// Tweak the relative importance (0.0 = accuracy, 1.0 = proximity)\r
-var MATCH_BALANCE = 0.5;\r
-// At what point is no match declared (0.0 = perfection, 1.0 = very loose)\r
-var MATCH_THRESHOLD = 0.5;\r
-// The min and max cutoffs used when computing text lengths.\r
-var MATCH_MINLENGTH = 100;\r
-var MATCH_MAXLENGTH = 1000;\r
-// Chunk size for context length.\r
-var PATCH_MARGIN = 4;\r
-\r
-\r
-  //////////////////////////////////////////////////////////////////////\r
- //  Diff                                                            //\r
-//////////////////////////////////////////////////////////////////////\r
-\r
-// The data structure representing a diff is an array of tuples:\r
-// [[-1, "Hello"], [1, "Goodbye"], [0, " world."]]\r
-// which means: delete "Hello", add "Goodbye" and keep " world."\r
-\r
-\r
-function diff_main(text1, text2, checklines) {\r
-  // Find the differences between two texts.  Return an array of changes.\r
-  // If checklines is present and false, then don't run a line-level diff first to identify the changed areas.\r
-  // Check for equality (speedup)\r
-  if (text1 == text2)\r
-    return [[0, text1]];\r
-\r
-  if (typeof checklines == 'undefined')\r
-    checklines = true;\r
-\r
-  var a;\r
-  // Trim off common prefix (speedup)\r
-  a = diff_prefix(text1, text2);\r
-  text1 = a[0];\r
-  text2 = a[1];\r
-  var commonprefix = a[2];\r
-\r
-  // Trim off common suffix (speedup)\r
-  a = diff_suffix(text1, text2);\r
-  text1 = a[0];\r
-  text2 = a[1];\r
-  var commonsuffix = a[2];\r
-\r
-  var diff, i;\r
-  var longtext = text1.length > text2.length ? text1 : text2;\r
-  var shorttext = text1.length > text2.length ? text2 : text1;\r
-\r
-  if (!text1) {  // Just add some text (speedup)\r
-    diff = [[1, text2]];\r
-  } else if (!text2) { // Just delete some text (speedup)\r
-    diff = [[-1, text1]];\r
-  } else if ((i = longtext.indexOf(shorttext)) != -1) {\r
-    // Shorter text is inside the longer text (speedup)\r
-    diff = [[1, longtext.substring(0, i)], [0, shorttext], [1, longtext.substring(i+shorttext.length)]];\r
-    // Swap insertions for deletions if diff is reversed.\r
-    if (text1.length > text2.length)\r
-      diff[0][0] = diff[2][0] = -1;\r
-  } else {\r
-    longtext = shorttext = null; // Garbage collect\r
-    // Check to see if the problem can be split in two.\r
-    var hm = diff_halfmatch(text1, text2);\r
-    if (hm) {\r
-      // A half-match was found, sort out the return data.\r
-      var text1_a = hm[0];\r
-      var text1_b = hm[1];\r
-      var text2_a = hm[2];\r
-      var text2_b = hm[3];\r
-      var mid_common = hm[4];\r
-      // Send both pairs off for separate processing.\r
-      var diff_a = diff_main(text1_a, text2_a, checklines);\r
-      var diff_b = diff_main(text1_b, text2_b, checklines);\r
-      // Merge the results.\r
-      diff = diff_a.concat([[0, mid_common]], diff_b);\r
-    } else {\r
-      // Perform a real diff.\r
-      if (checklines && text1.length + text2.length < 250)\r
-        checklines = false; // Too trivial for the overhead.\r
-      if (checklines) {\r
-        // Scan the text on a line-by-line basis first.\r
-        a = diff_lines2chars(text1, text2);\r
-        text1 = a[0];\r
-        text2 = a[1];\r
-        var linearray = a[2];\r
-      }\r
-      diff = diff_map(text1, text2);\r
-      if (!diff) // No acceptable result.\r
-        diff = [[-1, text1], [1, text2]];\r
-      if (checklines) {\r
-        diff_chars2lines(diff, linearray); // Convert the diff back to original text.\r
-        diff_cleanup_semantic(diff); // Eliminate freak matches (e.g. blank lines)\r
-\r
-        // Rediff any replacement blocks, this time on character-by-character basis.\r
-        diff.push([0, '']);  // Add a dummy entry at the end.\r
-        var pointer = 0;\r
-        var count_delete = 0;\r
-        var count_insert = 0;\r
-        var text_delete = '';\r
-        var text_insert = '';\r
-        while(pointer < diff.length) {\r
-          if (diff[pointer][0] == 1) {\r
-            count_insert++;\r
-            text_insert += diff[pointer][1];\r
-          } else if (diff[pointer][0] == -1) {\r
-            count_delete++;\r
-            text_delete += diff[pointer][1];\r
-          } else {  // Upon reaching an equality, check for prior redundancies.\r
-            if (count_delete >= 1 && count_insert >= 1) {\r
-              // Delete the offending records and add the merged ones.\r
-              a = diff_main(text_delete, text_insert, false);\r
-              diff.splice(pointer - count_delete - count_insert, count_delete + count_insert);\r
-              pointer = pointer - count_delete - count_insert;\r
-              for (i=a.length-1; i>=0; i--)\r
-                diff.splice(pointer, 0, a[i]);\r
-              pointer = pointer + a.length;\r
-            }\r
-            count_insert = 0;\r
-            count_delete = 0;\r
-            text_delete = '';\r
-            text_insert = '';\r
-          }\r
-          pointer++;\r
-        }\r
-        diff.pop();  // Remove the dummy entry at the end.\r
-\r
-      }\r
-    }\r
-  }\r
-\r
-  if (commonprefix)\r
-    diff.unshift([0, commonprefix]);\r
-  if (commonsuffix)\r
-    diff.push([0, commonsuffix]);\r
-  diff_cleanup_merge(diff);\r
-  return diff;\r
-}\r
-\r
-\r
-function diff_lines2chars(text1, text2) {\r
-  // Split text into an array of strings.\r
-  // Reduce the texts to a string of hashes where each character represents one line.\r
-  var linearray = new Array();  // linearray[4] == "Hello\n"\r
-  var linehash = new Object();  // linehash["Hello\n"] == 4\r
-\r
-  // "\x00" is a valid JavaScript character, but the Venkman debugger doesn't like it (bug 335098)\r
-  // So we'll insert a junk entry to avoid generating a null character.\r
-  linearray.push('');\r
-\r
-  function diff_lines2chars_munge(text) {\r
-    // My first ever closure!\r
-    var i, line;\r
-    var chars = '';\r
-    while (text) {\r
-      i = text.indexOf('\n');\r
-      if (i == -1)\r
-        i = text.length;\r
-      line = text.substring(0, i+1);\r
-      text = text.substring(i+1);\r
-      if (linehash.hasOwnProperty ? linehash.hasOwnProperty(line) : (linehash[line] !== undefined)) {\r
-        chars += String.fromCharCode(linehash[line]);\r
-      } else {\r
-        linearray.push(line);\r
-        linehash[line] = linearray.length - 1;\r
-        chars += String.fromCharCode(linearray.length - 1);\r
-      }\r
-    }\r
-    return chars;\r
-  }\r
-\r
-  var chars1 = diff_lines2chars_munge(text1);\r
-  var chars2 = diff_lines2chars_munge(text2);\r
-  return [chars1, chars2, linearray];\r
-}\r
-\r
-\r
-function diff_chars2lines(diff, linearray) {\r
-  // Rehydrate the text in a diff from a string of line hashes to real lines of text.\r
-  var chars, text;\r
-  for (var x=0; x<diff.length; x++) {\r
-    chars = diff[x][1];\r
-    text = '';\r
-    for (var y=0; y<chars.length; y++)\r
-      text += linearray[chars.charCodeAt(y)];\r
-    diff[x][1] = text;\r
-  }\r
-}\r
-\r
-\r
-function diff_map(text1, text2) {\r
-  // Explore the intersection points between the two texts.\r
-  var now = new Date();\r
-  var ms_end = now.getTime() + DIFF_TIMEOUT * 1000; // Don't run for too long.\r
-  var max = (text1.length + text2.length) / 2;\r
-  var v_map1 = new Array();\r
-  var v_map2 = new Array();\r
-  var v1 = new Object();\r
-  var v2 = new Object();\r
-  v1[1] = 0;\r
-  v2[1] = 0;\r
-  var x, y;\r
-  var footstep; // Used to track overlapping paths.\r
-  var footsteps = new Object();\r
-  var done = false;\r
-  var hasOwnProperty = !!(footsteps.hasOwnProperty);\r
-  // If the total number of characters is odd, then the front path will collide with the reverse path.\r
-  var front = (text1.length + text2.length) % 2;\r
-  for (var d=0; d<max; d++) {\r
-    now = new Date();\r
-    if (DIFF_TIMEOUT > 0 && now.getTime() > ms_end) // Timeout reached\r
-      return null;\r
-\r
-    // Walk the front path one step.\r
-    v_map1[d] = new Object();\r
-    for (var k=-d; k<=d; k+=2) {\r
-      if (k == -d || k != d && v1[k-1] < v1[k+1])\r
-        x = v1[k+1];\r
-      else\r
-        x = v1[k-1]+1;\r
-      y = x - k;\r
-      footstep = x+","+y;\r
-      if (front && (hasOwnProperty ? footsteps.hasOwnProperty(footstep) : (footsteps[footstep] !== undefined)))\r
-        done = true;\r
-      if (!front)\r
-        footsteps[footstep] = d;\r
-      while (!done && x < text1.length && y < text2.length && text1.charAt(x) == text2.charAt(y)) {\r
-        x++; y++;\r
-        footstep = x+","+y;\r
-        if (front && (hasOwnProperty ? footsteps.hasOwnProperty(footstep) : (footsteps[footstep] !== undefined)))\r
-          done = true;\r
-        if (!front)\r
-          footsteps[footstep] = d;\r
-      }\r
-      v1[k] = x;\r
-      v_map1[d][x+","+y] = true;\r
-      if (done) {\r
-        // Front path ran over reverse path.\r
-        v_map2 = v_map2.slice(0, footsteps[footstep]+1);\r
-        var a = diff_path1(v_map1, text1.substring(0, x), text2.substring(0, y));\r
-        return a.concat(diff_path2(v_map2, text1.substring(x), text2.substring(y)));\r
-      }\r
-    }\r
-\r
-    // Walk the reverse path one step.\r
-    v_map2[d] = new Object();\r
-    for (var k=-d; k<=d; k+=2) {\r
-      if (k == -d || k != d && v2[k-1] < v2[k+1])\r
-        x = v2[k+1];\r
-      else\r
-        x = v2[k-1]+1;\r
-      y = x - k;\r
-      footstep = (text1.length-x)+","+(text2.length-y);\r
-      if (!front && (hasOwnProperty ? footsteps.hasOwnProperty(footstep) : (footsteps[footstep] !== undefined)))\r
-        done = true;\r
-      if (front)\r
-        footsteps[footstep] = d;\r
-      while (!done && x < text1.length && y < text2.length && text1.charAt(text1.length-x-1) == text2.charAt(text2.length-y-1)) {\r
-        x++; y++;\r
-        footstep = (text1.length-x)+","+(text2.length-y);\r
-        if (!front && (hasOwnProperty ? footsteps.hasOwnProperty(footstep) : (footsteps[footstep] !== undefined)))\r
-          done = true;\r
-        if (front)\r
-          footsteps[footstep] = d;\r
-      }\r
-      v2[k] = x;\r
-      v_map2[d][x+","+y] = true;\r
-      if (done) {\r
-        // Reverse path ran over front path.\r
-        v_map1 = v_map1.slice(0, footsteps[footstep]+1);\r
-        var a = diff_path1(v_map1, text1.substring(0, text1.length-x), text2.substring(0, text2.length-y));\r
-        return a.concat(diff_path2(v_map2, text1.substring(text1.length-x), text2.substring(text2.length-y)));\r
-      }\r
-    }\r
-  }\r
-  // Number of diffs equals number of characters, no commonality at all.\r
-  return null;\r
-}\r
-\r
-\r
-function diff_path1(v_map, text1, text2) {\r
-  // Work from the middle back to the start to determine the path.\r
-  var path = [];\r
-  var x = text1.length;\r
-  var y = text2.length;\r
-  var last_op = null;\r
-  for (var d=v_map.length-2; d>=0; d--) {\r
-    while(1) {\r
-      if (v_map[d].hasOwnProperty ? v_map[d].hasOwnProperty((x-1)+","+y) : (v_map[d][(x-1)+","+y] !== undefined)) {\r
-        x--;\r
-        if (last_op === -1)\r
-          path[0][1] = text1.charAt(x) + path[0][1];\r
-        else\r
-          path.unshift([-1, text1.charAt(x)]);\r
-        last_op = -1;\r
-        break;\r
-      } else if (v_map[d].hasOwnProperty ? v_map[d].hasOwnProperty(x+","+(y-1)) : (v_map[d][x+","+(y-1)] !== undefined)) {\r
-        y--;\r
-        if (last_op === 1)\r
-          path[0][1] = text2.charAt(y) + path[0][1];\r
-        else\r
-          path.unshift([1, text2.charAt(y)]);\r
-        last_op = 1;\r
-        break;\r
-      } else {\r
-        x--;\r
-        y--;\r
-        //if (text1.charAt(x) != text2.charAt(y))\r
-        //  return alert("No diagonal.  Can't happen. (diff_path1)");\r
-        if (last_op === 0)\r
-          path[0][1] = text1.charAt(x) + path[0][1];\r
-        else\r
-          path.unshift([0, text1.charAt(x)]);\r
-        last_op = 0;\r
-      }\r
-    }\r
-  }\r
-  return path;\r
-}\r
-\r
-\r
-function diff_path2(v_map, text1, text2) {\r
-  // Work from the middle back to the end to determine the path.\r
-  var path = [];\r
-  var x = text1.length;\r
-  var y = text2.length;\r
-  var last_op = null;\r
-  for (var d=v_map.length-2; d>=0; d--) {\r
-    while(1) {\r
-      if (v_map[d].hasOwnProperty ? v_map[d].hasOwnProperty((x-1)+","+y) : (v_map[d][(x-1)+","+y] !== undefined)) {\r
-        x--;\r
-        if (last_op === -1)\r
-          path[path.length-1][1] += text1.charAt(text1.length-x-1);\r
-        else\r
-          path.push([-1, text1.charAt(text1.length-x-1)]);\r
-        last_op = -1;\r
-        break;\r
-      } else if (v_map[d].hasOwnProperty ? v_map[d].hasOwnProperty(x+","+(y-1)) : (v_map[d][x+","+(y-1)] !== undefined)) {\r
-        y--;\r
-        if (last_op === 1)\r
-          path[path.length-1][1] += text2.charAt(text2.length-y-1);\r
-        else\r
-          path.push([1, text2.charAt(text2.length-y-1)]);\r
-        last_op = 1;\r
-        break;\r
-      } else {\r
-        x--;\r
-        y--;\r
-        //if (text1.charAt(text1.length-x-1) != text2.charAt(text2.length-y-1))\r
-        //  return alert("No diagonal.  Can't happen. (diff_path2)");\r
-        if (last_op === 0)\r
-          path[path.length-1][1] += text1.charAt(text1.length-x-1);\r
-        else\r
-          path.push([0, text1.charAt(text1.length-x-1)]);\r
-        last_op = 0;\r
-      }\r
-    }\r
-  }\r
-  return path;\r
-}\r
-\r
-\r
-function diff_prefix(text1, text2) {\r
-  // Trim off common prefix\r
-  var pointermin = 0;\r
-  var pointermax = Math.min(text1.length, text2.length);\r
-  var pointermid = pointermax;\r
-  while(pointermin < pointermid) {\r
-    if (text1.substring(0, pointermid) == text2.substring(0, pointermid))\r
-      pointermin = pointermid;\r
-    else\r
-      pointermax = pointermid;\r
-    pointermid = Math.floor((pointermax - pointermin) / 2 + pointermin);\r
-  }\r
-  var commonprefix = text1.substring(0, pointermid);\r
-  text1 = text1.substring(pointermid);\r
-  text2 = text2.substring(pointermid);\r
-  return [text1, text2, commonprefix];\r
-}\r
-\r
-\r
-function diff_suffix(text1, text2) {\r
-  // Trim off common suffix\r
-  var pointermin = 0;\r
-  var pointermax = Math.min(text1.length, text2.length);\r
-  var pointermid = pointermax;\r
-  while(pointermin < pointermid) {\r
-    if (text1.substring(text1.length-pointermid) == text2.substring(text2.length-pointermid))\r
-      pointermin = pointermid;\r
-    else\r
-      pointermax = pointermid;\r
-    pointermid = Math.floor((pointermax - pointermin) / 2 + pointermin);\r
-  }\r
-  var commonsuffix = text1.substring(text1.length-pointermid);\r
-  text1 = text1.substring(0, text1.length-pointermid);\r
-  text2 = text2.substring(0, text2.length-pointermid);\r
-  return [text1, text2, commonsuffix];\r
-}\r
-\r
-\r
-function diff_halfmatch(text1, text2) {\r
-  // Do the two texts share a substring which is at least half the length of the longer text?\r
-  var longtext = text1.length > text2.length ? text1 : text2;\r
-  var shorttext = text1.length > text2.length ? text2 : text1;\r
-  if (longtext.length < 10 || shorttext.length < 1)\r
-    return null; // Pointless.\r
-\r
-  function diff_halfmatch_i(longtext, shorttext, i) {\r
-    // Start with a 1/4 length substring at position i as a seed.\r
-    var seed = longtext.substring(i, i+Math.floor(longtext.length/4));\r
-    var j = -1;\r
-    var best_common = '';\r
-    var best_longtext_a, best_longtext_b, best_shorttext_a, best_shorttext_b;\r
-    while ((j = shorttext.indexOf(seed, j+1)) != -1) {\r
-      var my_prefix = diff_prefix(longtext.substring(i), shorttext.substring(j));\r
-      var my_suffix = diff_suffix(longtext.substring(0, i), shorttext.substring(0, j));\r
-      if (best_common.length < (my_suffix[2] + my_prefix[2]).length) {\r
-        best_common = my_suffix[2] + my_prefix[2];\r
-        best_longtext_a = my_suffix[0];\r
-        best_longtext_b = my_prefix[0];\r
-        best_shorttext_a = my_suffix[1];\r
-        best_shorttext_b = my_prefix[1];\r
-      }\r
-    }\r
-    if (best_common.length >= longtext.length/2)\r
-      return [best_longtext_a, best_longtext_b, best_shorttext_a, best_shorttext_b, best_common];\r
-    else\r
-      return null;\r
-  }\r
-\r
-  // First check if the second quarter is the seed for a half-match.\r
-  var hm1 = diff_halfmatch_i(longtext, shorttext, Math.ceil(longtext.length/4));\r
-  // Check again based on the third quarter.\r
-  var hm2 = diff_halfmatch_i(longtext, shorttext, Math.ceil(longtext.length/2));\r
-  var hm;\r
-  if (!hm1 && !hm2)\r
-    return null;\r
-  else if (!hm2)\r
-    hm = hm1;\r
-  else if (!hm1)\r
-    hm = hm2;\r
-  else // Both matched.  Select the longest.\r
-    hm = hm1[4].length > hm2[4].length ? hm1 : hm2;\r
-\r
-  // A half-match was found, sort out the return data.\r
-  if (text1.length > text2.length) {\r
-    var text1_a = hm[0];\r
-    var text1_b = hm[1];\r
-    var text2_a = hm[2];\r
-    var text2_b = hm[3];\r
-  } else {\r
-    var text2_a = hm[0];\r
-    var text2_b = hm[1];\r
-    var text1_a = hm[2];\r
-    var text1_b = hm[3];\r
-  }\r
-  var mid_common = hm[4];\r
-  return [text1_a, text1_b, text2_a, text2_b, mid_common];\r
-}\r
-\r
-\r
-function diff_cleanup_semantic(diff) {\r
-  // Reduce the number of edits by eliminating semantically trivial equalities.\r
-  var changes = false;\r
-  var equalities = []; // Stack of indices where equalities are found.\r
-  var lastequality = null; // Always equal to equalities[equalities.length-1][1]\r
-  var pointer = 0; // Index of current position.\r
-  var length_changes1 = 0; // Number of characters that changed prior to the equality.\r
-  var length_changes2 = 0; // Number of characters that changed after the equality.\r
-  while (pointer < diff.length) {\r
-    if (diff[pointer][0] == 0) { // equality found\r
-      equalities.push(pointer);\r
-      length_changes1 = length_changes2;\r
-      length_changes2 = 0;\r
-      lastequality = diff[pointer][1];\r
-    } else { // an insertion or deletion\r
-      length_changes2 += diff[pointer][1].length;\r
-      if (lastequality != null && (lastequality.length <= length_changes1) && (lastequality.length <= length_changes2)) {\r
-        //alert("Splitting: '"+lastequality+"'");\r
-        diff.splice(equalities[equalities.length-1], 0, [-1, lastequality]); // Duplicate record\r
-        diff[equalities[equalities.length-1]+1][0] = 1; // Change second copy to insert.\r
-        equalities.pop();  // Throw away the equality we just deleted;\r
-        equalities.pop();  // Throw away the previous equality;\r
-        pointer = equalities.length ? equalities[equalities.length-1] : -1;\r
-        length_changes1 = 0; // Reset the counters.\r
-        length_changes2 = 0;\r
-        lastequality = null;\r
-        changes = true;\r
-      }\r
-    }\r
-    pointer++;\r
-  }\r
-\r
-  if (changes)\r
-    diff_cleanup_merge(diff);\r
-}\r
-\r
-\r
-function diff_cleanup_efficiency(diff) {\r
-  // Reduce the number of edits by eliminating operationally trivial equalities.\r
-  var changes = false;\r
-  var equalities = []; // Stack of indices where equalities are found.\r
-  var lastequality = ''; // Always equal to equalities[equalities.length-1][1]\r
-  var pointer = 0; // Index of current position.\r
-  var pre_ins = false; // Is there an insertion operation before the last equality.\r
-  var pre_del = false; // Is there an deletion operation before the last equality.\r
-  var post_ins = false; // Is there an insertion operation after the last equality.\r
-  var post_del = false; // Is there an deletion operation after the last equality.\r
-  while (pointer < diff.length) {\r
-    if (diff[pointer][0] == 0) { // equality found\r
-      if (diff[pointer][1].length < DIFF_EDIT_COST && (post_ins || post_del)) {\r
-        // Candidate found.\r
-        equalities.push(pointer);\r
-        pre_ins = post_ins;\r
-        pre_del = post_del;\r
-        lastequality = diff[pointer][1];\r
-      } else {\r
-        // Not a candidate, and can never become one.\r
-        equalities = [];\r
-        lastequality = '';\r
-      }\r
-      post_ins = post_del = false;\r
-    } else { // an insertion or deletion\r
-      if (diff[pointer][0] == -1)\r
-        post_del = true;\r
-      else\r
-        post_ins = true;\r
-      // Five types to be split:\r
-      // <ins>A</ins><del>B</del>XY<ins>C</ins><del>D</del>\r
-      // <ins>A</ins>X<ins>C</ins><del>D</del>\r
-      // <ins>A</ins><del>B</del>X<ins>C</ins>\r
-      // <ins>A</del>X<ins>C</ins><del>D</del>\r
-      // <ins>A</ins><del>B</del>X<del>C</del>\r
-      if (lastequality && ((pre_ins && pre_del && post_ins && post_del) || ((lastequality.length < DIFF_EDIT_COST/2) && (pre_ins + pre_del + post_ins + post_del) == 3))) {\r
-        //alert("Splitting: '"+lastequality+"'");\r
-        diff.splice(equalities[equalities.length-1], 0, [-1, lastequality]); // Duplicate record\r
-        diff[equalities[equalities.length-1]+1][0] = 1; // Change second copy to insert.\r
-        equalities.pop();  // Throw away the equality we just deleted;\r
-        lastequality = '';\r
-        if (pre_ins && pre_del) {\r
-          // No changes made which could affect previous entry, keep going.\r
-          post_ins = post_del = true;\r
-          equalities = [];\r
-        } else {\r
-          equalities.pop();  // Throw away the previous equality;\r
-          pointer = equalities.length ? equalities[equalities.length-1] : -1;\r
-          post_ins = post_del = false;\r
-        }\r
-        changes = true;\r
-      }\r
-    }\r
-    pointer++;\r
-  }\r
-\r
-  if (changes)\r
-    diff_cleanup_merge(diff);\r
-}\r
-\r
-\r
-function diff_cleanup_merge(diff) {\r
-  // Reorder and merge like edit sections.  Merge equalities.\r
-  // Any edit section can move as long as it doesn't cross an equality.\r
-  diff.push([0, '']);  // Add a dummy entry at the end.\r
-  var pointer = 0;\r
-  var count_delete = 0;\r
-  var count_insert = 0;\r
-  var text_delete = '';\r
-  var text_insert = '';\r
-  var record_insert, record_delete;\r
-  var my_xfix;\r
-  while(pointer < diff.length) {\r
-    if (diff[pointer][0] == 1) {\r
-      count_insert++;\r
-      text_insert += diff[pointer][1];\r
-      pointer++;\r
-    } else if (diff[pointer][0] == -1) {\r
-      count_delete++;\r
-      text_delete += diff[pointer][1];\r
-      pointer++;\r
-    } else {  // Upon reaching an equality, check for prior redundancies.\r
-      if (count_delete > 1 || count_insert > 1) {\r
-        if (count_delete > 1 && count_insert > 1) {\r
-          // Factor out any common prefixies.\r
-          my_xfix = diff_prefix(text_insert, text_delete);\r
-          if (my_xfix[2] != '') {\r
-            if ((pointer - count_delete - count_insert) > 0 && diff[pointer - count_delete - count_insert - 1][0] == 0) {\r
-              text_insert = my_xfix[0];\r
-              text_delete = my_xfix[1];\r
-              diff[pointer - count_delete - count_insert - 1][1] += my_xfix[2];\r
-            }\r
-          }\r
-          // Factor out any common suffixies.\r
-          my_xfix = diff_suffix(text_insert, text_delete);\r
-          if (my_xfix[2] != '') {\r
-            text_insert = my_xfix[0];\r
-            text_delete = my_xfix[1];\r
-            diff[pointer][1] = my_xfix[2] + diff[pointer][1];\r
-          }\r
-        }\r
-        // Delete the offending records and add the merged ones.\r
-        if (count_delete == 0)\r
-          diff.splice(pointer - count_delete - count_insert, count_delete + count_insert, [1, text_insert]);\r
-        else if (count_insert == 0)\r
-          diff.splice(pointer - count_delete - count_insert, count_delete + count_insert, [-1, text_delete]);\r
-        else\r
-          diff.splice(pointer - count_delete - count_insert, count_delete + count_insert, [-1, text_delete], [1, text_insert]);\r
-        pointer = pointer - count_delete - count_insert + (count_delete ? 1 : 0) + (count_insert ? 1 : 0) + 1;\r
-      } else if (pointer != 0 && diff[pointer-1][0] == 0) {\r
-        // Merge this equality with the previous one.\r
-        diff[pointer-1][1] += diff[pointer][1];\r
-        diff.splice(pointer, 1);\r
-      } else {\r
-        pointer++;\r
-      }\r
-      count_insert = 0;\r
-      count_delete = 0;\r
-      text_delete = '';\r
-      text_insert = '';\r
-    }\r
-  }\r
-  if (diff[diff.length-1][1] == '')\r
-    diff.pop();  // Remove the dummy entry at the end.\r
-}\r
-\r
-\r
-function diff_addindex(diff) {\r
-  // Add an index to each tuple, represents where the tuple is located in text2.\r
-  // e.g. [[-1, 'h', 0], [1, 'c', 0], [0, 'at', 1]]\r
-  var i = 0;\r
-  for (var x=0; x<diff.length; x++) {\r
-    diff[x].push(i);\r
-    if (diff[x][0] != -1)\r
-      i += diff[x][1].length;\r
-  }\r
-}\r
-\r
-\r
-function diff_xindex(diff, loc) {\r
-  // loc is a location in text1, compute and return the equivalent location in text2.\r
-  // e.g. "The cat" vs "The big cat", 1->1, 5->8\r
-  var chars1 = 0;\r
-  var chars2 = 0;\r
-  var last_chars1 = 0;\r
-  var last_chars2 = 0;\r
-  for (var x=0; x<diff.length; x++) {\r
-    if (diff[x][0] != 1) // Equality or deletion.\r
-      chars1 += diff[x][1].length;\r
-    if (diff[x][0] != -1) // Equality or insertion.\r
-      chars2 += diff[x][1].length;\r
-    if (chars1 > loc) // Overshot the location.\r
-      break;\r
-    last_chars1 = chars1;\r
-    last_chars2 = chars2;\r
-  }\r
-  if (diff.length != x && diff[x][0] == -1) // The location was deleted.\r
-    return last_chars2;\r
-  // Add the remaining character length.\r
-  return last_chars2 + (loc - last_chars1);\r
-}\r
-\r
-\r
-function diff_prettyhtml(diff) {\r
-  // Convert a diff array into a pretty HTML report.\r
-  diff_addindex(diff);\r
-  var html = '';\r
-  for (var x=0; x<diff.length; x++) {\r
-    var m = diff[x][0]; // Mode (-1=delete, 0=copy, 1=add)\r
-    var t = diff[x][1]; // Text of change.\r
-    var i = diff[x][2]; // Index of change.\r
-    t = t.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");\r
-    t = t.replace(/\n/g, "&para;<BR>");\r
-    if (m == -1)\r
-      html += "<DEL STYLE='background:#FFE6E6;' TITLE='i="+i+"'>"+t+"</DEL>";\r
-    else if (m == 1)\r
-      html += "<INS STYLE='background:#E6FFE6;' TITLE='i="+i+"'>"+t+"</INS>";\r
-    else\r
-      html += "<SPAN TITLE='i="+i+"'>"+t+"</SPAN>";\r
-  }\r
-  return html;\r
-}\r
-\r
-\r
-  //////////////////////////////////////////////////////////////////////\r
- //  Match                                                           //\r
-//////////////////////////////////////////////////////////////////////\r
-\r
-\r
-function match_getmaxbits() {\r
-  // Compute the number of bits in an int.\r
-  // The normal answer for JavaScript is 32.\r
-  var maxbits = 0;\r
-  var oldi = 1;\r
-  var newi = 2;\r
-  while (oldi != newi) {\r
-    maxbits++;\r
-    oldi = newi;\r
-    newi = newi << 1;\r
-  }\r
-  return maxbits;\r
-}\r
-var MATCH_MAXBITS = match_getmaxbits();\r
-\r
-\r
-function match_main(text, pattern, loc) {\r
-  // Locate the best instance of 'pattern' in 'text' near 'loc'.\r
-  loc = Math.max(0, Math.min(loc, text.length-pattern.length));\r
-  if (text == pattern) {\r
-    // Shortcut (potentially not guaranteed by the algorithm)\r
-    return 0;\r
-  } else if (text.length == 0) {\r
-    // Nothing to match.\r
-    return null;\r
-  } else if (text.substring(loc, loc + pattern.length) == pattern) {\r
-    // Perfect match at the perfect spot!  (Includes case of null pattern)\r
-    return loc;\r
-  } else {\r
-    // Do a fuzzy compare.\r
-    var match = match_bitap(text, pattern, loc);\r
-    return match;\r
-  }\r
-}\r
-\r
-\r
-function match_bitap(text, pattern, loc) {\r
-  // Locate the best instance of 'pattern' in 'text' near 'loc' using the Bitap algorithm.\r
-  if (pattern.length > MATCH_MAXBITS)\r
-    return alert("Pattern too long for this browser.");\r
-\r
-  // Initialise the alphabet.\r
-  var s = match_alphabet(pattern);\r
-\r
-  var score_text_length = text.length;\r
-  // Coerce the text length between reasonable maximums and minimums.\r
-  score_text_length = Math.max(score_text_length, MATCH_MINLENGTH);\r
-  score_text_length = Math.min(score_text_length, MATCH_MAXLENGTH);\r
-\r
-  function match_bitap_score (e, x) {\r
-    // Compute and return the score for a match with e errors and x location.\r
-    var d = Math.abs(loc-x);\r
-    return (e / pattern.length / MATCH_BALANCE) + (d / score_text_length / (1.0 - MATCH_BALANCE));\r
-  }\r
-\r
-  // Highest score beyond which we give up.\r
-  var score_threshold = MATCH_THRESHOLD;\r
-  // Is there a nearby exact match? (speedup)\r
-  var best_loc = text.indexOf(pattern, loc);\r
-  if (best_loc != -1)\r
-    score_threshold = Math.min(match_bitap_score(0, best_loc), score_threshold);\r
-  // What about in the other direction? (speedup)\r
-  best_loc = text.lastIndexOf(pattern, loc+pattern.length);\r
-  if (best_loc != -1)\r
-    score_threshold = Math.min(match_bitap_score(0, best_loc), score_threshold);\r
-\r
-  // Initialise the bit arrays.\r
-  var r = Array();\r
-  var d = -1;\r
-  var matchmask = Math.pow(2, pattern.length-1);\r
-  best_loc = null;\r
-\r
-  var bin_min, bin_mid;\r
-  var bin_max = Math.max(loc+loc, text.length);\r
-  var last_rd;\r
-  for (var d=0; d<pattern.length; d++) {\r
-    // Scan for the best match; each iteration allows for one more error.\r
-    var rd = Array(text.length);\r
-\r
-    // Run a binary search to determine how far from 'loc' we can stray at this error level.\r
-    bin_min = loc;\r
-    bin_mid = bin_max;\r
-    while(bin_min < bin_mid) {\r
-      if (match_bitap_score(d, bin_mid) < score_threshold)\r
-        bin_min = bin_mid;\r
-      else\r
-        bin_max = bin_mid;\r
-      bin_mid = Math.floor((bin_max - bin_min) / 2 + bin_min);\r
-    }\r
-    bin_max = bin_mid; // Use the result from this iteration as the maximum for the next.\r
-    var start = Math.max(0, loc - (bin_mid - loc) - 1);\r
-    var finish = Math.min(text.length-1, pattern.length + bin_mid);\r
-\r
-    if (text.charAt(finish) == pattern.charAt(pattern.length-1))\r
-      rd[finish] = Math.pow(2, d+1)-1;\r
-    else\r
-      rd[finish] = Math.pow(2, d)-1;\r
-    for (var j=finish-1; j>=start; j--) {\r
-      // The alphabet (s) is a sparse hash, so the following lines generate warnings.\r
-      if (d == 0) // First pass: exact match.\r
-        rd[j] = ((rd[j+1] << 1) | 1) & s[text.charAt(j)];\r
-      else // Subsequent passes: fuzzy match.\r
-        rd[j] = ((rd[j+1] << 1) | 1) & s[text.charAt(j)] | ((last_rd[j+1] << 1) | 1) | ((last_rd[j] << 1) | 1) | last_rd[j+1];\r
-      if (rd[j] & matchmask) {\r
-        var score = match_bitap_score(d, j);\r
-        // This match will almost certainly be better than any existing match.  But check anyway.\r
-        if (score <= score_threshold) {\r
-          // Told you so.\r
-          score_threshold = score;\r
-          best_loc = j;\r
-          if (j > loc) {\r
-            // When passing loc, don't exceed our current distance from loc.\r
-            start = Math.max(0, loc - (j - loc));\r
-          } else {\r
-            // Already passed loc, downhill from here on in.\r
-            break;\r
-          }\r
-        }\r
-      }\r
-    }\r
-    if (match_bitap_score(d+1, loc) > score_threshold) // No hope for a (better) match at greater error levels.\r
-      break;\r
-    last_rd = rd;\r
-  }\r
-  return best_loc;\r
-}\r
-\r
-\r
-function match_alphabet(pattern) {\r
-  // Initialise the alphabet for the Bitap algorithm.\r
-  var s = Object();\r
-  for (var i=0; i<pattern.length; i++)\r
-    s[pattern.charAt(i)] = 0;\r
-  for (var i=0; i<pattern.length; i++)\r
-    s[pattern.charAt(i)] |= Math.pow(2, pattern.length-i-1);\r
-  return s;\r
-}\r
-\r
-\r
-  //////////////////////////////////////////////////////////////////////\r
- //  Patch                                                           //\r
-//////////////////////////////////////////////////////////////////////\r
-\r
-\r
-function patch_obj() {\r
-  // Constructor for a patch object.\r
-  this.diffs = [];\r
-  this.start1 = null;\r
-  this.start2 = null;\r
-  this.length1 = 0;\r
-  this.length2 = 0;\r
-\r
-  this.toString = function() {\r
-    // Emmulate GNU diff's format.\r
-    // Header: @@ -382,8 +481,9 @@\r
-    // Indicies are printed as 1-based, not 0-based.\r
-    var coords1, coords2;\r
-    if (this.length1 == 0)\r
-      coords1 = this.start1+",0";\r
-    else if (this.length1 == 1)\r
-      coords1 = this.start1+1;\r
-    else\r
-      coords1 = (this.start1+1)+","+this.length1;\r
-    if (this.length2 == 0)\r
-      coords2 = this.start2+",0";\r
-    else if (this.length2 == 1)\r
-      coords2 = this.start2+1;\r
-    else\r
-      coords2 = (this.start2+1)+","+this.length2;\r
-    var txt = "@@ -"+coords1+" +"+coords2+" @@\n";\r
-    // Escape the body of the patch with %xx notation.\r
-    for (var x=0; x<this.diffs.length; x++)\r
-      txt += ("- +".charAt(this.diffs[x][0]+1)) + encodeURI(this.diffs[x][1]) + "\n";\r
-    return txt.replace(/%20/g, ' ');\r
-  }\r
-\r
-  this.text1 = function() {\r
-    // Compute and return the source text (all equalities and deletions).\r
-    var txt = '';\r
-    for (var x=0; x<this.diffs.length; x++)\r
-      if (this.diffs[x][0] == 0 || this.diffs[x][0] == -1)\r
-        txt += this.diffs[x][1];\r
-    return txt;\r
-  }\r
-\r
-  this.text2 = function() {\r
-    // Compute and return the destination text (all equalities and insertions).\r
-    var txt = '';\r
-    for (var x=0; x<this.diffs.length; x++)\r
-      if (this.diffs[x][0] == 0 || this.diffs[x][0] == 1)\r
-        txt += this.diffs[x][1];\r
-    return txt;\r
-  }\r
-}\r
-\r
-\r
-function patch_addcontext(patch, text) {\r
-  var pattern = text.substring(patch.start2, patch.start2+patch.length1);\r
-  var padding = 0;\r
-  // Increase the context until we're unique (but don't let the pattern expand beyond MATCH_MAXBITS).\r
-  while (text.indexOf(pattern) != text.lastIndexOf(pattern) && pattern.length < MATCH_MAXBITS-PATCH_MARGIN-PATCH_MARGIN) {\r
-    padding += PATCH_MARGIN;\r
-    pattern = text.substring(patch.start2 - padding, patch.start2+patch.length1 + padding);\r
-  }\r
-  // Add one chunk for good luck.\r
-  padding += PATCH_MARGIN;\r
-  // Add the prefix.\r
-  var prefix = text.substring(patch.start2 - padding, patch.start2);\r
-  if (prefix != '')\r
-    patch.diffs.unshift([0, prefix]);\r
-  // Add the suffix\r
-  var suffix = text.substring(patch.start2+patch.length1, patch.start2+patch.length1 + padding);\r
-  if (suffix != '')\r
-    patch.diffs.push([0, suffix]);\r
-\r
-  // Roll back the start points.\r
-  patch.start1 -= prefix.length;\r
-  patch.start2 -= prefix.length;\r
-  // Extend the lengths.\r
-  patch.length1 += prefix.length + suffix.length;\r
-  patch.length2 += prefix.length + suffix.length;\r
-}\r
-\r
-\r
-function patch_make(text1, text2, diff) {\r
-  // Compute a list of patches to turn text1 into text2.\r
-  // Use diff if provided, otherwise compute it ourselves.\r
-  if (typeof diff == 'undefined') {\r
-    diff = diff_main(text1, text2, true);\r
-    if (diff.length > 2) {\r
-      diff_cleanup_semantic(diff);\r
-      diff_cleanup_efficiency(diff);\r
-    }\r
-  }\r
-  if (diff.length == 0)\r
-    return []; // Get rid of the null case.\r
-  var patches = [];\r
-  var patch = new patch_obj();\r
-  var char_count1 = 0; // Number of characters into the text1 string.\r
-  var char_count2 = 0; // Number of characters into the text2 string.\r
-  var last_type = null;\r
-  var prepatch_text = text1; // Recreate the patches to determine context info.\r
-  var postpatch_text = text1;\r
-  for (var x=0; x<diff.length; x++) {\r
-    var diff_type = diff[x][0];\r
-    var diff_text = diff[x][1];\r
-\r
-    if (patch.diffs.length == 0 && diff_type != 0) {\r
-      // A new patch starts here.\r
-      patch.start1 = char_count1;\r
-      patch.start2 = char_count2;\r
-    }\r
-\r
-    if (diff_type == 1) {\r
-      // Insertion\r
-      patch.diffs.push(diff[x]);\r
-      patch.length2 += diff_text.length;\r
-      postpatch_text = postpatch_text.substring(0, char_count2) + diff_text + postpatch_text.substring(char_count2);\r
-    } else if (diff_type == -1) {\r
-      // Deletion.\r
-      patch.length1 += diff_text.length;\r
-      patch.diffs.push(diff[x]);\r
-      postpatch_text = postpatch_text.substring(0, char_count2) + postpatch_text.substring(char_count2 + diff_text.length);\r
-    } else if (diff_type == 0 && diff_text.length <= 2*PATCH_MARGIN && patch.diffs.length != 0 && diff.length != x+1) {\r
-      // Small equality inside a patch.\r
-      patch.diffs.push(diff[x]);\r
-      patch.length1 += diff_text.length;\r
-      patch.length2 += diff_text.length;\r
-    }\r
-\r
-    last_type = diff_type;\r
-    if (diff_type == 0 && diff_text.length >= 2*PATCH_MARGIN) {\r
-      // Time for a new patch.\r
-      if (patch.diffs.length != 0) {\r
-        patch_addcontext(patch, prepatch_text);\r
-        patches.push(patch);\r
-        var patch = new patch_obj();\r
-        last_type = null;\r
-        prepatch_text = postpatch_text;\r
-      }\r
-    }\r
-\r
-    // Update the current character count.\r
-    if (diff_type != 1)\r
-      char_count1 += diff_text.length;\r
-    if (diff_type != -1)\r
-      char_count2 += diff_text.length;\r
-  }\r
-  // Pick up the leftover patch if not empty.\r
-  if (patch.diffs.length != 0) {\r
-    patch_addcontext(patch, prepatch_text);\r
-    patches.push(patch);\r
-  }\r
-\r
-  return patches;\r
-}\r
-\r
-\r
-function patch_apply(patches, text) {\r
-  // Merge a set of patches onto the text.\r
-  // Return a patched text, as well as a list of true/false values indicating which patches were applied.\r
-  patch_splitmax(patches);\r
-  var results = [];\r
-  var delta = 0;\r
-  var expected_loc, start_loc;\r
-  var text1, text2;\r
-  var diff, mod, index1, index2;\r
-  for (var x=0; x<patches.length; x++) {\r
-    expected_loc = patches[x].start2 + delta;\r
-    text1 = patches[x].text1();\r
-    start_loc = match_main(text, text1, expected_loc);\r
-    if (start_loc == null) {\r
-      // No match found.  :(\r
-      results.push(false);\r
-    } else {\r
-      // Found a match.  :)\r
-      results.push(true);\r
-      delta = start_loc - expected_loc;\r
-      text2 = text.substring(start_loc, start_loc + text1.length);\r
-      if (text1 == text2) {\r
-        // Perfect match, just shove the replacement text in.\r
-        text = text.substring(0, start_loc) + patches[x].text2() + text.substring(start_loc + text1.length);\r
-      } else {\r
-        // Imperfect match.  Run a diff to get a framework of equivalent indicies.\r
-        diff = diff_main(text1, text2, false);\r
-        index1 = 0;\r
-        for (var y=0; y<patches[x].diffs.length; y++) {\r
-          mod = patches[x].diffs[y];\r
-          if (mod[0] != 0)\r
-            index2 = diff_xindex(diff, index1);\r
-          if (mod[0] == 1) // Insertion\r
-            text = text.substring(0, start_loc + index2) + mod[1] + text.substring(start_loc + index2);\r
-          else if (mod[0] == -1) // Deletion\r
-            text = text.substring(0, start_loc + index2) + text.substring(start_loc + diff_xindex(diff, index1 + mod[1].length));\r
-          if (mod[0] != -1)\r
-            index1 += mod[1].length;\r
-        }\r
-      }\r
-    }\r
-  }\r
-  return [text, results];\r
-}\r
-\r
-\r
-function patch_splitmax(patches) {\r
-  // Look through the patches and break up any which are longer than the maximum limit of the match algorithm.\r
-  var bigpatch, patch, patch_size, start1, start2, diff_type, diff_text, precontext, postcontext, empty;\r
-  for (var x=0; x<patches.length; x++) {\r
-    if (patches[x].length1 > MATCH_MAXBITS) {\r
-      bigpatch = patches[x];\r
-      // Remove the big old patch.\r
-      patches.splice(x, 1);\r
-      patch_size = MATCH_MAXBITS;\r
-      start1 = bigpatch.start1;\r
-      start2 = bigpatch.start2;\r
-      precontext = '';\r
-      while (bigpatch.diffs.length != 0) {\r
-        // Create one of several smaller patches.\r
-        patch = new patch_obj();\r
-        empty = true;\r
-        patch.start1 = start1 - precontext.length;\r
-        patch.start2 = start2 - precontext.length;\r
-        if (precontext  != '') {\r
-          patch.length1 = patch.length2 = precontext.length;\r
-          patch.diffs.push([0, precontext]);\r
-        }\r
-        while (bigpatch.diffs.length != 0 && patch.length1 < patch_size - PATCH_MARGIN) {\r
-          diff_type = bigpatch.diffs[0][0];\r
-          diff_text = bigpatch.diffs[0][1];\r
-          if (diff_type == 1) {\r
-            // Insertions are harmless.\r
-            patch.length2 += diff_text.length;\r
-            start2 += diff_text.length;\r
-            patch.diffs.push(bigpatch.diffs.shift());\r
-            empty = false;\r
-          } else {\r
-            // Deletion or equality.  Only take as much as we can stomach.\r
-            diff_text = diff_text.substring(0, patch_size - patch.length1 - PATCH_MARGIN);\r
-            patch.length1 += diff_text.length;\r
-            start1 += diff_text.length;\r
-            if (diff_type == 0) {\r
-              patch.length2 += diff_text.length;\r
-              start2 += diff_text.length;\r
-            } else {\r
-              empty = false;\r
-            }\r
-            patch.diffs.push([diff_type, diff_text]);\r
-            if (diff_text == bigpatch.diffs[0][1])\r
-              bigpatch.diffs.shift();\r
-            else\r
-              bigpatch.diffs[0][1] = bigpatch.diffs[0][1].substring(diff_text.length);\r
-          }\r
-        }\r
-        // Compute the head context for the next patch.\r
-        precontext = patch.text2();\r
-        precontext = precontext.substring(precontext.length - PATCH_MARGIN);\r
-        // Append the end context for this patch.\r
-        postcontext = bigpatch.text1().substring(0, PATCH_MARGIN);\r
-        if (postcontext  != '') {\r
-          patch.length1 += postcontext.length;\r
-          patch.length2 += postcontext.length;\r
-          if (patch.diffs.length > 0 && patch.diffs[patch.diffs.length-1][0] == 0)\r
-            patch.diffs[patch.diffs.length-1][1] += postcontext;\r
-          else\r
-            patch.diffs.push([0, postcontext]);\r
-        }\r
-        if (!empty)\r
-          patches.splice(x++, 0, patch);\r
-      }\r
-    }\r
-  }\r
-}\r
-\r
-\r
-function patch_totext(patches) {\r
-  // Take a list of patches and return a textual representation.\r
-  var text = '';\r
-  for (var x=0; x<patches.length; x++)\r
-    text += patches[x];\r
-  return text;\r
-}\r
-\r
-\r
-function patch_fromtext(text) {\r
-  // Take a textual representation of patches and return a list of patch objects.\r
-  var patches = [];\r
-  text = text.split('\n');\r
-  var patch, m, chars1, chars2, sign, line;\r
-  while (text.length != 0) {\r
-    m = text[0].match(/^@@ -(\d+),?(\d*) \+(\d+),?(\d*) @@$/);\r
-    if (!m)\r
-      return alert("Invalid patch string:\n"+text[0]);\r
-    patch = new patch_obj();\r
-    patches.push(patch);\r
-    patch.start1 = parseInt(m[1]);\r
-    if (m[2] == '') {\r
-      patch.start1--;\r
-      patch.length1 = 1;\r
-    } else if (m[2] == '0') {\r
-      patch.length1 = 0;\r
-    } else {\r
-      patch.start1--;\r
-      patch.length1 = parseInt(m[2]);\r
-    }\r
-\r
-    patch.start2 = parseInt(m[3]);\r
-    if (m[4] == '') {\r
-      patch.start2--;\r
-      patch.length2 = 1;\r
-    } else if (m[4] == '0') {\r
-      patch.length2 = 0;\r
-    } else {\r
-      patch.start2--;\r
-      patch.length2 = parseInt(m[4]);\r
-    }\r
-    text.shift();\r
-\r
-    while (text.length != 0) {\r
-      sign = text[0].charAt(0);\r
-      line = decodeURIComponent(text[0].substring(1));\r
-      if (sign == '-') {\r
-        // Deletion.\r
-        patch.diffs.push([-1, line]);\r
-      } else if (sign == '+') {\r
-        // Insertion.\r
-        patch.diffs.push([1, line]);\r
-      } else if (sign == ' ') {\r
-        // Minor equality.\r
-        patch.diffs.push([0, line]);\r
-      } else if (sign == '@') {\r
-        // Start of next patch.\r
-        break;\r
-      } else if (sign == '') {\r
-        // Blank line?  Whatever.\r
-      } else {\r
-        // WTF?\r
-        return alert("Invalid patch mode: '"+sign+"'\n"+line);\r
-      }\r
-      text.shift();\r
-    }\r
-  }\r
-  return patches;\r
-}\r
-\r
-// EOF\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/devkit/langs/en.js
deleted file mode 100644 (file)
index 44356cf..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('devkit',{\r
-title : 'TinyMCE Development Kit',\r
-info_tab : 'Info',\r
-settings_tab : 'Settings',\r
-log_tab : 'Log',\r
-content_tab : 'Content',\r
-command_states_tab : 'Commands',\r
-undo_redo_tab : 'Undo/Redo',\r
-misc_tab : 'Misc',\r
-filter : 'Filter:',\r
-clear_log : 'Clear log',\r
-refresh : 'Refresh',\r
-info_help : 'Press Refresh to view info.',\r
-settings_help : 'Press Refresh to display the settings array for each TinyMCE_Control instance.',\r
-content_help : 'Press Refresh to display the raw and cleaned HTML content for each TinyMCE_Control instance.',\r
-command_states_help : 'Press Refresh to display the current command states from inst.queryCommandState. This list will also mark unsupported commands.',\r
-undo_redo_help : 'Press Refresh to display the global and instance undo/redo levels.',\r
-misc_help : 'Here are various tools for debugging and development purposes.',\r
-debug_events : 'Debug events',\r
-undo_diff : 'Diff undo levels'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js
deleted file mode 100644 (file)
index d3cc5cd..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('directionality');var TinyMCE_DirectionalityPlugin={getInfo:function(){return{longname:'Directionality',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){switch(cn){case"ltr":return tinyMCE.getButtonHTML(cn,'lang_directionality_ltr_desc','{$pluginurl}/images/ltr.gif','mceDirectionLTR');case"rtl":return tinyMCE.getButtonHTML(cn,'lang_directionality_rtl_desc','{$pluginurl}/images/rtl.gif','mceDirectionRTL')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceDirectionLTR":var inst=tinyMCE.getInstanceById(editor_id);var elm=tinyMCE.getParentElement(inst.getFocusElement(),"p,div,td,h1,h2,h3,h4,h5,h6,pre,address");if(elm)elm.setAttribute("dir","ltr");tinyMCE.triggerNodeChange(false);return true;case"mceDirectionRTL":var inst=tinyMCE.getInstanceById(editor_id);var elm=tinyMCE.getParentElement(inst.getFocusElement(),"p,div,td,h1,h2,h3,h4,h5,h6,pre,address");if(elm)elm.setAttribute("dir","rtl");tinyMCE.triggerNodeChange(false);return true}return false},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){function getAttrib(elm,name){return elm.getAttribute(name)?elm.getAttribute(name):""}if(node==null)return;var elm=tinyMCE.getParentElement(node,"p,div,td,h1,h2,h3,h4,h5,h6,pre,address");if(!elm){tinyMCE.switchClass(editor_id+'_ltr','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_rtl','mceButtonDisabled');return true}tinyMCE.switchClass(editor_id+'_ltr','mceButtonNormal');tinyMCE.switchClass(editor_id+'_rtl','mceButtonNormal');var dir=getAttrib(elm,"dir");if(dir=="ltr"||dir=="")tinyMCE.switchClass(editor_id+'_ltr','mceButtonSelected');else tinyMCE.switchClass(editor_id+'_rtl','mceButtonSelected');return true}};tinyMCE.addPlugin("directionality",TinyMCE_DirectionalityPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js
deleted file mode 100644 (file)
index eb106f1..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('directionality');\r
-\r
-var TinyMCE_DirectionalityPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Directionality',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "ltr":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_directionality_ltr_desc', '{$pluginurl}/images/ltr.gif', 'mceDirectionLTR');\r
-\r
-                       case "rtl":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_directionality_rtl_desc', '{$pluginurl}/images/rtl.gif', 'mceDirectionRTL');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceDirectionLTR":\r
-                               var inst = tinyMCE.getInstanceById(editor_id);\r
-                               var elm = tinyMCE.getParentElement(inst.getFocusElement(), "p,div,td,h1,h2,h3,h4,h5,h6,pre,address");\r
-\r
-                               if (elm)\r
-                                       elm.setAttribute("dir", "ltr");\r
-\r
-                               tinyMCE.triggerNodeChange(false);\r
-                               return true;\r
-\r
-                       case "mceDirectionRTL":\r
-                               var inst = tinyMCE.getInstanceById(editor_id);\r
-                               var elm = tinyMCE.getParentElement(inst.getFocusElement(), "p,div,td,h1,h2,h3,h4,h5,h6,pre,address");\r
-\r
-                               if (elm)\r
-                                       elm.setAttribute("dir", "rtl");\r
-\r
-                               tinyMCE.triggerNodeChange(false);\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               function getAttrib(elm, name) {\r
-                       return elm.getAttribute(name) ? elm.getAttribute(name) : "";\r
-               }\r
-\r
-               if (node == null)\r
-                       return;\r
-\r
-               var elm = tinyMCE.getParentElement(node, "p,div,td,h1,h2,h3,h4,h5,h6,pre,address");\r
-               if (!elm) {\r
-                       tinyMCE.switchClass(editor_id + '_ltr', 'mceButtonDisabled');\r
-                       tinyMCE.switchClass(editor_id + '_rtl', 'mceButtonDisabled');\r
-                       return true;\r
-               }\r
-\r
-               tinyMCE.switchClass(editor_id + '_ltr', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_rtl', 'mceButtonNormal');\r
-\r
-               var dir = getAttrib(elm, "dir");\r
-               if (dir == "ltr" || dir == "")\r
-                       tinyMCE.switchClass(editor_id + '_ltr', 'mceButtonSelected');\r
-               else\r
-                       tinyMCE.switchClass(editor_id + '_rtl', 'mceButtonSelected');\r
-\r
-               return true;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("directionality", TinyMCE_DirectionalityPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/images/ltr.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/images/ltr.gif
deleted file mode 100644 (file)
index ac8f30c..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/images/ltr.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/images/rtl.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/images/rtl.gif
deleted file mode 100644 (file)
index 0348f99..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/images/rtl.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/langs/en.js
deleted file mode 100644 (file)
index a1db297..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-directionality_ltr_desc : 'Direction left to right',\r
-directionality_rtl_desc : 'Direction right to left'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/directionality/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js
deleted file mode 100644 (file)
index 4d81e5a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('emotions');var TinyMCE_EmotionsPlugin={getInfo:function(){return{longname:'Emotions',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/emotions',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){switch(cn){case"emotions":return tinyMCE.getButtonHTML(cn,'lang_emotions_desc','{$pluginurl}/images/emotions.gif','mceEmotion')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceEmotion":var template=new Array();template['file']='../../plugins/emotions/emotions.htm';template['width']=250;template['height']=160;template['width']+=tinyMCE.getLang('lang_emotions_delta_width',0);template['height']+=tinyMCE.getLang('lang_emotions_delta_height',0);tinyMCE.openWindow(template,{editor_id:editor_id,inline:"yes"});return true}return false}};tinyMCE.addPlugin('emotions',TinyMCE_EmotionsPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js
deleted file mode 100644 (file)
index c7d60cf..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('emotions');\r
-\r
-// Plucin static class\r
-var TinyMCE_EmotionsPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Emotions',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/emotions',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       /**\r
-        * Returns the HTML contents of the emotions control.\r
-        */\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "emotions":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_emotions_desc', '{$pluginurl}/images/emotions.gif', 'mceEmotion');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       /**\r
-        * Executes the mceEmotion command.\r
-        */\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceEmotion":\r
-                               var template = new Array();\r
-\r
-                               template['file'] = '../../plugins/emotions/emotions.htm'; // Relative to theme\r
-                               template['width'] = 250;\r
-                               template['height'] = 160;\r
-\r
-                               // Language specific width and height addons\r
-                               template['width'] += tinyMCE.getLang('lang_emotions_delta_width', 0);\r
-                               template['height'] += tinyMCE.getLang('lang_emotions_delta_height', 0);\r
-\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id, inline : "yes"});\r
-\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       }\r
-};\r
-\r
-// Register plugin\r
-tinyMCE.addPlugin('emotions', TinyMCE_EmotionsPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm
deleted file mode 100644 (file)
index fca8ffa..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_emotions_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/functions.js"></script>\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-       <div align="center">\r
-               <div class="title">{$lang_emotions_title}:<br /><br /></div>\r
-\r
-               <table border="0" cellspacing="0" cellpadding="4">\r
-                 <tr>\r
-                       <td><a href="javascript:insertEmotion('smiley-cool.gif','lang_emotions_cool');"><img src="images/smiley-cool.gif" width="18" height="18" border="0" alt="{$lang_emotions_cool}" title="{$lang_emotions_cool}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-cry.gif','lang_emotions_cry');"><img src="images/smiley-cry.gif" width="18" height="18" border="0" alt="{$lang_emotions_cry}" title="{$lang_emotions_cry}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-embarassed.gif','lang_emotions_embarassed');"><img src="images/smiley-embarassed.gif" width="18" height="18" border="0" alt="{$lang_emotions_embarassed}" title="{$lang_emotions_embarassed}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-foot-in-mouth.gif','lang_emotions_foot_in_mouth');"><img src="images/smiley-foot-in-mouth.gif" width="18" height="18" border="0" alt="{$lang_emotions_foot_in_mouth}" title="{$lang_emotions_foot_in_mouth}" /></a></td>\r
-                 </tr>\r
-                 <tr>\r
-                       <td><a href="javascript:insertEmotion('smiley-frown.gif','lang_emotions_frown');"><img src="images/smiley-frown.gif" width="18" height="18" border="0" alt="{$lang_emotions_frown}" title="{$lang_emotions_frown}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-innocent.gif','lang_emotions_innocent');"><img src="images/smiley-innocent.gif" width="18" height="18" border="0" alt="{$lang_emotions_innocent}" title="{$lang_emotions_innocent}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-kiss.gif','lang_emotions_kiss');"><img src="images/smiley-kiss.gif" width="18" height="18" border="0" alt="{$lang_emotions_kiss}" title="{$lang_emotions_kiss}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-laughing.gif','lang_emotions_laughing');"><img src="images/smiley-laughing.gif" width="18" height="18" border="0" alt="{$lang_emotions_laughing}" title="{$lang_emotions_laughing}" /></a></td>\r
-                 </tr>\r
-                 <tr>\r
-                       <td><a href="javascript:insertEmotion('smiley-money-mouth.gif','lang_emotions_money_mouth');"><img src="images/smiley-money-mouth.gif" width="18" height="18" border="0" alt="{$lang_emotions_money_mouth}" title="{$lang_emotions_money_mouth}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-sealed.gif','lang_emotions_sealed');"><img src="images/smiley-sealed.gif" width="18" height="18" border="0" alt="{$lang_emotions_sealed}" title="{$lang_emotions_sealed}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-smile.gif','lang_emotions_smile');"><img src="images/smiley-smile.gif" width="18" height="18" border="0" alt="{$lang_emotions_smile}" title="{$lang_emotions_smile}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-surprised.gif','lang_emotions_surprised');"><img src="images/smiley-surprised.gif" width="18" height="18" border="0" alt="{$lang_emotions_surprised}" title="{$lang_emotions_surprised}" /></a></td>\r
-                 </tr>\r
-                 <tr>\r
-                       <td><a href="javascript:insertEmotion('smiley-tongue-out.gif','lang_emotions_tongue_out');"><img src="images/smiley-tongue-out.gif" width="18" height="18" border="0" alt="{$lang_emotions_tongue-out}" title="{$lang_emotions_tongue_out}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-undecided.gif','lang_emotions_undecided');"><img src="images/smiley-undecided.gif" width="18" height="18" border="0" alt="{$lang_emotions_undecided}" title="{$lang_emotions_undecided}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-wink.gif','lang_emotions_wink');"><img src="images/smiley-wink.gif" width="18" height="18" border="0" alt="{$lang_emotions_wink}" title="{$lang_emotions_wink}" /></a></td>\r
-                       <td><a href="javascript:insertEmotion('smiley-yell.gif','lang_emotions_yell');"><img src="images/smiley-yell.gif" width="18" height="18" border="0" alt="{$lang_emotions_yell}" title="{$lang_emotions_yell}" /></a></td>\r
-                 </tr>\r
-               </table>\r
-       </div>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/emotions.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/emotions.gif
deleted file mode 100644 (file)
index a39ed8e..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/emotions.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/readme.txt
deleted file mode 100644 (file)
index a3cea1b..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-These emotions where taken from Mozilla Thunderbird.\r
-I hope they don't get angry if I use them here after all this is a open source project aswell.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-cool.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-cool.gif
deleted file mode 100644 (file)
index ba90cc3..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-cool.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-cry.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-cry.gif
deleted file mode 100644 (file)
index 74d897a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-cry.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-embarassed.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-embarassed.gif
deleted file mode 100644 (file)
index 963a96b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-embarassed.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-foot-in-mouth.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-foot-in-mouth.gif
deleted file mode 100644 (file)
index 16f68cc..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-foot-in-mouth.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-frown.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-frown.gif
deleted file mode 100644 (file)
index 716f55e..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-frown.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-innocent.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-innocent.gif
deleted file mode 100644 (file)
index 334d49e..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-innocent.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-kiss.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-kiss.gif
deleted file mode 100644 (file)
index 4efd549..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-kiss.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-laughing.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-laughing.gif
deleted file mode 100644 (file)
index 1606c11..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-laughing.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-money-mouth.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-money-mouth.gif
deleted file mode 100644 (file)
index ca2451e..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-money-mouth.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-sealed.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-sealed.gif
deleted file mode 100644 (file)
index b33d3cc..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-sealed.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-smile.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-smile.gif
deleted file mode 100644 (file)
index e6a9e60..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-smile.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-surprised.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-surprised.gif
deleted file mode 100644 (file)
index cb99cdd..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-surprised.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-tongue-out.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-tongue-out.gif
deleted file mode 100644 (file)
index 2075dc1..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-tongue-out.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-undecided.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-undecided.gif
deleted file mode 100644 (file)
index bef7e25..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-undecided.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-wink.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-wink.gif
deleted file mode 100644 (file)
index 9faf1af..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-wink.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-yell.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-yell.gif
deleted file mode 100644 (file)
index 648e6e8..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/images/smiley-yell.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/jscripts/functions.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/jscripts/functions.js
deleted file mode 100644 (file)
index 95a9eaf..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-}\r
-\r
-function insertEmotion(file_name, title) {\r
-       title = tinyMCE.getLang(title);\r
-\r
-       if (title == null)\r
-               title = "";\r
-\r
-       // XML encode\r
-       title = title.replace(/&/g, '&amp;');\r
-       title = title.replace(/\"/g, '&quot;');\r
-       title = title.replace(/</g, '&lt;');\r
-       title = title.replace(/>/g, '&gt;');\r
-\r
-       var html = '<img src="' + tinyMCE.baseURL + "/plugins/emotions/images/" + file_name + '" mce_src="' + tinyMCE.baseURL + "/plugins/emotions/images/" + file_name + '" border="0" alt="' + title + '" title="' + title + '" />';\r
-\r
-       tinyMCE.execCommand('mceInsertContent', false, html);\r
-       tinyMCEPopup.close();\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/langs/en.js
deleted file mode 100644 (file)
index 3cdd675..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('emotions',{\r
-title : 'Insert emotion',\r
-desc : 'Emotions',\r
-cool : 'Cool',\r
-cry : 'Cry',\r
-embarassed : 'Embarassed',\r
-foot_in_mouth : 'Foot in mouth',\r
-frown : 'Frown',\r
-innocent : 'Innocent',\r
-kiss : 'Kiss',\r
-laughing : 'Laughing',\r
-money_mouth : 'Money mouth',\r
-sealed : 'Sealed',\r
-smile : 'Smile',\r
-surprised : 'Surprised',\r
-tongue_out : 'Tongue out',\r
-undecided : 'Undecided',\r
-wink : 'Wink',\r
-yell : 'Yell'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/emotions/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/css/content.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/css/content.css
deleted file mode 100644 (file)
index 843258b..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-.mceItemFlash {\r
-       border: 1px dotted #cc0000;\r
-       background-image: url('../images/flash.gif');\r
-       background-position: center;\r
-       background-repeat: no-repeat;\r
-       background-color: #ffffcc;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/css/flash.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/css/flash.css
deleted file mode 100644 (file)
index d3e88e1..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-.panel_wrapper div.current {\r
-       height: 100px;\r
-}\r
-\r
-#width, #height {\r
-       width: 50px;\r
-}\r
-\r
-#file {\r
-       width: 250px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/editor_plugin.js
deleted file mode 100644 (file)
index ddcf35d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('flash');var TinyMCE_FlashPlugin={getInfo:function(){return{longname:'Flash',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/flash',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){if(!tinyMCE.settings['flash_skip_plugin_css'])tinyMCE.importCSS(inst.getDoc(),tinyMCE.baseURL+"/plugins/flash/css/content.css")},getControlHTML:function(cn){switch(cn){case"flash":return tinyMCE.getButtonHTML(cn,'lang_flash_desc','{$pluginurl}/images/flash.gif','mceFlash')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceFlash":var name="",swffile="",swfwidth="",swfheight="",action="insert";var template=new Array();var inst=tinyMCE.getInstanceById(editor_id);var focusElm=inst.getFocusElement();template['file']='../../plugins/flash/flash.htm';template['width']=430;template['height']=175;template['width']+=tinyMCE.getLang('lang_flash_delta_width',0);template['height']+=tinyMCE.getLang('lang_flash_delta_height',0);if(focusElm!=null&&focusElm.nodeName.toLowerCase()=="img"){name=tinyMCE.getAttrib(focusElm,'class');if(name.indexOf('mceItemFlash')==-1)return true;swffile=tinyMCE.getAttrib(focusElm,'alt');if(tinyMCE.getParam('convert_urls'))swffile=eval(tinyMCE.settings['urlconverter_callback']+"(swffile, null, true);");swfwidth=tinyMCE.getAttrib(focusElm,'width');swfheight=tinyMCE.getAttrib(focusElm,'height');action="update"}tinyMCE.openWindow(template,{editor_id:editor_id,inline:"yes",swffile:swffile,swfwidth:swfwidth,swfheight:swfheight,action:action});return true}return false},cleanup:function(type,content){switch(type){case"insert_to_editor_dom":if(tinyMCE.getParam('convert_urls')){var imgs=content.getElementsByTagName("img");for(var i=0;i<imgs.length;i++){if(tinyMCE.getAttrib(imgs[i],"class")=="mceItemFlash"){var src=tinyMCE.getAttrib(imgs[i],"alt");if(tinyMCE.getParam('convert_urls'))src=eval(tinyMCE.settings['urlconverter_callback']+"(src, null, true);");imgs[i].setAttribute('alt',src);imgs[i].setAttribute('title',src)}}}break;case"get_from_editor_dom":var imgs=content.getElementsByTagName("img");for(var i=0;i<imgs.length;i++){if(tinyMCE.getAttrib(imgs[i],"class")=="mceItemFlash"){var src=tinyMCE.getAttrib(imgs[i],"alt");if(tinyMCE.getParam('convert_urls'))src=eval(tinyMCE.settings['urlconverter_callback']+"(src, null, true);");imgs[i].setAttribute('alt',src);imgs[i].setAttribute('title',src)}}break;case"insert_to_editor":var startPos=0;var embedList=new Array();content=content.replace(new RegExp('<[ ]*embed','gi'),'<embed');content=content.replace(new RegExp('<[ ]*/embed[ ]*>','gi'),'</embed>');content=content.replace(new RegExp('<[ ]*object','gi'),'<object');content=content.replace(new RegExp('<[ ]*/object[ ]*>','gi'),'</object>');while((startPos=content.indexOf('<embed',startPos+1))!=-1){var endPos=content.indexOf('>',startPos);var attribs=TinyMCE_FlashPlugin._parseAttributes(content.substring(startPos+6,endPos));embedList[embedList.length]=attribs}var index=0;while((startPos=content.indexOf('<object',startPos))!=-1){if(index>=embedList.length)break;var attribs=embedList[index];endPos=content.indexOf('</object>',startPos);endPos+=9;var contentAfter=content.substring(endPos);content=content.substring(0,startPos);content+='<img width="'+attribs["width"]+'" height="'+attribs["height"]+'"';content+=' src="'+(tinyMCE.getParam("theme_href")+'/images/spacer.gif')+'" title="'+attribs["src"]+'"';content+=' alt="'+attribs["src"]+'" class="mceItemFlash" />'+content.substring(endPos);content+=contentAfter;index++;startPos++}var index=0;while((startPos=content.indexOf('<embed',startPos))!=-1){if(index>=embedList.length)break;var attribs=embedList[index];endPos=content.indexOf('>',startPos);endPos+=9;var contentAfter=content.substring(endPos);content=content.substring(0,startPos);content+='<img width="'+attribs["width"]+'" height="'+attribs["height"]+'"';content+=' src="'+(tinyMCE.getParam("theme_href")+'/images/spacer.gif')+'" title="'+attribs["src"]+'"';content+=' alt="'+attribs["src"]+'" class="mceItemFlash" />'+content.substring(endPos);content+=contentAfter;index++;startPos++}break;case"get_from_editor":var startPos=-1;while((startPos=content.indexOf('<img',startPos+1))!=-1){var endPos=content.indexOf('/>',startPos);var attribs=TinyMCE_FlashPlugin._parseAttributes(content.substring(startPos+4,endPos));if(attribs['class']!="mceItemFlash")continue;endPos+=2;var embedHTML='';var wmode=tinyMCE.getParam("flash_wmode","");var quality=tinyMCE.getParam("flash_quality","high");var menu=tinyMCE.getParam("flash_menu","false");embedHTML+='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"';embedHTML+=' codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"';embedHTML+=' width="'+attribs["width"]+'" height="'+attribs["height"]+'">';embedHTML+='<param name="movie" value="'+attribs["title"]+'" />';embedHTML+='<param name="quality" value="'+quality+'" />';embedHTML+='<param name="menu" value="'+menu+'" />';embedHTML+='<param name="wmode" value="'+wmode+'" />';embedHTML+='<embed src="'+attribs["title"]+'" wmode="'+wmode+'" quality="'+quality+'" menu="'+menu+'" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="'+attribs["width"]+'" height="'+attribs["height"]+'"></embed></object>';chunkBefore=content.substring(0,startPos);chunkAfter=content.substring(endPos);content=chunkBefore+embedHTML+chunkAfter}break}return content},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){if(node==null)return;do{if(node.nodeName=="IMG"&&tinyMCE.getAttrib(node,'class').indexOf('mceItemFlash')==0){tinyMCE.switchClass(editor_id+'_flash','mceButtonSelected');return true}}while((node=node.parentNode));tinyMCE.switchClass(editor_id+'_flash','mceButtonNormal');return true},_parseAttributes:function(attribute_string){var attributeName="";var attributeValue="";var withInName;var withInValue;var attributes=new Array();var whiteSpaceRegExp=new RegExp('^[ \n\r\t]+','g');if(attribute_string==null||attribute_string.length<2)return null;withInName=withInValue=false;for(var i=0;i<attribute_string.length;i++){var chr=attribute_string.charAt(i);if((chr=='"'||chr=="'")&&!withInValue)withInValue=true;else if((chr=='"'||chr=="'")&&withInValue){withInValue=false;var pos=attributeName.lastIndexOf(' ');if(pos!=-1)attributeName=attributeName.substring(pos+1);attributes[attributeName.toLowerCase()]=attributeValue.substring(1);attributeName="";attributeValue=""}else if(!whiteSpaceRegExp.test(chr)&&!withInName&&!withInValue)withInName=true;if(chr=='='&&withInName)withInName=false;if(withInName)attributeName+=chr;if(withInValue)attributeValue+=chr}return attributes}};tinyMCE.addPlugin("flash",TinyMCE_FlashPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/editor_plugin_src.js
deleted file mode 100644 (file)
index d8e2d8a..0000000
+++ /dev/null
@@ -1,285 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('flash');\r
-\r
-var TinyMCE_FlashPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Flash',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/flash',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               if (!tinyMCE.settings['flash_skip_plugin_css'])\r
-                       tinyMCE.importCSS(inst.getDoc(), tinyMCE.baseURL + "/plugins/flash/css/content.css");\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "flash":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_flash_desc', '{$pluginurl}/images/flash.gif', 'mceFlash');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceFlash":\r
-                               var name = "", swffile = "", swfwidth = "", swfheight = "", action = "insert";\r
-                               var template = new Array();\r
-                               var inst = tinyMCE.getInstanceById(editor_id);\r
-                               var focusElm = inst.getFocusElement();\r
-\r
-                               template['file']   = '../../plugins/flash/flash.htm'; // Relative to theme\r
-                               template['width']  = 430;\r
-                               template['height'] = 175;\r
-\r
-                               template['width'] += tinyMCE.getLang('lang_flash_delta_width', 0);\r
-                               template['height'] += tinyMCE.getLang('lang_flash_delta_height', 0);\r
-\r
-                               // Is selection a image\r
-                               if (focusElm != null && focusElm.nodeName.toLowerCase() == "img") {\r
-                                       name = tinyMCE.getAttrib(focusElm, 'class');\r
-\r
-                                       if (name.indexOf('mceItemFlash') == -1) // Not a Flash\r
-                                               return true;\r
-\r
-                                       // Get rest of Flash items\r
-                                       swffile = tinyMCE.getAttrib(focusElm, 'alt');\r
-\r
-                                       if (tinyMCE.getParam('convert_urls'))\r
-                                               swffile = eval(tinyMCE.settings['urlconverter_callback'] + "(swffile, null, true);");\r
-\r
-                                       swfwidth = tinyMCE.getAttrib(focusElm, 'width');\r
-                                       swfheight = tinyMCE.getAttrib(focusElm, 'height');\r
-                                       action = "update";\r
-                               }\r
-\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id, inline : "yes", swffile : swffile, swfwidth : swfwidth, swfheight : swfheight, action : action});\r
-                       return true;\r
-          }\r
-\r
-          // Pass to next handler in chain\r
-          return false;\r
-       },\r
-\r
-       cleanup : function(type, content) {\r
-               switch (type) {\r
-                       case "insert_to_editor_dom":\r
-                               // Force relative/absolute\r
-                               if (tinyMCE.getParam('convert_urls')) {\r
-                                       var imgs = content.getElementsByTagName("img");\r
-                                       for (var i=0; i<imgs.length; i++) {\r
-                                               if (tinyMCE.getAttrib(imgs[i], "class") == "mceItemFlash") {\r
-                                                       var src = tinyMCE.getAttrib(imgs[i], "alt");\r
-\r
-                                                       if (tinyMCE.getParam('convert_urls'))\r
-                                                               src = eval(tinyMCE.settings['urlconverter_callback'] + "(src, null, true);");\r
-\r
-                                                       imgs[i].setAttribute('alt', src);\r
-                                                       imgs[i].setAttribute('title', src);\r
-                                               }\r
-                                       }\r
-                               }\r
-                               break;\r
-\r
-                       case "get_from_editor_dom":\r
-                               var imgs = content.getElementsByTagName("img");\r
-                               for (var i=0; i<imgs.length; i++) {\r
-                                       if (tinyMCE.getAttrib(imgs[i], "class") == "mceItemFlash") {\r
-                                               var src = tinyMCE.getAttrib(imgs[i], "alt");\r
-\r
-                                               if (tinyMCE.getParam('convert_urls'))\r
-                                                       src = eval(tinyMCE.settings['urlconverter_callback'] + "(src, null, true);");\r
-\r
-                                               imgs[i].setAttribute('alt', src);\r
-                                               imgs[i].setAttribute('title', src);\r
-                                       }\r
-                               }\r
-                               break;\r
-\r
-                       case "insert_to_editor":\r
-                               var startPos = 0;\r
-                               var embedList = new Array();\r
-\r
-                               // Fix the embed and object elements\r
-                               content = content.replace(new RegExp('<[ ]*embed','gi'),'<embed');\r
-                               content = content.replace(new RegExp('<[ ]*/embed[ ]*>','gi'),'</embed>');\r
-                               content = content.replace(new RegExp('<[ ]*object','gi'),'<object');\r
-                               content = content.replace(new RegExp('<[ ]*/object[ ]*>','gi'),'</object>');\r
-\r
-                               // Parse all embed tags\r
-                               while ((startPos = content.indexOf('<embed', startPos+1)) != -1) {\r
-                                       var endPos = content.indexOf('>', startPos);\r
-                                       var attribs = TinyMCE_FlashPlugin._parseAttributes(content.substring(startPos + 6, endPos));\r
-                                       embedList[embedList.length] = attribs;\r
-                               }\r
-\r
-                               // Parse all object tags and replace them with images from the embed data\r
-                               var index = 0;\r
-                               while ((startPos = content.indexOf('<object', startPos)) != -1) {\r
-                                       if (index >= embedList.length)\r
-                                               break;\r
-\r
-                                       var attribs = embedList[index];\r
-\r
-                                       // Find end of object\r
-                                       endPos = content.indexOf('</object>', startPos);\r
-                                       endPos += 9;\r
-\r
-                                       // Insert image\r
-                                       var contentAfter = content.substring(endPos);\r
-                                       content = content.substring(0, startPos);\r
-                                       content += '<img width="' + attribs["width"] + '" height="' + attribs["height"] + '"';\r
-                                       content += ' src="' + (tinyMCE.getParam("theme_href") + '/images/spacer.gif') + '" title="' + attribs["src"] + '"';\r
-                                       content += ' alt="' + attribs["src"] + '" class="mceItemFlash" />' + content.substring(endPos);\r
-                                       content += contentAfter;\r
-                                       index++;\r
-\r
-                                       startPos++;\r
-                               }\r
-\r
-                               // Parse all embed tags and replace them with images from the embed data\r
-                               var index = 0;\r
-                               while ((startPos = content.indexOf('<embed', startPos)) != -1) {\r
-                                       if (index >= embedList.length)\r
-                                               break;\r
-\r
-                                       var attribs = embedList[index];\r
-\r
-                                       // Find end of embed\r
-                                       endPos = content.indexOf('>', startPos);\r
-                                       endPos += 9;\r
-\r
-                                       // Insert image\r
-                                       var contentAfter = content.substring(endPos);\r
-                                       content = content.substring(0, startPos);\r
-                                       content += '<img width="' + attribs["width"] + '" height="' + attribs["height"] + '"';\r
-                                       content += ' src="' + (tinyMCE.getParam("theme_href") + '/images/spacer.gif') + '" title="' + attribs["src"] + '"';\r
-                                       content += ' alt="' + attribs["src"] + '" class="mceItemFlash" />' + content.substring(endPos);\r
-                                       content += contentAfter;\r
-                                       index++;\r
-\r
-                                       startPos++;\r
-                               }\r
-\r
-                               break;\r
-\r
-                       case "get_from_editor":\r
-                               // Parse all img tags and replace them with object+embed\r
-                               var startPos = -1;\r
-\r
-                               while ((startPos = content.indexOf('<img', startPos+1)) != -1) {\r
-                                       var endPos = content.indexOf('/>', startPos);\r
-                                       var attribs = TinyMCE_FlashPlugin._parseAttributes(content.substring(startPos + 4, endPos));\r
-\r
-                                       // Is not flash, skip it\r
-                                       if (attribs['class'] != "mceItemFlash")\r
-                                               continue;\r
-\r
-                                       endPos += 2;\r
-\r
-                                       var embedHTML = '';\r
-                                       var wmode = tinyMCE.getParam("flash_wmode", "");\r
-                                       var quality = tinyMCE.getParam("flash_quality", "high");\r
-                                       var menu = tinyMCE.getParam("flash_menu", "false");\r
-\r
-                                       // Insert object + embed\r
-                                       embedHTML += '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"';\r
-                                       embedHTML += ' codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"';\r
-                                       embedHTML += ' width="' + attribs["width"] + '" height="' + attribs["height"] + '">';\r
-                                       embedHTML += '<param name="movie" value="' + attribs["title"] + '" />';\r
-                                       embedHTML += '<param name="quality" value="' + quality + '" />';\r
-                                       embedHTML += '<param name="menu" value="' + menu + '" />';\r
-                                       embedHTML += '<param name="wmode" value="' + wmode + '" />';\r
-                                       embedHTML += '<embed src="' + attribs["title"] + '" wmode="' + wmode + '" quality="' + quality + '" menu="' + menu + '" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="' + attribs["width"] + '" height="' + attribs["height"] + '"></embed></object>';\r
-\r
-                                       // Insert embed/object chunk\r
-                                       chunkBefore = content.substring(0, startPos);\r
-                                       chunkAfter = content.substring(endPos);\r
-                                       content = chunkBefore + embedHTML + chunkAfter;\r
-                               }\r
-                               break;\r
-               }\r
-\r
-               // Pass through to next handler in chain\r
-               return content;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               if (node == null)\r
-                       return;\r
-\r
-               do {\r
-                       if (node.nodeName == "IMG" && tinyMCE.getAttrib(node, 'class').indexOf('mceItemFlash') == 0) {\r
-                               tinyMCE.switchClass(editor_id + '_flash', 'mceButtonSelected');\r
-                               return true;\r
-                       }\r
-               } while ((node = node.parentNode));\r
-\r
-               tinyMCE.switchClass(editor_id + '_flash', 'mceButtonNormal');\r
-\r
-               return true;\r
-       },\r
-\r
-       // Private plugin internal functions\r
-\r
-       _parseAttributes : function(attribute_string) {\r
-               var attributeName = "";\r
-               var attributeValue = "";\r
-               var withInName;\r
-               var withInValue;\r
-               var attributes = new Array();\r
-               var whiteSpaceRegExp = new RegExp('^[ \n\r\t]+', 'g');\r
-\r
-               if (attribute_string == null || attribute_string.length < 2)\r
-                       return null;\r
-\r
-               withInName = withInValue = false;\r
-\r
-               for (var i=0; i<attribute_string.length; i++) {\r
-                       var chr = attribute_string.charAt(i);\r
-\r
-                       if ((chr == '"' || chr == "'") && !withInValue)\r
-                               withInValue = true;\r
-                       else if ((chr == '"' || chr == "'") && withInValue) {\r
-                               withInValue = false;\r
-\r
-                               var pos = attributeName.lastIndexOf(' ');\r
-                               if (pos != -1)\r
-                                       attributeName = attributeName.substring(pos+1);\r
-\r
-                               attributes[attributeName.toLowerCase()] = attributeValue.substring(1);\r
-\r
-                               attributeName = "";\r
-                               attributeValue = "";\r
-                       } else if (!whiteSpaceRegExp.test(chr) && !withInName && !withInValue)\r
-                               withInName = true;\r
-\r
-                       if (chr == '=' && withInName)\r
-                               withInName = false;\r
-\r
-                       if (withInName)\r
-                               attributeName += chr;\r
-\r
-                       if (withInValue)\r
-                               attributeValue += chr;\r
-               }\r
-\r
-               return attributes;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("flash", TinyMCE_FlashPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/flash.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/flash.htm
deleted file mode 100644 (file)
index 7bab48a..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_flash_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/flash.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <link href="css/flash.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-    <form onsubmit="insertFlash();return false;" action="#">\r
-               <div class="tabs">\r
-                       <ul>\r
-                               <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_flash_general}</a></span></li>\r
-                       </ul>\r
-               </div>\r
-\r
-               <div class="panel_wrapper">\r
-                       <div id="general_panel" class="panel current">\r
-                               <fieldset>\r
-                                       <legend>{$lang_flash_general}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                                       <tr>\r
-                                                       <td nowrap="nowrap"><label for="file">{$lang_flash_file}</label></td>\r
-                                                         <td nowrap="nowrap">\r
-                                                                       <table border="0" cellspacing="0" cellpadding="0">\r
-                                                                         <tr>\r
-                                                                               <td><input id="file" name="file" type="text" value="" onfocus="this.select();" /></td>\r
-                                                                               <td id="filebrowsercontainer">&nbsp;</td>\r
-                                                                         </tr>\r
-                                                                       </table>\r
-                                                               </td>\r
-                                                       </tr>\r
-                                                       <tr id="linklistrow">\r
-                                                               <td><label for="linklist">{$lang_flash_list}</label></td>\r
-                                                               <td id="linklistcontainer">&nbsp;</td>\r
-                                                       </tr>\r
-                                                       <tr>\r
-                                                               <td nowrap="nowrap"><label>{$lang_flash_size}</label></td>\r
-                                                               <td nowrap="nowrap">\r
-                                                                       <input type="text" id="width" name="width" value="" onfocus="this.select();" />\r
-                                                                       <select name="width2" id="width2" style="width: 50px">\r
-                                                                               <option value="">px</option>\r
-                                                                               <option value="%">%</option>\r
-                                                                       </select>&nbsp;x&nbsp;<input id="height" name="height" type="text"  value="" onfocus="this.select();" />\r
-                                                                       <select name="height2" id="height2" style="width: 50px">\r
-                                                                               <option value="">px</option>\r
-                                                                               <option value="%">%</option>\r
-                                                                       </select>\r
-                                                               </td>\r
-                                                       </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-               </div>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div style="float: left">\r
-                               <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertFlash();" />\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-                       </div>\r
-               </div>\r
-       </form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/images/flash.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/images/flash.gif
deleted file mode 100644 (file)
index cb192e6..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/images/flash.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/jscripts/flash.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/jscripts/flash.js
deleted file mode 100644 (file)
index 4f08077..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-var url = tinyMCE.getParam("flash_external_list_url");\r
-if (url != null) {\r
-       // Fix relative\r
-       if (url.charAt(0) != '/' && url.indexOf('://') == -1)\r
-               url = tinyMCE.documentBasePath + "/" + url;\r
-\r
-       document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '"></sc'+'ript>');\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       document.getElementById("filebrowsercontainer").innerHTML = getBrowserHTML('filebrowser','file','flash','flash');\r
-\r
-       // Image list outsrc\r
-       var html = getFlashListHTML('filebrowser','file','flash','flash');\r
-       if (html == "")\r
-               document.getElementById("linklistrow").style.display = 'none';\r
-       else\r
-               document.getElementById("linklistcontainer").innerHTML = html;\r
-\r
-       var formObj = document.forms[0];\r
-       var swffile   = tinyMCE.getWindowArg('swffile');\r
-       var swfwidth  = '' + tinyMCE.getWindowArg('swfwidth');\r
-       var swfheight = '' + tinyMCE.getWindowArg('swfheight');\r
-\r
-       if (swfwidth.indexOf('%')!=-1) {\r
-               formObj.width2.value = "%";\r
-               formObj.width.value  = swfwidth.substring(0,swfwidth.length-1);\r
-       } else {\r
-               formObj.width2.value = "px";\r
-               formObj.width.value  = swfwidth;\r
-       }\r
-\r
-       if (swfheight.indexOf('%')!=-1) {\r
-               formObj.height2.value = "%";\r
-               formObj.height.value  = swfheight.substring(0,swfheight.length-1);\r
-       } else {\r
-               formObj.height2.value = "px";\r
-               formObj.height.value  = swfheight;\r
-       }\r
-\r
-       formObj.file.value = swffile;\r
-       formObj.insert.value = tinyMCE.getLang('lang_' + tinyMCE.getWindowArg('action'), 'Insert', true);\r
-\r
-       selectByValue(formObj, 'linklist', swffile);\r
-\r
-       // Handle file browser\r
-       if (isVisible('filebrowser'))\r
-               document.getElementById('file').style.width = '230px';\r
-\r
-       // Auto select flash in list\r
-       if (typeof(tinyMCEFlashList) != "undefined" && tinyMCEFlashList.length > 0) {\r
-               for (var i=0; i<formObj.linklist.length; i++) {\r
-                       if (formObj.linklist.options[i].value == tinyMCE.getWindowArg('swffile'))\r
-                               formObj.linklist.options[i].selected = true;\r
-               }\r
-       }\r
-}\r
-\r
-function getFlashListHTML() {\r
-       if (typeof(tinyMCEFlashList) != "undefined" && tinyMCEFlashList.length > 0) {\r
-               var html = "";\r
-\r
-               html += '<select id="linklist" name="linklist" style="width: 250px" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="this.form.file.value=this.options[this.selectedIndex].value;">';\r
-               html += '<option value="">---</option>';\r
-\r
-               for (var i=0; i<tinyMCEFlashList.length; i++)\r
-                       html += '<option value="' + tinyMCEFlashList[i][1] + '">' + tinyMCEFlashList[i][0] + '</option>';\r
-\r
-               html += '</select>';\r
-\r
-               return html;\r
-       }\r
-\r
-       return "";\r
-}\r
-\r
-function insertFlash() {\r
-       var formObj = document.forms[0];\r
-       var html      = '';\r
-       var file      = formObj.file.value;\r
-       var width     = formObj.width.value;\r
-       var height    = formObj.height.value;\r
-       if (formObj.width2.value=='%') {\r
-               width = width + '%';\r
-       }\r
-       if (formObj.height2.value=='%') {\r
-               height = height + '%';\r
-       }\r
-\r
-       if (width == "")\r
-               width = 100;\r
-\r
-       if (height == "")\r
-               height = 100;\r
-\r
-       html += ''\r
-               + '<img src="' + (tinyMCE.getParam("theme_href") + "/images/spacer.gif") + '" mce_src="' + (tinyMCE.getParam("theme_href") + "/images/spacer.gif") + '" '\r
-               + 'width="' + width + '" height="' + height + '" '\r
-               + 'border="0" alt="' + file + '" title="' + file + '" class="mceItemFlash" />';\r
-\r
-       tinyMCEPopup.execCommand("mceInsertContent", true, html);\r
-       tinyMCE.selectedInstance.repaint();\r
-\r
-       tinyMCEPopup.close();\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/langs/en.js
deleted file mode 100644 (file)
index 67272bc..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('flash',{\r
-title : 'Insert / edit Flash Movie',\r
-desc : 'Insert / edit Flash Movie',\r
-file : 'Flash-File (.swf)',\r
-size : 'Size',\r
-list : 'Flash files',\r
-props : 'Flash properties',\r
-general : 'General'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/flash/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/blank.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/blank.htm
deleted file mode 100644 (file)
index 1e5876a..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>blank_page</title>\r
-       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />\r
-</head>\r
-<body onload="parent.setupIframe(document);">\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css
deleted file mode 100644 (file)
index 19f74f4..0000000
+++ /dev/null
@@ -1,176 +0,0 @@
-/* Hide the advanced tab */\r
-#advanced_tab {\r
-       display: none;\r
-}\r
-\r
-#metatitle, #metakeywords, #metadescription, #metaauthor, #metacopyright {\r
-       width: 280px;\r
-}\r
-\r
-#doctype, #docencoding {\r
-       width: 200px;\r
-}\r
-\r
-#langcode {\r
-       width: 30px;\r
-}\r
-\r
-#bgimage {\r
-       width: 220px;   \r
-}\r
-\r
-#fontface {\r
-       width: 240px;\r
-}\r
-\r
-#leftmargin, #rightmargin, #topmargin, #bottommargin {\r
-       width: 50px;\r
-}\r
-\r
-.panel_wrapper div.current {\r
-       height: 400px;\r
-}\r
-\r
-#stylesheet, #style {\r
-       width: 240px;\r
-}\r
-\r
-/* Head list classes */\r
-\r
-.headlistwrapper {\r
-       width: 100%;\r
-}\r
-\r
-.addbutton, .removebutton, .moveupbutton, .movedownbutton {\r
-       border-top: 1px solid;\r
-       border-left: 1px solid;\r
-       border-bottom: 1px solid;\r
-       border-right: 1px solid;\r
-       border-color: #F0F0EE;\r
-       cursor: default;\r
-       display: block;\r
-       width: 20px;\r
-       height: 20px;\r
-}\r
-\r
-.addbutton:hover, .removebutton:hover, .moveupbutton:hover, .movedownbutton:hover {\r
-       border: 1px solid #0A246A;\r
-       background-color: #B6BDD2;\r
-}\r
-\r
-.addbutton {\r
-       background-image: url('../images/add.gif');\r
-       float: left;\r
-       margin-right: 3px;\r
-}\r
-\r
-.removebutton {\r
-       background-image: url('../images/remove.gif');\r
-       float: left;\r
-}\r
-\r
-.moveupbutton {\r
-       background-image: url('../images/move_up.gif');\r
-       float: left;\r
-       margin-right: 3px;\r
-}\r
-\r
-.movedownbutton {\r
-       background-image: url('../images/move_down.gif');\r
-       float: left;\r
-}\r
-\r
-.selected {\r
-       border: 1px solid #0A246A;\r
-       background-color: #B6BDD2;\r
-}\r
-\r
-.toolbar {\r
-       width: 100%;\r
-}\r
-\r
-#headlist {\r
-       width: 100%;\r
-       margin-top: 3px;\r
-       font-size: 11px;\r
-}\r
-\r
-#info, #title_element, #meta_element, #script_element, #style_element, #base_element, #link_element, #comment_element, #unknown_element {\r
-       display: none;\r
-}\r
-\r
-#addmenu {\r
-       position: absolute;\r
-       border: 1px solid gray;\r
-       display: none;\r
-       z-index: 100;\r
-       background-color: white;\r
-}\r
-\r
-#addmenu a {\r
-       display: block;\r
-       width: 100%;\r
-       line-height: 20px;\r
-       text-decoration: none;\r
-       background-color: white;\r
-}\r
-\r
-#addmenu a:hover {\r
-       background-color: #B6BDD2;\r
-       color: black;\r
-}\r
-\r
-#addmenu span {\r
-       padding-left: 10px;\r
-       padding-right: 10px;\r
-}\r
-\r
-#updateElementPanel {\r
-       display: none;\r
-}\r
-\r
-#script_element .panel_wrapper div.current {\r
-       height: 108px;\r
-}\r
-\r
-#style_element .panel_wrapper div.current {\r
-       height: 108px;\r
-}\r
-\r
-#link_element  .panel_wrapper div.current {\r
-       height: 140px;\r
-}\r
-\r
-#element_script_value {\r
-       width: 100%;\r
-       height: 100px;\r
-}\r
-\r
-#element_comment_value {\r
-       width: 100%;\r
-       height: 120px;\r
-}\r
-\r
-#element_style_value {\r
-       width: 100%;\r
-       height: 100px;\r
-}\r
-\r
-#element_title, #element_script_src, #element_meta_name, #element_meta_content, #element_base_href, #element_link_href, #element_link_title {\r
-       width: 250px;\r
-}\r
-\r
-.updateElementButton {\r
-       margin-top: 3px;\r
-}\r
-\r
-/* MSIE specific styles */\r
-\r
-* html .addbutton, * html .removebutton, * html .moveupbutton, * html .movedownbutton {\r
-       width: 22px;\r
-       height: 22px;\r
-}\r
-\r
-textarea {\r
-       height: 55px;\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js
deleted file mode 100644 (file)
index 8e1eb51..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('fullpage');var TinyMCE_FullPagePlugin={getInfo:function(){return{longname:'Fullpage',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullpage',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){switch(cn){case"fullpage":return tinyMCE.getButtonHTML(cn,'lang_fullpage_desc','{$pluginurl}/images/fullpage.gif','mceFullPageProperties')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceFullPageProperties":var template=new Array();template['file']='../../plugins/fullpage/fullpage.htm';template['width']=430;template['height']=485+(tinyMCE.isOpera?5:0);template['width']+=tinyMCE.getLang('lang_fullpage_delta_width',0);template['height']+=tinyMCE.getLang('lang_fullpage_delta_height',0);tinyMCE.openWindow(template,{editor_id:editor_id,inline:"yes"});return true;case"mceFullPageUpdate":TinyMCE_FullPagePlugin._addToHead(tinyMCE.getInstanceById(editor_id));return true}return false},cleanup:function(type,content,inst){switch(type){case"insert_to_editor":var tmp=content.toLowerCase();var pos=tmp.indexOf('<body'),pos2;if(pos!=-1){pos=tmp.indexOf('>',pos);pos2=tmp.lastIndexOf('</body>');inst.fullpageTopContent=content.substring(0,pos+1);content=content.substring(pos+1,pos2);}else{if(!inst.fullpageTopContent){var docType=tinyMCE.getParam("fullpage_default_doctype",'<!DOCTYPE html PUBLIC "-/'+'/W3C//DTD XHTML 1.0 Transitional/'+'/EN" "http:/'+'/www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">');var enc=tinyMCE.getParam("fullpage_default_encoding",'utf-8');var title=tinyMCE.getParam("fullpage_default_title",'Untitled document');var lang=tinyMCE.getParam("fullpage_default_langcode",'en');var pi=tinyMCE.getParam("fullpage_default_xml_pi",true);var ff=tinyMCE.getParam("fullpage_default_font_family","");var fz=tinyMCE.getParam("fullpage_default_font_size","");var ds=tinyMCE.getParam("fullpage_default_style","");var dtc=tinyMCE.getParam("fullpage_default_text_color","");title=title.replace(/&/g,'&amp;');title=title.replace(/\"/g,'&quot;');title=title.replace(/</g,'&lt;');title=title.replace(/>/g,'&gt;');tmp='';if(pi)tmp+='<?xml version="1.0" encoding="'+enc+'"?>\n';tmp+=docType+'\n';tmp+='<html xmlns="http:/'+'/www.w3.org/1999/xhtml" lang="'+lang+'" xml:lang="'+lang+'">\n';tmp+='<head>\n';tmp+='\t<title>'+title+'</title>\n';tmp+='\t<meta http-equiv="Content-Type" content="text/html; charset='+enc+'" />\n';tmp+='</head>\n';tmp+='<body';if(ff!=''||fz!=''){tmp+=' style="';if(ds!='')tmp+=ds+";";if(ff!='')tmp+='font-family: '+ff+";";if(fz!='')tmp+='font-size: '+fz+";";tmp+='"'}if(dtc!='')tmp+=' text="'+dtc+'"';tmp+='>\n';inst.fullpageTopContent=tmp}}this._addToHead(inst);break;case"get_from_editor":if(inst.fullpageTopContent&&!tinyMCE.getParam("fullpage_hide_in_source_view",false)){content=content.replace(/(\s)?mce\_[a-z_]+\=[^\s>]+(\s|\>)/i,'');content=inst.fullpageTopContent+content+"\n</body>\n</html>"}break;case"submit_content":if(inst.fullpageTopContent&&tinyMCE.getParam("fullpage_hide_in_source_view",false))content=inst.fullpageTopContent+content+"\n</body>\n</html>";break}return content},_addToHead:function(inst){var doc=inst.getDoc();var head=doc.getElementsByTagName("head")[0];var body=doc.body;var h=inst.fullpageTopContent;var e=doc.createElement("body");var nl,i,le,tmp;h=h.replace(/(\r|\n)/gi,'');h=h.replace(/<\?[^\>]*\>/gi,'');h=h.replace(/<\/?(!DOCTYPE|head|html)[^\>]*\>/gi,'');h=h.replace(/<script(.*?)<\/script>/gi,'');h=h.replace(/<title(.*?)<\/title>/gi,'');h=h.replace(/<(meta|base)[^>]*>/gi,'');h=h.replace(/<link([^>]*)\/>/gi,'<pre mce_type="link" $1></pre>');h=h.replace(/<body/gi,'<div mce_type="body"');h+='</div>';e.innerHTML=h;body.vLink=body.aLink=body.link=body.text='';body.style.cssText='';nl=head.getElementsByTagName('link');for(i=0;i<nl.length;i++){if(tinyMCE.getAttrib(nl[i],'mce_head')=="true")nl[i].parentNode.removeChild(nl[i])}nl=e.getElementsByTagName('pre');for(i=0;i<nl.length;i++){tmp=tinyMCE.getAttrib(nl[i],'media');if(tinyMCE.getAttrib(nl[i],'mce_type')=="link"&&(tmp==""||tmp=="screen"||tmp=="all")&&tinyMCE.getAttrib(nl[i],'rel')=="stylesheet"){le=doc.createElement("link");le.rel="stylesheet";le.href=tinyMCE.getAttrib(nl[i],'href');le.setAttribute("mce_head","true");head.appendChild(le)}}nl=e.getElementsByTagName('div');if(nl.length>0){body.style.cssText=tinyMCE.getAttrib(nl[0],'style');if((tmp=tinyMCE.getAttrib(nl[0],'leftmargin'))!=''&&body.style.marginLeft=='')body.style.marginLeft=tmp+"px";if((tmp=tinyMCE.getAttrib(nl[0],'rightmargin'))!=''&&body.style.marginRight=='')body.style.marginRight=tmp+"px";if((tmp=tinyMCE.getAttrib(nl[0],'topmargin'))!=''&&body.style.marginTop=='')body.style.marginTop=tmp+"px";if((tmp=tinyMCE.getAttrib(nl[0],'bottommargin'))!=''&&body.style.marginBottom=='')body.style.marginBottom=tmp+"px";body.dir=tinyMCE.getAttrib(nl[0],'dir');body.vLink=tinyMCE.getAttrib(nl[0],'vlink');body.aLink=tinyMCE.getAttrib(nl[0],'alink');body.link=tinyMCE.getAttrib(nl[0],'link');body.text=tinyMCE.getAttrib(nl[0],'text');if((tmp=tinyMCE.getAttrib(nl[0],'background'))!='')body.style.backgroundImage="url('"+tmp+"')";if((tmp=tinyMCE.getAttrib(nl[0],'bgcolor'))!='')body.style.backgroundColor=tmp}}};tinyMCE.addPlugin("fullpage",TinyMCE_FullPagePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js
deleted file mode 100644 (file)
index 8c61823..0000000
+++ /dev/null
@@ -1,235 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 232 2007-03-05 17:00:27Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('fullpage');\r
-\r
-var TinyMCE_FullPagePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Fullpage',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullpage',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "fullpage":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_fullpage_desc', '{$pluginurl}/images/fullpage.gif', 'mceFullPageProperties');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceFullPageProperties":\r
-                               var template = new Array();\r
-\r
-                               template['file']   = '../../plugins/fullpage/fullpage.htm';\r
-                               template['width']  = 430;\r
-                               template['height'] = 485 + (tinyMCE.isOpera ? 5 : 0);\r
-\r
-                               template['width'] += tinyMCE.getLang('lang_fullpage_delta_width', 0);\r
-                               template['height'] += tinyMCE.getLang('lang_fullpage_delta_height', 0);\r
-\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id, inline : "yes"});\r
-                       return true;\r
-\r
-                       case "mceFullPageUpdate":\r
-                               TinyMCE_FullPagePlugin._addToHead(tinyMCE.getInstanceById(editor_id));\r
-                               return true;\r
-          }\r
-\r
-          // Pass to next handler in chain\r
-          return false;\r
-       },\r
-\r
-       cleanup : function(type, content, inst) {\r
-               switch (type) {\r
-                       case "insert_to_editor":\r
-                               var tmp = content.toLowerCase();\r
-                               var pos = tmp.indexOf('<body'), pos2;\r
-\r
-                               // Split page in header and body chunks\r
-                               if (pos != -1) {\r
-                                       pos = tmp.indexOf('>', pos);\r
-                                       pos2 = tmp.lastIndexOf('</body>');\r
-                                       inst.fullpageTopContent = content.substring(0, pos + 1);\r
-                                       content = content.substring(pos + 1, pos2);\r
-                                       // tinyMCE.debug(inst.fullpageTopContent, content);\r
-                               } else {\r
-                                       if (!inst.fullpageTopContent) {\r
-                                               var docType = tinyMCE.getParam("fullpage_default_doctype", '<!DOCTYPE html PUBLIC "-/'+'/W3C//DTD XHTML 1.0 Transitional/'+'/EN" "http:/'+'/www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">');\r
-                                               var enc = tinyMCE.getParam("fullpage_default_encoding", 'utf-8');\r
-                                               var title = tinyMCE.getParam("fullpage_default_title", 'Untitled document');\r
-                                               var lang = tinyMCE.getParam("fullpage_default_langcode", 'en');\r
-                                               var pi = tinyMCE.getParam("fullpage_default_xml_pi", true);\r
-                                               var ff = tinyMCE.getParam("fullpage_default_font_family", "");\r
-                                               var fz = tinyMCE.getParam("fullpage_default_font_size", "");\r
-                                               var ds = tinyMCE.getParam("fullpage_default_style", "");\r
-                                               var dtc = tinyMCE.getParam("fullpage_default_text_color", "");\r
-\r
-                                               // Xml encode it\r
-                                               title = title.replace(/&/g, '&amp;');\r
-                                               title = title.replace(/\"/g, '&quot;');\r
-                                               title = title.replace(/</g, '&lt;');\r
-                                               title = title.replace(/>/g, '&gt;');\r
-\r
-                                               tmp = '';\r
-\r
-                                               // Make default chunk\r
-                                               if (pi)\r
-                                                       tmp += '<?xml version="1.0" encoding="' + enc + '"?>\n';\r
-\r
-                                               tmp += docType + '\n';\r
-                                               tmp += '<html xmlns="http:/'+'/www.w3.org/1999/xhtml" lang="' + lang + '" xml:lang="' + lang + '">\n';\r
-                                               tmp += '<head>\n';\r
-                                               tmp += '\t<title>' + title + '</title>\n';\r
-                                               tmp += '\t<meta http-equiv="Content-Type" content="text/html; charset=' + enc + '" />\n';\r
-                                               tmp += '</head>\n';\r
-                                               tmp += '<body';\r
-\r
-                                               if (ff != '' || fz != '') {\r
-                                                       tmp += ' style="';\r
-\r
-                                                       if (ds != '')\r
-                                                               tmp += ds + ";";\r
-\r
-                                                       if (ff != '')\r
-                                                               tmp += 'font-family: ' + ff + ";";\r
-\r
-                                                       if (fz != '')\r
-                                                               tmp += 'font-size: ' + fz + ";";\r
-\r
-                                                       tmp += '"';\r
-                                               }\r
-\r
-                                               if (dtc != '')\r
-                                                       tmp += ' text="' + dtc + '"';\r
-\r
-                                               tmp += '>\n';\r
-\r
-                                               inst.fullpageTopContent = tmp;\r
-                                       }\r
-                               }\r
-\r
-                               this._addToHead(inst);\r
-\r
-                               break;\r
-\r
-                       case "get_from_editor":\r
-                               if (inst.fullpageTopContent && !tinyMCE.getParam("fullpage_hide_in_source_view", false)) {\r
-                                       content = content.replace(/(\s)?mce\_[a-z_]+\=[^\s>]+(\s|\>)/i, ''); // Remove internal stuff\r
-                                       content = inst.fullpageTopContent + content + "\n</body>\n</html>";\r
-                               }\r
-\r
-                               break;\r
-\r
-                       case "submit_content":\r
-                               if (inst.fullpageTopContent && tinyMCE.getParam("fullpage_hide_in_source_view", false))\r
-                                       content = inst.fullpageTopContent + content + "\n</body>\n</html>";\r
-\r
-                               break;\r
-               }\r
-\r
-               // Pass through to next handler in chain\r
-               return content;\r
-       },\r
-\r
-       // Private plugin internal methods\r
-\r
-       _addToHead : function(inst) {\r
-               var doc = inst.getDoc();\r
-               var head = doc.getElementsByTagName("head")[0];\r
-               var body = doc.body;\r
-               var h = inst.fullpageTopContent;\r
-               var e = doc.createElement("body");\r
-               var nl, i, le, tmp;\r
-\r
-               // Remove stuff we don't want\r
-               h = h.replace(/(\r|\n)/gi, '');\r
-               h = h.replace(/<\?[^\>]*\>/gi, '');\r
-               h = h.replace(/<\/?(!DOCTYPE|head|html)[^\>]*\>/gi, '');\r
-               h = h.replace(/<script(.*?)<\/script>/gi, '');\r
-               h = h.replace(/<title(.*?)<\/title>/gi, '');\r
-               h = h.replace(/<(meta|base)[^>]*>/gi, '');\r
-\r
-               // Make link and style elements into pre\r
-               h = h.replace(/<link([^>]*)\/>/gi, '<pre mce_type="link" $1></pre>');\r
-               //h = h.replace(/<style([^>]*)>(.*?)<\/style>/gi, '<pre mce_type="style" $1>$2</pre>');\r
-\r
-               // Make body a div\r
-               h = h.replace(/<body/gi, '<div mce_type="body"');\r
-               h += '</div>';\r
-\r
-               // Now crapy MSIE can parse it\r
-               e.innerHTML = h;\r
-\r
-               // Reset all body attributes\r
-               body.vLink = body.aLink = body.link = body.text = '';\r
-               body.style.cssText = '';\r
-\r
-               // Delete all old links\r
-               nl = head.getElementsByTagName('link');\r
-               for (i=0; i<nl.length; i++) {\r
-                       if (tinyMCE.getAttrib(nl[i], 'mce_head') == "true")\r
-                               nl[i].parentNode.removeChild(nl[i]);\r
-               }\r
-\r
-               // Add link elements\r
-               nl = e.getElementsByTagName('pre');\r
-               for (i=0; i<nl.length; i++) {\r
-                       tmp = tinyMCE.getAttrib(nl[i], 'media');\r
-                       if (tinyMCE.getAttrib(nl[i], 'mce_type') == "link" && (tmp == "" || tmp == "screen" || tmp == "all") && tinyMCE.getAttrib(nl[i], 'rel') == "stylesheet") {\r
-                               le = doc.createElement("link");\r
-\r
-                               le.rel = "stylesheet";\r
-                               le.href = tinyMCE.getAttrib(nl[i], 'href');\r
-                               le.setAttribute("mce_head", "true");\r
-\r
-                               head.appendChild(le);\r
-                       }\r
-               }\r
-\r
-               // Add body attributes\r
-               nl = e.getElementsByTagName('div');\r
-               if (nl.length > 0) {\r
-                       body.style.cssText = tinyMCE.getAttrib(nl[0], 'style');\r
-\r
-                       if ((tmp = tinyMCE.getAttrib(nl[0], 'leftmargin')) != '' && body.style.marginLeft == '')\r
-                               body.style.marginLeft = tmp + "px";\r
-\r
-                       if ((tmp = tinyMCE.getAttrib(nl[0], 'rightmargin')) != '' && body.style.marginRight == '')\r
-                               body.style.marginRight = tmp + "px";\r
-\r
-                       if ((tmp = tinyMCE.getAttrib(nl[0], 'topmargin')) != '' && body.style.marginTop == '')\r
-                               body.style.marginTop = tmp + "px";\r
-\r
-                       if ((tmp = tinyMCE.getAttrib(nl[0], 'bottommargin')) != '' && body.style.marginBottom == '')\r
-                               body.style.marginBottom = tmp + "px";\r
-\r
-                       body.dir = tinyMCE.getAttrib(nl[0], 'dir');\r
-                       body.vLink = tinyMCE.getAttrib(nl[0], 'vlink');\r
-                       body.aLink = tinyMCE.getAttrib(nl[0], 'alink');\r
-                       body.link = tinyMCE.getAttrib(nl[0], 'link');\r
-                       body.text = tinyMCE.getAttrib(nl[0], 'text');\r
-\r
-                       if ((tmp = tinyMCE.getAttrib(nl[0], 'background')) != '')\r
-                               body.style.backgroundImage = "url('" + tmp + "')";\r
-\r
-                       if ((tmp = tinyMCE.getAttrib(nl[0], 'bgcolor')) != '')\r
-                               body.style.backgroundColor = tmp;\r
-               }\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("fullpage", TinyMCE_FullPagePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm
deleted file mode 100644 (file)
index 2781581..0000000
+++ /dev/null
@@ -1,577 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_fullpage_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mclayer.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/fullpage.js"></script>\r
-       <link href="css/fullpage.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body id="advlink" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-    <form onsubmit="updateAction();return false;" name="fullpage" action="#">\r
-               <div class="tabs">\r
-                       <ul>\r
-                               <li id="meta_tab" class="current"><span><a href="javascript:mcTabs.displayTab('meta_tab','meta_panel');" onmousedown="return false;">{$lang_fullpage_meta_tab}</a></span></li>\r
-                               <li id="appearance_tab"><span><a href="javascript:mcTabs.displayTab('appearance_tab','appearance_panel');" onmousedown="return false;">{$lang_fullpage_appearance_tab}</a></span></li>\r
-                               <li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{$lang_fullpage_advanced_tab}</a></span></li>\r
-                       </ul>\r
-               </div>\r
-\r
-               <div class="panel_wrapper">\r
-                       <div id="meta_panel" class="panel current">\r
-                               <fieldset>\r
-                                       <legend>{$lang_fullpage_meta_props}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="metatitle">{$lang_fullpage_meta_title}</label>&nbsp;</td>\r
-                                                       <td><input type="text" id="metatitle" name="metatitle" value="" /></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="metakeywords">{$lang_fullpage_meta_keywords}</label>&nbsp;</td>\r
-                                                       <td><textarea id="metakeywords" name="metakeywords" rows="4"></textarea></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="metadescription">{$lang_fullpage_meta_description}</label>&nbsp;</td>\r
-                                                       <td><textarea id="metadescription" name="metadescription" rows="4"></textarea></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="metaauthor">{$lang_fullpage_author}</label>&nbsp;</td>\r
-                                                       <td><input type="text" id="metaauthor" name="metaauthor" value="" /></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="metacopyright">{$lang_fullpage_copyright}</label>&nbsp;</td>\r
-                                                       <td><input type="text" id="metacopyright" name="metacopyright" value="" /></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="metarobots">{$lang_fullpage_meta_robots}</label>&nbsp;</td>\r
-                                                       <td>\r
-<select id="metarobots" name="metarobots">\r
-                       <option value="">{$lang_not_set}</option> \r
-                       <option value="index,follow">{$lang_fullpage_meta_index_follow}</option>\r
-                       <option value="index,nofollow">{$lang_fullpage_meta_index_nofollow}</option>\r
-                       <option value="noindex,follow">{$lang_fullpage_meta_noindex_follow}</option>\r
-                       <option value="noindex,nofollow">{$lang_fullpage_meta_noindex_nofollow}</option>\r
-</select>\r
-                                                       </td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset>\r
-                                       <legend>{$lang_fullpage_langprops}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="docencoding">{$lang_fullpage_encoding}</label></td> \r
-                                                       <td>\r
-                                                               <select id="docencoding" name="docencoding"> \r
-                                                                               <option value="">{$lang_not_set}</option>\r
-                                                               </select>\r
-                                                       </td> \r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="doctypes">{$lang_fullpage_doctypes}</label>&nbsp;</td>\r
-                                                       <td>\r
-                                                               <select id="doctypes" name="doctypes">\r
-                                                                               <option value="">{$lang_not_set}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="langcode">{$lang_fullpage_langcode}</label>&nbsp;</td>\r
-                                                       <td><input type="text" id="langcode" name="langcode" value="" /></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="langdir">{$lang_fullpage_langdir}</label></td> \r
-                                                       <td>\r
-                                                               <select id="langdir" name="langdir"> \r
-                                                                               <option value="">{$lang_not_set}</option> \r
-                                                                               <option value="ltr">{$lang_fullpage_ltr}</option> \r
-                                                                               <option value="rtl">{$lang_fullpage_rtl}</option> \r
-                                                               </select>\r
-                                                       </td> \r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td nowrap="nowrap"><label for="xml_pi">{$lang_fullpage_xml_pi}</label>&nbsp;</td>\r
-                                                       <td><input type="checkbox" id="xml_pi" name="xml_pi" class="checkbox" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="appearance_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_fullpage_appearance_textprops}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="fontface">{$lang_fullpage_fontface}</label></td> \r
-                                                       <td>\r
-                                                               <select id="fontface" name="fontface" onchange="changedStyleField(this);">\r
-                                                                               <option value="">{$lang_not_set}</option>\r
-                                                               </select>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="fontsize">{$lang_fullpage_fontsize}</label></td> \r
-                                                       <td>\r
-                                                               <select id="fontsize" name="fontsize" onchange="changedStyleField(this);">\r
-                                                                               <option value="">{$lang_not_set}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="textcolor">{$lang_fullpage_textcolor}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="textcolor" name="textcolor" type="text" value="" size="9" onchange="updateColor('textcolor_pick','textcolor');changedStyleField(this);" /></td>\r
-                                                                               <td id="textcolor_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset>\r
-                                       <legend>{$lang_fullpage_appearance_bgprops}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="bgimage">{$lang_fullpage_bgimage}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="bgimage" name="bgimage" type="text" value="" onchange="changedStyleField(this);" /></td>\r
-                                                                               <td id="bgimage_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="bgcolor">{$lang_fullpage_bgcolor}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="bgcolor" name="bgcolor" type="text" value="" size="9" onchange="updateColor('bgcolor_pick','bgcolor');changedStyleField(this);" /></td>\r
-                                                                               <td id="bgcolor_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td> \r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset>\r
-                                       <legend>{$lang_fullpage_appearance_marginprops}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="leftmargin">{$lang_fullpage_left_margin}</label></td> \r
-                                                       <td><input id="leftmargin" name="leftmargin" type="text" value="" onchange="changedStyleField(this);" /></td>\r
-                                                       <td class="column1"><label for="rightmargin">{$lang_fullpage_right_margin}</label></td> \r
-                                                       <td><input id="rightmargin" name="rightmargin" type="text" value="" onchange="changedStyleField(this);" /></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="topmargin">{$lang_fullpage_top_margin}</label></td> \r
-                                                       <td><input id="topmargin" name="topmargin" type="text" value="" onchange="changedStyleField(this);" /></td>\r
-                                                       <td class="column1"><label for="bottommargin">{$lang_fullpage_bottom_margin}</label></td> \r
-                                                       <td><input id="bottommargin" name="bottommargin" type="text" value="" onchange="changedStyleField(this);" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset>\r
-                                       <legend>{$lang_fullpage_appearance_linkprops}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="link_color">{$lang_fullpage_link_color}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="link_color" name="link_color" type="text" value="" size="9" onchange="updateColor('link_color_pick','link_color');changedStyleField(this);" /></td>\r
-                                                                               <td id="link_color_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td class="column1"><label for="visited_color">{$lang_fullpage_visited_color}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="visited_color" name="visited_color" type="text" value="" size="9" onchange="updateColor('visited_color_pick','visited_color');changedStyleField(this);" /></td>\r
-                                                                               <td id="visited_color_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="active_color">{$lang_fullpage_active_color}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="active_color" name="active_color" type="text" value="" size="9" onchange="updateColor('active_color_pick','active_color');changedStyleField(this);" /></td>\r
-                                                                               <td id="active_color_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td>&nbsp;</td>\r
-                                                       <td>&nbsp;</td>\r
-\r
-<!--                                                   <td class="column1"><label for="hover_color">{$lang_fullpage_hover_color}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="hover_color" name="hover_color" type="text" value="" size="9" onchange="changedStyleField(this);" /></td>\r
-                                                                               <td id="hover_color_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td> -->\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset>\r
-                                       <legend>{$lang_fullpage_appearance_style}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="stylesheet">{$lang_fullpage_stylesheet}</label></td> \r
-                                                       <td><table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="stylesheet" name="stylesheet" type="text" value="" /></td>\r
-                                                                               <td id="stylesheet_browsercontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="style">{$lang_fullpage_style}</label></td> \r
-                                                       <td><input id="style" name="style" type="text" value="" onchange="changedStyleField(this);" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="advanced_panel" class="panel">\r
-                               <div id="addmenu">\r
-                                       <table border="0" cellpadding="0" cellspacing="0">\r
-                                               <tr><td><a href="javascript:addHeadElm('title');" onmousedown="return false;"><span>{$lang_fullpage_add_title}</span></a></td></tr>\r
-                                               <tr><td><a href="javascript:addHeadElm('meta');" onmousedown="return false;"><span>{$lang_fullpage_add_meta}</span></a></td></tr>\r
-                                               <tr><td><a href="javascript:addHeadElm('script');" onmousedown="return false;"><span>{$lang_fullpage_add_script}</span></a></td></tr>\r
-                                               <tr><td><a href="javascript:addHeadElm('style');" onmousedown="return false;"><span>{$lang_fullpage_add_style}</span></a></td></tr>\r
-                                               <tr><td><a href="javascript:addHeadElm('link');" onmousedown="return false;"><span>{$lang_fullpage_add_link}</span></a></td></tr>\r
-                                               <tr><td><a href="javascript:addHeadElm('base');" onmousedown="return false;"><span>{$lang_fullpage_add_base}</span></a></td></tr>\r
-                                               <tr><td><a href="javascript:addHeadElm('comment');" onmousedown="return false;"><span>{$lang_fullpage_add_comment}</span></a></td></tr>\r
-                                       </table>\r
-                               </div>\r
-\r
-                               <fieldset>\r
-                                       <legend>{$lang_fullpage_head_elements}</legend>\r
-\r
-                                       <div class="headlistwrapper">\r
-                                               <div class="toolbar">\r
-                                                       <div style="float: left">\r
-                                                               <a id="addbutton" href="javascript:showAddMenu();" onmousedown="return false;" class="addbutton" title="{$lang_fullpage_add}"></a>\r
-                                                               <a href="#" onmousedown="return false;" class="removebutton" title="{$lang_fullpage_remove}"></a>\r
-                                                       </div>\r
-                                                       <div style="float: right">\r
-                                                               <a href="#" onmousedown="return false;" class="moveupbutton" title="{$lang_fullpage_moveup}"></a>\r
-                                                               <a href="#" onmousedown="return false;" class="movedownbutton" title="{$lang_fullpage_movedown}"></a>\r
-                                                       </div>\r
-                                                       <br style="clear: both" />\r
-                                               </div>\r
-                                               <select id="headlist" size="26" onchange="updateHeadElm(this.options[this.selectedIndex].value);">\r
-                                                       <option value="title_0">&lt;title&gt;Some title bla bla bla&lt;/title&gt;</option>\r
-                                                       <option value="meta_1">&lt;meta name="keywords"&gt;Some bla bla bla&lt;/meta&gt;</option>\r
-                                                       <option value="meta_2">&lt;meta name="description"&gt;Some bla bla bla bla bla bla bla bla bla&lt;/meta&gt;</option>\r
-                                                       <option value="script_3">&lt;script language=&quot;javascript&quot;&gt;...&lt;/script&gt;</option>\r
-                                                       <option value="style_4">&lt;style&gt;...&lt;/style&gt;</option>\r
-                                                       <option value="base_5">&lt;base href="." /&gt;</option>\r
-                                                       <option value="comment_6">&lt;!-- ... --&gt;</option>\r
-                                                       <option value="link_7">&lt;link href="." /&gt;</option>\r
-                                               </select>\r
-                                       </div>\r
-                               </fieldset>\r
-\r
-                               <fieldset id="meta_element">\r
-                                       <legend>{$lang_fullpage_meta_element}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="element_meta_type">{$lang_fullpage_type}</label></td> \r
-                                                       <td><select id="element_meta_type">\r
-                                                                               <option value="name">name</option>\r
-                                                                               <option value="http-equiv">http-equiv</option>\r
-                                                               </select></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="element_meta_name">{$lang_fullpage_name}</label></td> \r
-                                                       <td><input id="element_meta_name" name="element_meta_name" type="text" value="" /></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="element_meta_content">{$lang_fullpage_content}</label></td> \r
-                                                       <td><input id="element_meta_content" name="element_meta_content" type="text" value="" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-\r
-                                       <input type="button" id="meta_updateelement" class="updateElementButton" name="update" value="{$lang_update}" onclick="updateElement();" />\r
-                               </fieldset>\r
-\r
-                               <fieldset id="title_element">\r
-                                       <legend>{$lang_fullpage_title_element}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="element_title">{$lang_fullpage_meta_title}</label></td> \r
-                                                       <td><input id="element_title" name="element_title" type="text" value="" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-\r
-                                       <input type="button" id="title_updateelement" class="updateElementButton" name="update" value="{$lang_update}" onclick="updateElement();" />\r
-                               </fieldset>\r
-\r
-                               <fieldset id="script_element">\r
-                                       <legend>{$lang_fullpage_script_element}</legend>\r
-\r
-                                       <div class="tabs">\r
-                                               <ul>\r
-                                                       <li id="script_props_tab" class="current"><span><a href="javascript:mcTabs.displayTab('script_props_tab','script_props_panel');" onmousedown="return false;">{$lang_fullpage_properties}</a></span></li>\r
-                                                       <li id="script_value_tab"><span><a href="javascript:mcTabs.displayTab('script_value_tab','script_value_panel');" onmousedown="return false;">{$lang_fullpage_value}</a></span></li>\r
-                                               </ul>\r
-                                       </div>\r
-\r
-                                       <br style="clear: both" />\r
-\r
-                                       <div class="panel_wrapper">\r
-                                               <div id="script_props_panel" class="panel current">\r
-                                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_script_type">{$lang_fullpage_type}</label></td> \r
-                                                                       <td><select id="element_script_type">\r
-                                                                               <option value="text/javascript">text/javascript</option>\r
-                                                                               <option value="text/jscript">text/jscript</option>\r
-                                                                               <option value="text/vbscript">text/vbscript</option>\r
-                                                                               <option value="text/vbs">text/vbs</option>\r
-                                                                               <option value="text/ecmascript">text/ecmascript</option>\r
-                                                                               <option value="text/xml">text/xml</option>\r
-                                                                       </select></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_script_src">{$lang_fullpage_src}</label></td> \r
-                                                                       <td><table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="element_script_src" name="element_script_src" type="text" value="" /></td>\r
-                                                                               <td id="script_src_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_script_charset">{$lang_fullpage_charset}</label></td> \r
-                                                                       <td><select id="element_script_charset"><option value="">{$lang_not_set}</option></select></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_script_defer">{$lang_fullpage_defer}</label></td> \r
-                                                                       <td><input type="checkbox" id="element_script_defer" name="element_script_defer" class="checkbox" /></td>\r
-                                                               </tr>\r
-                                                       </table>\r
-                                               </div>\r
-\r
-                                               <div id="script_value_panel" class="panel">\r
-                                                       <textarea id="element_script_value"></textarea>\r
-                                               </div>\r
-                                       </div>\r
-\r
-                                       <input type="button" id="script_updateelement" class="updateElementButton" name="update" value="{$lang_update}" onclick="updateElement();" />\r
-                               </fieldset>\r
-\r
-                               <fieldset id="style_element">\r
-                                       <legend>{$lang_fullpage_style_element}</legend>\r
-\r
-                                       <div class="tabs">\r
-                                               <ul>\r
-                                                       <li id="style_props_tab" class="current"><span><a href="javascript:mcTabs.displayTab('style_props_tab','style_props_panel');" onmousedown="return false;">{$lang_fullpage_properties}</a></span></li>\r
-                                                       <li id="style_value_tab"><span><a href="javascript:mcTabs.displayTab('style_value_tab','style_value_panel');" onmousedown="return false;">{$lang_fullpage_value}</a></span></li>\r
-                                               </ul>\r
-                                       </div>\r
-\r
-                                       <br style="clear: both" />\r
-\r
-                                       <div class="panel_wrapper">\r
-                                               <div id="style_props_panel" class="panel current">\r
-                                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_style_type">{$lang_fullpage_type}</label></td> \r
-                                                                       <td><select id="element_style_type">\r
-                                                                               <option value="text/css">text/css</option>\r
-                                                                       </select></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_style_media">{$lang_fullpage_media}</label></td> \r
-                                                                       <td><select id="element_style_media"></select></td>\r
-                                                               </tr>\r
-                                                       </table>\r
-                                               </div>\r
-\r
-                                               <div id="style_value_panel" class="panel">\r
-                                                       <textarea id="element_style_value"></textarea>\r
-                                               </div>\r
-                                       </div>\r
-\r
-                                       <input type="button" id="style_updateelement" class="updateElementButton" name="update" value="{$lang_update}" onclick="updateElement();" />\r
-                               </fieldset>\r
-\r
-                               <fieldset id="base_element">\r
-                                       <legend>{$lang_fullpage_base_element}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="element_base_href">{$lang_fullpage_href}</label></td> \r
-                                                       <td><input id="element_base_href" name="element_base_href" type="text" value="" /></td>\r
-                                               </tr>\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="element_base_target">{$lang_fullpage_target}</label></td> \r
-                                                       <td><input id="element_base_target" name="element_base_target" type="text" value="" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-\r
-                                       <input type="button" id="base_updateelement" class="updateElementButton" name="update" value="{$lang_update}" onclick="updateElement();" />\r
-                               </fieldset>\r
-\r
-                               <fieldset id="link_element">\r
-                                       <legend>{$lang_fullpage_link_element}</legend>\r
-\r
-                                       <div class="tabs">\r
-                                               <ul>\r
-                                                       <li id="link_general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('link_general_tab','link_general_panel');" onmousedown="return false;">{$lang_fullpage_general_props}</a></span></li>\r
-                                                       <li id="link_advanced_tab"><span><a href="javascript:mcTabs.displayTab('link_advanced_tab','link_advanced_panel');" onmousedown="return false;">{$lang_fullpage_advanced_props}</a></span></li>\r
-                                               </ul>\r
-                                       </div>\r
-\r
-                                       <br style="clear: both" />\r
-\r
-                                       <div class="panel_wrapper">\r
-                                               <div id="link_general_panel" class="panel current">\r
-                                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_link_href">{$lang_fullpage_href}</label></td> \r
-                                                                       <td><table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="element_link_href" name="element_link_href" type="text" value="" /></td>\r
-                                                                               <td id="link_href_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_link_title">{$lang_fullpage_meta_title}</label></td> \r
-                                                                       <td><input id="element_link_title" name="element_link_title" type="text" value="" /></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_link_type">{$lang_fullpage_type}</label></td> \r
-                                                                       <td><select id="element_link_type" name="element_link_type">\r
-                                                                               <option value="text/css">text/css</option>\r
-                                                                               <option value="text/javascript">text/javascript</option>\r
-                                                                       </select></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_link_media">{$lang_fullpage_media}</label></td> \r
-                                                                       <td><select id="element_link_media" name="element_link_media"></select></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td><label for="element_style_rel">{$lang_fullpage_rel}</label></td>\r
-                                                                       <td><select id="element_style_rel" name="element_style_rel"> \r
-                                                                                       <option value="">{$lang_not_set}</option> \r
-                                                                                       <option value="stylesheet">Stylesheet</option>\r
-                                                                                       <option value="alternate">Alternate</option>\r
-                                                                                       <option value="designates">Designates</option>\r
-                                                                                       <option value="start">Start</option>\r
-                                                                                       <option value="next">Next</option>\r
-                                                                                       <option value="prev">Prev</option>\r
-                                                                                       <option value="contents">Contents</option>\r
-                                                                                       <option value="index">Index</option>\r
-                                                                                       <option value="glossary">Glossary</option>\r
-                                                                                       <option value="copyright">Copyright</option>\r
-                                                                                       <option value="chapter">Chapter</option>\r
-                                                                                       <option value="subsection">Subsection</option>\r
-                                                                                       <option value="appendix">Appendix</option>\r
-                                                                                       <option value="help">Help</option>\r
-                                                                                       <option value="bookmark">Bookmark</option>\r
-                                                                               </select> \r
-                                                                       </td>\r
-                                                               </tr>\r
-                                                       </table>\r
-                                               </div>\r
-\r
-                                               <div id="link_advanced_panel" class="panel">\r
-                                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_link_charset">{$lang_fullpage_charset}</label></td> \r
-                                                                       <td><select id="element_link_charset"><option value="">{$lang_not_set}</option></select></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_link_hreflang">{$lang_fullpage_hreflang}</label></td> \r
-                                                                       <td><input id="element_link_hreflang" name="element_link_hreflang" type="text" value="" /></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td class="column1"><label for="element_link_target">{$lang_fullpage_target}</label></td> \r
-                                                                       <td><input id="element_link_target" name="element_link_target" type="text" value="" /></td>\r
-                                                               </tr>\r
-                                                               <tr>\r
-                                                                       <td><label for="element_style_rev">{$lang_fullpage_rev}</label></td>\r
-                                                                       <td><select id="element_style_rev" name="element_style_rev"> \r
-                                                                                       <option value="">{$lang_not_set}</option> \r
-                                                                                       <option value="alternate">Alternate</option> \r
-                                                                                       <option value="designates">Designates</option> \r
-                                                                                       <option value="stylesheet">Stylesheet</option> \r
-                                                                                       <option value="start">Start</option> \r
-                                                                                       <option value="next">Next</option> \r
-                                                                                       <option value="prev">Prev</option> \r
-                                                                                       <option value="contents">Contents</option> \r
-                                                                                       <option value="index">Index</option> \r
-                                                                                       <option value="glossary">Glossary</option> \r
-                                                                                       <option value="copyright">Copyright</option> \r
-                                                                                       <option value="chapter">Chapter</option> \r
-                                                                                       <option value="subsection">Subsection</option> \r
-                                                                                       <option value="appendix">Appendix</option> \r
-                                                                                       <option value="help">Help</option> \r
-                                                                                       <option value="bookmark">Bookmark</option> \r
-                                                                               </select> \r
-                                                                       </td>\r
-                                                               </tr>\r
-                                                       </table>\r
-                                               </div>\r
-                                       </div>\r
-\r
-                                       <input type="button" id="link_updateelement" class="updateElementButton" name="update" value="{$lang_update}" onclick="updateElement();" />\r
-                               </fieldset>\r
-\r
-                               <fieldset id="comment_element">\r
-                                       <legend>{$lang_fullpage_comment_element}</legend>\r
-\r
-                                       <textarea id="element_comment_value"></textarea>\r
-\r
-                                       <input type="button" id="comment_updateelement" class="updateElementButton" name="update" value="{$lang_update}" onclick="updateElement();" />\r
-                               </fieldset>\r
-                       </div>\r
-               </div>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div style="float: left">\r
-                               <input type="button" id="insert" name="update" value="{$lang_update}" onclick="updateAction();" />\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-                       </div>\r
-               </div>\r
-    </form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/add.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/add.gif
deleted file mode 100644 (file)
index d6291d9..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/add.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/fullpage.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/fullpage.gif
deleted file mode 100644 (file)
index 1ddefcd..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/fullpage.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/move_down.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/move_down.gif
deleted file mode 100644 (file)
index 5bec71f..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/move_down.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/move_up.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/move_up.gif
deleted file mode 100644 (file)
index 2f489c9..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/move_up.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/remove.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/remove.gif
deleted file mode 100644 (file)
index 299c684..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/images/remove.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/jscripts/fullpage.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/jscripts/fullpage.js
deleted file mode 100644 (file)
index b20e77c..0000000
+++ /dev/null
@@ -1,580 +0,0 @@
-//\r
-\r
-var defaultDocTypes = \r
-       'XHTML 1.0 Transitional=<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">,' +\r
-       'XHTML 1.0 Frameset=<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">,' +\r
-       'XHTML 1.0 Strict=<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">,' +\r
-       'XHTML 1.1=<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">,' +\r
-       'HTML 4.01 Transitional=<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">,' +\r
-       'HTML 4.01 Strict=<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">,' +\r
-       'HTML 4.01 Frameset=<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">';\r
-\r
-var defaultEncodings = \r
-       'Western european (iso-8859-1)=iso-8859-1,' +\r
-       'Central European (iso-8859-2)=iso-8859-2,' +\r
-       'Unicode (UTF-8)=utf-8,' +\r
-       'Chinese traditional (Big5)=big5,' +\r
-       'Cyrillic (iso-8859-5)=iso-8859-5,' +\r
-       'Japanese (iso-2022-jp)=iso-2022-jp,' +\r
-       'Greek (iso-8859-7)=iso-8859-7,' +\r
-       'Korean (iso-2022-kr)=iso-2022-kr,' +\r
-       'ASCII (us-ascii)=us-ascii';\r
-\r
-var defaultMediaTypes = \r
-       'all=all,' +\r
-       'screen=screen,' +\r
-       'print=print,' +\r
-       'tty=tty,' +\r
-       'tv=tv,' +\r
-       'projection=projection,' +\r
-       'handheld=handheld,' +\r
-       'braille=braille,' +\r
-       'aural=aural';\r
-\r
-var defaultFontNames = 'Arial=arial,helvetica,sans-serif;Courier New=courier new,courier,monospace;Georgia=georgia,times new roman,times,serif;Tahoma=tahoma,arial,helvetica,sans-serif;Times New Roman=times new roman,times,serif;Verdana=verdana,arial,helvetica,sans-serif;Impact=impact;WingDings=wingdings';\r
-var defaultFontSizes = '10px,11px,12px,13px,14px,15px,16px';\r
-\r
-var addMenuLayer = new MCLayer("addmenu");\r
-var lastElementType = null;\r
-var topDoc;\r
-\r
-function init() {\r
-       var f = document.forms['fullpage'];\r
-       var i, p, doctypes, encodings, mediaTypes, fonts;\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-\r
-       // Setup doctype select box\r
-       doctypes = tinyMCE.getParam("fullpage_doctypes", defaultDocTypes).split(',');\r
-       for (i=0; i<doctypes.length; i++) {\r
-               p = doctypes[i].split('=');\r
-\r
-               if (p.length > 1)\r
-                       addSelectValue(f, 'doctypes', p[0], p[1]);\r
-       }\r
-\r
-       // Setup fonts select box\r
-       fonts = tinyMCE.getParam("fullpage_fonts", defaultFontNames).split(';');\r
-       for (i=0; i<fonts.length; i++) {\r
-               p = fonts[i].split('=');\r
-\r
-               if (p.length > 1)\r
-                       addSelectValue(f, 'fontface', p[0], p[1]);\r
-       }\r
-\r
-       // Setup fontsize select box\r
-       fonts = tinyMCE.getParam("fullpage_fontsizes", defaultFontSizes).split(',');\r
-       for (i=0; i<fonts.length; i++)\r
-               addSelectValue(f, 'fontsize', fonts[i], fonts[i]);\r
-\r
-       // Setup mediatype select boxs\r
-       mediaTypes = tinyMCE.getParam("fullpage_media_types", defaultMediaTypes).split(',');\r
-       for (i=0; i<mediaTypes.length; i++) {\r
-               p = mediaTypes[i].split('=');\r
-\r
-               if (p.length > 1) {\r
-                       addSelectValue(f, 'element_style_media', p[0], p[1]);\r
-                       addSelectValue(f, 'element_link_media', p[0], p[1]);\r
-               }\r
-       }\r
-\r
-       // Setup encodings select box\r
-       encodings = tinyMCE.getParam("fullpage_encodings", defaultEncodings).split(',');\r
-       for (i=0; i<encodings.length; i++) {\r
-               p = encodings[i].split('=');\r
-\r
-               if (p.length > 1) {\r
-                       addSelectValue(f, 'docencoding', p[0], p[1]);\r
-                       addSelectValue(f, 'element_script_charset', p[0], p[1]);\r
-                       addSelectValue(f, 'element_link_charset', p[0], p[1]);\r
-               }\r
-       }\r
-\r
-       document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');\r
-       document.getElementById('link_color_pickcontainer').innerHTML = getColorPickerHTML('link_color_pick','link_color');\r
-       //document.getElementById('hover_color_pickcontainer').innerHTML = getColorPickerHTML('hover_color_pick','hover_color');\r
-       document.getElementById('visited_color_pickcontainer').innerHTML = getColorPickerHTML('visited_color_pick','visited_color');\r
-       document.getElementById('active_color_pickcontainer').innerHTML = getColorPickerHTML('active_color_pick','active_color');\r
-       document.getElementById('textcolor_pickcontainer').innerHTML = getColorPickerHTML('textcolor_pick','textcolor');\r
-       document.getElementById('stylesheet_browsercontainer').innerHTML = getBrowserHTML('stylesheetbrowser','stylesheet','file','fullpage');\r
-       document.getElementById('link_href_pickcontainer').innerHTML = getBrowserHTML('link_href_browser','element_link_href','file','fullpage');\r
-       document.getElementById('script_src_pickcontainer').innerHTML = getBrowserHTML('script_src_browser','element_script_src','file','fullpage');\r
-       document.getElementById('bgimage_pickcontainer').innerHTML = getBrowserHTML('bgimage_browser','bgimage','image','fullpage');\r
-\r
-       // Resize some elements\r
-       if (isVisible('stylesheetbrowser'))\r
-               document.getElementById('stylesheet').style.width = '220px';\r
-\r
-       if (isVisible('link_href_browser'))\r
-               document.getElementById('element_link_href').style.width = '230px';\r
-\r
-       if (isVisible('bgimage_browser'))\r
-               document.getElementById('bgimage').style.width = '210px';\r
-\r
-       // Create iframe\r
-       var iframe = document.createElement('iframe');\r
-\r
-       iframe.id = 'tempFrame';\r
-       iframe.style.display = 'none';\r
-       iframe.src = tinyMCE.baseURL + "/plugins/fullpage/blank.htm";\r
-\r
-       document.body.appendChild(iframe);\r
-\r
-       tinyMCEPopup.resizeToInnerSize();\r
-}\r
-\r
-function setupIframe(doc) {\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var hc = inst.fullpageTopContent;\r
-       var f = document.forms[0];\r
-       var xmlVer, xmlEnc, docType;\r
-       var nodes, i, x, name, value, tmp, l;\r
-\r
-       // Keep it from not loading/executing stuff\r
-       hc = hc.replace(/<script>/gi, '<script type="text/javascript">');\r
-       hc = hc.replace(/\ssrc=/gi, " mce_src=");\r
-       hc = hc.replace(/\shref=/gi, " mce_href=");\r
-       hc = hc.replace(/\stype=/gi, " mce_type=");\r
-       hc = hc.replace(/<script/gi, '<script type="text/unknown" ');\r
-\r
-       // Add end to make it DOM parseable\r
-       hc += '</body></html>';\r
-\r
-       topDoc = doc;\r
-       doc.open();\r
-       doc.write(hc);\r
-       doc.close();\r
-\r
-       // ------- Setup options for genral tab\r
-\r
-       // Parse xml and doctype\r
-       xmlVer = getReItem(/<\?\s*?xml.*?version\s*?=\s*?"(.*?)".*?\?>/gi, hc, 1);\r
-       xmlEnc = getReItem(/<\?\s*?xml.*?encoding\s*?=\s*?"(.*?)".*?\?>/gi, hc, 1);\r
-       docType = getReItem(/<\!DOCTYPE.*?>/gi, hc, 0);\r
-       f.langcode.value = getReItem(/lang="(.*?)"/gi, hc, 1);\r
-\r
-       // Get title\r
-       f.metatitle.value = tinyMCE.entityDecode(getReItem(/<title>(.*?)<\/title>/gi, hc, 1));\r
-\r
-       // Check for meta encoding\r
-       nodes = doc.getElementsByTagName("meta");\r
-       for (i=0; i<nodes.length; i++) {\r
-               name = tinyMCE.getAttrib(nodes[i], 'name');\r
-               value = tinyMCE.getAttrib(nodes[i], 'content');\r
-               httpEquiv = tinyMCE.getAttrib(nodes[i], 'httpEquiv');\r
-\r
-               switch (name.toLowerCase()) {\r
-                       case "keywords":\r
-                               f.metakeywords.value = value;\r
-                               break;\r
-\r
-                       case "description":\r
-                               f.metadescription.value = value;\r
-                               break;\r
-\r
-                       case "author":\r
-                               f.metaauthor.value = value;\r
-                               break;\r
-\r
-                       case "copyright":\r
-                               f.metacopyright.value = value;\r
-                               break;\r
-\r
-                       case "robots":\r
-                               selectByValue(f, 'metarobots', value, true, true);\r
-                               break;\r
-               }\r
-\r
-               switch (httpEquiv.toLowerCase()) {\r
-                       case "content-type":\r
-                               tmp = getReItem(/charset\s*=\s*(.*)\s*/gi, value, 1);\r
-\r
-                               // Override XML encoding\r
-                               if (tmp != "")\r
-                                       xmlEnc = tmp;\r
-\r
-                               break;\r
-               }\r
-       }\r
-\r
-       selectByValue(f, 'doctypes', docType, true, true);\r
-       selectByValue(f, 'docencoding', xmlEnc, true, true);\r
-       selectByValue(f, 'langdir', tinyMCE.getAttrib(doc.body, 'dir'), true, true);\r
-\r
-       if (xmlVer != '')\r
-               f.xml_pi.checked = true;\r
-\r
-       // ------- Setup options for appearance tab\r
-\r
-       // Get primary stylesheet\r
-       nodes = doc.getElementsByTagName("link");\r
-       for (i=0; i<nodes.length; i++) {\r
-               l = nodes[i];\r
-               tmp = tinyMCE.getAttrib(l, 'media');\r
-\r
-               if (tinyMCE.getAttrib(l, 'mce_type') == "text/css" && (tmp == "" || tmp == "screen" || tmp == "all") && tinyMCE.getAttrib(l, 'rel') == "stylesheet") {\r
-                       f.stylesheet.value = tinyMCE.getAttrib(l, 'mce_href');\r
-                       break;\r
-               }\r
-       }\r
-\r
-       // Get from style elements\r
-       nodes = doc.getElementsByTagName("style");\r
-       for (i=0; i<nodes.length; i++) {\r
-               tmp = parseStyleElement(nodes[i]);\r
-\r
-               for (x=0; x<tmp.length; x++) {\r
-               //      if (tmp[x].rule.indexOf('a:hover') != -1 && tmp[x].data['color'])\r
-               //              f.hover_color.value = tmp[x].data['color'];\r
-\r
-                       if (tmp[x].rule.indexOf('a:visited') != -1 && tmp[x].data['color'])\r
-                               f.visited_color.value = tmp[x].data['color'];\r
-\r
-                       if (tmp[x].rule.indexOf('a:link') != -1 && tmp[x].data['color'])\r
-                               f.link_color.value = tmp[x].data['color'];\r
-\r
-                       if (tmp[x].rule.indexOf('a:active') != -1 && tmp[x].data['color'])\r
-                               f.active_color.value = tmp[x].data['color'];\r
-               }\r
-       }\r
-\r
-       // Get from body attribs\r
-\r
-/*     f.leftmargin.value = tinyMCE.getAttrib(doc.body, "leftmargin");\r
-       f.rightmargin.value = tinyMCE.getAttrib(doc.body, "rightmargin");\r
-       f.topmargin.value = tinyMCE.getAttrib(doc.body, "topmargin");\r
-       f.bottommargin.value = tinyMCE.getAttrib(doc.body, "bottommargin");*/\r
-       f.textcolor.value = convertRGBToHex(tinyMCE.getAttrib(doc.body, "text"));\r
-       f.active_color.value = convertRGBToHex(tinyMCE.getAttrib(doc.body, "alink"));\r
-       f.link_color.value = convertRGBToHex(tinyMCE.getAttrib(doc.body, "link"));\r
-       f.visited_color.value = convertRGBToHex(tinyMCE.getAttrib(doc.body, "vlink"));\r
-       f.bgcolor.value = convertRGBToHex(tinyMCE.getAttrib(doc.body, "bgcolor"));\r
-       f.bgimage.value = convertRGBToHex(tinyMCE.getAttrib(doc.body, "background"));\r
-\r
-       // Get from style info\r
-       var style = tinyMCE.parseStyle(tinyMCE.getAttrib(doc.body, 'style'));\r
-\r
-       if (style['font-family'])\r
-               selectByValue(f, 'fontface', style['font-family'], true, true);\r
-       else\r
-               selectByValue(f, 'fontface', tinyMCE.getParam("fullpage_default_fontface", ""), true, true);\r
-\r
-       if (style['font-size'])\r
-               selectByValue(f, 'fontsize', style['font-size'], true, true);\r
-       else\r
-               selectByValue(f, 'fontsize', tinyMCE.getParam("fullpage_default_fontsize", ""), true, true);\r
-\r
-       if (style['color'])\r
-               f.textcolor.value = convertRGBToHex(style['color']);\r
-\r
-       if (style['background-image'])\r
-               f.bgimage.value = style['background-image'].replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");\r
-\r
-       if (style['background-color'])\r
-               f.bgcolor.value = convertRGBToHex(style['background-color']);\r
-\r
-       if (style['margin']) {\r
-               tmp = style['margin'].replace(/[^0-9 ]/g, '');\r
-               tmp = tmp.split(/ +/);\r
-               f.topmargin.value = tmp.length > 0 ? tmp[0] : '';\r
-               f.rightmargin.value = tmp.length > 1 ? tmp[1] : tmp[0];\r
-               f.bottommargin.value = tmp.length > 2 ? tmp[2] : tmp[0];\r
-               f.leftmargin.value = tmp.length > 3 ? tmp[3] : tmp[0];\r
-       }\r
-\r
-       if (style['margin-left'])\r
-               f.leftmargin.value = style['margin-left'].replace(/[^0-9]/g, '');\r
-\r
-       if (style['margin-right'])\r
-               f.rightmargin.value = style['margin-right'].replace(/[^0-9]/g, '');\r
-\r
-       if (style['margin-top'])\r
-               f.topmargin.value = style['margin-top'].replace(/[^0-9]/g, '');\r
-\r
-       if (style['margin-bottom'])\r
-               f.bottommargin.value = style['margin-bottom'].replace(/[^0-9]/g, '');\r
-\r
-       f.style.value = tinyMCE.serializeStyle(style);\r
-\r
-       updateColor('textcolor_pick', 'textcolor');\r
-       updateColor('bgcolor_pick', 'bgcolor');\r
-       updateColor('visited_color_pick', 'visited_color');\r
-       updateColor('active_color_pick', 'active_color');\r
-       updateColor('link_color_pick', 'link_color');\r
-       //updateColor('hover_color_pick', 'hover_color');\r
-}\r
-\r
-function updateAction() {\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var f = document.forms[0];\r
-       var nl, i, h, v, s, head, html, l, tmp, addlink = true;\r
-\r
-       head = topDoc.getElementsByTagName('head')[0];\r
-\r
-       // Fix scripts without a type\r
-       nl = topDoc.getElementsByTagName('script');\r
-       for (i=0; i<nl.length; i++) {\r
-               if (tinyMCE.getAttrib(nl[i], 'mce_type') == '')\r
-                       nl[i].setAttribute('mce_type', 'text/javascript');\r
-       }\r
-\r
-       // Get primary stylesheet\r
-       nl = topDoc.getElementsByTagName("link");\r
-       for (i=0; i<nl.length; i++) {\r
-               l = nl[i];\r
-\r
-               tmp = tinyMCE.getAttrib(l, 'media');\r
-\r
-               if (tinyMCE.getAttrib(l, 'mce_type') == "text/css" && (tmp == "" || tmp == "screen" || tmp == "all") && tinyMCE.getAttrib(l, 'rel') == "stylesheet") {\r
-                       addlink = false;\r
-\r
-                       if (f.stylesheet.value == '')\r
-                               l.parentNode.removeChild(l);\r
-                       else\r
-                               l.setAttribute('mce_href', f.stylesheet.value);\r
-\r
-                       break;\r
-               }\r
-       }\r
-\r
-       // Add new link\r
-       if (f.stylesheet.value != '') {\r
-               l = topDoc.createElement('link');\r
-\r
-               l.setAttribute('mce_type', 'text/css');\r
-               l.setAttribute('mce_href', f.stylesheet.value);\r
-               l.setAttribute('rel', 'stylesheet');\r
-\r
-               head.appendChild(l);\r
-       }\r
-\r
-       setMeta(head, 'keywords', f.metakeywords.value);\r
-       setMeta(head, 'description', f.metadescription.value);\r
-       setMeta(head, 'author', f.metaauthor.value);\r
-       setMeta(head, 'copyright', f.metacopyright.value);\r
-       setMeta(head, 'robots', getSelectValue(f, 'metarobots'));\r
-       setMeta(head, 'Content-Type', getSelectValue(f, 'docencoding'));\r
-\r
-       topDoc.body.dir = getSelectValue(f, 'langdir');\r
-       topDoc.body.style.cssText = f.style.value;\r
-\r
-       topDoc.body.setAttribute('vLink', f.visited_color.value);\r
-       topDoc.body.setAttribute('link', f.link_color.value);\r
-       topDoc.body.setAttribute('text', f.textcolor.value);\r
-       topDoc.body.setAttribute('aLink', f.active_color.value);\r
-\r
-       topDoc.body.style.fontFamily = getSelectValue(f, 'fontface');\r
-       topDoc.body.style.fontSize = getSelectValue(f, 'fontsize');\r
-       topDoc.body.style.backgroundColor = f.bgcolor.value;\r
-\r
-       if (f.leftmargin.value != '')\r
-               topDoc.body.style.marginLeft = f.leftmargin.value + 'px';\r
-\r
-       if (f.rightmargin.value != '')\r
-               topDoc.body.style.marginRight = f.rightmargin.value + 'px';\r
-\r
-       if (f.bottommargin.value != '')\r
-               topDoc.body.style.marginBottom = f.bottommargin.value + 'px';\r
-\r
-       if (f.topmargin.value != '')\r
-               topDoc.body.style.marginTop = f.topmargin.value + 'px';\r
-\r
-       html = topDoc.getElementsByTagName('html')[0];\r
-       html.setAttribute('lang', f.langcode.value);\r
-       html.setAttribute('xml:lang', f.langcode.value);\r
-\r
-       if (f.bgimage.value != '')\r
-               topDoc.body.style.backgroundImage = "url('" + f.bgimage.value + "')";\r
-       else\r
-               topDoc.body.style.backgroundImage = '';\r
-\r
-       inst.cleanup.addRuleStr('-title,meta[http-equiv|name|content],base[href|target],link[href|rel|type|title|media],style[type],script[type|language|src],html[lang|xml:lang|xmlns],body[style|dir|vlink|link|text|alink],head');\r
-\r
-       h = inst.cleanup.serializeNodeAsHTML(topDoc.documentElement);\r
-\r
-       h = h.substring(0, h.lastIndexOf('</body>'));\r
-\r
-       if (h.indexOf('<title>') == -1)\r
-               h = h.replace(/<head.*?>/, '$&\n' + '<title>' + inst.cleanup.xmlEncode(f.metatitle.value) + '</title>');\r
-       else\r
-               h = h.replace(/<title>(.*?)<\/title>/, '<title>' + inst.cleanup.xmlEncode(f.metatitle.value) + '</title>');\r
-\r
-       if ((v = getSelectValue(f, 'doctypes')) != '')\r
-               h = v + '\n' + h;\r
-\r
-       if (f.xml_pi.checked) {\r
-               s = '<?xml version="1.0"';\r
-\r
-               if ((v = getSelectValue(f, 'docencoding')) != '')\r
-                       s += ' encoding="' + v + '"';\r
-\r
-               s += '?>\n';\r
-               h = s + h;\r
-       }\r
-\r
-       inst.fullpageTopContent = h;\r
-\r
-       tinyMCEPopup.execCommand('mceFullPageUpdate', false, '');\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function setMeta(he, k, v) {\r
-       var nl, i, m;\r
-\r
-       nl = he.getElementsByTagName('meta');\r
-       for (i=0; i<nl.length; i++) {\r
-               if (k == 'Content-Type' && tinyMCE.getAttrib(nl[i], 'http-equiv') == k) {\r
-                       if (v == '')\r
-                               nl[i].parentNode.removeChild(nl[i]);\r
-                       else\r
-                               nl[i].setAttribute('content', "text/html; charset=" + v);\r
-\r
-                       return;\r
-               }\r
-\r
-               if (tinyMCE.getAttrib(nl[i], 'name') == k) {\r
-                       if (v == '')\r
-                               nl[i].parentNode.removeChild(nl[i]);\r
-                       else\r
-                               nl[i].setAttribute('content', v);\r
-                       return;\r
-               }\r
-       }\r
-\r
-       if (v == '')\r
-               return;\r
-\r
-       m = topDoc.createElement('meta');\r
-\r
-       if (k == 'Content-Type')\r
-               m.httpEquiv = k;\r
-       else\r
-               m.setAttribute('name', k);\r
-\r
-       m.setAttribute('content', v);\r
-       he.appendChild(m);\r
-}\r
-\r
-function parseStyleElement(e) {\r
-       var v = e.innerHTML;\r
-       var p, i, r;\r
-\r
-       v = v.replace(/<!--/gi, '');\r
-       v = v.replace(/-->/gi, '');\r
-       v = v.replace(/[\n\r]/gi, '');\r
-       v = v.replace(/\s+/gi, ' ');\r
-\r
-       r = new Array();\r
-       p = v.split(/{|}/);\r
-\r
-       for (i=0; i<p.length; i+=2) {\r
-               if (p[i] != "")\r
-                       r[r.length] = {rule : tinyMCE.trim(p[i]), data : tinyMCE.parseStyle(p[i+1])};\r
-       }\r
-\r
-       return r;\r
-}\r
-\r
-function serializeStyleElement(d) {\r
-       var i, s, st;\r
-\r
-       s = '<!--\n';\r
-\r
-       for (i=0; i<d.length; i++) {\r
-               s += d[i].rule + ' {\n';\r
-\r
-               st = tinyMCE.serializeStyle(d[i].data);\r
-\r
-               if (st != '')\r
-                       st += ';';\r
-\r
-               s += st.replace(/;/g, ';\n');\r
-               s += '}\n';\r
-\r
-               if (i != d.length - 1)\r
-                       s += '\n';\r
-       }\r
-\r
-       s += '\n-->';\r
-\r
-       return s;\r
-}\r
-\r
-function getReItem(r, s, i) {\r
-       var c = r.exec(s);\r
-\r
-       if (c && c.length > i)\r
-               return c[i];\r
-\r
-       return '';\r
-}\r
-\r
-function changedStyleField(field) {\r
-       //alert(field.id);\r
-}\r
-\r
-function showAddMenu() {\r
-       var re = document.getElementById('addbutton');\r
-\r
-       addMenuLayer.moveRelativeTo(re, 'tr');\r
-       if (addMenuLayer.isMSIE)\r
-               addMenuLayer.moveBy(2, 0);\r
-\r
-       addMenuLayer.show();\r
-       addMenuLayer.setAutoHide(true, hideAddMenu);\r
-       addMenuLayer.addCSSClass(re, 'selected');\r
-}\r
-\r
-function hideAddMenu(l, e, mx, my) {\r
-       var re = document.getElementById('addbutton');\r
-       addMenuLayer.removeCSSClass(re, 'selected');\r
-}\r
-\r
-function addHeadElm(type) {\r
-       var le = document.getElementById('headlist');\r
-       var re = document.getElementById('addbutton');\r
-       var te = document.getElementById(type + '_element');\r
-\r
-       if (lastElementType)\r
-               lastElementType.style.display = 'none';\r
-\r
-       te.style.display = 'block';\r
-\r
-       lastElementType = te;\r
-\r
-       addMenuLayer.hide();\r
-       addMenuLayer.removeCSSClass(re, 'selected');\r
-\r
-       document.getElementById(type + '_updateelement').value = tinyMCE.getLang('lang_insert', 'Insert', true);\r
-\r
-       le.size = 10;\r
-}\r
-\r
-function updateHeadElm(item) {\r
-       var type = item.substring(0, item.indexOf('_'));\r
-       var le = document.getElementById('headlist');\r
-       var re = document.getElementById('addbutton');\r
-       var te = document.getElementById(type + '_element');\r
-\r
-       if (lastElementType)\r
-               lastElementType.style.display = 'none';\r
-\r
-       te.style.display = 'block';\r
-\r
-       lastElementType = te;\r
-\r
-       addMenuLayer.hide();\r
-       addMenuLayer.removeCSSClass(re, 'selected');\r
-\r
-       document.getElementById(type + '_updateelement').value = tinyMCE.getLang('lang_update', 'Update', true);\r
-\r
-       le.size = 10;\r
-}\r
-\r
-function cancelElementUpdate() {\r
-       var le = document.getElementById('headlist');\r
-\r
-       if (lastElementType)\r
-               lastElementType.style.display = 'none';\r
-\r
-       le.size = 26;\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/en.js
deleted file mode 100644 (file)
index 1864d3d..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('fullpage',{\r
-       title : 'Document properties',\r
-       desc : 'Document properties',\r
-       meta_tab : 'General',\r
-       appearance_tab : 'Appearance',\r
-       advanced_tab : 'Advanced',\r
-       meta_props : 'Meta information',\r
-       langprops : 'Language and encoding',\r
-       meta_title : 'Title',\r
-       meta_keywords : 'Keywords',\r
-       meta_description : 'Description',\r
-       meta_robots : 'Robots',\r
-       doctypes : 'Doctype',\r
-       langcode : 'Language code',\r
-       langdir : 'Language direction',\r
-       ltr : 'Left to right',\r
-       rtl : 'Right to left',\r
-       xml_pi : 'XML declaration',\r
-       encoding : 'Character encoding',\r
-       appearance_bgprops : 'Background properties',\r
-       appearance_marginprops : 'Body margins',\r
-       appearance_linkprops : 'Link colors',\r
-       appearance_textprops : 'Text properties',\r
-       bgcolor : 'Background color',\r
-       bgimage : 'Background image',\r
-       left_margin : 'Left margin',\r
-       right_margin : 'Right margin',\r
-       top_margin : 'Top margin',\r
-       bottom_margin : 'Bottom margin',\r
-       text_color : 'Text color',\r
-       font_size : 'Font size',\r
-       font_face : 'Font face',\r
-       link_color : 'Link color',\r
-       hover_color : 'Hover color',\r
-       visited_color : 'Visited color',\r
-       active_color : 'Active color',\r
-       textcolor : 'Color',\r
-       fontsize : 'Font size',\r
-       fontface : 'Font family',\r
-       meta_index_follow : 'Index and follow the links',\r
-       meta_index_nofollow : 'Index and don\'t follow the links',\r
-       meta_noindex_follow : 'Do not index but follow the links',\r
-       meta_noindex_nofollow : 'Do not index and don\'t follow the links',\r
-       appearance_style : 'Stylesheet and style properties',\r
-       stylesheet : 'Stylesheet',\r
-       style : 'Style',\r
-       author : 'Author',\r
-       copyright : 'Copyright',\r
-       add : 'Add new element',\r
-       remove : 'Remove selected element',\r
-       moveup : 'Move selected element up',\r
-       movedown : 'Move selected element down',\r
-       head_elements : 'Head elements',\r
-       info : 'Information',\r
-       info_text : '',\r
-       add_title : 'Title element',\r
-       add_meta : 'Meta element',\r
-       add_script : 'Script element',\r
-       add_style : 'Style element',\r
-       add_link : 'Link element',\r
-       add_base : 'Base element',\r
-       add_comment : 'Comment node',\r
-       title_element : 'Title element',\r
-       script_element : 'Script element',\r
-       style_element : 'Style element',\r
-       base_element : 'Base element',\r
-       link_element : 'Link element',\r
-       meta_element : 'Meta element',\r
-       comment_element : 'Comment',\r
-       src : 'Src',\r
-       language : 'Language',\r
-       href : 'Href',\r
-       target : 'Target',\r
-       rel : 'Rel',\r
-       type : 'Type',\r
-       charset : 'Charset',\r
-       defer : 'Defer',\r
-       media : 'Media',\r
-       properties : 'Properties',\r
-       name : 'Name',\r
-       value : 'Value',\r
-       content : 'Content',\r
-       rel : 'Rel',\r
-       rev : 'Rev',\r
-       hreflang : 'Href lang',\r
-       general_props : 'General',\r
-       advanced_props : 'Advanced',\r
-       delta_width : 0,\r
-       delta_height : 0\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/css/page.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/css/page.css
deleted file mode 100644 (file)
index 94f9deb..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/* This class restores all CSS properties to that absolute positioning of fullscreen mode is correct */\r
-.mceFullscreenPos {\r
-       display: block !important;\r
-       position: static !important;\r
-       left: 0 !important;\r
-       top: 0 !important;\r
-       bottom: auto !important;\r
-       right: auto !important;\r
-       width: auto !important;\r
-       height: auto !important;\r
-       margin: 0 !important;\r
-       padding: 0 !important;\r
-       border: 0 !important;\r
-       overflow: visible;\r
-       z-index: 1 !important;\r
-       clear: both;\r
-}\r
-\r
-body.mceFullscreen {\r
-       overflow: hidden !important;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js
deleted file mode 100644 (file)
index 4adb57e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('fullscreen');var TinyMCE_FullScreenPlugin={getInfo:function(){return{longname:'Fullscreen',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){if(!tinyMCE.settings['fullscreen_skip_plugin_css'])tinyMCE.importCSS(inst.getContainerWin().document,tinyMCE.baseURL+"/plugins/fullscreen/css/page.css")},getControlHTML:function(cn){switch(cn){case"fullscreen":return tinyMCE.getButtonHTML(cn,'lang_fullscreen_desc','{$pluginurl}/images/fullscreen.gif','mceFullScreen')}return""},execCommand:function(editor_id,element,command,user_interface,value){var inst;switch(command){case"mceFullScreen":inst=tinyMCE.getInstanceById(editor_id);if(tinyMCE.getParam('fullscreen_new_window'))this._toggleFullscreenWin(inst);else this._toggleFullscreen(inst);return true}return false},_toggleFullscreenWin:function(inst){if(tinyMCE.getParam('fullscreen_is_enabled')){window.opener.tinyMCE.execInstanceCommand(tinyMCE.getParam('fullscreen_editor_id'),'mceSetContent',false,tinyMCE.getContent(inst.editorId));top.close()}else{tinyMCE.setWindowArg('editor_id',inst.editorId);var win=window.open(tinyMCE.baseURL+"/plugins/fullscreen/fullscreen.htm","mceFullScreenPopup","fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width="+screen.availWidth+",height="+screen.availHeight);try{win.resizeTo(screen.availWidth,screen.availHeight)}catch(e){}}},_toggleFullscreen:function(inst){var ds=inst.getData('fullscreen'),editorContainer,tableElm,iframe,vp,cw,cd,re,w,h,si,blo,delta=0,cell,row,fcml,bcml;cw=inst.getContainerWin();cd=cw.document;editorContainer=cd.getElementById(inst.editorId+'_parent');tableElm=editorContainer.firstChild;iframe=inst.iframeElement;re=cd.getElementById(inst.editorId+'_resize');blo=document.getElementById('mce_fullscreen_blocker');fcm=new TinyMCE_Layer(inst.editorId+'_fcMenu');fcml=new TinyMCE_Layer(inst.editorId+'_fcMenu');bcml=new TinyMCE_Layer(inst.editorId+'_bcMenu');if(fcml.exists()&&fcml.isVisible()){tinyMCE.switchClass(inst.editorId+'_forecolor','mceMenuButton');fcml.hide()}if(bcml.exists()&&bcml.isVisible()){tinyMCE.switchClass(inst.editorId+'_backcolor','mceMenuButton');bcml.hide()}if(!ds.enabled){if(inst.toolbarElement){delta+=inst.toolbarElement.offsetHeight;cell=tableElm.tBodies[0].insertRow(0).insertCell(-1);cell.className='mceToolbarTop';cell.nowrap=true;ds.oldToolbarParent=inst.toolbarElement.parentNode;ds.toolbarHolder=document.createTextNode('...');cell.appendChild(ds.oldToolbarParent.replaceChild(ds.toolbarHolder,inst.toolbarElement))}ds.parents=[];vp=tinyMCE.getViewPort(cw);ds.scrollX=vp.left;ds.scrollY=vp.top;if(!tinyMCE.isOpera)tinyMCE.addCSSClass(cd.body,'mceFullscreen');tinyMCE.getParentNode(tableElm.parentNode,function(n){if(n.nodeName=='BODY')return true;if(n.nodeType==1)tinyMCE.addCSSClass(n,'mceFullscreenPos');return false});if(re)re.style.display='none';vp=tinyMCE.getViewPort(cw);ds.oldWidth=iframe.style.width?iframe.style.width:iframe.offsetWidth;ds.oldHeight=iframe.style.height?iframe.style.height:iframe.offsetHeight;ds.oldTWidth=tableElm.style.width?tableElm.style.width:tableElm.offsetWidth;ds.oldTHeight=tableElm.style.height?tableElm.style.height:tableElm.offsetHeight;if(ds.oldWidth&&ds.oldWidth.indexOf)ds.oldTWidth=ds.oldWidth.indexOf('%')!=-1?ds.oldWidth:ds.oldTWidth;if(!blo&&tinyMCE.isRealIE){blo=tinyMCE.createTag(document,'iframe',{id:'mce_fullscreen_blocker',src:'about:blank',frameBorder:0,width:vp.width,height:vp.height,style:'display: block; position: absolute; left: 0; top: 0; z-index: 999; margin: 0; padding: 0;'});document.body.appendChild(blo)}tableElm.style.position='absolute';tableElm.style.zIndex=1000;tableElm.style.left=tableElm.style.top='0';tableElm.style.width=vp.width+'px';tableElm.style.height=vp.height+'px';if(tinyMCE.isRealIE){iframe.style.width=vp.width+'px';iframe.style.height=vp.height+'px';w=iframe.parentNode.clientWidth-(tableElm.offsetWidth-vp.width);h=iframe.parentNode.clientHeight-(tableElm.offsetHeight-vp.height)}else{w=iframe.parentNode.clientWidth;h=iframe.parentNode.clientHeight}iframe.style.width=w+"px";iframe.style.height=(h+delta)+"px";tinyMCE.switchClass(inst.editorId+'_fullscreen','mceButtonSelected');ds.enabled=true;inst.useCSS=false}else{if(inst.toolbarElement){row=inst.toolbarElement.parentNode.parentNode;row.parentNode.removeChild(row);ds.oldToolbarParent.replaceChild(inst.toolbarElement,ds.toolbarHolder);ds.oldToolbarParent=null;ds.toolbarHolder=null}if(blo)blo.parentNode.removeChild(blo);si=0;tinyMCE.getParentNode(tableElm.parentNode,function(n){if(n.nodeName=='BODY')return true;if(n.nodeType==1)tinyMCE.removeCSSClass(n,'mceFullscreenPos')});if(re&&tinyMCE.getParam("theme_advanced_resizing",false))re.style.display='block';tableElm.style.position='static';tableElm.style.zIndex='';tableElm.style.width='';tableElm.style.height='';tableElm.style.width=ds.oldTWidth?ds.oldTWidth:'';tableElm.style.height=ds.oldTHeight?ds.oldTHeight:'';iframe.style.width=ds.oldWidth?ds.oldWidth:'';iframe.style.height=ds.oldHeight?ds.oldHeight:'';tinyMCE.switchClass(inst.editorId+'_fullscreen','mceButtonNormal');ds.enabled=false;tinyMCE.removeCSSClass(cd.body,'mceFullscreen');cw.scrollTo(ds.scrollX,ds.scrollY);inst.useCSS=false}},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){if(tinyMCE.getParam('fullscreen_is_enabled'))tinyMCE.switchClass(editor_id+'_fullscreen','mceButtonSelected');return true}};tinyMCE.addPlugin("fullscreen",TinyMCE_FullScreenPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js
deleted file mode 100644 (file)
index 0f8b83a..0000000
+++ /dev/null
@@ -1,230 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('fullscreen');\r
-\r
-var TinyMCE_FullScreenPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Fullscreen',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               if (!tinyMCE.settings['fullscreen_skip_plugin_css'])\r
-                       tinyMCE.importCSS(inst.getContainerWin().document, tinyMCE.baseURL + "/plugins/fullscreen/css/page.css");\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "fullscreen":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_fullscreen_desc', '{$pluginurl}/images/fullscreen.gif', 'mceFullScreen');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               var inst;\r
-\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceFullScreen":\r
-                               inst = tinyMCE.getInstanceById(editor_id);\r
-\r
-                               if (tinyMCE.getParam('fullscreen_new_window'))\r
-                                       this._toggleFullscreenWin(inst);\r
-                               else\r
-                                       this._toggleFullscreen(inst);\r
-\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       },\r
-\r
-       _toggleFullscreenWin : function(inst) {\r
-               if (tinyMCE.getParam('fullscreen_is_enabled')) {\r
-                       // In fullscreen mode\r
-                       window.opener.tinyMCE.execInstanceCommand(tinyMCE.getParam('fullscreen_editor_id'), 'mceSetContent', false, tinyMCE.getContent(inst.editorId));\r
-                       top.close();\r
-               } else {\r
-                       tinyMCE.setWindowArg('editor_id', inst.editorId);\r
-\r
-                       var win = window.open(tinyMCE.baseURL + "/plugins/fullscreen/fullscreen.htm", "mceFullScreenPopup", "fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width=" + screen.availWidth + ",height=" + screen.availHeight);\r
-                       try { win.resizeTo(screen.availWidth, screen.availHeight); } catch (e) {}\r
-               }\r
-       },\r
-\r
-       _toggleFullscreen : function(inst) {\r
-               var ds = inst.getData('fullscreen'), editorContainer, tableElm, iframe, vp, cw, cd, re, w, h, si, blo, delta = 0, cell, row, fcml, bcml;\r
-\r
-               cw = inst.getContainerWin();\r
-               cd = cw.document;\r
-               editorContainer = cd.getElementById(inst.editorId + '_parent');\r
-               tableElm = editorContainer.firstChild;\r
-               iframe = inst.iframeElement;\r
-               re = cd.getElementById(inst.editorId + '_resize');\r
-               blo = document.getElementById('mce_fullscreen_blocker');\r
-               fcm = new TinyMCE_Layer(inst.editorId + '_fcMenu');\r
-               fcml = new TinyMCE_Layer(inst.editorId + '_fcMenu');\r
-               bcml = new TinyMCE_Layer(inst.editorId + '_bcMenu');\r
-\r
-               if (fcml.exists() && fcml.isVisible()) {\r
-                       tinyMCE.switchClass(inst.editorId + '_forecolor', 'mceMenuButton');\r
-                       fcml.hide();\r
-               }\r
-\r
-               if (bcml.exists() && bcml.isVisible()) {\r
-                       tinyMCE.switchClass(inst.editorId + '_backcolor', 'mceMenuButton');\r
-                       bcml.hide();\r
-               }\r
-\r
-               if (!ds.enabled) {\r
-                       // Handle External Toolbar\r
-                       if (inst.toolbarElement) {\r
-                               delta += inst.toolbarElement.offsetHeight;\r
-\r
-                               cell = tableElm.tBodies[0].insertRow(0).insertCell(-1);\r
-                               cell.className = 'mceToolbarTop';\r
-                               cell.nowrap = true;\r
-\r
-                               ds.oldToolbarParent = inst.toolbarElement.parentNode;\r
-                               ds.toolbarHolder = document.createTextNode('...');\r
-\r
-                               cell.appendChild(ds.oldToolbarParent.replaceChild(ds.toolbarHolder, inst.toolbarElement));\r
-                       }\r
-\r
-                       ds.parents = [];\r
-\r
-                       vp = tinyMCE.getViewPort(cw);\r
-                       ds.scrollX = vp.left;\r
-                       ds.scrollY = vp.top;\r
-\r
-                       // Opera has a bug restoring scrollbars\r
-                       if (!tinyMCE.isOpera)\r
-                               tinyMCE.addCSSClass(cd.body, 'mceFullscreen');\r
-\r
-                       tinyMCE.getParentNode(tableElm.parentNode, function (n) {\r
-                               if (n.nodeName == 'BODY')\r
-                                       return true;\r
-\r
-                               if (n.nodeType == 1)\r
-                                       tinyMCE.addCSSClass(n, 'mceFullscreenPos');\r
-\r
-                               return false;\r
-                       });\r
-\r
-                       if (re)\r
-                               re.style.display = 'none';\r
-\r
-                       vp = tinyMCE.getViewPort(cw);\r
-\r
-                       ds.oldWidth = iframe.style.width ? iframe.style.width : iframe.offsetWidth;\r
-                       ds.oldHeight = iframe.style.height ? iframe.style.height : iframe.offsetHeight;\r
-                       ds.oldTWidth = tableElm.style.width ? tableElm.style.width : tableElm.offsetWidth;\r
-                       ds.oldTHeight = tableElm.style.height ? tableElm.style.height : tableElm.offsetHeight;\r
-\r
-                       // Handle % width\r
-                       if (ds.oldWidth && ds.oldWidth.indexOf)\r
-                               ds.oldTWidth = ds.oldWidth.indexOf('%') != -1 ? ds.oldWidth : ds.oldTWidth;\r
-\r
-                       if (!blo && tinyMCE.isRealIE) {\r
-                               blo = tinyMCE.createTag(document, 'iframe', {id : 'mce_fullscreen_blocker', src : 'about:blank', frameBorder : 0, width : vp.width, height : vp.height, style : 'display: block; position: absolute; left: 0; top: 0; z-index: 999; margin: 0; padding: 0;'});\r
-                               document.body.appendChild(blo);\r
-                       }\r
-\r
-                       tableElm.style.position = 'absolute';\r
-                       tableElm.style.zIndex = 1000;\r
-                       tableElm.style.left = tableElm.style.top = '0';\r
-\r
-                       tableElm.style.width = vp.width + 'px';\r
-                       tableElm.style.height = vp.height + 'px';\r
-\r
-                       if (tinyMCE.isRealIE) {\r
-                               iframe.style.width = vp.width + 'px';\r
-                               iframe.style.height = vp.height + 'px';\r
-\r
-                               // Calc new width/height based on overflow\r
-                               w = iframe.parentNode.clientWidth - (tableElm.offsetWidth - vp.width);\r
-                               h = iframe.parentNode.clientHeight - (tableElm.offsetHeight - vp.height);\r
-                       } else {\r
-                               w = iframe.parentNode.clientWidth;\r
-                               h = iframe.parentNode.clientHeight;\r
-                       }\r
-\r
-                       iframe.style.width = w + "px";\r
-                       iframe.style.height = (h+delta) + "px";\r
-\r
-                       tinyMCE.switchClass(inst.editorId + '_fullscreen', 'mceButtonSelected');\r
-                       ds.enabled = true;\r
-\r
-                       inst.useCSS = false;\r
-               } else {\r
-                       // Handle External Toolbar\r
-                       if (inst.toolbarElement) {\r
-                               row = inst.toolbarElement.parentNode.parentNode;\r
-\r
-                               row.parentNode.removeChild(row);\r
-\r
-                               ds.oldToolbarParent.replaceChild(inst.toolbarElement, ds.toolbarHolder);\r
-\r
-                               ds.oldToolbarParent = null;\r
-                               ds.toolbarHolder = null;\r
-                       }\r
-\r
-                       if (blo)\r
-                               blo.parentNode.removeChild(blo);\r
-\r
-                       si = 0;\r
-                       tinyMCE.getParentNode(tableElm.parentNode, function (n) {\r
-                               if (n.nodeName == 'BODY')\r
-                                       return true;\r
-\r
-                               if (n.nodeType == 1)\r
-                                       tinyMCE.removeCSSClass(n, 'mceFullscreenPos');\r
-                       });\r
-\r
-                       if (re && tinyMCE.getParam("theme_advanced_resizing", false))\r
-                               re.style.display = 'block';\r
-\r
-                       tableElm.style.position = 'static';\r
-                       tableElm.style.zIndex = '';\r
-                       tableElm.style.width = '';\r
-                       tableElm.style.height = '';\r
-\r
-                       tableElm.style.width = ds.oldTWidth ? ds.oldTWidth : '';\r
-                       tableElm.style.height = ds.oldTHeight ? ds.oldTHeight : '';\r
-\r
-                       iframe.style.width = ds.oldWidth ? ds.oldWidth : '';\r
-                       iframe.style.height = ds.oldHeight ? ds.oldHeight : '';\r
-\r
-                       tinyMCE.switchClass(inst.editorId + '_fullscreen', 'mceButtonNormal');\r
-                       ds.enabled = false;\r
-\r
-                       tinyMCE.removeCSSClass(cd.body, 'mceFullscreen');\r
-                       cw.scrollTo(ds.scrollX, ds.scrollY);\r
-\r
-                       inst.useCSS = false;\r
-               }\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               if (tinyMCE.getParam('fullscreen_is_enabled'))\r
-                       tinyMCE.switchClass(editor_id + '_fullscreen', 'mceButtonSelected');\r
-\r
-               return true;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("fullscreen", TinyMCE_FullScreenPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm
deleted file mode 100644 (file)
index 5e455cd..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_fullscreen_title}</title>\r
-       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce.js"></script>\r
-       <script language="javascript" type="text/javascript">\r
-               function patchCallback(settings, key) {\r
-                       if (settings[key])\r
-                               settings[key] = "window.opener." + settings[key];\r
-               }\r
-\r
-               var settings = new Array();\r
-\r
-               // Clone array\r
-               for (var name in window.opener.tinyMCE.settings)\r
-                       settings[name] = window.opener.tinyMCE.settings[name];\r
-\r
-               // Override options for fullscreen\r
-               for (var name in window.opener.tinyMCE.settings.fullscreen_settings)\r
-                       settings[name] = window.opener.tinyMCE.settings.fullscreen_settings[name];\r
-\r
-               // Patch callbacks, make them point to window.opener\r
-               patchCallback(settings, 'urlconverter_callback');\r
-               patchCallback(settings, 'insertlink_callback');\r
-               patchCallback(settings, 'insertimage_callback');\r
-               patchCallback(settings, 'setupcontent_callback');\r
-               patchCallback(settings, 'save_callback');\r
-               patchCallback(settings, 'onchange_callback');\r
-               patchCallback(settings, 'init_instance_callback');\r
-               patchCallback(settings, 'file_browser_callback');\r
-               patchCallback(settings, 'cleanup_callback');\r
-               patchCallback(settings, 'execcommand_callback');\r
-               patchCallback(settings, 'oninit');\r
-\r
-               // Set options\r
-               settings['mode'] = 'exact';\r
-               settings['elements'] = 'fullscreenarea';\r
-               settings['ask'] = false;\r
-               settings['setupcontent_callback'] = 'setupContent';\r
-               settings['fullscreen_is_enabled'] = true;\r
-               settings['fullscreen_editor_id'] = window.opener.tinyMCE.getWindowArg("editor_id");\r
-               settings['theme_advanced_resizing'] = false;\r
-\r
-               // Init\r
-               tinyMCE.init(settings);\r
-               tinyMCE.documentBasePath = window.opener.tinyMCE.documentBasePath;\r
-\r
-               function setupContent(editor_id, body, doc) {\r
-                       var inst = tinyMCE.getInstanceById(editor_id);\r
-                       var content = window.opener.tinyMCE.getContent(tinyMCE.getParam('fullscreen_editor_id'));\r
-\r
-                       // Setup title\r
-                       var divElm = document.createElement("div");\r
-                       divElm.innerHTML = tinyMCELang['lang_fullscreen_title'];\r
-                       document.title = divElm.innerHTML;\r
-\r
-                       // Get content\r
-                       inst.execCommand('mceSetContent', false, content);\r
-               }\r
-\r
-               function unloadHandler(e) {\r
-                       moveContent();\r
-               }\r
-\r
-               function moveContent() {\r
-                       var doc = tinyMCE.isMSIE ? window.frames['mce_editor_0'].window.document : document.getElementById('mce_editor_0').contentDocument;\r
-                       window.opener.tinyMCE.setInnerHTML(window.opener.tinyMCE.selectedInstance.getBody(), doc.body.innerHTML);\r
-               }\r
-\r
-               // Add onunload\r
-               tinyMCE.addEvent(window, "beforeunload", unloadHandler);\r
-\r
-               function doParentSubmit() {\r
-                       moveContent();\r
-\r
-                       if (window.opener.tinyMCE.selectedInstance.formElement.form)\r
-                               window.opener.tinyMCE.selectedInstance.formElement.form.submit();\r
-\r
-                       window.close();\r
-\r
-                       return false;\r
-               }\r
-       </script>\r
-       <base target="_self" />\r
-</head>\r
-<body style="margin: 0; overflow: hidden; height: 100%" scrolling="no" scroll="no">\r
-<form onsubmit="doParentSubmit();" style="height: 100%">\r
-<textarea id="fullscreenarea" style="width: 100%; height: 100%"></textarea>\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/images/fullscreen.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/images/fullscreen.gif
deleted file mode 100644 (file)
index 66fa6d9..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/images/fullscreen.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/langs/en.js
deleted file mode 100644 (file)
index c5ad4ca..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-fullscreen_desc : 'Toggle fullscreen mode'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/fullscreen/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js
deleted file mode 100644 (file)
index b19625b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('iespell');var TinyMCE_IESpellPlugin={getInfo:function(){return{longname:'IESpell (MSIE Only)',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/iespell',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){if(cn=="iespell"&&(tinyMCE.isMSIE&&!tinyMCE.isOpera))return tinyMCE.getButtonHTML(cn,'lang_iespell_desc','{$pluginurl}/images/iespell.gif','mceIESpell');return""},execCommand:function(editor_id,element,command,user_interface,value){if(command=="mceIESpell"){try{var ieSpell=new ActiveXObject("ieSpell.ieSpellExtension");ieSpell.CheckDocumentNode(tinyMCE.getInstanceById(editor_id).contentDocument.documentElement)}catch(e){if(e.number==-2146827859){if(confirm(tinyMCE.getLang("lang_iespell_download","",true)))window.open('http://www.iespell.com/download.php','ieSpellDownload','')}else alert("Error Loading ieSpell: Exception "+e.number)}return true}return false}};tinyMCE.addPlugin("iespell",TinyMCE_IESpellPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js
deleted file mode 100644 (file)
index 353db1c..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('iespell');\r
-\r
-var TinyMCE_IESpellPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'IESpell (MSIE Only)',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/iespell',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       /**\r
-        * Returns the HTML contents of the iespell control.\r
-        */\r
-       getControlHTML : function(cn) {\r
-               // Is it the iespell control and is the brower MSIE.\r
-               if (cn == "iespell" && (tinyMCE.isMSIE && !tinyMCE.isOpera))\r
-                       return tinyMCE.getButtonHTML(cn, 'lang_iespell_desc', '{$pluginurl}/images/iespell.gif', 'mceIESpell');\r
-\r
-               return "";\r
-       },\r
-\r
-       /**\r
-        * Executes the mceIESpell command.\r
-        */\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Handle ieSpellCommand\r
-               if (command == "mceIESpell") {\r
-                       try {\r
-                               var ieSpell = new ActiveXObject("ieSpell.ieSpellExtension");\r
-                               ieSpell.CheckDocumentNode(tinyMCE.getInstanceById(editor_id).contentDocument.documentElement);\r
-                       } catch (e) {\r
-                               if (e.number == -2146827859) {\r
-                                       if (confirm(tinyMCE.getLang("lang_iespell_download", "", true)))\r
-                                               window.open('http://www.iespell.com/download.php', 'ieSpellDownload', '');\r
-                               } else\r
-                                       alert("Error Loading ieSpell: Exception " + e.number);\r
-                       }\r
-\r
-                       return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("iespell", TinyMCE_IESpellPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/images/iespell.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/images/iespell.gif
deleted file mode 100644 (file)
index a9a2891..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/images/iespell.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/langs/en.js
deleted file mode 100644 (file)
index c3688e9..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-iespell_desc : 'Run spell checking',\r
-iespell_download : "ieSpell not detected. Click OK to go to download page."\r
-});\r
-\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/iespell/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/css/inlinepopup.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/css/inlinepopup.css
deleted file mode 100644 (file)
index 43be823..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Window classes */\r
-\r
-.mceWindow {\r
-       position: absolute;\r
-       left: 0;\r
-       top: 0;\r
-       border: 1px solid black;\r
-       background-color: #D4D0C8;\r
-}\r
-\r
-.mceWindowHead {\r
-       background-color: #334F8D;\r
-       width: 100%;\r
-       height: 18px;\r
-       cursor: move;\r
-       overflow: hidden;\r
-}\r
-\r
-.mceWindowBody {\r
-       clear: both;\r
-       background-color: white;\r
-}\r
-\r
-.mceWindowStatusbar {\r
-       background-color: #D4D0C8;\r
-       height: 12px;\r
-       border-top: 1px solid black;\r
-}\r
-\r
-.mceWindowTitle {\r
-       float: left;\r
-       font-family: "MS Sans Serif";\r
-       font-size: 9pt;\r
-       font-weight: bold;\r
-       line-height: 18px;\r
-       color: white;\r
-       margin-left: 2px;\r
-       overflow: hidden;\r
-}\r
-\r
-.mceWindowHeadTools {\r
-       margin-right: 2px;\r
-}\r
-\r
-.mceWindowClose, .mceWindowMinimize, .mceWindowMaximize {\r
-       display: block;\r
-       float: right;\r
-       overflow: hidden;\r
-       margin-top: 2px;\r
-}\r
-\r
-.mceWindowClose {\r
-       margin-left: 2px;\r
-}\r
-\r
-.mceWindowMinimize {\r
-}\r
-\r
-.mceWindowMaximize {\r
-}\r
-\r
-.mceWindowResize {\r
-       display: block;\r
-       float: right;\r
-       overflow: hidden;\r
-       cursor: se-resize;\r
-       width: 12px;\r
-       height: 12px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js
deleted file mode 100644 (file)
index be3e3ab..0000000
+++ /dev/null
@@ -1 +0,0 @@
-var TinyMCE_InlinePopupsPlugin={getInfo:function(){return{longname:'Inline Popups',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/inlinepopups',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}}};tinyMCE.addPlugin("inlinepopups",TinyMCE_InlinePopupsPlugin);TinyMCE_Engine.prototype.orgOpenWindow=TinyMCE_Engine.prototype.openWindow;TinyMCE_Engine.prototype.orgCloseWindow=TinyMCE_Engine.prototype.closeWindow;TinyMCE_Engine.prototype.openWindow=function(template,args){if(args['inline']!="yes"||tinyMCE.isOpera||tinyMCE.getParam("plugins").indexOf('inlinepopups')==-1){mcWindows.selectedWindow=null;args['mce_inside_iframe']=false;this.orgOpenWindow(template,args);return}var url,resizable,scrollbars;args['mce_inside_iframe']=true;tinyMCE.windowArgs=args;if(template['file'].charAt(0)!='/'&&template['file'].indexOf('://')==-1)url=tinyMCE.baseURL+"/themes/"+tinyMCE.getParam("theme")+"/"+template['file'];else url=template['file'];if(!(width=parseInt(template['width'])))width=320;if(!(height=parseInt(template['height'])))height=200;if(!(minWidth=parseInt(template['minWidth'])))minWidth=100;if(!(minHeight=parseInt(template['minHeight'])))minHeight=100;resizable=(args&&args['resizable'])?args['resizable']:"no";scrollbars=(args&&args['scrollbars'])?args['scrollbars']:"no";height+=18;for(var name in args){if(typeof(args[name])=='function')continue;url=tinyMCE.replaceVar(url,name,escape(args[name]))}var elm=document.getElementById(this.selectedInstance.editorId+'_parent');if(tinyMCE.hasPlugin('fullscreen')&&this.selectedInstance.getData('fullscreen').enabled)pos={absLeft:0,absTop:0};else pos=tinyMCE.getAbsPosition(elm);pos.absLeft+=Math.round((elm.firstChild.clientWidth/ 2) - (width /2));pos.absTop+=Math.round((elm.firstChild.clientHeight/ 2) - (height /2));mcWindows.open(url,mcWindows.idCounter++,"modal=yes,width="+width+",height="+height+",resizable="+resizable+",scrollbars="+scrollbars+",statusbar="+resizable+",left="+pos.absLeft+",top="+pos.absTop+",minWidth="+minWidth+",minHeight="+minHeight)};TinyMCE_Engine.prototype.closeWindow=function(win){var gotit=false,n,w;for(n in mcWindows.windows){w=mcWindows.windows[n];if(typeof(w)=='function')continue;if(win.name==w.id+'_iframe'){w.close();gotit=true}}if(!gotit)this.orgCloseWindow(win);tinyMCE.selectedInstance.getWin().focus()};TinyMCE_Engine.prototype.setWindowTitle=function(win_ref,title){for(var n in mcWindows.windows){var win=mcWindows.windows[n];if(typeof(win)=='function')continue;if(win_ref.name==win.id+"_iframe")window.frames[win.id+"_iframe"].document.getElementById(win.id+'_title').innerHTML=title}};function TinyMCE_Windows(){this.settings=new Array();this.windows=new Array();this.isMSIE=(navigator.appName=="Microsoft Internet Explorer");this.isGecko=navigator.userAgent.indexOf('Gecko')!=-1;this.isSafari=navigator.userAgent.indexOf('Safari')!=-1;this.isMac=navigator.userAgent.indexOf('Mac')!=-1;this.isMSIE5_0=this.isMSIE&&(navigator.userAgent.indexOf('MSIE 5.0')!=-1);this.action="none";this.selectedWindow=null;this.lastSelectedWindow=null;this.zindex=1001;this.mouseDownScreenX=0;this.mouseDownScreenY=0;this.mouseDownLayerX=0;this.mouseDownLayerY=0;this.mouseDownWidth=0;this.mouseDownHeight=0;this.idCounter=0};TinyMCE_Windows.prototype.init=function(settings){this.settings=settings;if(this.isMSIE)this.addEvent(document,"mousemove",mcWindows.eventDispatcher);else this.addEvent(window,"mousemove",mcWindows.eventDispatcher);this.addEvent(document,"mouseup",mcWindows.eventDispatcher);this.addEvent(window,"resize",mcWindows.eventDispatcher);this.addEvent(document,"scroll",mcWindows.eventDispatcher);this.doc=document};TinyMCE_Windows.prototype.getBounds=function(){if(!this.bounds){var vp=tinyMCE.getViewPort(window);var top,left,bottom,right,docEl=this.doc.documentElement;top=vp.top;left=vp.left;bottom=vp.height+top-2;right=vp.width+left-22;this.bounds=[left,top,right,bottom]}return this.bounds};TinyMCE_Windows.prototype.clampBoxPosition=function(x,y,w,h,minW,minH){var bounds=this.getBounds();x=Math.max(bounds[0],Math.min(bounds[2],x+w)-w);y=Math.max(bounds[1],Math.min(bounds[3],y+h)-h);return this.clampBoxSize(x,y,w,h,minW,minH)};TinyMCE_Windows.prototype.clampBoxSize=function(x,y,w,h,minW,minH){var bounds=this.getBounds();return[x,y,Math.max(minW,Math.min(bounds[2],x+w)-x),Math.max(minH,Math.min(bounds[3],y+h)-y)]};TinyMCE_Windows.prototype.getParam=function(name,default_value){var value=null;value=(typeof(this.settings[name])=="undefined")?default_value:this.settings[name];if(value=="true"||value=="false")return(value=="true");return value};TinyMCE_Windows.prototype.eventDispatcher=function(e){e=typeof(e)=="undefined"?window.event:e;if(mcWindows.selectedWindow==null)return;if(mcWindows.isGecko&&e.type=="mousedown"){var elm=e.currentTarget;for(var n in mcWindows.windows){var win=mcWindows.windows[n];if(win.headElement==elm||win.resizeElement==elm){win.focus();break}}}switch(e.type){case"mousemove":mcWindows.selectedWindow.onMouseMove(e);break;case"mouseup":mcWindows.selectedWindow.onMouseUp(e);break;case"mousedown":mcWindows.selectedWindow.onMouseDown(e);break;case"focus":mcWindows.selectedWindow.onFocus(e);break;case"scroll":case"resize":if(mcWindows.clampUpdateTimeout)clearTimeout(mcWindows.clampUpdateTimeout);mcWindows.clampEventType=e.type;mcWindows.clampUpdateTimeout=setTimeout(function(){mcWindows.updateClamping()},100);break}};TinyMCE_Windows.prototype.updateClamping=function(){var clamp,oversize,etype=mcWindows.clampEventType;this.bounds=null;this.clampUpdateTimeout=null;for(var n in this.windows){win=this.windows[n];if(typeof(win)=='function'||!win.winElement)continue;clamp=mcWindows.clampBoxPosition(win.left,win.top,win.winElement.scrollWidth,win.winElement.scrollHeight,win.features.minWidth,win.features.minHeight);oversize=(clamp[2]!=win.winElement.scrollWidth||clamp[3]!=win.winElement.scrollHeight)?true:false;if(!oversize||win.features.resizable=="yes"||etype!="scroll")win.moveTo(clamp[0],clamp[1]);if(oversize&&win.features.resizable=="yes")win.resizeTo(clamp[2],clamp[3])}};TinyMCE_Windows.prototype.addEvent=function(obj,name,handler){if(this.isMSIE)obj.attachEvent("on"+name,handler);else obj.addEventListener(name,handler,false)};TinyMCE_Windows.prototype.cancelEvent=function(e){if(this.isMSIE){e.returnValue=false;e.cancelBubble=true}else e.preventDefault()};TinyMCE_Windows.prototype.parseFeatures=function(opts){opts=opts.toLowerCase();opts=opts.replace(/;/g,",");opts=opts.replace(/[^0-9a-z=,]/g,"");var optionChunks=opts.split(',');var options=new Array();options['left']="10";options['top']="10";options['width']="300";options['height']="300";options['minwidth']="100";options['minheight']="100";options['resizable']="yes";options['minimizable']="yes";options['maximizable']="yes";options['close']="yes";options['movable']="yes";options['statusbar']="yes";options['scrollbars']="auto";options['modal']="no";if(opts=="")return options;for(var i=0;i<optionChunks.length;i++){var parts=optionChunks[i].split('=');if(parts.length==2)options[parts[0]]=parts[1]}options['left']=parseInt(options['left']);options['top']=parseInt(options['top']);options['width']=parseInt(options['width']);options['height']=parseInt(options['height']);options['minWidth']=parseInt(options['minwidth']);options['minHeight']=parseInt(options['minheight']);return options};TinyMCE_Windows.prototype.open=function(url,name,features){this.lastSelectedWindow=this.selectedWindow;var win=new TinyMCE_Window();var winDiv,html="",id;var imgPath=this.getParam("images_path");features=this.parseFeatures(features);var clamp=mcWindows.clampBoxPosition(features['left'],features['top'],features['width'],features['height'],features['minWidth'],features['minHeight']);features['left']=clamp[0];features['top']=clamp[1];if(features['resizable']=="yes"){features['width']=clamp[2];features['height']=clamp[3]}id="mcWindow_"+name;win.deltaHeight=18;if(features['statusbar']=="yes"){win.deltaHeight+=13;if(this.isMSIE)win.deltaHeight+=1}width=parseInt(features['width']);height=parseInt(features['height'])-win.deltaHeight;if(this.isMSIE)width-=2;win.id=id;win.url=url;win.name=name;win.features=features;this.windows[name]=win;iframeWidth=width;iframeHeight=height;html+='<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">';html+='<html>';html+='<head>';html+='<title>Wrapper iframe</title>';html+='<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">';html+='<link href="'+this.getParam("css_file")+'" rel="stylesheet" type="text/css" />';html+='</head>';html+='<body onload="parent.mcWindows.onLoad(\''+name+'\');">';html+='<div id="'+id+'_container" class="mceWindow">';html+='<div id="'+id+'_head" class="mceWindowHead" onmousedown="parent.mcWindows.windows[\''+name+'\'].focus();">';html+='  <div id="'+id+'_title" class="mceWindowTitle"';html+='  onselectstart="return false;" unselectable="on" style="-moz-user-select: none !important;"></div>';html+='    <div class="mceWindowHeadTools">';html+='      <a href="javascript:parent.mcWindows.windows[\''+name+'\'].close();" target="_self" onmousedown="return false;" class="mceWindowClose"><img border="0" src="'+imgPath+'/window_close.gif" /></a>';if(features['resizable']=="yes"&&features['maximizable']=="yes")html+='      <a href="javascript:parent.mcWindows.windows[\''+name+'\'].maximize();" target="_self" onmousedown="return false;" class="mceWindowMaximize"><img border="0" src="'+imgPath+'/window_maximize.gif" /></a>';html+='    </div>';html+='</div><div id="'+id+'_body" class="mceWindowBody" style="width: '+width+'px; height: '+height+'px;">';html+='<iframe id="'+id+'_iframe" name="'+id+'_iframe" frameborder="0" width="'+iframeWidth+'" height="'+iframeHeight+'" src="'+url+'" class="mceWindowBodyIframe" scrolling="'+features['scrollbars']+'"></iframe></div>';if(features['statusbar']=="yes"){html+='<div id="'+id+'_statusbar" class="mceWindowStatusbar" onmousedown="parent.mcWindows.windows[\''+name+'\'].focus();">';if(features['resizable']=="yes"){if(this.isGecko)html+='<div id="'+id+'_resize" class="mceWindowResize"><div style="background-image: url(\''+imgPath+'/window_resize.gif\'); width: 12px; height: 12px;"></div></div>';else html+='<div id="'+id+'_resize" class="mceWindowResize"><img onmousedown="parent.mcWindows.windows[\''+name+'\'].focus();" border="0" src="'+imgPath+'/window_resize.gif" /></div>'}html+='</div>'}html+='</div>';html+='</body>';html+='</html>';this.createFloatingIFrame(id,features['left'],features['top'],features['width'],features['height'],html)};TinyMCE_Windows.prototype.setDocumentLock=function(state){var elm=document.getElementById('mcWindowEventBlocker');if(state){if(elm==null){elm=document.createElement("div");elm.id="mcWindowEventBlocker";elm.style.position="absolute";elm.style.left="0";elm.style.top="0";document.body.appendChild(elm)}elm.style.display="none";var imgPath=this.getParam("images_path");var width=document.body.clientWidth;var height=document.body.clientHeight;elm.style.width=width;elm.style.height=height;elm.innerHTML='<img src="'+imgPath+'/spacer.gif" width="'+width+'" height="'+height+'" />';elm.style.zIndex=mcWindows.zindex-1;elm.style.display="block"}else if(elm!=null){if(mcWindows.windows.length==0)elm.parentNode.removeChild(elm);else elm.style.zIndex=mcWindows.zindex-1}};TinyMCE_Windows.prototype.onLoad=function(name){var win=mcWindows.windows[name];var id="mcWindow_"+name;var wrapperIframe=window.frames[id+"_iframe"].frames[0];var wrapperDoc=window.frames[id+"_iframe"].document;var doc=window.frames[id+"_iframe"].document;var winDiv=document.getElementById("mcWindow_"+name+"_div");var realIframe=window.frames[id+"_iframe"].frames[0];win.id="mcWindow_"+name;win.winElement=winDiv;win.bodyElement=doc.getElementById(id+'_body');win.iframeElement=doc.getElementById(id+'_iframe');win.headElement=doc.getElementById(id+'_head');win.titleElement=doc.getElementById(id+'_title');win.resizeElement=doc.getElementById(id+'_resize');win.containerElement=doc.getElementById(id+'_container');win.left=win.features['left'];win.top=win.features['top'];win.frame=window.frames[id+'_iframe'].frames[0];win.wrapperFrame=window.frames[id+'_iframe'];win.wrapperIFrameElement=document.getElementById(id+"_iframe");mcWindows.addEvent(win.headElement,"mousedown",mcWindows.eventDispatcher);if(win.resizeElement!=null)mcWindows.addEvent(win.resizeElement,"mousedown",mcWindows.eventDispatcher);if(mcWindows.isMSIE){mcWindows.addEvent(realIframe.document,"mousemove",mcWindows.eventDispatcher);mcWindows.addEvent(realIframe.document,"mouseup",mcWindows.eventDispatcher)}else{mcWindows.addEvent(realIframe,"mousemove",mcWindows.eventDispatcher);mcWindows.addEvent(realIframe,"mouseup",mcWindows.eventDispatcher);mcWindows.addEvent(realIframe,"focus",mcWindows.eventDispatcher)}for(var i=0;i<window.frames.length;i++){if(!window.frames[i]._hasMouseHandlers){if(mcWindows.isMSIE){mcWindows.addEvent(window.frames[i].document,"mousemove",mcWindows.eventDispatcher);mcWindows.addEvent(window.frames[i].document,"mouseup",mcWindows.eventDispatcher)}else{mcWindows.addEvent(window.frames[i],"mousemove",mcWindows.eventDispatcher);mcWindows.addEvent(window.frames[i],"mouseup",mcWindows.eventDispatcher)}window.frames[i]._hasMouseHandlers=true}}if(mcWindows.isMSIE){mcWindows.addEvent(win.frame.document,"mousemove",mcWindows.eventDispatcher);mcWindows.addEvent(win.frame.document,"mouseup",mcWindows.eventDispatcher)}else{mcWindows.addEvent(win.frame,"mousemove",mcWindows.eventDispatcher);mcWindows.addEvent(win.frame,"mouseup",mcWindows.eventDispatcher);mcWindows.addEvent(win.frame,"focus",mcWindows.eventDispatcher)}var func=this.getParam("on_open_window","");if(func!="")eval(func+"(win);");win.focus();if(win.features['modal']=="yes")mcWindows.setDocumentLock(true)};TinyMCE_Windows.prototype.createFloatingIFrame=function(id_prefix,left,top,width,height,html){var iframe=document.createElement("iframe");var div=document.createElement("div"),doc;width=parseInt(width);height=parseInt(height)+1;div.setAttribute("id",id_prefix+"_div");div.setAttribute("width",width);div.setAttribute("height",(height));div.style.position="absolute";div.style.left=left+"px";div.style.top=top+"px";div.style.width=width+"px";div.style.height=(height)+"px";div.style.backgroundColor="white";div.style.display="none";if(this.isGecko){iframeWidth=width+2;iframeHeight=height+2}else{iframeWidth=width;iframeHeight=height+1}iframe.setAttribute("id",id_prefix+"_iframe");iframe.setAttribute("name",id_prefix+"_iframe");iframe.setAttribute("border","0");iframe.setAttribute("frameBorder","0");iframe.setAttribute("marginWidth","0");iframe.setAttribute("marginHeight","0");iframe.setAttribute("leftMargin","0");iframe.setAttribute("topMargin","0");iframe.setAttribute("width",iframeWidth);iframe.setAttribute("height",iframeHeight);iframe.setAttribute("scrolling","no");iframe.style.width=iframeWidth+"px";iframe.style.height=iframeHeight+"px";iframe.style.backgroundColor="white";div.appendChild(iframe);document.body.appendChild(div);div.innerHTML=div.innerHTML;if(this.isSafari){window.setTimeout(function(){var doc=window.frames[id_prefix+'_iframe'].document;doc.open();doc.write(html);doc.close()},10)}else{doc=window.frames[id_prefix+'_iframe'].window.document;doc.open();doc.write(html);doc.close()}div.style.display="block";return div};function TinyMCE_Window(){};TinyMCE_Window.prototype.focus=function(){if(this!=mcWindows.selectedWindow){this.winElement.style.zIndex=++mcWindows.zindex;mcWindows.lastSelectedWindow=mcWindows.selectedWindow;mcWindows.selectedWindow=this}};TinyMCE_Window.prototype.minimize=function(){};TinyMCE_Window.prototype.maximize=function(){if(this.restoreSize){this.moveTo(this.restoreSize[0],this.restoreSize[1]);this.resizeTo(this.restoreSize[2],this.restoreSize[3]);this.updateClamping();this.restoreSize=null}else{var bounds=mcWindows.getBounds();this.restoreSize=[this.left,this.top,this.winElement.scrollWidth,this.winElement.scrollHeight];this.moveTo(bounds[0],bounds[1]);this.resizeTo(bounds[2]-bounds[0],bounds[3]-bounds[1])}};TinyMCE_Window.prototype.startResize=function(){mcWindows.action="resize"};TinyMCE_Window.prototype.startMove=function(e){mcWindows.action="move"};TinyMCE_Window.prototype.close=function(){if(this.frame&&this.frame['tinyMCEPopup'])this.frame['tinyMCEPopup'].restoreSelection();if(mcWindows.lastSelectedWindow!=null)mcWindows.lastSelectedWindow.focus();var mcWindowsNew=new Array();for(var n in mcWindows.windows){var win=mcWindows.windows[n];if(typeof(win)=='function')continue;if(win.name!=this.name)mcWindowsNew[n]=win}mcWindows.windows=mcWindowsNew;var e=mcWindows.doc.getElementById(this.id+"_iframe");e.parentNode.removeChild(e);var e=mcWindows.doc.getElementById(this.id+"_div");e.parentNode.removeChild(e);mcWindows.setDocumentLock(false)};TinyMCE_Window.prototype.onMouseMove=function(e){var clamp;var dx=e.screenX-mcWindows.mouseDownScreenX;var dy=e.screenY-mcWindows.mouseDownScreenY;switch(mcWindows.action){case"resize":clamp=mcWindows.clampBoxSize(this.left,this.top,mcWindows.mouseDownWidth+(e.screenX-mcWindows.mouseDownScreenX),mcWindows.mouseDownHeight+(e.screenY-mcWindows.mouseDownScreenY),this.features.minWidth,this.features.minHeight);this.resizeTo(clamp[2],clamp[3]);mcWindows.cancelEvent(e);break;case"move":this.left=mcWindows.mouseDownLayerX+(e.screenX-mcWindows.mouseDownScreenX);this.top=mcWindows.mouseDownLayerY+(e.screenY-mcWindows.mouseDownScreenY);this.updateClamping();mcWindows.cancelEvent(e);break}};TinyMCE_Window.prototype.moveTo=function(x,y){this.left=x;this.top=y;this.winElement.style.left=this.left+"px";this.winElement.style.top=this.top+"px"};TinyMCE_Window.prototype.resizeTo=function(width,height){this.wrapperIFrameElement.style.width=(width+2)+'px';this.wrapperIFrameElement.style.height=(height+2)+'px';this.wrapperIFrameElement.width=width+2;this.wrapperIFrameElement.height=height+2;this.winElement.style.width=width+'px';this.winElement.style.height=height+'px';height=height-this.deltaHeight;this.containerElement.style.width=width+'px';this.iframeElement.style.width=width+'px';this.iframeElement.style.height=height+'px';this.bodyElement.style.width=width+'px';this.bodyElement.style.height=height+'px';this.headElement.style.width=width+'px';};TinyMCE_Window.prototype.updateClamping=function(){var clamp,oversize;clamp=mcWindows.clampBoxPosition(this.left,this.top,this.winElement.scrollWidth,this.winElement.scrollHeight,this.features.minWidth,this.features.minHeight);oversize=(clamp[2]!=this.winElement.scrollWidth||clamp[3]!=this.winElement.scrollHeight)?true:false;this.moveTo(clamp[0],clamp[1]);if(this.features.resizable=="yes"&&oversize)this.resizeTo(clamp[2],clamp[3])};function debug(msg){document.getElementById('debug').value+=msg+"\n"}TinyMCE_Window.prototype.onMouseUp=function(e){mcWindows.action="none"};TinyMCE_Window.prototype.onFocus=function(e){var winRef=e.currentTarget;for(var n in mcWindows.windows){var win=mcWindows.windows[n];if(typeof(win)=='function')continue;if(winRef.name==win.id+"_iframe"){win.focus();return}}};TinyMCE_Window.prototype.onMouseDown=function(e){var elm=mcWindows.isMSIE?this.wrapperFrame.event.srcElement:e.target;mcWindows.mouseDownScreenX=e.screenX;mcWindows.mouseDownScreenY=e.screenY;mcWindows.mouseDownLayerX=this.left;mcWindows.mouseDownLayerY=this.top;mcWindows.mouseDownWidth=parseInt(this.winElement.style.width);mcWindows.mouseDownHeight=parseInt(this.winElement.style.height);if(this.resizeElement!=null&&elm==this.resizeElement.firstChild)this.startResize(e);else this.startMove(e);mcWindows.cancelEvent(e)};var mcWindows=new TinyMCE_Windows();mcWindows.init({images_path:tinyMCE.baseURL+"/plugins/inlinepopups/images",css_file:tinyMCE.baseURL+"/plugins/inlinepopups/css/inlinepopup.css"});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js
deleted file mode 100644 (file)
index 41a6124..0000000
+++ /dev/null
@@ -1,819 +0,0 @@
-/**
- * $Id: editor_plugin_src.js 268 2007-04-28 15:52:59Z spocke $
- *
- * Moxiecode DHTML Windows script.
- *
- * @author Moxiecode
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.
- */
-
-// Patch openWindow, closeWindow TinyMCE functions
-
-var TinyMCE_InlinePopupsPlugin = {
-       getInfo : function() {
-               return {
-                       longname : 'Inline Popups',
-                       author : 'Moxiecode Systems AB',
-                       authorurl : 'http://tinymce.moxiecode.com',
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/inlinepopups',
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion
-               };
-       }
-};
-
-tinyMCE.addPlugin("inlinepopups", TinyMCE_InlinePopupsPlugin);
-
-// Patch openWindow, closeWindow TinyMCE functions
-
-TinyMCE_Engine.prototype.orgOpenWindow = TinyMCE_Engine.prototype.openWindow;
-TinyMCE_Engine.prototype.orgCloseWindow = TinyMCE_Engine.prototype.closeWindow;
-
-TinyMCE_Engine.prototype.openWindow = function(template, args) {
-       // Does the caller support inline
-       if (args['inline'] != "yes" || tinyMCE.isOpera || tinyMCE.getParam("plugins").indexOf('inlinepopups') == -1) {
-               mcWindows.selectedWindow = null;
-               args['mce_inside_iframe'] = false;
-               this.orgOpenWindow(template, args);
-               return;
-       }
-
-       var url, resizable, scrollbars;
-
-       args['mce_inside_iframe'] = true;
-       tinyMCE.windowArgs = args;
-
-       if (template['file'].charAt(0) != '/' && template['file'].indexOf('://') == -1)
-               url = tinyMCE.baseURL + "/themes/" + tinyMCE.getParam("theme") + "/" + template['file'];
-       else
-               url = template['file'];
-
-       if (!(width = parseInt(template['width'])))
-               width = 320;
-
-       if (!(height = parseInt(template['height'])))
-               height = 200;
-
-       if (!(minWidth = parseInt(template['minWidth'])))
-               minWidth = 100;
-
-       if (!(minHeight = parseInt(template['minHeight'])))
-               minHeight = 100;
-
-       resizable = (args && args['resizable']) ? args['resizable'] : "no";
-       scrollbars = (args && args['scrollbars']) ? args['scrollbars'] : "no";
-
-       height += 18;
-
-       // Replace all args as variables in URL
-       for (var name in args) {
-               if (typeof(args[name]) == 'function')
-                       continue;
-
-               url = tinyMCE.replaceVar(url, name, escape(args[name]));
-       }
-
-       var elm = document.getElementById(this.selectedInstance.editorId + '_parent');
-
-       if (tinyMCE.hasPlugin('fullscreen') && this.selectedInstance.getData('fullscreen').enabled)
-               pos = { absLeft: 0, absTop: 0 };
-       else
-               pos = tinyMCE.getAbsPosition(elm);
-
-       // Center div in editor area
-       pos.absLeft += Math.round((elm.firstChild.clientWidth / 2) - (width / 2));
-       pos.absTop += Math.round((elm.firstChild.clientHeight / 2) - (height / 2));
-
-       mcWindows.open(url, mcWindows.idCounter++, "modal=yes,width=" + width+ ",height=" + height + ",resizable=" + resizable + ",scrollbars=" + scrollbars + ",statusbar=" + resizable + ",left=" + pos.absLeft + ",top=" + pos.absTop + ",minWidth=" + minWidth + ",minHeight=" + minHeight );
-};
-
-TinyMCE_Engine.prototype.closeWindow = function(win) {
-       var gotit = false, n, w;
-
-       for (n in mcWindows.windows) {
-               w = mcWindows.windows[n];
-
-               if (typeof(w) == 'function')
-                       continue;
-
-               if (win.name == w.id + '_iframe') {
-                       w.close();
-                       gotit = true;
-               }
-       }
-
-       if (!gotit)
-               this.orgCloseWindow(win);
-
-       tinyMCE.selectedInstance.getWin().focus(); 
-};
-
-TinyMCE_Engine.prototype.setWindowTitle = function(win_ref, title) {
-       for (var n in mcWindows.windows) {
-               var win = mcWindows.windows[n];
-               if (typeof(win) == 'function')
-                       continue;
-
-               if (win_ref.name == win.id + "_iframe")
-                       window.frames[win.id + "_iframe"].document.getElementById(win.id + '_title').innerHTML = title;
-       }
-};
-
-// * * * * * TinyMCE_Windows classes below
-
-// Windows handler
-function TinyMCE_Windows() {
-       this.settings = new Array();
-       this.windows = new Array();
-       this.isMSIE = (navigator.appName == "Microsoft Internet Explorer");
-       this.isGecko = navigator.userAgent.indexOf('Gecko') != -1;
-       this.isSafari = navigator.userAgent.indexOf('Safari') != -1;
-       this.isMac = navigator.userAgent.indexOf('Mac') != -1;
-       this.isMSIE5_0 = this.isMSIE && (navigator.userAgent.indexOf('MSIE 5.0') != -1);
-       this.action = "none";
-       this.selectedWindow = null;
-       this.lastSelectedWindow = null;
-       this.zindex = 1001;
-       this.mouseDownScreenX = 0;
-       this.mouseDownScreenY = 0;
-       this.mouseDownLayerX = 0;
-       this.mouseDownLayerY = 0;
-       this.mouseDownWidth = 0;
-       this.mouseDownHeight = 0;
-       this.idCounter = 0;
-};
-
-TinyMCE_Windows.prototype.init = function(settings) {
-       this.settings = settings;
-
-       if (this.isMSIE)
-               this.addEvent(document, "mousemove", mcWindows.eventDispatcher);
-       else
-               this.addEvent(window, "mousemove", mcWindows.eventDispatcher);
-
-       this.addEvent(document, "mouseup", mcWindows.eventDispatcher);
-
-       this.addEvent(window, "resize", mcWindows.eventDispatcher);
-       this.addEvent(document, "scroll", mcWindows.eventDispatcher);
-
-       this.doc = document;
-};
-
-TinyMCE_Windows.prototype.getBounds = function() {
-       if (!this.bounds) {
-               var vp = tinyMCE.getViewPort(window);
-               var top, left, bottom, right, docEl = this.doc.documentElement;
-
-               top    = vp.top;
-               left   = vp.left;
-               bottom = vp.height + top - 2;
-               right  = vp.width  + left - 22; // TODO this number is platform dependant
-               // x1, y1, x2, y2
-               this.bounds = [left, top, right, bottom];
-       }
-       return this.bounds;
-};
-
-TinyMCE_Windows.prototype.clampBoxPosition = function(x, y, w, h, minW, minH) {
-       var bounds = this.getBounds();
-
-       x = Math.max(bounds[0], Math.min(bounds[2], x + w) - w);
-       y = Math.max(bounds[1], Math.min(bounds[3], y + h) - h);
-
-       return this.clampBoxSize(x, y, w, h, minW, minH);
-};
-
-TinyMCE_Windows.prototype.clampBoxSize = function(x, y, w, h, minW, minH) {
-       var bounds = this.getBounds();
-
-       return [
-               x, y,
-               Math.max(minW, Math.min(bounds[2], x + w) - x),
-               Math.max(minH, Math.min(bounds[3], y + h) - y)
-       ];
-};
-
-TinyMCE_Windows.prototype.getParam = function(name, default_value) {
-       var value = null;
-
-       value = (typeof(this.settings[name]) == "undefined") ? default_value : this.settings[name];
-
-       // Fix bool values
-       if (value == "true" || value == "false")
-               return (value == "true");
-
-       return value;
-};
-
-TinyMCE_Windows.prototype.eventDispatcher = function(e) {
-       e = typeof(e) == "undefined" ? window.event : e;
-
-       if (mcWindows.selectedWindow == null)
-               return;
-
-       // Switch focus
-       if (mcWindows.isGecko && e.type == "mousedown") {
-               var elm = e.currentTarget;
-
-               for (var n in mcWindows.windows) {
-                       var win = mcWindows.windows[n];
-
-                       if (win.headElement == elm || win.resizeElement == elm) {
-                               win.focus();
-                               break;
-                       }
-               }
-       }
-
-       switch (e.type) {
-               case "mousemove":
-                       mcWindows.selectedWindow.onMouseMove(e);
-                       break;
-
-               case "mouseup":
-                       mcWindows.selectedWindow.onMouseUp(e);
-                       break;
-
-               case "mousedown":
-                       mcWindows.selectedWindow.onMouseDown(e);
-                       break;
-
-               case "focus":
-                       mcWindows.selectedWindow.onFocus(e);
-                       break;
-               case "scroll":
-               case "resize":
-                       if (mcWindows.clampUpdateTimeout)
-                               clearTimeout(mcWindows.clampUpdateTimeout);
-                       mcWindows.clampEventType = e.type;
-                       mcWindows.clampUpdateTimeout =
-                               setTimeout(function () {mcWindows.updateClamping()}, 100);
-                       break;
-       }
-};
-
-TinyMCE_Windows.prototype.updateClamping = function () {
-       var clamp, oversize, etype = mcWindows.clampEventType;
-
-       this.bounds = null; // Recalc window bounds on resize/scroll
-       this.clampUpdateTimeout = null;
-
-       for (var n in this.windows) {
-               win = this.windows[n];
-               if (typeof(win) == 'function' || ! win.winElement) continue;
-
-               clamp = mcWindows.clampBoxPosition(
-                       win.left, win.top,
-                       win.winElement.scrollWidth,
-                       win.winElement.scrollHeight,
-                       win.features.minWidth,
-                       win.features.minHeight
-               );
-               oversize = (
-                       clamp[2] != win.winElement.scrollWidth ||
-                       clamp[3] != win.winElement.scrollHeight
-               ) ? true : false;
-
-               if (!oversize || win.features.resizable == "yes" || etype != "scroll")
-                       win.moveTo(clamp[0], clamp[1]);
-               if (oversize && win.features.resizable == "yes")
-                       win.resizeTo(clamp[2], clamp[3]);
-       }
-};
-
-TinyMCE_Windows.prototype.addEvent = function(obj, name, handler) {
-       if (this.isMSIE)
-               obj.attachEvent("on" + name, handler);
-       else
-               obj.addEventListener(name, handler, false);
-};
-
-TinyMCE_Windows.prototype.cancelEvent = function(e) {
-       if (this.isMSIE) {
-               e.returnValue = false;
-               e.cancelBubble = true;
-       } else
-               e.preventDefault();
-};
-
-TinyMCE_Windows.prototype.parseFeatures = function(opts) {
-       // Cleanup the options
-       opts = opts.toLowerCase();
-       opts = opts.replace(/;/g, ",");
-       opts = opts.replace(/[^0-9a-z=,]/g, "");
-
-       var optionChunks = opts.split(',');
-       var options = new Array();
-
-       options['left'] = "10";
-       options['top'] = "10";
-       options['width'] = "300";
-       options['height'] = "300";
-       options['minwidth'] = "100";
-       options['minheight'] = "100";
-       options['resizable'] = "yes";
-       options['minimizable'] = "yes";
-       options['maximizable'] = "yes";
-       options['close'] = "yes";
-       options['movable'] = "yes";
-       options['statusbar'] = "yes";
-       options['scrollbars'] = "auto";
-       options['modal'] = "no";
-
-       if (opts == "")
-               return options;
-
-       for (var i=0; i<optionChunks.length; i++) {
-               var parts = optionChunks[i].split('=');
-
-               if (parts.length == 2)
-                       options[parts[0]] = parts[1];
-       }
-
-       options['left'] = parseInt(options['left']);
-       options['top'] = parseInt(options['top']);
-       options['width'] = parseInt(options['width']);
-       options['height'] = parseInt(options['height']);
-       options['minWidth'] = parseInt(options['minwidth']);
-       options['minHeight'] = parseInt(options['minheight']);
-
-       return options;
-};
-
-TinyMCE_Windows.prototype.open = function(url, name, features) {
-       this.lastSelectedWindow = this.selectedWindow;
-
-       var win = new TinyMCE_Window();
-       var winDiv, html = "", id;
-       var imgPath = this.getParam("images_path");
-
-       features = this.parseFeatures(features);
-
-       // Clamp specified dimensions
-       var clamp = mcWindows.clampBoxPosition(
-               features['left'], features['top'],
-               features['width'], features['height'],
-               features['minWidth'], features['minHeight']
-       );
-
-       features['left'] = clamp[0];
-       features['top'] = clamp[1];
-
-       if (features['resizable'] == "yes") {
-               features['width'] = clamp[2];
-               features['height'] = clamp[3];
-       }
-
-       // Create div
-       id = "mcWindow_" + name;
-       win.deltaHeight = 18;
-
-       if (features['statusbar'] == "yes") {
-               win.deltaHeight += 13;
-
-               if (this.isMSIE)
-                       win.deltaHeight += 1;
-       }
-
-       width = parseInt(features['width']);
-       height = parseInt(features['height'])-win.deltaHeight;
-
-       if (this.isMSIE)
-               width -= 2;
-
-       // Setup first part of window
-       win.id = id;
-       win.url = url;
-       win.name = name;
-       win.features = features;
-       this.windows[name] = win;
-
-       iframeWidth = width;
-       iframeHeight = height;
-
-       // Create inner content
-       html += '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">';
-       html += '<html>';
-       html += '<head>';
-       html += '<title>Wrapper iframe</title>';
-       html += '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">';
-       html += '<link href="' + this.getParam("css_file") + '" rel="stylesheet" type="text/css" />';
-       html += '</head>';
-       html += '<body onload="parent.mcWindows.onLoad(\'' + name + '\');">';
-
-       html += '<div id="' + id + '_container" class="mceWindow">';
-       html += '<div id="' + id + '_head" class="mceWindowHead" onmousedown="parent.mcWindows.windows[\'' + name + '\'].focus();">';
-       html += '  <div id="' + id + '_title" class="mceWindowTitle"';
-       html += '  onselectstart="return false;" unselectable="on" style="-moz-user-select: none !important;"></div>';
-       html += '    <div class="mceWindowHeadTools">';
-       html += '      <a href="javascript:parent.mcWindows.windows[\'' + name + '\'].close();" target="_self" onmousedown="return false;" class="mceWindowClose"><img border="0" src="' + imgPath + '/window_close.gif" /></a>';
-       if (features['resizable'] == "yes" && features['maximizable'] == "yes")
-               html += '      <a href="javascript:parent.mcWindows.windows[\'' + name + '\'].maximize();" target="_self" onmousedown="return false;" class="mceWindowMaximize"><img border="0" src="' + imgPath + '/window_maximize.gif" /></a>';
-       // html += '      <a href="javascript:mcWindows.windows[\'' + name + '\'].minimize();" target="_self" onmousedown="return false;" class="mceWindowMinimize"></a>';
-       html += '    </div>';
-       html += '</div><div id="' + id + '_body" class="mceWindowBody" style="width: ' + width + 'px; height: ' + height + 'px;">';
-       html += '<iframe id="' + id + '_iframe" name="' + id + '_iframe" frameborder="0" width="' + iframeWidth + '" height="' + iframeHeight + '" src="' + url + '" class="mceWindowBodyIframe" scrolling="' + features['scrollbars'] + '"></iframe></div>';
-
-       if (features['statusbar'] == "yes") {
-               html += '<div id="' + id + '_statusbar" class="mceWindowStatusbar" onmousedown="parent.mcWindows.windows[\'' + name + '\'].focus();">';
-
-               if (features['resizable'] == "yes") {
-                       if (this.isGecko)
-                               html += '<div id="' + id + '_resize" class="mceWindowResize"><div style="background-image: url(\'' + imgPath + '/window_resize.gif\'); width: 12px; height: 12px;"></div></div>';
-                       else
-                               html += '<div id="' + id + '_resize" class="mceWindowResize"><img onmousedown="parent.mcWindows.windows[\'' + name + '\'].focus();" border="0" src="' + imgPath + '/window_resize.gif" /></div>';
-               }
-
-               html += '</div>';
-       }
-
-       html += '</div>';
-
-       html += '</body>';
-       html += '</html>';
-
-       // Create iframe
-       this.createFloatingIFrame(id, features['left'], features['top'], features['width'], features['height'], html);
-};
-
-// Blocks the document events by placing a image over the whole document
-TinyMCE_Windows.prototype.setDocumentLock = function(state) {
-       var elm = document.getElementById('mcWindowEventBlocker');
-
-       if (state) {
-               if (elm == null) {
-                       elm = document.createElement("div");
-
-                       elm.id = "mcWindowEventBlocker";
-                       elm.style.position = "absolute";
-                       elm.style.left = "0";
-                       elm.style.top = "0";
-
-                       document.body.appendChild(elm);
-               }
-
-               elm.style.display = "none";
-
-               var imgPath = this.getParam("images_path");
-               var width = document.body.clientWidth;
-               var height = document.body.clientHeight;
-
-               elm.style.width = width;
-               elm.style.height = height;
-               elm.innerHTML = '<img src="' + imgPath + '/spacer.gif" width="' + width + '" height="' + height + '" />';
-
-               elm.style.zIndex = mcWindows.zindex-1;
-               elm.style.display = "block";
-       } else if (elm != null) {
-               if (mcWindows.windows.length == 0)
-                       elm.parentNode.removeChild(elm);
-               else
-                       elm.style.zIndex = mcWindows.zindex-1;
-       }
-};
-
-// Gets called when wrapper iframe is initialized
-TinyMCE_Windows.prototype.onLoad = function(name) {
-       var win = mcWindows.windows[name];
-       var id = "mcWindow_" + name;
-       var wrapperIframe = window.frames[id + "_iframe"].frames[0];
-       var wrapperDoc = window.frames[id + "_iframe"].document;
-       var doc = window.frames[id + "_iframe"].document;
-       var winDiv = document.getElementById("mcWindow_" + name + "_div");
-       var realIframe = window.frames[id + "_iframe"].frames[0];
-
-       // Set window data
-       win.id = "mcWindow_" + name;
-       win.winElement = winDiv;
-       win.bodyElement = doc.getElementById(id + '_body');
-       win.iframeElement = doc.getElementById(id + '_iframe');
-       win.headElement = doc.getElementById(id + '_head');
-       win.titleElement = doc.getElementById(id + '_title');
-       win.resizeElement = doc.getElementById(id + '_resize');
-       win.containerElement = doc.getElementById(id + '_container');
-       win.left = win.features['left'];
-       win.top = win.features['top'];
-       win.frame = window.frames[id + '_iframe'].frames[0];
-       win.wrapperFrame = window.frames[id + '_iframe'];
-       win.wrapperIFrameElement = document.getElementById(id + "_iframe");
-
-       // Add event handlers
-       mcWindows.addEvent(win.headElement, "mousedown", mcWindows.eventDispatcher);
-
-       if (win.resizeElement != null)
-               mcWindows.addEvent(win.resizeElement, "mousedown", mcWindows.eventDispatcher);
-
-       if (mcWindows.isMSIE) {
-               mcWindows.addEvent(realIframe.document, "mousemove", mcWindows.eventDispatcher);
-               mcWindows.addEvent(realIframe.document, "mouseup", mcWindows.eventDispatcher);
-       } else {
-               mcWindows.addEvent(realIframe, "mousemove", mcWindows.eventDispatcher);
-               mcWindows.addEvent(realIframe, "mouseup", mcWindows.eventDispatcher);
-               mcWindows.addEvent(realIframe, "focus", mcWindows.eventDispatcher);
-       }
-
-       for (var i=0; i<window.frames.length; i++) {
-               if (!window.frames[i]._hasMouseHandlers) {
-                       if (mcWindows.isMSIE) {
-                               mcWindows.addEvent(window.frames[i].document, "mousemove", mcWindows.eventDispatcher);
-                               mcWindows.addEvent(window.frames[i].document, "mouseup", mcWindows.eventDispatcher);
-                       } else {
-                               mcWindows.addEvent(window.frames[i], "mousemove", mcWindows.eventDispatcher);
-                               mcWindows.addEvent(window.frames[i], "mouseup", mcWindows.eventDispatcher);
-                       }
-
-                       window.frames[i]._hasMouseHandlers = true;
-               }
-       }
-
-       if (mcWindows.isMSIE) {
-               mcWindows.addEvent(win.frame.document, "mousemove", mcWindows.eventDispatcher);
-               mcWindows.addEvent(win.frame.document, "mouseup", mcWindows.eventDispatcher);
-       } else {
-               mcWindows.addEvent(win.frame, "mousemove", mcWindows.eventDispatcher);
-               mcWindows.addEvent(win.frame, "mouseup", mcWindows.eventDispatcher);
-               mcWindows.addEvent(win.frame, "focus", mcWindows.eventDispatcher);
-       }
-
-       // Dispatch open window event
-       var func = this.getParam("on_open_window", "");
-       if (func != "")
-               eval(func + "(win);");
-
-       win.focus();
-
-       if (win.features['modal'] == "yes")
-               mcWindows.setDocumentLock(true);
-};
-
-TinyMCE_Windows.prototype.createFloatingIFrame = function(id_prefix, left, top, width, height, html) {
-       var iframe = document.createElement("iframe");
-       var div = document.createElement("div"), doc;
-
-       width = parseInt(width);
-       height = parseInt(height)+1;
-
-       // Create wrapper div
-       div.setAttribute("id", id_prefix + "_div");
-       div.setAttribute("width", width);
-       div.setAttribute("height", (height));
-       div.style.position = "absolute";
-
-       div.style.left = left + "px";
-       div.style.top = top + "px";
-       div.style.width = width + "px";
-       div.style.height = (height) + "px";
-       div.style.backgroundColor = "white";
-       div.style.display = "none";
-
-       if (this.isGecko) {
-               iframeWidth = width + 2;
-               iframeHeight = height + 2;
-       } else {
-               iframeWidth = width;
-               iframeHeight = height + 1;
-       }
-
-       // Create iframe
-       iframe.setAttribute("id", id_prefix + "_iframe");
-       iframe.setAttribute("name", id_prefix + "_iframe");
-       iframe.setAttribute("border", "0");
-       iframe.setAttribute("frameBorder", "0");
-       iframe.setAttribute("marginWidth", "0");
-       iframe.setAttribute("marginHeight", "0");
-       iframe.setAttribute("leftMargin", "0");
-       iframe.setAttribute("topMargin", "0");
-       iframe.setAttribute("width", iframeWidth);
-       iframe.setAttribute("height", iframeHeight);
-       // iframe.setAttribute("src", "../jscripts/tiny_mce/blank.htm");
-       // iframe.setAttribute("allowtransparency", "false");
-       iframe.setAttribute("scrolling", "no");
-       iframe.style.width = iframeWidth + "px";
-       iframe.style.height = iframeHeight + "px";
-       iframe.style.backgroundColor = "white";
-       div.appendChild(iframe);
-
-       document.body.appendChild(div);
-
-       // Fixed MSIE 5.0 issue
-       div.innerHTML = div.innerHTML;
-
-       if (this.isSafari) {
-               // Give Safari some time to setup
-               window.setTimeout(function() {
-                       var doc = window.frames[id_prefix + '_iframe'].document;
-                       doc.open();
-                       doc.write(html);
-                       doc.close();
-               }, 10);
-       } else {
-               doc = window.frames[id_prefix + '_iframe'].window.document;
-               doc.open();
-               doc.write(html);
-               doc.close();
-       }
-
-       div.style.display = "block";
-
-       return div;
-};
-
-// Window instance
-function TinyMCE_Window() {
-};
-
-TinyMCE_Window.prototype.focus = function() {
-       if (this != mcWindows.selectedWindow) {
-               this.winElement.style.zIndex = ++mcWindows.zindex;
-               mcWindows.lastSelectedWindow = mcWindows.selectedWindow;
-               mcWindows.selectedWindow = this;
-       }
-};
-
-TinyMCE_Window.prototype.minimize = function() {
-};
-
-TinyMCE_Window.prototype.maximize = function() {
-       if (this.restoreSize) {
-               this.moveTo(this.restoreSize[0], this.restoreSize[1]);
-               this.resizeTo(this.restoreSize[2], this.restoreSize[3]);
-               this.updateClamping();
-               this.restoreSize = null;
-       } else {
-               var bounds = mcWindows.getBounds();
-               this.restoreSize = [
-                       this.left, this.top,
-                       this.winElement.scrollWidth,
-                       this.winElement.scrollHeight
-               ];
-               this.moveTo(bounds[0], bounds[1]);
-               this.resizeTo(
-                       bounds[2] - bounds[0],
-                       bounds[3] - bounds[1]
-               );
-       }
-};
-
-TinyMCE_Window.prototype.startResize = function() {
-       mcWindows.action = "resize";
-};
-
-TinyMCE_Window.prototype.startMove = function(e) {
-       mcWindows.action = "move";
-};
-
-TinyMCE_Window.prototype.close = function() {
-       if (this.frame && this.frame['tinyMCEPopup'])
-               this.frame['tinyMCEPopup'].restoreSelection();
-
-       if (mcWindows.lastSelectedWindow != null)
-               mcWindows.lastSelectedWindow.focus();
-
-       var mcWindowsNew = new Array();
-       for (var n in mcWindows.windows) {
-               var win = mcWindows.windows[n];
-               if (typeof(win) == 'function')
-                       continue;
-
-               if (win.name != this.name)
-                       mcWindowsNew[n] = win;
-       }
-
-       mcWindows.windows = mcWindowsNew;
-
-       // alert(mcWindows.doc.getElementById(this.id + "_iframe"));
-
-       var e = mcWindows.doc.getElementById(this.id + "_iframe");
-       e.parentNode.removeChild(e);
-
-       var e = mcWindows.doc.getElementById(this.id + "_div");
-       e.parentNode.removeChild(e);
-
-       mcWindows.setDocumentLock(false);
-};
-
-TinyMCE_Window.prototype.onMouseMove = function(e) {
-       var clamp;
-       // Calculate real X, Y
-       var dx = e.screenX - mcWindows.mouseDownScreenX;
-       var dy = e.screenY - mcWindows.mouseDownScreenY;
-
-       switch (mcWindows.action) {
-               case "resize":
-                       clamp = mcWindows.clampBoxSize(
-                               this.left, this.top,
-                               mcWindows.mouseDownWidth + (e.screenX - mcWindows.mouseDownScreenX),
-                               mcWindows.mouseDownHeight + (e.screenY - mcWindows.mouseDownScreenY),
-                               this.features.minWidth, this.features.minHeight
-                       );
-
-                       this.resizeTo(clamp[2], clamp[3]);
-
-                       mcWindows.cancelEvent(e);
-                       break;
-
-               case "move":
-                       this.left = mcWindows.mouseDownLayerX + (e.screenX - mcWindows.mouseDownScreenX);
-                       this.top = mcWindows.mouseDownLayerY + (e.screenY - mcWindows.mouseDownScreenY);
-                       this.updateClamping();
-
-                       mcWindows.cancelEvent(e);
-                       break;
-       }
-};
-
-TinyMCE_Window.prototype.moveTo = function (x, y) {
-       this.left = x;
-       this.top = y;
-
-       this.winElement.style.left = this.left + "px";
-       this.winElement.style.top = this.top + "px";
-};
-
-TinyMCE_Window.prototype.resizeTo = function (width, height) {
-       this.wrapperIFrameElement.style.width = (width+2) + 'px';
-       this.wrapperIFrameElement.style.height = (height+2) + 'px';
-       this.wrapperIFrameElement.width = width+2;
-       this.wrapperIFrameElement.height = height+2;
-       this.winElement.style.width = width + 'px';
-       this.winElement.style.height = height + 'px';
-
-       height = height - this.deltaHeight;
-
-       this.containerElement.style.width = width + 'px';
-       this.iframeElement.style.width = width + 'px';
-       this.iframeElement.style.height = height + 'px';
-       this.bodyElement.style.width = width + 'px';
-       this.bodyElement.style.height = height + 'px';
-       this.headElement.style.width = width + 'px';
-       //this.statusElement.style.width = width + 'px';
-};
-
-TinyMCE_Window.prototype.updateClamping = function () {
-       var clamp, oversize;
-
-       clamp = mcWindows.clampBoxPosition(
-               this.left, this.top,
-               this.winElement.scrollWidth,
-               this.winElement.scrollHeight,
-               this.features.minWidth, this.features.minHeight
-       );
-       oversize = (
-               clamp[2] != this.winElement.scrollWidth ||
-               clamp[3] != this.winElement.scrollHeight
-       ) ? true : false;
-
-       this.moveTo(clamp[0], clamp[1]);
-       if (this.features.resizable == "yes" && oversize)
-               this.resizeTo(clamp[2], clamp[3]);
-};
-
-function debug(msg) {
-       document.getElementById('debug').value += msg + "\n";
-}
-
-TinyMCE_Window.prototype.onMouseUp = function(e) {
-       mcWindows.action = "none";
-};
-
-TinyMCE_Window.prototype.onFocus = function(e) {
-       // Gecko only handler
-       var winRef = e.currentTarget;
-
-       for (var n in mcWindows.windows) {
-               var win = mcWindows.windows[n];
-               if (typeof(win) == 'function')
-                       continue;
-
-               if (winRef.name == win.id + "_iframe") {
-                       win.focus();
-                       return;
-               }
-       }
-};
-
-TinyMCE_Window.prototype.onMouseDown = function(e) {
-       var elm = mcWindows.isMSIE ? this.wrapperFrame.event.srcElement : e.target;
-
-       mcWindows.mouseDownScreenX = e.screenX;
-       mcWindows.mouseDownScreenY = e.screenY;
-       mcWindows.mouseDownLayerX = this.left;
-       mcWindows.mouseDownLayerY = this.top;
-       mcWindows.mouseDownWidth = parseInt(this.winElement.style.width);
-       mcWindows.mouseDownHeight = parseInt(this.winElement.style.height);
-
-       if (this.resizeElement != null && elm == this.resizeElement.firstChild)
-               this.startResize(e);
-       else
-               this.startMove(e);
-
-       mcWindows.cancelEvent(e);
-};
-
-// Global instance
-var mcWindows = new TinyMCE_Windows();
-
-// Initialize windows
-mcWindows.init({
-       images_path : tinyMCE.baseURL + "/plugins/inlinepopups/images",
-       css_file : tinyMCE.baseURL + "/plugins/inlinepopups/css/inlinepopup.css"
-});
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/spacer.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/spacer.gif
deleted file mode 100644 (file)
index fc25609..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/spacer.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_close.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_close.gif
deleted file mode 100644 (file)
index 3469e5a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_close.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_maximize.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_maximize.gif
deleted file mode 100644 (file)
index fcae73e..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_maximize.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_minimize.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_minimize.gif
deleted file mode 100644 (file)
index 94f167a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_minimize.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_resize.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_resize.gif
deleted file mode 100644 (file)
index 6c402d0..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/images/window_resize.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/jscripts/mcwindows.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/jscripts/mcwindows.js
deleted file mode 100644 (file)
index 325d293..0000000
+++ /dev/null
@@ -1,453 +0,0 @@
-/**\r
- * $Id: mcwindows.js 18 2006-06-29 14:11:23Z spocke $\r
- *\r
- * Moxiecode DHTML Windows script.\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-// Windows handler\r
-function MCWindows() {\r
-       this.settings = new Array();\r
-       this.windows = new Array();\r
-       this.isMSIE = (navigator.appName == "Microsoft Internet Explorer");\r
-       this.isGecko = navigator.userAgent.indexOf('Gecko') != -1;\r
-       this.isSafari = navigator.userAgent.indexOf('Safari') != -1;\r
-       this.isMac = navigator.userAgent.indexOf('Mac') != -1;\r
-       this.isMSIE5_0 = this.isMSIE && (navigator.userAgent.indexOf('MSIE 5.0') != -1);\r
-       this.action = "none";\r
-       this.selectedWindow = null;\r
-       this.zindex = 100;\r
-       this.mouseDownScreenX = 0;\r
-       this.mouseDownScreenY = 0;\r
-       this.mouseDownLayerX = 0;\r
-       this.mouseDownLayerY = 0;\r
-       this.mouseDownWidth = 0;\r
-       this.mouseDownHeight = 0;\r
-};\r
-\r
-MCWindows.prototype.init = function(settings) {\r
-       this.settings = settings;\r
-\r
-       if (this.isMSIE)\r
-               this.addEvent(document, "mousemove", mcWindows.eventDispatcher);\r
-       else\r
-               this.addEvent(window, "mousemove", mcWindows.eventDispatcher);\r
-\r
-       this.addEvent(document, "mouseup", mcWindows.eventDispatcher);\r
-};\r
-\r
-MCWindows.prototype.getParam = function(name, default_value) {\r
-       var value = null;\r
-\r
-       value = (typeof(this.settings[name]) == "undefined") ? default_value : this.settings[name];\r
-\r
-       // Fix bool values\r
-       if (value == "true" || value == "false")\r
-               return (value == "true");\r
-\r
-       return value;\r
-};\r
-\r
-MCWindows.prototype.eventDispatcher = function(e) {\r
-       e = typeof(e) == "undefined" ? window.event : e;\r
-\r
-       if (mcWindows.selectedWindow == null)\r
-               return;\r
-\r
-       // Switch focus\r
-       if (mcWindows.isGecko && e.type == "mousedown") {\r
-               var elm = e.currentTarget;\r
-\r
-               for (var n in mcWindows.windows) {\r
-                       var win = mcWindows.windows[n];\r
-                       if (typeof(win) == 'function')\r
-                               continue;\r
-\r
-                       if (win.headElement == elm || win.resizeElement == elm) {\r
-                               win.focus();\r
-                               break;\r
-                       }\r
-               }\r
-       }\r
-\r
-       switch (e.type) {\r
-               case "mousemove":\r
-                       mcWindows.selectedWindow.onMouseMove(e);\r
-                       break;\r
-\r
-               case "mouseup":\r
-                       mcWindows.selectedWindow.onMouseUp(e);\r
-                       break;\r
-\r
-               case "mousedown":\r
-                       mcWindows.selectedWindow.onMouseDown(e);\r
-                       break;\r
-\r
-               case "focus":\r
-                       mcWindows.selectedWindow.onFocus(e);\r
-                       break;\r
-       }\r
-}\r
-\r
-MCWindows.prototype.addEvent = function(obj, name, handler) {\r
-       if (this.isMSIE)\r
-               obj.attachEvent("on" + name, handler);\r
-       else\r
-               obj.addEventListener(name, handler, true);\r
-};\r
-\r
-MCWindows.prototype.cancelEvent = function(e) {\r
-       if (this.isMSIE) {\r
-               e.returnValue = false;\r
-               e.cancelBubble = true;\r
-       } else\r
-               e.preventDefault();\r
-};\r
-\r
-MCWindows.prototype.parseFeatures = function(opts) {\r
-       // Cleanup the options\r
-       opts = opts.toLowerCase();\r
-       opts = opts.replace(/;/g, ",");\r
-       opts = opts.replace(/[^0-9a-z=,]/g, "");\r
-\r
-       var optionChunks = opts.split(',');\r
-       var options = new Array();\r
-\r
-       options['left'] = 10;\r
-       options['top'] = 10;\r
-       options['width'] = 300;\r
-       options['height'] = 300;\r
-       options['resizable'] = true;\r
-       options['minimizable'] = true;\r
-       options['maximizable'] = true;\r
-       options['close'] = true;\r
-       options['movable'] = true;\r
-\r
-       if (opts == "")\r
-               return options;\r
-\r
-       for (var i=0; i<optionChunks.length; i++) {\r
-               var parts = optionChunks[i].split('=');\r
-\r
-               if (parts.length == 2)\r
-                       options[parts[0]] = parts[1];\r
-       }\r
-\r
-       return options;\r
-};\r
-\r
-MCWindows.prototype.open = function(url, name, features) {\r
-       var win = new MCWindow();\r
-       var winDiv, html = "", id;\r
-\r
-       features = this.parseFeatures(features);\r
-\r
-       // Create div\r
-       id = "mcWindow_" + name;\r
-\r
-       width = parseInt(features['width']);\r
-       height = parseInt(features['height'])-12-19;\r
-\r
-       if (this.isMSIE)\r
-               width -= 2;\r
-\r
-       // Setup first part of window\r
-       win.id = id;\r
-       win.url = url;\r
-       win.name = name;\r
-       win.features = features;\r
-       this.windows[name] = win;\r
-\r
-       iframeWidth = width;\r
-       iframeHeight = height;\r
-\r
-       // Create inner content\r
-       html += '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">';\r
-       html += '<html>';\r
-       html += '<head>';\r
-       html += '<title>Wrapper iframe</title>';\r
-       html += '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">';\r
-       html += '<link href="../jscripts/tiny_mce/themes/advanced/css/editor_ui.css" rel="stylesheet" type="text/css" />';\r
-       html += '</head>';\r
-       html += '<body onload="parent.mcWindows.onLoad(\'' + name + '\');">';\r
-\r
-       html += '<div id="' + id + '_container" class="mceWindow">';\r
-       html += '<div id="' + id + '_head" class="mceWindowHead" onmousedown="parent.mcWindows.windows[\'' + name + '\'].focus();">';\r
-       html += '  <div id="' + id + '_title" class="mceWindowTitle"';\r
-       html += '  onselectstart="return false;" unselectable="on" style="-moz-user-select: none !important;">No name window</div>';\r
-       html += '    <div class="mceWindowHeadTools">';\r
-       html += '      <a href="javascript:parent.mcWindows.windows[\'' + name + '\'].close();" onmousedown="return false;" class="mceWindowClose"><img border="0" src="../jscripts/tiny_mce/themes/advanced/images/window_close.gif" /></a>';\r
-//     html += '      <a href="javascript:mcWindows.windows[\'' + name + '\'].maximize();" onmousedown="return false;" class="mceWindowMaximize"></a>';\r
-//     html += '      <a href="javascript:mcWindows.windows[\'' + name + '\'].minimize();" onmousedown="return false;" class="mceWindowMinimize"></a>';\r
-       html += '    </div>';\r
-       html += '</div><div id="' + id + '_body" class="mceWindowBody" style="width: ' + width + 'px; height: ' + height + 'px;">';\r
-       html += '<iframe id="' + id + '_iframe" name="' + id + '_iframe" onfocus="parent.mcWindows.windows[\'' + name + '\'].focus();" frameborder="0" width="' + iframeWidth + '" height="' + iframeHeight + '" src="' + url + '" class="mceWindowBodyIframe"></iframe></div>';\r
-       html += '<div id="' + id + '_statusbar" class="mceWindowStatusbar" onmousedown="parent.mcWindows.windows[\'' + name + '\'].focus();">';\r
-       html += '<div id="' + id + '_resize" class="mceWindowResize"><img onmousedown="parent.mcWindows.windows[\'' + name + '\'].focus();" border="0" src="../jscripts/tiny_mce/themes/advanced/images/window_resize.gif" /></div>';\r
-       html += '</div>';\r
-       html += '</div>';\r
-\r
-       html += '</body>';\r
-       html += '</html>';\r
-\r
-       // Create iframe\r
-       this.createFloatingIFrame(id, features['left'], features['top'], features['width'], features['height'], html);\r
-};\r
-\r
-// Gets called when wrapper iframe is initialized\r
-MCWindows.prototype.onLoad = function(name) {\r
-       var win = mcWindows.windows[name];\r
-       var id = "mcWindow_" + name;\r
-       var wrapperIframe = window.frames[id + "_iframe"].frames[0];\r
-       var wrapperDoc = window.frames[id + "_iframe"].document;\r
-       var doc = window.frames[id + "_iframe"].document;\r
-       var winDiv = document.getElementById("mcWindow_" + name + "_div");\r
-       var realIframe = window.frames[id + "_iframe"].frames[0];\r
-\r
-       // Set window data\r
-       win.id = "mcWindow_" + name + "_iframe";\r
-       win.winElement = winDiv;\r
-       win.bodyElement = doc.getElementById(id + '_body');\r
-       win.iframeElement = doc.getElementById(id + '_iframe');\r
-       win.headElement = doc.getElementById(id + '_head');\r
-       win.titleElement = doc.getElementById(id + '_title');\r
-       win.resizeElement = doc.getElementById(id + '_resize');\r
-       win.containerElement = doc.getElementById(id + '_container');\r
-       win.left = win.features['left'];\r
-       win.top = win.features['top'];\r
-       win.frame = window.frames[id + '_iframe'].frames[0];\r
-       win.wrapperFrame = window.frames[id + '_iframe'];\r
-       win.wrapperIFrameElement = document.getElementById(id + "_iframe");\r
-\r
-       // Add event handlers\r
-       mcWindows.addEvent(win.headElement, "mousedown", mcWindows.eventDispatcher);\r
-       mcWindows.addEvent(win.resizeElement, "mousedown", mcWindows.eventDispatcher);\r
-\r
-       if (mcWindows.isMSIE) {\r
-               mcWindows.addEvent(realIframe.document, "mousemove", mcWindows.eventDispatcher);\r
-               mcWindows.addEvent(realIframe.document, "mouseup", mcWindows.eventDispatcher);\r
-       } else {\r
-               mcWindows.addEvent(realIframe, "mousemove", mcWindows.eventDispatcher);\r
-               mcWindows.addEvent(realIframe, "mouseup", mcWindows.eventDispatcher);\r
-               mcWindows.addEvent(realIframe, "focus", mcWindows.eventDispatcher);\r
-       }\r
-\r
-       for (var i=0; i<window.frames.length; i++) {\r
-               if (!window.frames[i]._hasMouseHandlers) {\r
-                       if (mcWindows.isMSIE) {\r
-                               mcWindows.addEvent(window.frames[i].document, "mousemove", mcWindows.eventDispatcher);\r
-                               mcWindows.addEvent(window.frames[i].document, "mouseup", mcWindows.eventDispatcher);\r
-                       } else {\r
-                               mcWindows.addEvent(window.frames[i], "mousemove", mcWindows.eventDispatcher);\r
-                               mcWindows.addEvent(window.frames[i], "mouseup", mcWindows.eventDispatcher);\r
-                       }\r
-\r
-                       window.frames[i]._hasMouseHandlers = true;\r
-               }\r
-       }\r
-\r
-       if (mcWindows.isMSIE) {\r
-               mcWindows.addEvent(win.frame.document, "mousemove", mcWindows.eventDispatcher);\r
-               mcWindows.addEvent(win.frame.document, "mouseup", mcWindows.eventDispatcher);\r
-       } else {\r
-               mcWindows.addEvent(win.frame, "mousemove", mcWindows.eventDispatcher);\r
-               mcWindows.addEvent(win.frame, "mouseup", mcWindows.eventDispatcher);\r
-               mcWindows.addEvent(win.frame, "focus", mcWindows.eventDispatcher);\r
-       }\r
-\r
-       this.selectedWindow = win;\r
-};\r
-\r
-MCWindows.prototype.createFloatingIFrame = function(id_prefix, left, top, width, height, html) {\r
-       var iframe = document.createElement("iframe");\r
-       var div = document.createElement("div");\r
-\r
-       width = parseInt(width);\r
-       height = parseInt(height)+1;\r
-\r
-       // Create wrapper div\r
-       div.setAttribute("id", id_prefix + "_div");\r
-       div.setAttribute("width", width);\r
-       div.setAttribute("height", (height));\r
-       div.style.position = "absolute";\r
-       div.style.left = left + "px";\r
-       div.style.top = top + "px";\r
-       div.style.width = width + "px";\r
-       div.style.height = (height) + "px";\r
-       div.style.backgroundColor = "white";\r
-       div.style.display = "none";\r
-\r
-       if (this.isGecko) {\r
-               iframeWidth = width + 2;\r
-               iframeHeight = height + 2;\r
-       } else {\r
-               iframeWidth = width;\r
-               iframeHeight = height + 1;\r
-       }\r
-\r
-       // Create iframe\r
-       iframe.setAttribute("id", id_prefix + "_iframe");\r
-       iframe.setAttribute("name", id_prefix + "_iframe");\r
-       iframe.setAttribute("border", "0");\r
-       iframe.setAttribute("frameBorder", "0");\r
-       iframe.setAttribute("marginWidth", "0");\r
-       iframe.setAttribute("marginHeight", "0");\r
-       iframe.setAttribute("leftMargin", "0");\r
-       iframe.setAttribute("topMargin", "0");\r
-       iframe.setAttribute("width", iframeWidth);\r
-       iframe.setAttribute("height", iframeHeight);\r
-//     iframe.setAttribute("src", "../jscripts/tiny_mce/blank.htm");\r
-       // iframe.setAttribute("allowtransparency", "false");\r
-       iframe.setAttribute("scrolling", "no");\r
-       iframe.style.width = iframeWidth + "px";\r
-       iframe.style.height = iframeHeight + "px";\r
-       iframe.style.backgroundColor = "white";\r
-       div.appendChild(iframe);\r
-\r
-       document.body.appendChild(div);\r
-\r
-       // Fixed MSIE 5.0 issue\r
-       div.innerHTML = div.innerHTML;\r
-\r
-       if (this.isSafari) {\r
-               // Give Safari some time to setup\r
-               window.setTimeout(function() {\r
-                       doc = window.frames[id_prefix + '_iframe'].document;\r
-                       doc.open();\r
-                       doc.write(html);\r
-                       doc.close();\r
-               }, 10);\r
-       } else {\r
-               doc = window.frames[id_prefix + '_iframe'].window.document\r
-               doc.open();\r
-               doc.write(html);\r
-               doc.close();\r
-       }\r
-\r
-       div.style.display = "block";\r
-\r
-       return div;\r
-};\r
-\r
-// Window instance\r
-function MCWindow() {\r
-};\r
-\r
-MCWindow.prototype.focus = function() {\r
-       this.winElement.style.zIndex = mcWindows.zindex++;\r
-       mcWindows.selectedWindow = this;\r
-};\r
-\r
-MCWindow.prototype.minimize = function() {\r
-};\r
-\r
-MCWindow.prototype.maximize = function() {\r
-       \r
-};\r
-\r
-MCWindow.prototype.startResize = function() {\r
-       mcWindows.action = "resize";\r
-};\r
-\r
-MCWindow.prototype.startMove = function(e) {\r
-       mcWindows.action = "move";\r
-};\r
-\r
-MCWindow.prototype.close = function() {\r
-       document.body.removeChild(this.winElement);\r
-       mcWindows.windows[this.name] = null;\r
-};\r
-\r
-MCWindow.prototype.onMouseMove = function(e) {\r
-       var scrollX = 0;//this.doc.body.scrollLeft;\r
-       var scrollY = 0;//this.doc.body.scrollTop;\r
-\r
-       // Calculate real X, Y\r
-       var dx = e.screenX - mcWindows.mouseDownScreenX;\r
-       var dy = e.screenY - mcWindows.mouseDownScreenY;\r
-\r
-       switch (mcWindows.action) {\r
-               case "resize":\r
-                       width = mcWindows.mouseDownWidth + (e.screenX - mcWindows.mouseDownScreenX);\r
-                       height = mcWindows.mouseDownHeight + (e.screenY - mcWindows.mouseDownScreenY);\r
-\r
-                       width = width < 100 ? 100 : width;\r
-                       height = height < 100 ? 100 : height;\r
-\r
-                       this.wrapperIFrameElement.style.width = width+2;\r
-                       this.wrapperIFrameElement.style.height = height+2;\r
-                       this.wrapperIFrameElement.width = width+2;\r
-                       this.wrapperIFrameElement.height = height+2;\r
-                       this.winElement.style.width = width;\r
-                       this.winElement.style.height = height;\r
-\r
-                       height = height-12-19;\r
-\r
-                       this.containerElement.style.width = width;\r
-\r
-                       this.iframeElement.style.width = width;\r
-                       this.iframeElement.style.height = height;\r
-                       this.bodyElement.style.width = width;\r
-                       this.bodyElement.style.height = height;\r
-                       this.headElement.style.width = width;\r
-                       //this.statusElement.style.width = width;\r
-\r
-                       mcWindows.cancelEvent(e);\r
-                       break;\r
-\r
-               case "move":\r
-                       this.left = mcWindows.mouseDownLayerX + (e.screenX - mcWindows.mouseDownScreenX);\r
-                       this.top = mcWindows.mouseDownLayerY + (e.screenY - mcWindows.mouseDownScreenY);\r
-                       this.winElement.style.left = this.left + "px";\r
-                       this.winElement.style.top = this.top + "px";\r
-\r
-                       mcWindows.cancelEvent(e);\r
-                       break;\r
-       }\r
-};\r
-\r
-MCWindow.prototype.onMouseUp = function(e) {\r
-       mcWindows.action = "none";\r
-};\r
-\r
-MCWindow.prototype.onFocus = function(e) {\r
-       // Gecko only handler\r
-       var winRef = e.currentTarget;\r
-\r
-       for (var n in mcWindows.windows) {\r
-               var win = mcWindows.windows[n];\r
-               if (typeof(win) == 'function')\r
-                       continue;\r
-\r
-               if (winRef.name == win.id) {\r
-                       win.focus();\r
-                       return;\r
-               }\r
-       }\r
-};\r
-\r
-MCWindow.prototype.onMouseDown = function(e) {\r
-       var elm = mcWindows.isMSIE ? this.wrapperFrame.event.srcElement : e.target;\r
-\r
-       var scrollX = 0;//this.doc.body.scrollLeft;\r
-       var scrollY = 0;//this.doc.body.scrollTop;\r
-\r
-       mcWindows.mouseDownScreenX = e.screenX;\r
-       mcWindows.mouseDownScreenY = e.screenY;\r
-       mcWindows.mouseDownLayerX = this.left;\r
-       mcWindows.mouseDownLayerY = this.top;\r
-       mcWindows.mouseDownWidth = parseInt(this.winElement.style.width);\r
-       mcWindows.mouseDownHeight = parseInt(this.winElement.style.height);\r
-\r
-       if (elm == this.resizeElement.firstChild)\r
-               this.startResize(e);\r
-       else\r
-               this.startMove(e);\r
-\r
-       mcWindows.cancelEvent(e);\r
-};\r
-\r
-// Global instance\r
-var mcWindows = new MCWindows();\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/inlinepopups/readme.txt
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin.js
deleted file mode 100644 (file)
index 8ad58e7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('insertdatetime');var TinyMCE_InsertDateTimePlugin={getInfo:function(){return{longname:'Insert date/time',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/insertdatetime',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){switch(cn){case"insertdate":return tinyMCE.getButtonHTML(cn,'lang_insertdate_desc','{$pluginurl}/images/insertdate.gif','mceInsertDate');case"inserttime":return tinyMCE.getButtonHTML(cn,'lang_inserttime_desc','{$pluginurl}/images/inserttime.gif','mceInsertTime')}return""},execCommand:function(editor_id,element,command,user_interface,value){function addZeros(value,len){value=""+value;if(value.length<len){for(var i=0;i<(len-value.length);i++)value="0"+value}return value}function getDateTime(d,fmt){fmt=fmt.replace("%D","%m/%d/%y");fmt=fmt.replace("%r","%I:%M:%S %p");fmt=fmt.replace("%Y",""+d.getFullYear());fmt=fmt.replace("%y",""+d.getYear());fmt=fmt.replace("%m",addZeros(d.getMonth()+1,2));fmt=fmt.replace("%d",addZeros(d.getDate(),2));fmt=fmt.replace("%H",""+addZeros(d.getHours(),2));fmt=fmt.replace("%M",""+addZeros(d.getMinutes(),2));fmt=fmt.replace("%S",""+addZeros(d.getSeconds(),2));fmt=fmt.replace("%I",""+((d.getHours()+11)%12+1));fmt=fmt.replace("%p",""+(d.getHours()<12?"AM":"PM"));fmt=fmt.replace("%B",""+tinyMCE.getLang("lang_inserttime_months_long")[d.getMonth()]);fmt=fmt.replace("%b",""+tinyMCE.getLang("lang_inserttime_months_short")[d.getMonth()]);fmt=fmt.replace("%A",""+tinyMCE.getLang("lang_inserttime_day_long")[d.getDay()]);fmt=fmt.replace("%a",""+tinyMCE.getLang("lang_inserttime_day_short")[d.getDay()]);fmt=fmt.replace("%%","%");return fmt}switch(command){case"mceInsertDate":tinyMCE.execInstanceCommand(editor_id,'mceInsertContent',false,getDateTime(new Date(),tinyMCE.getParam("plugin_insertdate_dateFormat",tinyMCE.getLang('lang_insertdate_def_fmt'))));return true;case"mceInsertTime":tinyMCE.execInstanceCommand(editor_id,'mceInsertContent',false,getDateTime(new Date(),tinyMCE.getParam("plugin_insertdate_timeFormat",tinyMCE.getLang('lang_inserttime_def_fmt'))));return true}return false}};tinyMCE.addPlugin("insertdatetime",TinyMCE_InsertDateTimePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin_src.js
deleted file mode 100644 (file)
index 7772cce..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('insertdatetime');\r
-\r
-var TinyMCE_InsertDateTimePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Insert date/time',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/insertdatetime',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       /**\r
-        * Returns the HTML contents of the insertdate, inserttime controls.\r
-        */\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "insertdate":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_insertdate_desc', '{$pluginurl}/images/insertdate.gif', 'mceInsertDate');\r
-\r
-                       case "inserttime":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_inserttime_desc', '{$pluginurl}/images/inserttime.gif', 'mceInsertTime');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       /**\r
-        * Executes the mceInsertDate command.\r
-        */\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               /* Adds zeros infront of value */\r
-               function addZeros(value, len) {\r
-                       value = "" + value;\r
-\r
-                       if (value.length < len) {\r
-                               for (var i=0; i<(len-value.length); i++)\r
-                                       value = "0" + value;\r
-                       }\r
-\r
-                       return value;\r
-               }\r
-\r
-               function getDateTime(d, fmt) {\r
-                       fmt = fmt.replace("%D", "%m/%d/%y");\r
-                       fmt = fmt.replace("%r", "%I:%M:%S %p");\r
-                       fmt = fmt.replace("%Y", "" + d.getFullYear());\r
-                       fmt = fmt.replace("%y", "" + d.getYear());\r
-                       fmt = fmt.replace("%m", addZeros(d.getMonth()+1, 2));\r
-                       fmt = fmt.replace("%d", addZeros(d.getDate(), 2));\r
-                       fmt = fmt.replace("%H", "" + addZeros(d.getHours(), 2));\r
-                       fmt = fmt.replace("%M", "" + addZeros(d.getMinutes(), 2));\r
-                       fmt = fmt.replace("%S", "" + addZeros(d.getSeconds(), 2));\r
-                       fmt = fmt.replace("%I", "" + ((d.getHours() + 11) % 12 + 1));\r
-                       fmt = fmt.replace("%p", "" + (d.getHours() < 12 ? "AM" : "PM"));\r
-                       fmt = fmt.replace("%B", "" + tinyMCE.getLang("lang_inserttime_months_long")[d.getMonth()]);\r
-                       fmt = fmt.replace("%b", "" + tinyMCE.getLang("lang_inserttime_months_short")[d.getMonth()]);\r
-                       fmt = fmt.replace("%A", "" + tinyMCE.getLang("lang_inserttime_day_long")[d.getDay()]);\r
-                       fmt = fmt.replace("%a", "" + tinyMCE.getLang("lang_inserttime_day_short")[d.getDay()]);\r
-                       fmt = fmt.replace("%%", "%");\r
-\r
-                       return fmt;\r
-               }\r
-\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceInsertDate":\r
-                               tinyMCE.execInstanceCommand(editor_id, 'mceInsertContent', false, getDateTime(new Date(), tinyMCE.getParam("plugin_insertdate_dateFormat", tinyMCE.getLang('lang_insertdate_def_fmt'))));\r
-                               return true;\r
-\r
-                       case "mceInsertTime":\r
-                               tinyMCE.execInstanceCommand(editor_id, 'mceInsertContent', false, getDateTime(new Date(), tinyMCE.getParam("plugin_insertdate_timeFormat", tinyMCE.getLang('lang_inserttime_def_fmt'))));\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("insertdatetime", TinyMCE_InsertDateTimePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/images/insertdate.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/images/insertdate.gif
deleted file mode 100644 (file)
index 8ad424d..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/images/insertdate.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/images/inserttime.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/images/inserttime.gif
deleted file mode 100644 (file)
index 6dad3b3..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/images/inserttime.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/langs/en.js
deleted file mode 100644 (file)
index c3ec02b..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-insertdate_def_fmt : '%Y-%m-%d',\r
-inserttime_def_fmt : '%H:%M:%S',\r
-insertdate_desc : 'Insert date',\r
-inserttime_desc : 'Insert time',\r
-inserttime_months_long : new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"),\r
-inserttime_months_short : new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"),\r
-inserttime_day_long : new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"),\r
-inserttime_day_short : new Array("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun")\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/insertdatetime/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js
deleted file mode 100644 (file)
index a40b42d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('layer');var TinyMCE_LayerPlugin={getInfo:function(){return{longname:'Layer',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/layer',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){if(tinyMCE.isMSIE&&!tinyMCE.isOpera)inst.getDoc().execCommand('2D-Position')},handleEvent:function(e){var inst=tinyMCE.selectedInstance;var w=inst.getWin(),le=inst._lastStyleElm,e;if(tinyMCE.isGecko){e=this._getParentLayer(inst.getFocusElement());if(e){if(!inst._lastStyleElm){e.style.overflow='auto';inst._lastStyleElm=e}}else if(le){le=inst._lastStyleElm;le.style.width=le.scrollWidth+'px';le.style.height=le.scrollHeight+'px';le.style.overflow='';inst._lastStyleElm=null}}return true},handleVisualAid:function(el,deep,state,inst){var nl=inst.getDoc().getElementsByTagName("div"),i;for(i=0;i<nl.length;i++){if(new RegExp('absolute|relative|static','gi').test(nl[i].style.position)){if(state)tinyMCE.addCSSClass(nl[i],'mceVisualAid');else tinyMCE.removeCSSClass(nl[i],'mceVisualAid')}}},getControlHTML:function(cn){switch(cn){case"moveforward":return tinyMCE.getButtonHTML(cn,'lang_layer_forward_desc','{$pluginurl}/images/moveforward.gif','mceMoveForward',true);case"movebackward":return tinyMCE.getButtonHTML(cn,'lang_layer_backward_desc','{$pluginurl}/images/movebackward.gif','mceMoveBackward',true);case"absolute":return tinyMCE.getButtonHTML(cn,'lang_layer_absolute_desc','{$pluginurl}/images/absolute.gif','mceMakeAbsolute',true);case"insertlayer":return tinyMCE.getButtonHTML(cn,'lang_layer_insertlayer_desc','{$pluginurl}/images/insertlayer.gif','mceInsertLayer',true)}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceInsertLayer":this._insertLayer();return true;case"mceMoveForward":this._move(1);return true;case"mceMoveBackward":this._move(-1);return true;case"mceMakeAbsolute":this._toggleAbsolute();return true}return false},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){var inst=tinyMCE.getInstanceById(editor_id);var le=this._getParentLayer(inst.getFocusElement());var p=tinyMCE.getParentElement(inst.getFocusElement(),'div,p,img');tinyMCE.switchClass(editor_id+'_absolute','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_moveforward','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_movebackward','mceButtonDisabled');if(p)tinyMCE.switchClass(editor_id+'_absolute','mceButtonNormal');if(le&&le.style.position.toLowerCase()=="absolute"){tinyMCE.switchClass(editor_id+'_absolute','mceButtonSelected');tinyMCE.switchClass(editor_id+'_moveforward','mceButtonNormal');tinyMCE.switchClass(editor_id+'_movebackward','mceButtonNormal')}},_move:function(d){var inst=tinyMCE.selectedInstance,i,z=new Array();var le=this._getParentLayer(inst.getFocusElement()),ci=-1,fi=-1;var nl=tinyMCE.selectNodes(inst.getBody(),function(n){return n.nodeType==1&&new RegExp('absolute|relative|static','gi').test(n.style.position)});for(i=0;i<nl.length;i++){z[i]=nl[i].style.zIndex?parseInt(nl[i].style.zIndex):0;if(ci<0&&nl[i]==le)ci=i}if(d<0){for(i=0;i<z.length;i++){if(z[i]<z[ci]){fi=i;break}}if(fi>-1){nl[ci].style.zIndex=z[fi];nl[fi].style.zIndex=z[ci]}else{if(z[ci]>0)nl[ci].style.zIndex=z[ci]-1}}else{for(i=0;i<z.length;i++){if(z[i]>z[ci]){fi=i;break}}if(fi>-1){nl[ci].style.zIndex=z[fi];nl[fi].style.zIndex=z[ci]}else nl[ci].style.zIndex=z[ci]+1}inst.repaint()},_getParentLayer:function(n){return tinyMCE.getParentNode(n,function(n){return n.nodeType==1&&new RegExp('absolute|relative|static','gi').test(n.style.position)})},_insertLayer:function(){var inst=tinyMCE.selectedInstance;var e=tinyMCE.getParentElement(inst.getFocusElement());var p=tinyMCE.getAbsPosition(e);var d=inst.getDoc();var ne=d.createElement('div');var h=inst.selection.getSelectedHTML();ne.style.position='absolute';ne.style.left=p.absLeft+'px';ne.style.top=(p.absTop>20?p.absTop:20)+'px';ne.style.width='100px';ne.style.height='100px';ne.className='mceVisualAid';if(!h)h=tinyMCE.getLang('lang_layer_content');ne.innerHTML=h;d.body.appendChild(ne)},_toggleAbsolute:function(){var inst=tinyMCE.selectedInstance;var le=this._getParentLayer(inst.getFocusElement());if(le==null)le=tinyMCE.getParentElement(inst.getFocusElement(),'div,p,img');if(le){if(le.style.position.toLowerCase()=="absolute"){le.style.position="";le.style.left="";le.style.top=""}else{le.style.position="absolute";if(le.style.left=="")le.style.left=20+'px';if(le.style.top=="")le.style.top=20+'px';if(le.style.width=="")le.style.width=le.width?(le.width+'px'):'100px';if(le.style.height=="")le.style.height=le.height?(le.height+'px'):'100px';tinyMCE.handleVisualAid(inst.getBody(),true,inst.visualAid,inst)}inst.repaint();tinyMCE.triggerNodeChange()}}};tinyMCE.addPlugin("layer",TinyMCE_LayerPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js
deleted file mode 100644 (file)
index 28feff2..0000000
+++ /dev/null
@@ -1,248 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('layer');\r
-\r
-var TinyMCE_LayerPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Layer',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/layer',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               if (tinyMCE.isMSIE && !tinyMCE.isOpera)\r
-                       inst.getDoc().execCommand('2D-Position');\r
-       },\r
-\r
-       handleEvent : function(e) {\r
-               var inst = tinyMCE.selectedInstance;\r
-               var w = inst.getWin(), le = inst._lastStyleElm, e;\r
-\r
-               if (tinyMCE.isGecko) {\r
-                       e = this._getParentLayer(inst.getFocusElement());\r
-\r
-                       if (e) {\r
-                               if (!inst._lastStyleElm) {\r
-                                       e.style.overflow = 'auto';\r
-                                       inst._lastStyleElm = e;\r
-                               }\r
-                       } else if (le) {\r
-                               le = inst._lastStyleElm;\r
-                               le.style.width = le.scrollWidth + 'px';\r
-                               le.style.height = le.scrollHeight + 'px';\r
-                               le.style.overflow = '';\r
-                               inst._lastStyleElm = null;\r
-                       }\r
-               }\r
-\r
-               return true;\r
-       },\r
-\r
-       handleVisualAid : function(el, deep, state, inst) {\r
-               var nl = inst.getDoc().getElementsByTagName("div"), i;\r
-\r
-               for (i=0; i<nl.length; i++) {\r
-                       if (new RegExp('absolute|relative|static', 'gi').test(nl[i].style.position)) {\r
-                               if (state)\r
-                                       tinyMCE.addCSSClass(nl[i], 'mceVisualAid');\r
-                               else\r
-                                       tinyMCE.removeCSSClass(nl[i], 'mceVisualAid');                                  \r
-                       }\r
-               }\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "moveforward":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_layer_forward_desc', '{$pluginurl}/images/moveforward.gif', 'mceMoveForward', true);\r
-\r
-                       case "movebackward":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_layer_backward_desc', '{$pluginurl}/images/movebackward.gif', 'mceMoveBackward', true);\r
-\r
-                       case "absolute":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_layer_absolute_desc', '{$pluginurl}/images/absolute.gif', 'mceMakeAbsolute', true);\r
-\r
-                       case "insertlayer":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_layer_insertlayer_desc', '{$pluginurl}/images/insertlayer.gif', 'mceInsertLayer', true);\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceInsertLayer":\r
-                               this._insertLayer();\r
-                               return true;\r
-\r
-                       case "mceMoveForward":\r
-                               this._move(1);\r
-                               return true;\r
-\r
-                       case "mceMoveBackward":\r
-                               this._move(-1);\r
-                               return true;\r
-\r
-                       case "mceMakeAbsolute":\r
-                               this._toggleAbsolute();\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               var inst = tinyMCE.getInstanceById(editor_id);\r
-               var le = this._getParentLayer(inst.getFocusElement());\r
-               var p = tinyMCE.getParentElement(inst.getFocusElement(), 'div,p,img');\r
-\r
-               tinyMCE.switchClass(editor_id + '_absolute', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_moveforward', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_movebackward', 'mceButtonDisabled');\r
-\r
-               if (p)\r
-                       tinyMCE.switchClass(editor_id + '_absolute', 'mceButtonNormal');\r
-\r
-               if (le && le.style.position.toLowerCase() == "absolute") {\r
-                       tinyMCE.switchClass(editor_id + '_absolute', 'mceButtonSelected');\r
-                       tinyMCE.switchClass(editor_id + '_moveforward', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_movebackward', 'mceButtonNormal');\r
-               }\r
-       },\r
-\r
-       // Private plugin specific methods\r
-\r
-       _move : function(d) {\r
-               var inst = tinyMCE.selectedInstance, i, z = new Array();\r
-               var le = this._getParentLayer(inst.getFocusElement()), ci = -1, fi = -1;\r
-               var nl = tinyMCE.selectNodes(inst.getBody(), function(n) {\r
-                       return n.nodeType == 1 && new RegExp('absolute|relative|static', 'gi').test(n.style.position);\r
-               });\r
-\r
-               // Find z-indexes\r
-               for (i=0; i<nl.length; i++) {\r
-                       z[i] = nl[i].style.zIndex ? parseInt(nl[i].style.zIndex) : 0;\r
-\r
-                       if (ci < 0 && nl[i] == le)\r
-                               ci = i;\r
-               }\r
-\r
-               if (d < 0) {\r
-                       // Move back\r
-\r
-                       // Try find a lower one\r
-                       for (i=0; i<z.length; i++) {\r
-                               if (z[i] < z[ci]) {\r
-                                       fi = i;\r
-                                       break;\r
-                               }\r
-                       }\r
-\r
-                       if (fi > -1) {\r
-                               nl[ci].style.zIndex = z[fi];\r
-                               nl[fi].style.zIndex = z[ci];\r
-                       } else {\r
-                               if (z[ci] > 0)\r
-                                       nl[ci].style.zIndex = z[ci] - 1;\r
-                       }\r
-               } else {\r
-                       // Move forward\r
-\r
-                       // Try find a higher one\r
-                       for (i=0; i<z.length; i++) {\r
-                               if (z[i] > z[ci]) {\r
-                                       fi = i;\r
-                                       break;\r
-                               }\r
-                       }\r
-\r
-                       if (fi > -1) {\r
-                               nl[ci].style.zIndex = z[fi];\r
-                               nl[fi].style.zIndex = z[ci];\r
-                       } else\r
-                               nl[ci].style.zIndex = z[ci] + 1;\r
-               }\r
-\r
-               inst.repaint();\r
-       },\r
-\r
-       _getParentLayer : function(n) {\r
-               return tinyMCE.getParentNode(n, function(n) {\r
-                       return n.nodeType == 1 && new RegExp('absolute|relative|static', 'gi').test(n.style.position);\r
-               });\r
-       },\r
-\r
-       _insertLayer : function() {\r
-               var inst = tinyMCE.selectedInstance;\r
-               var e = tinyMCE.getParentElement(inst.getFocusElement());\r
-               var p = tinyMCE.getAbsPosition(e);\r
-               var d = inst.getDoc();\r
-               var ne = d.createElement('div');\r
-               var h = inst.selection.getSelectedHTML();\r
-\r
-               // Move div\r
-               ne.style.position = 'absolute';\r
-               ne.style.left = p.absLeft + 'px';\r
-               ne.style.top = (p.absTop > 20 ? p.absTop : 20) + 'px';\r
-               ne.style.width = '100px';\r
-               ne.style.height = '100px';\r
-               ne.className = 'mceVisualAid';\r
-\r
-               if (!h)\r
-                       h = tinyMCE.getLang('lang_layer_content');\r
-\r
-               ne.innerHTML = h;\r
-\r
-               // Add it\r
-               d.body.appendChild(ne);\r
-       },\r
-\r
-       _toggleAbsolute : function() {\r
-               var inst = tinyMCE.selectedInstance;\r
-               var le = this._getParentLayer(inst.getFocusElement());\r
-\r
-               if (le == null)\r
-                       le = tinyMCE.getParentElement(inst.getFocusElement(), 'div,p,img');\r
-\r
-               if (le) {\r
-                       if (le.style.position.toLowerCase() == "absolute") {\r
-                               le.style.position = "";\r
-                               le.style.left = "";\r
-                               le.style.top = "";\r
-                       } else {\r
-                               le.style.position = "absolute";\r
-\r
-                               if (le.style.left == "")\r
-                                       le.style.left = 20 + 'px';\r
-\r
-                               if (le.style.top == "")\r
-                                       le.style.top = 20 + 'px';\r
-\r
-                               if (le.style.width == "")\r
-                                       le.style.width = le.width ? (le.width + 'px') : '100px';\r
-\r
-                               if (le.style.height == "")\r
-                                       le.style.height = le.height ? (le.height + 'px') : '100px';\r
-\r
-                               tinyMCE.handleVisualAid(inst.getBody(), true, inst.visualAid, inst);\r
-                       }\r
-\r
-                       inst.repaint();\r
-                       tinyMCE.triggerNodeChange();\r
-               }\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("layer", TinyMCE_LayerPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/absolute.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/absolute.gif
deleted file mode 100644 (file)
index 72cffdd..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/absolute.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/backward.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/backward.gif
deleted file mode 100644 (file)
index 466b158..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/backward.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/forward.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/forward.gif
deleted file mode 100644 (file)
index e8b7a5a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/forward.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/insert_layer.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/insert_layer.gif
deleted file mode 100644 (file)
index bc29af0..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/insert_layer.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/insertlayer.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/insertlayer.gif
deleted file mode 100644 (file)
index bc29af0..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/insertlayer.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/movebackward.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/movebackward.gif
deleted file mode 100644 (file)
index 466b158..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/movebackward.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/moveforward.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/moveforward.gif
deleted file mode 100644 (file)
index e8b7a5a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/images/moveforward.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/langs/en.js
deleted file mode 100644 (file)
index cdd8c22..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('layer',{\r
-insertlayer_desc : 'Insert new layer',\r
-forward_desc : 'Move forward',\r
-backward_desc : 'Move backward',\r
-absolute_desc : 'Toggle absolute positioning',\r
-content : 'New layer...'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/layer/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/css/content.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/css/content.css
deleted file mode 100644 (file)
index 1f667e6..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-.mceItemFlash, .mceItemShockWave, .mceItemQuickTime, .mceItemWindowsMedia, .mceItemRealMedia {\r
-       border: 1px dotted #cc0000;\r
-       background-position: center;\r
-       background-repeat: no-repeat;\r
-       background-color: #ffffcc;\r
-}\r
-\r
-.mceItemShockWave {\r
-       background-image: url('../images/shockwave.gif');\r
-}\r
-\r
-.mceItemFlash {\r
-       background-image: url('../images/flash.gif');\r
-}\r
-\r
-.mceItemQuickTime {\r
-       background-image: url('../images/quicktime.gif');\r
-}\r
-\r
-.mceItemWindowsMedia {\r
-       background-image: url('../images/windowsmedia.gif');\r
-}\r
-\r
-.mceItemRealMedia {\r
-       background-image: url('../images/realmedia.gif');\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/css/media.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/css/media.css
deleted file mode 100644 (file)
index 89c6bd5..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-#id, #name, #hspace, #vspace, #class_name, #align {\r
-       width: 100px;\r
-}\r
-\r
-#hspace, #vspace {\r
-       width: 50px;\r
-}\r
-\r
-#flash_quality, #flash_align, #flash_scale, #flash_salign, #flash_wmode {\r
-       width: 100px;\r
-}\r
-\r
-#flash_base, #flash_flashvars {\r
-       width: 240px;\r
-}\r
-\r
-#width, #height {\r
-       width: 40px;\r
-}\r
-\r
-#src, #media_type {\r
-       width: 250px;\r
-}\r
-\r
-#class {\r
-       width: 120px;\r
-}\r
-\r
-#prev {\r
-       margin: 0;\r
-       border: 1px solid black;\r
-       width: 99%;\r
-       height: 230px;\r
-       overflow: auto;\r
-}\r
-\r
-.panel_wrapper div.current {\r
-       height: 390px;\r
-       overflow: auto;\r
-}\r
-\r
-#flash_options, #shockwave_options, #qt_options, #wmp_options, #rmp_options {\r
-       display: none;\r
-}\r
-\r
-.mceAddSelectValue {\r
-       background-color: #DDDDDD;\r
-}\r
-\r
-#qt_starttime, #qt_endtime, #qt_fov, #qt_href, #qt_moveid, #qt_moviename, #qt_node, #qt_pan, #qt_qtsrc, #qt_qtsrcchokespeed, #qt_target, #qt_tilt, #qt_urlsubstituten, #qt_volume {\r
-       width: 70px;\r
-}\r
-\r
-#wmp_balance, #wmp_baseurl, #wmp_captioningid, #wmp_currentmarker, #wmp_currentposition, #wmp_defaultframe, #wmp_playcount, #wmp_rate, #wmp_uimode, #wmp_volume {\r
-       width: 70px;\r
-}\r
-\r
-#rmp_console, #rmp_numloop, #rmp_controls, #rmp_scriptcallbacks {\r
-       width: 70px;\r
-}\r
-\r
-#shockwave_swvolume, #shockwave_swframe, #shockwave_swurl, #shockwave_swstretchvalign, #shockwave_swstretchhalign, #shockwave_swstretchstyle {\r
-       width: 90px;\r
-}\r
-\r
-#qt_qtsrc {\r
-       width: 200px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js
deleted file mode 100644 (file)
index f0cbaee..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('media');var TinyMCE_MediaPlugin={getInfo:function(){return{longname:'Media',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){if(inst.hasPlugin('flash')&&!tinyMCE.flashWarn){alert('Flash plugin is deprecated and should not be used together with the media plugin.');tinyMCE.flashWarn=true}if(!tinyMCE.settings['media_skip_plugin_css'])tinyMCE.importCSS(inst.getDoc(),tinyMCE.baseURL+"/plugins/media/css/content.css")},getControlHTML:function(cn){switch(cn){case"media":return tinyMCE.getButtonHTML(cn,'lang_media_desc','{$pluginurl}/images/media.gif','mceMedia')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceMedia":tinyMCE.openWindow({file:'../../plugins/media/media.htm',width:430+tinyMCE.getLang('lang_media_delta_width',0),height:470+tinyMCE.getLang('lang_media_delta_height',0)},{editor_id:editor_id,inline:"yes"});return true}return false},cleanup:function(type,content,inst){var nl,img,i,ne,d,s,ci;switch(type){case"insert_to_editor":img=tinyMCE.getParam("theme_href")+'/images/spacer.gif';content=content.replace(/<script[^>]*>\s*write(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)\(\{([^\)]*)\}\);\s*<\/script>/gi,'<img class="mceItem$1" title="$2" src="'+img+'" />');content=content.replace(/<object([^>]*)>/gi,'<div class="mceItemObject" $1>');content=content.replace(/<embed([^>]*)>/gi,'<div class="mceItemObjectEmbed" $1>');content=content.replace(/<\/(object|embed)([^>]*)>/gi,'</div>');content=content.replace(/<param([^>]*)>/gi,'<div $1 class="mceItemParam"></div>');content=content.replace(new RegExp('\\/ class="mceItemParam"><\\/div>','gi'),'class="mceItemParam"></div>');break;case"insert_to_editor_dom":d=inst.getDoc();nl=content.getElementsByTagName("img");for(i=0;i<nl.length;i++){if(/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(nl[i].className)){nl[i].width=nl[i].title.replace(/.*width:[^0-9]?([0-9]+)%?.*/g,'$1');nl[i].height=nl[i].title.replace(/.*height:[^0-9]?([0-9]+)%?.*/g,'$1');}}nl=tinyMCE.selectElements(content,'DIV',function(n){return tinyMCE.hasCSSClass(n,'mceItemObject')});for(i=0;i<nl.length;i++){ci=tinyMCE.getAttrib(nl[i],"classid").toLowerCase().replace(/\s+/g,'');switch(ci){case'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000':nl[i].parentNode.replaceChild(TinyMCE_MediaPlugin._createImg('mceItemFlash',d,nl[i]),nl[i]);break;case'clsid:166b1bca-3f9c-11cf-8075-444553540000':nl[i].parentNode.replaceChild(TinyMCE_MediaPlugin._createImg('mceItemShockWave',d,nl[i]),nl[i]);break;case'clsid:6bf52a52-394a-11d3-b153-00c04f79faa6':case'clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95':case'clsid:05589fa1-c356-11ce-bf01-00aa0055595a':nl[i].parentNode.replaceChild(TinyMCE_MediaPlugin._createImg('mceItemWindowsMedia',d,nl[i]),nl[i]);break;case'clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b':nl[i].parentNode.replaceChild(TinyMCE_MediaPlugin._createImg('mceItemQuickTime',d,nl[i]),nl[i]);break;case'clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa':nl[i].parentNode.replaceChild(TinyMCE_MediaPlugin._createImg('mceItemRealMedia',d,nl[i]),nl[i]);break}}nl=tinyMCE.selectNodes(content,function(n){return n.className=='mceItemObjectEmbed'});for(i=0;i<nl.length;i++){switch(tinyMCE.getAttrib(nl[i],'type')){case'application/x-shockwave-flash':TinyMCE_MediaPlugin._createImgFromEmbed(nl[i],d,'mceItemFlash');break;case'application/x-director':TinyMCE_MediaPlugin._createImgFromEmbed(nl[i],d,'mceItemShockWave');break;case'application/x-mplayer2':TinyMCE_MediaPlugin._createImgFromEmbed(nl[i],d,'mceItemWindowsMedia');break;case'video/quicktime':TinyMCE_MediaPlugin._createImgFromEmbed(nl[i],d,'mceItemQuickTime');break;case'audio/x-pn-realaudio-plugin':TinyMCE_MediaPlugin._createImgFromEmbed(nl[i],d,'mceItemRealMedia');break}}break;case"get_from_editor":var startPos=-1,endPos,attribs,chunkBefore,chunkAfter,embedHTML,at,pl,cb,mt,ex;while((startPos=content.indexOf('<img',startPos+1))!=-1){endPos=content.indexOf('/>',startPos);attribs=TinyMCE_MediaPlugin._parseAttributes(content.substring(startPos+4,endPos));if(!/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(attribs['class']))continue;endPos+=2;at=attribs['title'];if(at){at=at.replace(/&(#39|apos);/g,"'");at=at.replace(/&#quot;/g,'"');try{pl=eval('x={'+at+'};')}catch(ex){pl={}}}if(!tinyMCE.getParam('media_use_script',false)){switch(attribs['class']){case'mceItemFlash':ci='d27cdb6e-ae6d-11cf-96b8-444553540000';cb='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0';mt='application/x-shockwave-flash';break;case'mceItemShockWave':ci='166B1BCA-3F9C-11CF-8075-444553540000';cb='http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0';mt='application/x-director';break;case'mceItemWindowsMedia':ci=tinyMCE.getParam('media_wmp6_compatible')?'05589FA1-C356-11CE-BF01-00AA0055595A':'6BF52A52-394A-11D3-B153-00C04F79FAA6';cb='http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701';mt='application/x-mplayer2';break;case'mceItemQuickTime':ci='02BF25D5-8C17-4B23-BC80-D3488ABDDC6B';cb='http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0';mt='video/quicktime';break;case'mceItemRealMedia':ci='CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA';cb='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0';mt='audio/x-pn-realaudio-plugin';break}pl.src=tinyMCE.convertURL(pl.src,null,true);embedHTML=TinyMCE_MediaPlugin._getEmbed(ci,cb,mt,pl,attribs)}else{switch(attribs['class']){case'mceItemFlash':s='writeFlash';break;case'mceItemShockWave':s='writeShockWave';break;case'mceItemWindowsMedia':s='writeWindowsMedia';break;case'mceItemQuickTime':s='writeQuickTime';break;case'mceItemRealMedia':s='writeRealMedia';break}if(attribs.width)at=at.replace(/width:[^0-9]?[0-9]+%?[^0-9]?/g,"width:'"+attribs.width+"'");if(attribs.height)at=at.replace(/height:[^0-9]?[0-9]+%?[^0-9]?/g,"height:'"+attribs.height+"'");pl.src=tinyMCE.convertURL(pl.src,null,true);at=at.replace(new RegExp("src:'[^']*'","g"),"src:'"+pl.src+"'");embedHTML='<script type="text/javascript">'+s+'({'+at+'});</script>'}chunkBefore=content.substring(0,startPos);chunkAfter=content.substring(endPos);content=chunkBefore+embedHTML+chunkAfter}break}return content},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){if(node==null)return;do{if(node.nodeName=="IMG"&&/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(tinyMCE.getAttrib(node,'class'))){tinyMCE.switchClass(editor_id+'_media','mceButtonSelected');return true}}while((node=node.parentNode));tinyMCE.switchClass(editor_id+'_media','mceButtonNormal');return true},_createImgFromEmbed:function(n,d,cl){var ne,at,i,ti='',an;ne=d.createElement('img');ne.src=tinyMCE.getParam("theme_href")+'/images/spacer.gif';ne.width=tinyMCE.getAttrib(n,'width');ne.height=tinyMCE.getAttrib(n,'height');ne.className=cl;at=n.attributes;for(i=0;i<at.length;i++){if(at[i].specified&&at[i].nodeValue){an=at[i].nodeName.toLowerCase();if(an=='src')continue;if(an=='mce_src')an='src';if(an.indexOf('mce_')==-1&&!new RegExp('^(class|type)$').test(an))ti+=an.toLowerCase()+':\''+at[i].nodeValue+"',"}}ti=ti.length>0?ti.substring(0,ti.length-1):ti;ne.title=ti;n.parentNode.replaceChild(ne,n)},_createImg:function(cl,d,n){var i,nl,ti="",an,av,al=new Array();ne=d.createElement('img');ne.src=tinyMCE.getParam("theme_href")+'/images/spacer.gif';ne.width=tinyMCE.getAttrib(n,'width');ne.height=tinyMCE.getAttrib(n,'height');ne.className=cl;al.id=tinyMCE.getAttrib(n,'id');al.name=tinyMCE.getAttrib(n,'name');al.width=tinyMCE.getAttrib(n,'width');al.height=tinyMCE.getAttrib(n,'height');al.bgcolor=tinyMCE.getAttrib(n,'bgcolor');al.align=tinyMCE.getAttrib(n,'align');al.class_name=tinyMCE.getAttrib(n,'mce_class');nl=n.getElementsByTagName('div');for(i=0;i<nl.length;i++){av=tinyMCE.getAttrib(nl[i],'value');av=av.replace(new RegExp('\\\\','g'),'\\\\');av=av.replace(new RegExp('"','g'),'\\"');av=av.replace(new RegExp("'",'g'),"\\'");an=tinyMCE.getAttrib(nl[i],'name');al[an]=av}if(al.movie){al.src=al.movie;al.movie=null}for(an in al){if(al[an]!=null&&typeof(al[an])!="function"&&al[an]!='')ti+=an.toLowerCase()+':\''+al[an]+"',"}ti=ti.length>0?ti.substring(0,ti.length-1):ti;ne.title=ti;return ne},_getEmbed:function(cls,cb,mt,p,at){var h='',n;p.width=at.width?at.width:p.width;p.height=at.height?at.height:p.height;h+='<object classid="clsid:'+cls+'" codebase="'+cb+'"';h+=typeof(p.id)!="undefined"?' id="'+p.id+'"':'';h+=typeof(p.name)!="undefined"?' name="'+p.name+'"':'';h+=typeof(p.width)!="undefined"?' width="'+p.width+'"':'';h+=typeof(p.height)!="undefined"?' height="'+p.height+'"':'';h+=typeof(p.align)!="undefined"?' align="'+p.align+'"':'';h+='>';for(n in p){if(typeof(p[n])!="undefined"&&typeof(p[n])!="function"){h+='<param name="'+n+'" value="'+p[n]+'" />';if(n=='src'&&p[n].indexOf('://')!=-1&&mt=='application/x-mplayer2')h+='<param name="url" value="'+p[n]+'" />'}}h+='<embed type="'+mt+'"';for(n in p){if(typeof(p[n])=="function")continue;if(!(n=='url'&&mt=='application/x-mplayer2'))h+=' '+n+'="'+p[n]+'"'}h+='></embed></object>';return h},_parseAttributes:function(attribute_string){var attributeName="",endChr='"';var attributeValue="";var withInName;var withInValue;var attributes=new Array();var whiteSpaceRegExp=new RegExp('^[ \n\r\t]+','g');if(attribute_string==null||attribute_string.length<2)return null;withInName=withInValue=false;for(var i=0;i<attribute_string.length;i++){var chr=attribute_string.charAt(i);if((chr=='"'||chr=="'")&&!withInValue){withInValue=true;endChr=chr}else if(chr==endChr&&withInValue){withInValue=false;var pos=attributeName.lastIndexOf(' ');if(pos!=-1)attributeName=attributeName.substring(pos+1);attributes[attributeName.toLowerCase()]=attributeValue.substring(1);attributeName="";attributeValue=""}else if(!whiteSpaceRegExp.test(chr)&&!withInName&&!withInValue)withInName=true;if(chr=='='&&withInName)withInName=false;if(withInName)attributeName+=chr;if(withInValue)attributeValue+=chr}return attributes}};tinyMCE.addPlugin("media",TinyMCE_MediaPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js
deleted file mode 100644 (file)
index 8bb7d5b..0000000
+++ /dev/null
@@ -1,432 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 296 2007-08-21 10:36:35Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('media');\r
-\r
-var TinyMCE_MediaPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Media',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               // Warn if user has flash plugin and media plugin at the same time\r
-               if (inst.hasPlugin('flash') && !tinyMCE.flashWarn) {\r
-                       alert('Flash plugin is deprecated and should not be used together with the media plugin.');\r
-                       tinyMCE.flashWarn = true;\r
-               }\r
-\r
-               if (!tinyMCE.settings['media_skip_plugin_css'])\r
-                       tinyMCE.importCSS(inst.getDoc(), tinyMCE.baseURL + "/plugins/media/css/content.css");\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "media":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_media_desc', '{$pluginurl}/images/media.gif', 'mceMedia');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceMedia":\r
-                               tinyMCE.openWindow({\r
-                                               file : '../../plugins/media/media.htm',\r
-                                               width : 430 + tinyMCE.getLang('lang_media_delta_width', 0),\r
-                                               height : 470 + tinyMCE.getLang('lang_media_delta_height', 0)\r
-                                       }, {\r
-                                               editor_id : editor_id,\r
-                                               inline : "yes"\r
-                               });\r
-\r
-                               return true;\r
-          }\r
-\r
-          // Pass to next handler in chain\r
-          return false;\r
-       },\r
-\r
-       cleanup : function(type, content, inst) {\r
-               var nl, img, i, ne, d, s, ci;\r
-\r
-               switch (type) {\r
-                       case "insert_to_editor":\r
-                               img = tinyMCE.getParam("theme_href") + '/images/spacer.gif';\r
-                               content = content.replace(/<script[^>]*>\s*write(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)\(\{([^\)]*)\}\);\s*<\/script>/gi, '<img class="mceItem$1" title="$2" src="' + img + '" />');\r
-                               content = content.replace(/<object([^>]*)>/gi, '<div class="mceItemObject" $1>');\r
-                               content = content.replace(/<embed([^>]*)>/gi, '<div class="mceItemObjectEmbed" $1>');\r
-                               content = content.replace(/<\/(object|embed)([^>]*)>/gi, '</div>');\r
-                               content = content.replace(/<param([^>]*)>/gi, '<div $1 class="mceItemParam"></div>');\r
-                               content = content.replace(new RegExp('\\/ class="mceItemParam"><\\/div>', 'gi'), 'class="mceItemParam"></div>');\r
-                               break;\r
-\r
-                       case "insert_to_editor_dom":\r
-                               d = inst.getDoc();\r
-                               nl = content.getElementsByTagName("img");\r
-                               for (i=0; i<nl.length; i++) {\r
-                                       if (/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(nl[i].className)) {\r
-                                               nl[i].width = nl[i].title.replace(/.*width:[^0-9]?([0-9]+)%?.*/g, '$1');\r
-                                               nl[i].height = nl[i].title.replace(/.*height:[^0-9]?([0-9]+)%?.*/g, '$1');\r
-                                               //nl[i].align = nl[i].title.replace(/.*align:([a-z]+).*/gi, '$1');\r
-                                       }\r
-                               }\r
-\r
-                               nl = tinyMCE.selectElements(content, 'DIV', function (n) {return tinyMCE.hasCSSClass(n, 'mceItemObject');});\r
-                               for (i=0; i<nl.length; i++) {\r
-                                       ci = tinyMCE.getAttrib(nl[i], "classid").toLowerCase().replace(/\s+/g, '');\r
-\r
-                                       switch (ci) {\r
-                                               case 'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000':\r
-                                                       nl[i].parentNode.replaceChild(TinyMCE_MediaPlugin._createImg('mceItemFlash', d, nl[i]), nl[i]);\r
-                                                       break;\r
-\r
-                                               case 'clsid:166b1bca-3f9c-11cf-8075-444553540000':\r
-                                                       nl[i].parentNode.replaceChild(TinyMCE_MediaPlugin._createImg('mceItemShockWave', d, nl[i]), nl[i]);\r
-                                                       break;\r
-\r
-                                               case 'clsid:6bf52a52-394a-11d3-b153-00c04f79faa6':\r
-                                               case 'clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95':\r
-                                               case 'clsid:05589fa1-c356-11ce-bf01-00aa0055595a':\r
-                                                       nl[i].parentNode.replaceChild(TinyMCE_MediaPlugin._createImg('mceItemWindowsMedia', d, nl[i]), nl[i]);\r
-                                                       break;\r
-\r
-                                               case 'clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b':\r
-                                                       nl[i].parentNode.replaceChild(TinyMCE_MediaPlugin._createImg('mceItemQuickTime', d, nl[i]), nl[i]);\r
-                                                       break;\r
-\r
-                                               case 'clsid:cfcdaa03-8be4-11cf-b84b-0020afbbccfa':\r
-                                                       nl[i].parentNode.replaceChild(TinyMCE_MediaPlugin._createImg('mceItemRealMedia', d, nl[i]), nl[i]);\r
-                                                       break;\r
-                                       }\r
-                               }\r
-\r
-                               // Handle embed (if any)\r
-                               nl = tinyMCE.selectNodes(content, function (n) {return n.className == 'mceItemObjectEmbed';});\r
-                               for (i=0; i<nl.length; i++) {\r
-                                       switch (tinyMCE.getAttrib(nl[i], 'type')) {\r
-                                               case 'application/x-shockwave-flash':\r
-                                                       TinyMCE_MediaPlugin._createImgFromEmbed(nl[i], d, 'mceItemFlash');\r
-                                                       break;\r
-\r
-                                               case 'application/x-director':\r
-                                                       TinyMCE_MediaPlugin._createImgFromEmbed(nl[i], d, 'mceItemShockWave');\r
-                                                       break;\r
-\r
-                                               case 'application/x-mplayer2':\r
-                                                       TinyMCE_MediaPlugin._createImgFromEmbed(nl[i], d, 'mceItemWindowsMedia');\r
-                                                       break;\r
-\r
-                                               case 'video/quicktime':\r
-                                                       TinyMCE_MediaPlugin._createImgFromEmbed(nl[i], d, 'mceItemQuickTime');\r
-                                                       break;\r
-\r
-                                               case 'audio/x-pn-realaudio-plugin':\r
-                                                       TinyMCE_MediaPlugin._createImgFromEmbed(nl[i], d, 'mceItemRealMedia');\r
-                                                       break;\r
-                                       }\r
-                               }\r
-                               break;\r
-\r
-                       case "get_from_editor":\r
-                               var startPos = -1, endPos, attribs, chunkBefore, chunkAfter, embedHTML, at, pl, cb, mt, ex;\r
-\r
-                               while ((startPos = content.indexOf('<img', startPos+1)) != -1) {\r
-                                       endPos = content.indexOf('/>', startPos);\r
-                                       attribs = TinyMCE_MediaPlugin._parseAttributes(content.substring(startPos + 4, endPos));\r
-\r
-                                       // Is not flash, skip it\r
-                                       if (!/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(attribs['class']))\r
-                                               continue;\r
-\r
-                                       endPos += 2;\r
-\r
-                                       // Parse attributes\r
-                                       at = attribs['title'];\r
-                                       if (at) {\r
-                                               at = at.replace(/&(#39|apos);/g, "'");\r
-                                               at = at.replace(/&#quot;/g, '"');\r
-\r
-                                               try {\r
-                                                       pl = eval('x={' + at + '};');\r
-                                               } catch (ex) {\r
-                                                       pl = {};\r
-                                               }\r
-                                       }\r
-\r
-                                       // Use object/embed\r
-                                       if (!tinyMCE.getParam('media_use_script', false)) {\r
-                                               switch (attribs['class']) {\r
-                                                       case 'mceItemFlash':\r
-                                                               ci = 'd27cdb6e-ae6d-11cf-96b8-444553540000';\r
-                                                               cb = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0';\r
-                                                               mt = 'application/x-shockwave-flash';\r
-                                                               break;\r
-\r
-                                                       case 'mceItemShockWave':\r
-                                                               ci = '166B1BCA-3F9C-11CF-8075-444553540000';\r
-                                                               cb = 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0';\r
-                                                               mt = 'application/x-director';\r
-                                                               break;\r
-\r
-                                                       case 'mceItemWindowsMedia':\r
-                                                               ci = tinyMCE.getParam('media_wmp6_compatible') ? '05589FA1-C356-11CE-BF01-00AA0055595A' : '6BF52A52-394A-11D3-B153-00C04F79FAA6';\r
-                                                               cb = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701';\r
-                                                               mt = 'application/x-mplayer2';\r
-                                                               break;\r
-\r
-                                                       case 'mceItemQuickTime':\r
-                                                               ci = '02BF25D5-8C17-4B23-BC80-D3488ABDDC6B';\r
-                                                               cb = 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0';\r
-                                                               mt = 'video/quicktime';\r
-                                                               break;\r
-\r
-                                                       case 'mceItemRealMedia':\r
-                                                               ci = 'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA';\r
-                                                               cb = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0';\r
-                                                               mt = 'audio/x-pn-realaudio-plugin';\r
-                                                               break;\r
-                                               }\r
-\r
-                                               // Convert the URL\r
-                                               pl.src = tinyMCE.convertURL(pl.src, null, true);\r
-\r
-                                               embedHTML = TinyMCE_MediaPlugin._getEmbed(ci, cb, mt, pl, attribs);\r
-                                       } else {\r
-                                               // Use script version\r
-                                               switch (attribs['class']) {\r
-                                                       case 'mceItemFlash':\r
-                                                               s = 'writeFlash';\r
-                                                               break;\r
-\r
-                                                       case 'mceItemShockWave':\r
-                                                               s = 'writeShockWave';\r
-                                                               break;\r
-\r
-                                                       case 'mceItemWindowsMedia':\r
-                                                               s = 'writeWindowsMedia';\r
-                                                               break;\r
-\r
-                                                       case 'mceItemQuickTime':\r
-                                                               s = 'writeQuickTime';\r
-                                                               break;\r
-\r
-                                                       case 'mceItemRealMedia':\r
-                                                               s = 'writeRealMedia';\r
-                                                               break;\r
-                                               }\r
-\r
-                                               if (attribs.width)\r
-                                                       at = at.replace(/width:[^0-9]?[0-9]+%?[^0-9]?/g, "width:'" + attribs.width + "'");\r
-\r
-                                               if (attribs.height)\r
-                                                       at = at.replace(/height:[^0-9]?[0-9]+%?[^0-9]?/g, "height:'" + attribs.height + "'");\r
-\r
-                                               // Force absolute URL\r
-                                               pl.src = tinyMCE.convertURL(pl.src, null, true);\r
-                                               at = at.replace(new RegExp("src:'[^']*'", "g"), "src:'" + pl.src + "'");\r
-\r
-                                               embedHTML = '<script type="text/javascript">' + s + '({' + at + '});</script>';\r
-                                       }\r
-\r
-                                       // Insert embed/object chunk\r
-                                       chunkBefore = content.substring(0, startPos);\r
-                                       chunkAfter = content.substring(endPos);\r
-                                       content = chunkBefore + embedHTML + chunkAfter;\r
-                               }\r
-                               break;\r
-               }\r
-\r
-               return content;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               if (node == null)\r
-                       return;\r
-\r
-               do {\r
-                       if (node.nodeName == "IMG" && /mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(tinyMCE.getAttrib(node, 'class'))) {\r
-                               tinyMCE.switchClass(editor_id + '_media', 'mceButtonSelected');\r
-                               return true;\r
-                       }\r
-               } while ((node = node.parentNode));\r
-\r
-               tinyMCE.switchClass(editor_id + '_media', 'mceButtonNormal');\r
-\r
-               return true;\r
-       },\r
-\r
-       _createImgFromEmbed : function(n, d, cl) {\r
-               var ne, at, i, ti = '', an;\r
-\r
-               ne = d.createElement('img');\r
-               ne.src = tinyMCE.getParam("theme_href") + '/images/spacer.gif';\r
-               ne.width = tinyMCE.getAttrib(n, 'width');\r
-               ne.height = tinyMCE.getAttrib(n, 'height');\r
-               ne.className = cl;\r
-\r
-               at = n.attributes;\r
-               for (i=0; i<at.length; i++) {\r
-                       if (at[i].specified && at[i].nodeValue) {\r
-                               an = at[i].nodeName.toLowerCase();\r
-\r
-                               if (an == 'src')\r
-                                       continue;\r
-\r
-                               if (an == 'mce_src')\r
-                                       an = 'src';\r
-\r
-                               if (an.indexOf('mce_') == -1 && !new RegExp('^(class|type)$').test(an))\r
-                                       ti += an.toLowerCase() + ':\'' + at[i].nodeValue + "',";\r
-                       }\r
-               }\r
-\r
-               ti = ti.length > 0 ? ti.substring(0, ti.length - 1) : ti;\r
-               ne.title = ti;\r
-\r
-               n.parentNode.replaceChild(ne, n);\r
-       },\r
-\r
-       _createImg : function(cl, d, n) {\r
-               var i, nl, ti = "", an, av, al = new Array();\r
-\r
-               ne = d.createElement('img');\r
-               ne.src = tinyMCE.getParam("theme_href") + '/images/spacer.gif';\r
-               ne.width = tinyMCE.getAttrib(n, 'width');\r
-               ne.height = tinyMCE.getAttrib(n, 'height');\r
-               ne.className = cl;\r
-\r
-               al.id = tinyMCE.getAttrib(n, 'id');\r
-               al.name = tinyMCE.getAttrib(n, 'name');\r
-               al.width = tinyMCE.getAttrib(n, 'width');\r
-               al.height = tinyMCE.getAttrib(n, 'height');\r
-               al.bgcolor = tinyMCE.getAttrib(n, 'bgcolor');\r
-               al.align = tinyMCE.getAttrib(n, 'align');\r
-               al.class_name = tinyMCE.getAttrib(n, 'mce_class');\r
-\r
-               nl = n.getElementsByTagName('div');\r
-               for (i=0; i<nl.length; i++) {\r
-                       av = tinyMCE.getAttrib(nl[i], 'value');\r
-                       av = av.replace(new RegExp('\\\\', 'g'), '\\\\');\r
-                       av = av.replace(new RegExp('"', 'g'), '\\"');\r
-                       av = av.replace(new RegExp("'", 'g'), "\\'");\r
-                       an = tinyMCE.getAttrib(nl[i], 'name');\r
-                       al[an] = av;\r
-               }\r
-\r
-               if (al.movie) {\r
-                       al.src = al.movie;\r
-                       al.movie = null;\r
-               }\r
-\r
-               for (an in al) {\r
-                       if (al[an] != null && typeof(al[an]) != "function" && al[an] != '')\r
-                               ti += an.toLowerCase() + ':\'' + al[an] + "',";\r
-               }\r
-\r
-               ti = ti.length > 0 ? ti.substring(0, ti.length - 1) : ti;\r
-               ne.title = ti;\r
-\r
-               return ne;\r
-       },\r
-\r
-       _getEmbed : function(cls, cb, mt, p, at) {\r
-               var h = '', n;\r
-\r
-               p.width = at.width ? at.width : p.width;\r
-               p.height = at.height ? at.height : p.height;\r
-\r
-               h += '<object classid="clsid:' + cls + '" codebase="' + cb + '"';\r
-               h += typeof(p.id) != "undefined" ? ' id="' + p.id + '"' : '';\r
-               h += typeof(p.name) != "undefined" ? ' name="' + p.name + '"' : '';\r
-               h += typeof(p.width) != "undefined" ? ' width="' + p.width + '"' : '';\r
-               h += typeof(p.height) != "undefined" ? ' height="' + p.height + '"' : '';\r
-               h += typeof(p.align) != "undefined" ? ' align="' + p.align + '"' : '';\r
-               h += '>';\r
-\r
-               for (n in p) {\r
-                       if (typeof(p[n]) != "undefined" && typeof(p[n]) != "function") {\r
-                               h += '<param name="' + n + '" value="' + p[n] + '" />';\r
-\r
-                               // Add extra url parameter if it's an absolute URL on WMP\r
-                               if (n == 'src' && p[n].indexOf('://') != -1 && mt == 'application/x-mplayer2')\r
-                                       h += '<param name="url" value="' + p[n] + '" />';\r
-                       }\r
-               }\r
-\r
-               h += '<embed type="' + mt + '"';\r
-\r
-               for (n in p) {\r
-                       if (typeof(p[n]) == "function")\r
-                               continue;\r
-\r
-                       // Skip url parameter for embed tag on WMP\r
-                       if (!(n == 'url' && mt == 'application/x-mplayer2'))\r
-                               h += ' ' + n + '="' + p[n] + '"';\r
-               }\r
-\r
-               h += '></embed></object>';\r
-\r
-               return h;\r
-       },\r
-\r
-       _parseAttributes : function(attribute_string) {\r
-               var attributeName = "", endChr = '"';\r
-               var attributeValue = "";\r
-               var withInName;\r
-               var withInValue;\r
-               var attributes = new Array();\r
-               var whiteSpaceRegExp = new RegExp('^[ \n\r\t]+', 'g');\r
-\r
-               if (attribute_string == null || attribute_string.length < 2)\r
-                       return null;\r
-\r
-               withInName = withInValue = false;\r
-\r
-               for (var i=0; i<attribute_string.length; i++) {\r
-                       var chr = attribute_string.charAt(i);\r
-\r
-                       if ((chr == '"' || chr == "'") && !withInValue) {\r
-                               withInValue = true;\r
-                               endChr = chr;\r
-                       } else if (chr == endChr && withInValue) {\r
-                               withInValue = false;\r
-\r
-                               var pos = attributeName.lastIndexOf(' ');\r
-                               if (pos != -1)\r
-                                       attributeName = attributeName.substring(pos+1);\r
-\r
-                               attributes[attributeName.toLowerCase()] = attributeValue.substring(1);\r
-\r
-                               attributeName = "";\r
-                               attributeValue = "";\r
-                       } else if (!whiteSpaceRegExp.test(chr) && !withInName && !withInValue)\r
-                               withInName = true;\r
-\r
-                       if (chr == '=' && withInName)\r
-                               withInName = false;\r
-\r
-                       if (withInName)\r
-                               attributeName += chr;\r
-\r
-                       if (withInValue)\r
-                               attributeValue += chr;\r
-               }\r
-\r
-               return attributes;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("media", TinyMCE_MediaPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/flash.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/flash.gif
deleted file mode 100644 (file)
index cb192e6..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/flash.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/media.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/media.gif
deleted file mode 100644 (file)
index 856df52..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/media.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/quicktime.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/quicktime.gif
deleted file mode 100644 (file)
index 3b04991..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/quicktime.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/realmedia.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/realmedia.gif
deleted file mode 100644 (file)
index fdfe0b9..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/realmedia.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/shockwave.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/shockwave.gif
deleted file mode 100644 (file)
index 5f235df..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/shockwave.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/windowsmedia.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/windowsmedia.gif
deleted file mode 100644 (file)
index ab50f2d..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/images/windowsmedia.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/jscripts/embed.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/jscripts/embed.js
deleted file mode 100644 (file)
index f8dc810..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/**\r
- * This script contains embed functions for common plugins. This scripts are complety free to use for any purpose.\r
- */\r
-\r
-function writeFlash(p) {\r
-       writeEmbed(\r
-               'D27CDB6E-AE6D-11cf-96B8-444553540000',\r
-               'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',\r
-               'application/x-shockwave-flash',\r
-               p\r
-       );\r
-}\r
-\r
-function writeShockWave(p) {\r
-       writeEmbed(\r
-       '166B1BCA-3F9C-11CF-8075-444553540000',\r
-       'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0',\r
-       'application/x-director',\r
-               p\r
-       );\r
-}\r
-\r
-function writeQuickTime(p) {\r
-       writeEmbed(\r
-               '02BF25D5-8C17-4B23-BC80-D3488ABDDC6B',\r
-               'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0',\r
-               'video/quicktime',\r
-               p\r
-       );\r
-}\r
-\r
-function writeRealMedia(p) {\r
-       writeEmbed(\r
-               'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA',\r
-               'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',\r
-               'audio/x-pn-realaudio-plugin',\r
-               p\r
-       );\r
-}\r
-\r
-function writeWindowsMedia(p) {\r
-       p.url = p.src;\r
-       writeEmbed(\r
-               '6BF52A52-394A-11D3-B153-00C04F79FAA6',\r
-               'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701',\r
-               'application/x-mplayer2',\r
-               p\r
-       );\r
-}\r
-\r
-function writeEmbed(cls, cb, mt, p) {\r
-       var h = '', n;\r
-\r
-       h += '<object classid="clsid:' + cls + '" codebase="' + cb + '"';\r
-       h += typeof(p.id) != "undefined" ? 'id="' + p.id + '"' : '';\r
-       h += typeof(p.name) != "undefined" ? 'name="' + p.name + '"' : '';\r
-       h += typeof(p.width) != "undefined" ? 'width="' + p.width + '"' : '';\r
-       h += typeof(p.height) != "undefined" ? 'height="' + p.height + '"' : '';\r
-       h += typeof(p.align) != "undefined" ? 'align="' + p.align + '"' : '';\r
-       h += '>';\r
-\r
-       for (n in p)\r
-               h += '<param name="' + n + '" value="' + p[n] + '">';\r
-\r
-       h += '<embed type="' + mt + '"';\r
-\r
-       for (n in p)\r
-               h += n + '="' + p[n] + '" ';\r
-\r
-       h += '></embed></object>';\r
-\r
-       document.write(h);\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/jscripts/media.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/jscripts/media.js
deleted file mode 100644 (file)
index 3c0073a..0000000
+++ /dev/null
@@ -1,594 +0,0 @@
-var oldWidth, oldHeight;\r
-var url = tinyMCE.getParam("media_external_list_url");\r
-if (url != null) {\r
-       // Fix relative\r
-       if (url.charAt(0) != '/' && url.indexOf('://') == -1)\r
-               url = tinyMCE.documentBasePath + "/" + url;\r
-\r
-       document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '"></sc'+'ript>');\r
-}\r
-\r
-function init() {\r
-       var pl = "", f, val;\r
-       var type = "flash", fe, i;\r
-\r
-       tinyMCEPopup.resizeToInnerSize();\r
-       f = document.forms[0]\r
-\r
-       fe = tinyMCE.selectedInstance.getFocusElement();\r
-       if (/mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(tinyMCE.getAttrib(fe, 'class'))) {\r
-               pl = "x={" + fe.title + "};";\r
-\r
-               switch (tinyMCE.getAttrib(fe, 'class')) {\r
-                       case 'mceItemFlash':\r
-                               type = 'flash';\r
-                               break;\r
-\r
-                       case 'mceItemShockWave':\r
-                               type = 'shockwave';\r
-                               break;\r
-\r
-                       case 'mceItemWindowsMedia':\r
-                               type = 'wmp';\r
-                               break;\r
-\r
-                       case 'mceItemQuickTime':\r
-                               type = 'qt';\r
-                               break;\r
-\r
-                       case 'mceItemRealMedia':\r
-                               type = 'rmp';\r
-                               break;\r
-               }\r
-\r
-               document.forms[0].insert.value = tinyMCE.getLang('lang_update', 'Insert', true); \r
-       }\r
-\r
-       document.getElementById('filebrowsercontainer').innerHTML = getBrowserHTML('filebrowser','src','media','media');\r
-       document.getElementById('qtsrcfilebrowsercontainer').innerHTML = getBrowserHTML('qtsrcfilebrowser','qt_qtsrc','media','media');\r
-       document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');\r
-\r
-       var html = getMediaListHTML('filebrowser','src','media','media');\r
-       if (html == "")\r
-               document.getElementById("linklistrow").style.display = 'none';\r
-       else\r
-               document.getElementById("linklistcontainer").innerHTML = html;\r
-\r
-       // Resize some elements\r
-       if (isVisible('filebrowsercontainer'))\r
-               document.getElementById('src').style.width = '230px';\r
-\r
-       // Setup form\r
-       if (pl != "") {\r
-               pl = eval(pl);\r
-\r
-               switch (type) {\r
-                       case "flash":\r
-                               setBool(pl, 'flash', 'play');\r
-                               setBool(pl, 'flash', 'loop');\r
-                               setBool(pl, 'flash', 'menu');\r
-                               setBool(pl, 'flash', 'swliveconnect');\r
-                               setStr(pl, 'flash', 'quality');\r
-                               setStr(pl, 'flash', 'scale');\r
-                               setStr(pl, 'flash', 'salign');\r
-                               setStr(pl, 'flash', 'wmode');\r
-                               setStr(pl, 'flash', 'base');\r
-                               setStr(pl, 'flash', 'flashvars');\r
-                       break;\r
-\r
-                       case "qt":\r
-                               setBool(pl, 'qt', 'loop');\r
-                               setBool(pl, 'qt', 'autoplay');\r
-                               setBool(pl, 'qt', 'cache');\r
-                               setBool(pl, 'qt', 'controller');\r
-                               setBool(pl, 'qt', 'correction');\r
-                               setBool(pl, 'qt', 'enablejavascript');\r
-                               setBool(pl, 'qt', 'kioskmode');\r
-                               setBool(pl, 'qt', 'autohref');\r
-                               setBool(pl, 'qt', 'playeveryframe');\r
-                               setBool(pl, 'qt', 'tarsetcache');\r
-                               setStr(pl, 'qt', 'scale');\r
-                               setStr(pl, 'qt', 'starttime');\r
-                               setStr(pl, 'qt', 'endtime');\r
-                               setStr(pl, 'qt', 'tarset');\r
-                               setStr(pl, 'qt', 'qtsrcchokespeed');\r
-                               setStr(pl, 'qt', 'volume');\r
-                               setStr(pl, 'qt', 'qtsrc');\r
-                       break;\r
-\r
-                       case "shockwave":\r
-                               setBool(pl, 'shockwave', 'sound');\r
-                               setBool(pl, 'shockwave', 'progress');\r
-                               setBool(pl, 'shockwave', 'autostart');\r
-                               setBool(pl, 'shockwave', 'swliveconnect');\r
-                               setStr(pl, 'shockwave', 'swvolume');\r
-                               setStr(pl, 'shockwave', 'swstretchstyle');\r
-                               setStr(pl, 'shockwave', 'swstretchhalign');\r
-                               setStr(pl, 'shockwave', 'swstretchvalign');\r
-                       break;\r
-\r
-                       case "wmp":\r
-                               setBool(pl, 'wmp', 'autostart');\r
-                               setBool(pl, 'wmp', 'enabled');\r
-                               setBool(pl, 'wmp', 'enablecontextmenu');\r
-                               setBool(pl, 'wmp', 'fullscreen');\r
-                               setBool(pl, 'wmp', 'invokeurls');\r
-                               setBool(pl, 'wmp', 'mute');\r
-                               setBool(pl, 'wmp', 'stretchtofit');\r
-                               setBool(pl, 'wmp', 'windowlessvideo');\r
-                               setStr(pl, 'wmp', 'balance');\r
-                               setStr(pl, 'wmp', 'baseurl');\r
-                               setStr(pl, 'wmp', 'captioningid');\r
-                               setStr(pl, 'wmp', 'currentmarker');\r
-                               setStr(pl, 'wmp', 'currentposition');\r
-                               setStr(pl, 'wmp', 'defaultframe');\r
-                               setStr(pl, 'wmp', 'playcount');\r
-                               setStr(pl, 'wmp', 'rate');\r
-                               setStr(pl, 'wmp', 'uimode');\r
-                               setStr(pl, 'wmp', 'volume');\r
-                       break;\r
-\r
-                       case "rmp":\r
-                               setBool(pl, 'rmp', 'autostart');\r
-                               setBool(pl, 'rmp', 'loop');\r
-                               setBool(pl, 'rmp', 'autogotourl');\r
-                               setBool(pl, 'rmp', 'center');\r
-                               setBool(pl, 'rmp', 'imagestatus');\r
-                               setBool(pl, 'rmp', 'maintainaspect');\r
-                               setBool(pl, 'rmp', 'nojava');\r
-                               setBool(pl, 'rmp', 'prefetch');\r
-                               setBool(pl, 'rmp', 'shuffle');\r
-                               setStr(pl, 'rmp', 'console');\r
-                               setStr(pl, 'rmp', 'controls');\r
-                               setStr(pl, 'rmp', 'numloop');\r
-                               setStr(pl, 'rmp', 'scriptcallbacks');\r
-                       break;\r
-               }\r
-\r
-               setStr(pl, null, 'src');\r
-               setStr(pl, null, 'id');\r
-               setStr(pl, null, 'name');\r
-               setStr(pl, null, 'vspace');\r
-               setStr(pl, null, 'hspace');\r
-               setStr(pl, null, 'bgcolor');\r
-               setStr(pl, null, 'align');\r
-               setStr(pl, null, 'width');\r
-               setStr(pl, null, 'height');\r
-\r
-               if ((val = tinyMCE.getAttrib(fe, "width")) != "")\r
-                       pl.width = f.width.value = val;\r
-\r
-               if ((val = tinyMCE.getAttrib(fe, "height")) != "")\r
-                       pl.height = f.height.value = val;\r
-\r
-               oldWidth = pl.width ? parseInt(pl.width) : 0;\r
-               oldHeight = pl.height ? parseInt(pl.height) : 0;\r
-       } else\r
-               oldWidth = oldHeight = 0;\r
-\r
-       selectByValue(f, 'media_type', type);\r
-       changedType(type);\r
-       updateColor('bgcolor_pick', 'bgcolor');\r
-\r
-       TinyMCE_EditableSelects.init();\r
-       generatePreview();\r
-}\r
-\r
-function insertMedia() {\r
-       var fe, f = document.forms[0], h;\r
-\r
-       if (!AutoValidator.validate(f)) {\r
-               alert(tinyMCE.getLang('lang_invalid_data'));\r
-               return false;\r
-       }\r
-\r
-       f.width.value = f.width.value == "" ? 100 : f.width.value;\r
-       f.height.value = f.height.value == "" ? 100 : f.height.value;\r
-\r
-       fe = tinyMCE.selectedInstance.getFocusElement();\r
-       if (fe != null && /mceItem(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)/.test(tinyMCE.getAttrib(fe, 'class'))) {\r
-               switch (f.media_type.options[f.media_type.selectedIndex].value) {\r
-                       case "flash":\r
-                               fe.className = "mceItemFlash";\r
-                               break;\r
-\r
-                       case "shockwave":\r
-                               fe.className = "mceItemShockWave";\r
-                               break;\r
-\r
-                       case "qt":\r
-                               fe.className = "mceItemQuickTime";\r
-                               break;\r
-\r
-                       case "wmp":\r
-                               fe.className = "mceItemWindowsMedia";\r
-                               break;\r
-\r
-                       case "rmp":\r
-                               fe.className = "mceItemRealMedia";\r
-                               break;\r
-               }\r
-\r
-               if (fe.width != f.width.value || fe.height != f.height.height)\r
-                       tinyMCE.selectedInstance.repaint();\r
-\r
-               fe.title = serializeParameters();\r
-               fe.width = f.width.value;\r
-               fe.height = f.height.value;\r
-               fe.style.width = f.width.value + (f.width.value.indexOf('%') == -1 ? 'px' : '');\r
-               fe.style.height = f.height.value + (f.height.value.indexOf('%') == -1 ? 'px' : '');\r
-               fe.align = f.align.options[f.align.selectedIndex].value;\r
-       } else {\r
-               h = '<img src="' + tinyMCE.getParam("theme_href") + '/images/spacer.gif"' ;\r
-\r
-               switch (f.media_type.options[f.media_type.selectedIndex].value) {\r
-                       case "flash":\r
-                               h += ' class="mceItemFlash"';\r
-                               break;\r
-\r
-                       case "shockwave":\r
-                               h += ' class="mceItemShockWave"';\r
-                               break;\r
-\r
-                       case "qt":\r
-                               h += ' class="mceItemQuickTime"';\r
-                               break;\r
-\r
-                       case "wmp":\r
-                               h += ' class="mceItemWindowsMedia"';\r
-                               break;\r
-\r
-                       case "rmp":\r
-                               h += ' class="mceItemRealMedia"';\r
-                               break;\r
-               }\r
-\r
-               h += ' title="' + serializeParameters() + '"';\r
-               h += ' width="' + f.width.value + '"';\r
-               h += ' height="' + f.height.value + '"';\r
-               h += ' align="' + f.align.options[f.align.selectedIndex].value + '"';\r
-\r
-               h += ' />';\r
-\r
-               tinyMCE.selectedInstance.execCommand('mceInsertContent', false, h);\r
-       }\r
-\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function getMediaListHTML() {\r
-       if (typeof(tinyMCEMediaList) != "undefined" && tinyMCEMediaList.length > 0) {\r
-               var html = "";\r
-\r
-               html += '<select id="linklist" name="linklist" style="width: 250px" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="this.form.src.value=this.options[this.selectedIndex].value;">';\r
-               html += '<option value="">---</option>';\r
-\r
-               for (var i=0; i<tinyMCEMediaList.length; i++)\r
-                       html += '<option value="' + tinyMCEMediaList[i][1] + '">' + tinyMCEMediaList[i][0] + '</option>';\r
-\r
-               html += '</select>';\r
-\r
-               return html;\r
-       }\r
-\r
-       return "";\r
-}\r
-\r
-function getType(v) {\r
-       var fo, i, c, el, x, f = document.forms[0];\r
-\r
-       fo = tinyMCE.getParam("media_types", "flash=swf;shockwave=dcr;qt=mov,qt,mpg,mp3,mp4,mpeg;shockwave=dcr;wmp=avi,wmv,wm,asf,asx,wmx,wvx;rmp=rm,ra,ram").split(';');\r
-\r
-       // YouTube\r
-       if (v.indexOf('http://www.youtube.com/watch?v=') == 0 || v.indexOf('http://youtube.com/watch?v=') == 0) {\r
-               f.width.value = '425';\r
-               f.height.value = '350';\r
-\r
-               v = v.replace('http://youtube.com/watch?v=', '');\r
-               v = v.replace('http://www.youtube.com/watch?v=', '');\r
-\r
-               f.src.value = 'http://www.youtube.com/v/' + v;\r
-               return 'flash';\r
-       }\r
-\r
-       // Google video\r
-       if (v.indexOf('http://video.google.com/videoplay?docid=') == 0) {\r
-               f.width.value = '425';\r
-               f.height.value = '326';\r
-               f.src.value = 'http://video.google.com/googleplayer.swf?docId=' + v.substring('http://video.google.com/videoplay?docid='.length) + '&hl=en';\r
-               return 'flash';\r
-       }\r
-\r
-       for (i=0; i<fo.length; i++) {\r
-               c = fo[i].split('=');\r
-\r
-               el = c[1].split(',');\r
-               for (x=0; x<el.length; x++)\r
-               if (v.indexOf('.' + el[x]) != -1)\r
-                       return c[0];\r
-       }\r
-\r
-       return null;\r
-}\r
-\r
-function switchType(v) {\r
-       var t = getType(v), d = document, f = d.forms[0];\r
-\r
-       if (!t)\r
-               return;\r
-\r
-       selectByValue(d.forms[0], 'media_type', t);\r
-       changedType(t);\r
-\r
-       // Update qtsrc also\r
-       if (t == 'qt' && f.src.value.toLowerCase().indexOf('rtsp://') != -1) {\r
-               alert(tinyMCE.getLang("lang_media_qt_stream_warn"));\r
-\r
-               if (f.qt_qtsrc.value == '')\r
-                       f.qt_qtsrc.value = f.src.value;\r
-       }\r
-}\r
-\r
-function changedType(t) {\r
-       var d = document;\r
-\r
-       d.getElementById('flash_options').style.display = 'none';\r
-       d.getElementById('qt_options').style.display = 'none';\r
-       d.getElementById('shockwave_options').style.display = 'none';\r
-       d.getElementById('wmp_options').style.display = 'none';\r
-       d.getElementById('rmp_options').style.display = 'none';\r
-       d.getElementById(t + '_options').style.display = 'block';\r
-}\r
-\r
-function serializeParameters() {\r
-       var d = document, f = d.forms[0], s = '';\r
-\r
-       switch (f.media_type.options[f.media_type.selectedIndex].value) {\r
-               case "flash":\r
-                       s += getBool('flash', 'play', true);\r
-                       s += getBool('flash', 'loop', true);\r
-                       s += getBool('flash', 'menu', true);\r
-                       s += getBool('flash', 'swliveconnect', false);\r
-                       s += getStr('flash', 'quality');\r
-                       s += getStr('flash', 'scale');\r
-                       s += getStr('flash', 'salign');\r
-                       s += getStr('flash', 'wmode');\r
-                       s += getStr('flash', 'base');\r
-                       s += getStr('flash', 'flashvars');\r
-               break;\r
-\r
-               case "qt":\r
-                       s += getBool('qt', 'loop', false);\r
-                       s += getBool('qt', 'autoplay', true);\r
-                       s += getBool('qt', 'cache', false);\r
-                       s += getBool('qt', 'controller', true);\r
-                       s += getBool('qt', 'correction', false, 'none', 'full');\r
-                       s += getBool('qt', 'enablejavascript', false);\r
-                       s += getBool('qt', 'kioskmode', false);\r
-                       s += getBool('qt', 'autohref', false);\r
-                       s += getBool('qt', 'playeveryframe', false);\r
-                       s += getBool('qt', 'targetcache', false);\r
-                       s += getStr('qt', 'scale');\r
-                       s += getStr('qt', 'starttime');\r
-                       s += getStr('qt', 'endtime');\r
-                       s += getStr('qt', 'target');\r
-                       s += getStr('qt', 'qtsrcchokespeed');\r
-                       s += getStr('qt', 'volume');\r
-                       s += getStr('qt', 'qtsrc');\r
-               break;\r
-\r
-               case "shockwave":\r
-                       s += getBool('shockwave', 'sound');\r
-                       s += getBool('shockwave', 'progress');\r
-                       s += getBool('shockwave', 'autostart');\r
-                       s += getBool('shockwave', 'swliveconnect');\r
-                       s += getStr('shockwave', 'swvolume');\r
-                       s += getStr('shockwave', 'swstretchstyle');\r
-                       s += getStr('shockwave', 'swstretchhalign');\r
-                       s += getStr('shockwave', 'swstretchvalign');\r
-               break;\r
-\r
-               case "wmp":\r
-                       s += getBool('wmp', 'autostart', true);\r
-                       s += getBool('wmp', 'enabled', false);\r
-                       s += getBool('wmp', 'enablecontextmenu', true);\r
-                       s += getBool('wmp', 'fullscreen', false);\r
-                       s += getBool('wmp', 'invokeurls', true);\r
-                       s += getBool('wmp', 'mute', false);\r
-                       s += getBool('wmp', 'stretchtofit', false);\r
-                       s += getBool('wmp', 'windowlessvideo', false);\r
-                       s += getStr('wmp', 'balance');\r
-                       s += getStr('wmp', 'baseurl');\r
-                       s += getStr('wmp', 'captioningid');\r
-                       s += getStr('wmp', 'currentmarker');\r
-                       s += getStr('wmp', 'currentposition');\r
-                       s += getStr('wmp', 'defaultframe');\r
-                       s += getStr('wmp', 'playcount');\r
-                       s += getStr('wmp', 'rate');\r
-                       s += getStr('wmp', 'uimode');\r
-                       s += getStr('wmp', 'volume');\r
-               break;\r
-\r
-               case "rmp":\r
-                       s += getBool('rmp', 'autostart', false);\r
-                       s += getBool('rmp', 'loop', false);\r
-                       s += getBool('rmp', 'autogotourl', true);\r
-                       s += getBool('rmp', 'center', false);\r
-                       s += getBool('rmp', 'imagestatus', true);\r
-                       s += getBool('rmp', 'maintainaspect', false);\r
-                       s += getBool('rmp', 'nojava', false);\r
-                       s += getBool('rmp', 'prefetch', false);\r
-                       s += getBool('rmp', 'shuffle', false);\r
-                       s += getStr('rmp', 'console');\r
-                       s += getStr('rmp', 'controls');\r
-                       s += getStr('rmp', 'numloop');\r
-                       s += getStr('rmp', 'scriptcallbacks');\r
-               break;\r
-       }\r
-\r
-       s += getStr(null, 'id');\r
-       s += getStr(null, 'name');\r
-       s += getStr(null, 'src');\r
-       s += getStr(null, 'align');\r
-       s += getStr(null, 'bgcolor');\r
-       s += getInt(null, 'vspace');\r
-       s += getInt(null, 'hspace');\r
-       s += getStr(null, 'width');\r
-       s += getStr(null, 'height');\r
-\r
-       s = s.length > 0 ? s.substring(0, s.length - 1) : s;\r
-\r
-       return s;\r
-}\r
-\r
-function setBool(pl, p, n) {\r
-       if (typeof(pl[n]) == "undefined")\r
-               return;\r
-\r
-       document.forms[0].elements[p + "_" + n].checked = pl[n];\r
-}\r
-\r
-function setStr(pl, p, n) {\r
-       var f = document.forms[0], e = f.elements[(p != null ? p + "_" : '') + n];\r
-\r
-       if (typeof(pl[n]) == "undefined")\r
-               return;\r
-\r
-       if (e.type == "text")\r
-               e.value = pl[n];\r
-       else\r
-               selectByValue(f, (p != null ? p + "_" : '') + n, pl[n]);\r
-}\r
-\r
-function getBool(p, n, d, tv, fv) {\r
-       var v = document.forms[0].elements[p + "_" + n].checked;\r
-\r
-       tv = typeof(tv) == 'undefined' ? 'true' : "'" + jsEncode(tv) + "'";\r
-       fv = typeof(fv) == 'undefined' ? 'false' : "'" + jsEncode(fv) + "'";\r
-\r
-       return (v == d) ? '' : n + (v ? ':' + tv + ',' : ':' + fv + ',');\r
-}\r
-\r
-function getStr(p, n, d) {\r
-       var e = document.forms[0].elements[(p != null ? p + "_" : "") + n];\r
-       var v = e.type == "text" ? e.value : e.options[e.selectedIndex].value;\r
-\r
-       return ((n == d || v == '') ? '' : n + ":'" + jsEncode(v) + "',");\r
-}\r
-\r
-function getInt(p, n, d) {\r
-       var e = document.forms[0].elements[(p != null ? p + "_" : "") + n];\r
-       var v = e.type == "text" ? e.value : e.options[e.selectedIndex].value;\r
-\r
-       return ((n == d || v == '') ? '' : n + ":" + v.replace(/[^0-9]+/g, '') + ",");\r
-}\r
-\r
-function jsEncode(s) {\r
-       s = s.replace(new RegExp('\\\\', 'g'), '\\\\');\r
-       s = s.replace(new RegExp('"', 'g'), '\\"');\r
-       s = s.replace(new RegExp("'", 'g'), "\\'");\r
-\r
-       return s;\r
-}\r
-\r
-function generatePreview(c) {\r
-       var f = document.forms[0], p = document.getElementById('prev'), h = '', cls, pl, n, type, codebase, wp, hp, nw, nh;\r
-\r
-       p.innerHTML = '<!-- x --->';\r
-\r
-       nw = parseInt(f.width.value);\r
-       nh = parseInt(f.height.value);\r
-\r
-       if (f.width.value != "" && f.height.value != "") {\r
-               if (f.constrain.checked) {\r
-                       if (c == 'width' && oldWidth != 0) {\r
-                               wp = nw / oldWidth;\r
-                               nh = Math.round(wp * nh);\r
-                               f.height.value = nh;\r
-                       } else if (c == 'height' && oldHeight != 0) {\r
-                               hp = nh / oldHeight;\r
-                               nw = Math.round(hp * nw);\r
-                               f.width.value = nw;\r
-                       }\r
-               }\r
-       }\r
-\r
-       if (f.width.value != "")\r
-               oldWidth = nw;\r
-\r
-       if (f.height.value != "")\r
-               oldHeight = nh;\r
-\r
-       // After constrain\r
-       pl = serializeParameters();\r
-\r
-       switch (f.media_type.options[f.media_type.selectedIndex].value) {\r
-               case "flash":\r
-                       cls = 'clsid:D27CDB6E-AE6D-11cf-96B8-444553540000';\r
-                       codebase = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0';\r
-                       type = 'application/x-shockwave-flash';\r
-                       break;\r
-\r
-               case "shockwave":\r
-                       cls = 'clsid:166B1BCA-3F9C-11CF-8075-444553540000';\r
-                       codebase = 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0';\r
-                       type = 'application/x-director';\r
-                       break;\r
-\r
-               case "qt":\r
-                       cls = 'clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B';\r
-                       codebase = 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0';\r
-                       type = 'video/quicktime';\r
-                       break;\r
-\r
-               case "wmp":\r
-                       cls = tinyMCE.getParam('media_wmp6_compatible') ? 'clsid:05589FA1-C356-11CE-BF01-00AA0055595A' : 'clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6';\r
-                       codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701';\r
-                       type = 'application/x-mplayer2';\r
-                       break;\r
-\r
-               case "rmp":\r
-                       cls = 'clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA';\r
-                       codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701';\r
-                       type = 'audio/x-pn-realaudio-plugin';\r
-                       break;\r
-       }\r
-\r
-       if (pl == '') {\r
-               p.innerHTML = '';\r
-               return;\r
-       }\r
-\r
-       pl = eval('x={' + pl + '};');\r
-\r
-       if (!pl.src) {\r
-               p.innerHTML = '';\r
-               return;\r
-       }\r
-\r
-       pl.src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], pl.src);\r
-       pl.width = !pl.width ? 100 : pl.width;\r
-       pl.height = !pl.height ? 100 : pl.height;\r
-       pl.id = !pl.id ? 'obj' : pl.id;\r
-       pl.name = !pl.name ? 'eobj' : pl.name;\r
-       pl.align = !pl.align ? '' : pl.align;\r
-\r
-       h += '<object classid="clsid:' + cls + '" codebase="' + codebase + '" width="' + pl.width + '" height="' + pl.height + '" id="' + pl.id + '" name="' + pl.name + '" align="' + pl.align + '">';\r
-\r
-       for (n in pl) {\r
-               h += '<param name="' + n + '" value="' + pl[n] + '">';\r
-\r
-               // Add extra url parameter if it's an absolute URL\r
-               if (n == 'src' && pl[n].indexOf('://') != -1)\r
-                       h += '<param name="url" value="' + pl[n] + '" />';\r
-       }\r
-\r
-       h += '<embed type="' + type + '" ';\r
-\r
-       for (n in pl)\r
-               h += n + '="' + pl[n] + '" ';\r
-\r
-       h += '></embed></object>';\r
-\r
-       p.innerHTML = "<!-- x --->" + h;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/langs/en.js
deleted file mode 100644 (file)
index ced1967..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('media',{\r
-title : 'Insert / edit embedded media',\r
-desc : 'Insert / edit embedded media',\r
-general : 'General',\r
-advanced : 'Advanced',\r
-file : 'File/URL',\r
-list : 'List',\r
-size : 'Dimensions',\r
-preview : 'Preview',\r
-constrain_proportions : 'Constrain proportions',\r
-type : 'Type',\r
-id : 'Id',\r
-name : 'Name',\r
-class_name : 'Class',\r
-vspace : 'V-Space',\r
-hspace : 'H-Space',\r
-play : 'Auto play',\r
-loop : 'Loop',\r
-menu : 'Show menu',\r
-quality : 'Quality',\r
-scale : 'Scale',\r
-align : 'Align',\r
-salign : 'SAlign',\r
-wmode : 'WMode',\r
-bgcolor : 'Background',\r
-base : 'Base',\r
-flashvars : 'Flashvars',\r
-liveconnect : 'SWLiveConnect',\r
-autohref : 'AutoHREF',\r
-cache : 'Cache',\r
-hidden : 'Hidden',\r
-controller : 'Controller',\r
-kioskmode : 'Kiosk mode',\r
-playeveryframe : 'Play every frame',\r
-targetcache : 'Target cache',\r
-correction : 'No correction',\r
-enablejavascript : 'Enable JavaScript',\r
-starttime : 'Start time',\r
-endtime : 'End time',\r
-href : 'Href',\r
-qtsrcchokespeed : 'Choke speed',\r
-target : 'Target',\r
-volume : 'Volume',\r
-autostart : 'Auto start',\r
-enabled : 'Enabled',\r
-fullscreen : 'Fullscreen',\r
-invokeurls : 'Invoke URLs',\r
-mute : 'Mute',\r
-stretchtofit : 'Stretch to fit',\r
-windowlessvideo : 'Windowless video',\r
-balance : 'Balance',\r
-baseurl : 'Base URL',\r
-captioningid : 'Captioning id',\r
-currentmarker : 'Current marker',\r
-currentposition : 'Current position',\r
-defaultframe : 'Default frame',\r
-playcount : 'Play count',\r
-rate : 'Rate',\r
-uimode : 'UI Mode',\r
-flash_options : 'Flash options',\r
-qt_options : 'Quicktime options',\r
-wmp_options : 'Windows media player options',\r
-rmp_options : 'Real media player options',\r
-shockwave_options : 'Shockwave options',\r
-autogotourl : 'Auto goto URL',\r
-center : 'Center',\r
-imagestatus : 'Image status',\r
-maintainaspect : 'Maintain aspect',\r
-nojava : 'No java',\r
-prefetch : 'Prefetch',\r
-shuffle : 'Shuffle',\r
-console : 'Console',\r
-numloop : 'Num loops',\r
-controls : 'Controls',\r
-scriptcallbacks : 'Script callbacks',\r
-swstretchstyle : 'Stretch style',\r
-swstretchhalign : 'Stretch H-Align',\r
-swstretchvalign : 'Stretch V-Align',\r
-sound : 'Sound',\r
-progress : 'Progress',\r
-qtsrc : 'QT Src',\r
-qt_stream_warn : 'Streamed rtsp resources should be added to the QT Src field under the advanced tab.\nYou should also add a non streamed version to the Src field..',\r
-align_top : 'Top',\r
-align_right : 'Right',\r
-align_bottom : 'Bottom',\r
-align_left : 'Left',\r
-align_center : 'Center',\r
-align_top_left : 'Top left',\r
-align_top_right : 'Top right',\r
-align_bottom_left : 'Bottom left',\r
-align_bottom_right : 'Bottom right'\r
-});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/media.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/media/media.htm
deleted file mode 100644 (file)
index 2b1ef80..0000000
+++ /dev/null
@@ -1,723 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_media_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/media.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/validate.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/editable_selects.js"></script>\r
-       <link href="css/media.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-    <form onsubmit="insertMedia();return false;" action="#">\r
-               <div class="tabs">\r
-                       <ul>\r
-                               <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');generatePreview();" onmousedown="return false;">{$lang_media_general}</a></span></li>\r
-                               <li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{$lang_media_advanced}</a></span></li>\r
-                       </ul>\r
-               </div>\r
-\r
-               <div class="panel_wrapper">\r
-                       <div id="general_panel" class="panel current">\r
-                               <fieldset>\r
-                                       <legend>{$lang_media_general}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                                       <tr>\r
-                                                               <td><label for="media_type">{$lang_media_type}</label></td>\r
-                                                               <td>\r
-                                                                       <select id="media_type" name="media_type" onchange="changedType(this.value);generatePreview();">\r
-                                                                               <option value="flash">Flash</option>\r
-                                                                               <option value="qt">Quicktime</option>\r
-                                                                               <option value="shockwave">Shockwave</option>\r
-                                                                               <option value="wmp">Windows Media</option>\r
-                                                                               <option value="rmp">Real Media</option>\r
-                                                                       </select>\r
-                                                               </td>\r
-                                                       </tr>\r
-                                                       <tr>\r
-                                                       <td><label for="src">{$lang_media_file}</label></td>\r
-                                                         <td>\r
-                                                                       <table border="0" cellspacing="0" cellpadding="0">\r
-                                                                         <tr>\r
-                                                                               <td><input id="src" name="src" type="text" value="" onchange="switchType(this.value);generatePreview();" /></td>\r
-                                                                               <td id="filebrowsercontainer">&nbsp;</td>\r
-                                                                         </tr>\r
-                                                                       </table>\r
-                                                               </td>\r
-                                                       </tr>\r
-                                                       <tr id="linklistrow">\r
-                                                               <td><label for="linklist">{$lang_media_list}</label></td>\r
-                                                               <td id="linklistcontainer">&nbsp;</td>\r
-                                                       </tr>\r
-                                                       <tr>\r
-                                                               <td><label for="width">{$lang_media_size}</label></td>\r
-                                                               <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="text" id="width" name="width" value="" class="size" onchange="generatePreview('width');" /> x <input type="text" id="height" name="height" value="" class="size"  onchange="generatePreview('height');" /></td>\r
-                                                                               <td>&nbsp;&nbsp;<input id="constrain" type="checkbox" name="constrain" class="checkbox" /></td>\r
-                                                                               <td><label id="constrainlabel" for="constrain">{$lang_media_constrain_proportions}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset>\r
-                                       <legend>{$lang_media_preview}</legend>\r
-                                       <div id="prev"></div>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="advanced_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_media_advanced}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0" width="100%">\r
-                                               <tr>\r
-                                                       <td><label for="id">{$lang_media_id}</label></td>\r
-                                                       <td><input type="text" id="id" name="id" onchange="generatePreview();" /></td>\r
-                                                       <td><label for="name">{$lang_media_name}</label></td>\r
-                                                       <td><input type="text" id="name" name="name" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="align">{$lang_media_align}</label></td>\r
-                                                       <td>\r
-                                                               <select id="align" name="align" onchange="generatePreview();">\r
-                                                                       <option value="">{$lang_not_set}</option> \r
-                                                                       <option value="top">{$lang_media_align_top}</option>\r
-                                                                       <option value="right">{$lang_media_align_right}</option>\r
-                                                                       <option value="bottom">{$lang_media_align_bottom}</option>\r
-                                                                       <option value="left">{$lang_media_align_left}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-\r
-                                                       <td><label for="bgcolor">{$lang_media_bgcolor}</label></td>\r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="bgcolor" name="bgcolor" type="text" value="" size="9" onchange="updateColor('bgcolor_pick','bgcolor');generatePreview();" /></td>\r
-                                                                               <td id="bgcolor_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="vspace">{$lang_media_vspace}</label></td>\r
-                                                       <td><input type="text" id="vspace" name="vspace" class="number" onchange="generatePreview();" /></td>\r
-                                                       <td><label for="hspace">{$lang_media_hspace}</label></td>\r
-                                                       <td><input type="text" id="hspace" name="hspace" class="number" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset id="flash_options">\r
-                                       <legend>{$lang_media_flash_options}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td><label for="flash_quality">{$lang_media_quality}</label></td>\r
-                                                       <td>\r
-                                                               <select id="flash_quality" name="flash_quality" onchange="generatePreview();">\r
-                                                                       <option value="">{$lang_not_set}</option> \r
-                                                                       <option value="high">high</option>\r
-                                                                       <option value="low">low</option>\r
-                                                                       <option value="autolow">autolow</option>\r
-                                                                       <option value="autohigh">autohigh</option>\r
-                                                                       <option value="best">best</option>\r
-                                                               </select>\r
-                                                       </td>\r
-\r
-                                                       <td><label for="flash_scale">{$lang_media_scale}</label></td>\r
-                                                       <td>\r
-                                                               <select id="flash_scale" name="flash_scale" onchange="generatePreview();">\r
-                                                                       <option value="">{$lang_not_set}</option> \r
-                                                                       <option value="showall">showall</option>\r
-                                                                       <option value="noborder">noborder</option>\r
-                                                                       <option value="exactfit">exactfit</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="flash_wmode">{$lang_media_wmode}</label></td>\r
-                                                       <td>\r
-                                                               <select id="flash_wmode" name="flash_wmode" onchange="generatePreview();">\r
-                                                                       <option value="">{$lang_not_set}</option> \r
-                                                                       <option value="window">window</option>\r
-                                                                       <option value="opaque">opaque</option>\r
-                                                                       <option value="transparent">transparent</option>\r
-                                                               </select>\r
-                                                       </td>\r
-\r
-                                                       <td><label for="flash_salign">{$lang_media_salign}</label></td>\r
-                                                       <td>\r
-                                                               <select id="flash_salign" name="flash_salign" onchange="generatePreview();">\r
-                                                                       <option value="">{$lang_not_set}</option> \r
-                                                                       <option value="l">{$lang_media_align_left}</option>\r
-                                                                       <option value="t">{$lang_media_align_top}</option>\r
-                                                                       <option value="r">{$lang_media_align_right}</option>\r
-                                                                       <option value="b">{$lang_media_align_bottom}</option>\r
-                                                                       <option value="tl">{$lang_media_align_top_left}</option>\r
-                                                                       <option value="tr">{$lang_media_align_top_right}</option>\r
-                                                                       <option value="bl">{$lang_media_align_bottom_left}</option>\r
-                                                                       <option value="br">{$lang_media_align_bottom_right}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="flash_play" name="flash_play" checked="checked" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="flash_play">{$lang_media_play}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="flash_loop" name="flash_loop" checked="checked" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="flash_loop">{$lang_media_loop}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="flash_menu" name="flash_menu" checked="checked" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="flash_menu">{$lang_media_menu}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="flash_swliveconnect" name="flash_swliveconnect" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="flash_swliveconnect">{$lang_media_liveconnect}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-                                       </table>\r
-\r
-                                       <table>\r
-                                               <tr>\r
-                                                       <td><label for="flash_base">{$lang_media_base}</label></td>\r
-                                                       <td><input type="text" id="flash_base" name="flash_base" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="flash_flashvars">{$lang_media_flashvars}</label></td>\r
-                                                       <td><input type="text" id="flash_flashvars" name="flash_flashvars" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset id="qt_options">\r
-                                       <legend>{$lang_media_qt_options}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="qt_loop" name="qt_loop" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="qt_loop">{$lang_media_loop}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="qt_autoplay" name="qt_autoplay" checked="checked" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="qt_autoplay">{$lang_media_play}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="qt_cache" name="qt_cache" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="qt_cache">{$lang_media_cache}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="qt_controller" name="qt_controller" checked="checked" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="qt_controller">{$lang_media_controller}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="qt_correction" name="qt_correction" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="qt_correction">{$lang_media_correction}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="qt_enablejavascript" name="qt_enablejavascript" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="qt_enablejavascript">{$lang_media_enablejavascript}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="qt_kioskmode" name="qt_kioskmode" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="qt_kioskmode">{$lang_media_kioskmode}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="qt_autohref" name="qt_autohref" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="qt_autohref">{$lang_media_autohref}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="qt_playeveryframe" name="qt_playeveryframe" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="qt_playeveryframe">{$lang_media_playeveryframe}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="qt_targetcache" name="qt_targetcache" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="qt_targetcache">{$lang_media_targetcache}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="qt_scale">{$lang_media_scale}</label></td>\r
-                                                       <td><select id="qt_scale" name="qt_scale" class="mceEditableSelect" onchange="generatePreview();">\r
-                                                                       <option value="">{$lang_not_set}</option> \r
-                                                                       <option value="tofit">tofit</option>\r
-                                                                       <option value="aspect">aspect</option>\r
-                                                               </select>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">&nbsp;</td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="qt_starttime">{$lang_media_starttime}</label></td>\r
-                                                       <td><input type="text" id="qt_starttime" name="qt_starttime" onchange="generatePreview();" /></td>\r
-\r
-                                                       <td><label for="qt_endtime">{$lang_media_endtime}</label></td>\r
-                                                       <td><input type="text" id="qt_endtime" name="qt_endtime" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="qt_target">{$lang_media_target}</label></td>\r
-                                                       <td><input type="text" id="qt_target" name="qt_target" onchange="generatePreview();" /></td>\r
-\r
-                                                       <td><label for="qt_href">{$lang_media_href}</label></td>\r
-                                                       <td><input type="text" id="qt_href" name="qt_href" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="qt_qtsrcchokespeed">{$lang_media_qtsrcchokespeed}</label></td>\r
-                                                       <td><input type="text" id="qt_qtsrcchokespeed" name="qt_qtsrcchokespeed" onchange="generatePreview();" /></td>\r
-\r
-                                                       <td><label for="qt_volume">{$lang_media_volume}</label></td>\r
-                                                       <td><input type="text" id="qt_volume" name="qt_volume" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="qt_qtsrc">{$lang_media_qtsrc}</label></td>\r
-                                                       <td colspan="4">\r
-                                                       <table border="0" cellspacing="0" cellpadding="0">\r
-                                                                 <tr>\r
-                                                                       <td><input type="text" id="qt_qtsrc" name="qt_qtsrc" onchange="generatePreview();" /></td>\r
-                                                                       <td id="qtsrcfilebrowsercontainer">&nbsp;</td>\r
-                                                                 </tr>\r
-                                                       </table>\r
-                                                       </td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset id="wmp_options">\r
-                                       <legend>{$lang_media_wmp_options}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="wmp_autostart" name="wmp_autostart" checked="checked" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="wmp_autostart">{$lang_media_autostart}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="wmp_enabled" name="wmp_enabled" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="wmp_enabled">{$lang_media_enabled}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="wmp_enablecontextmenu" name="wmp_enablecontextmenu" checked="checked" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="wmp_enablecontextmenu">{$lang_media_menu}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="wmp_fullscreen" name="wmp_fullscreen" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="wmp_fullscreen">{$lang_media_fullscreen}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="wmp_invokeurls" name="wmp_invokeurls" checked="checked" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="wmp_invokeurls">{$lang_media_invokeurls}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="wmp_mute" name="wmp_mute" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="wmp_mute">{$lang_media_mute}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="wmp_stretchtofit" name="wmp_stretchtofit" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="wmp_stretchtofit">{$lang_media_stretchtofit}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="wmp_windowlessvideo" name="wmp_windowlessvideo" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="wmp_windowlessvideo">{$lang_media_windowlessvideo}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="wmp_balance">{$lang_media_balance}</label></td>\r
-                                                       <td><input type="text" id="wmp_balance" name="wmp_balance" onchange="generatePreview();" /></td>\r
-\r
-                                                       <td><label for="wmp_baseurl">{$lang_media_baseurl}</label></td>\r
-                                                       <td><input type="text" id="wmp_baseurl" name="wmp_baseurl" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="wmp_captioningid">{$lang_media_captioningid}</label></td>\r
-                                                       <td><input type="text" id="wmp_captioningid" name="wmp_captioningid" onchange="generatePreview();" /></td>\r
-\r
-                                                       <td><label for="wmp_currentmarker">{$lang_media_currentmarker}</label></td>\r
-                                                       <td><input type="text" id="wmp_currentmarker" name="wmp_currentmarker" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="wmp_currentposition">{$lang_media_currentposition}</label></td>\r
-                                                       <td><input type="text" id="wmp_currentposition" name="wmp_currentposition" onchange="generatePreview();" /></td>\r
-\r
-                                                       <td><label for="wmp_defaultframe">{$lang_media_defaultframe}</label></td>\r
-                                                       <td><input type="text" id="wmp_defaultframe" name="wmp_defaultframe" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="wmp_playcount">{$lang_media_playcount}</label></td>\r
-                                                       <td><input type="text" id="wmp_playcount" name="wmp_playcount" onchange="generatePreview();" /></td>\r
-\r
-                                                       <td><label for="wmp_rate">{$lang_media_rate}</label></td>\r
-                                                       <td><input type="text" id="wmp_rate" name="wmp_rate" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="wmp_uimode">{$lang_media_uimode}</label></td>\r
-                                                       <td><input type="text" id="wmp_uimode" name="wmp_uimode" onchange="generatePreview();" /></td>\r
-\r
-                                                       <td><label for="wmp_volume">{$lang_media_volume}</label></td>\r
-                                                       <td><input type="text" id="wmp_volume" name="wmp_volume" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset id="rmp_options">\r
-                                       <legend>{$lang_media_rmp_options}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="rmp_autostart" name="rmp_autostart" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="rmp_autostart">{$lang_media_autostart}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="rmp_loop" name="rmp_loop" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="rmp_loop">{$lang_media_loop}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="rmp_autogotourl" name="rmp_autogotourl" checked="checked" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="rmp_autogotourl">{$lang_media_autogotourl}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="rmp_center" name="rmp_center" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="rmp_center">{$lang_media_center}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="rmp_imagestatus" name="rmp_imagestatus" checked="checked" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="rmp_imagestatus">{$lang_media_imagestatus}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="rmp_maintainaspect" name="rmp_maintainaspect" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="rmp_maintainaspect">{$lang_media_maintainaspect}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="rmp_nojava" name="rmp_nojava" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="rmp_nojava">{$lang_media_nojava}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="rmp_prefetch" name="rmp_prefetch" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="rmp_prefetch">{$lang_media_prefetch}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="rmp_shuffle" name="rmp_shuffle" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="rmp_shuffle">{$lang_media_shuffle}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               &nbsp;\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="rmp_console">{$lang_media_console}</label></td>\r
-                                                       <td><input type="text" id="rmp_console" name="rmp_console" onchange="generatePreview();" /></td>\r
-\r
-                                                       <td><label for="rmp_controls">{$lang_media_controls}</label></td>\r
-                                                       <td><input type="text" id="rmp_controls" name="rmp_controls" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="rmp_numloop">{$lang_media_numloop}</label></td>\r
-                                                       <td><input type="text" id="rmp_numloop" name="rmp_numloop" onchange="generatePreview();" /></td>\r
-\r
-                                                       <td><label for="rmp_scriptcallbacks">{$lang_media_scriptcallbacks}</label></td>\r
-                                                       <td><input type="text" id="rmp_scriptcallbacks" name="rmp_scriptcallbacks" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-\r
-                               <fieldset id="shockwave_options">\r
-                                       <legend>{$lang_media_shockwave_options}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td><label for="shockwave_swstretchstyle">{$lang_media_swstretchstyle}</label></td>\r
-                                                       <td>\r
-                                                               <select id="shockwave_swstretchstyle" name="shockwave_swstretchstyle" onchange="generatePreview();">\r
-                                                                       <option value="none">{$lang_not_set}</option>\r
-                                                                       <option value="meet">Meet</option>\r
-                                                                       <option value="fill">Fill</option>\r
-                                                                       <option value="stage">Stage</option>\r
-                                                               </select>\r
-                                                       </td>\r
-\r
-                                                       <td><label for="shockwave_swvolume">{$lang_media_volume}</label></td>\r
-                                                       <td><input type="text" id="shockwave_swvolume" name="shockwave_swvolume" onchange="generatePreview();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="shockwave_swstretchhalign">{$lang_media_swstretchhalign}</label></td>\r
-                                                       <td>\r
-                                                               <select id="shockwave_swstretchhalign" name="shockwave_swstretchhalign" onchange="generatePreview();">\r
-                                                                       <option value="none">{$lang_not_set}</option>\r
-                                                                       <option value="left">{$lang_media_align_left}</option>\r
-                                                                       <option value="center">{$lang_media_align_center}</option>\r
-                                                                       <option value="right">{$lang_media_align_right}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-\r
-                                                       <td><label for="shockwave_swstretchvalign">{$lang_media_swstretchvalign}</label></td>\r
-                                                       <td>\r
-                                                               <select id="shockwave_swstretchvalign" name="shockwave_swstretchvalign" onchange="generatePreview();">\r
-                                                                       <option value="none">{$lang_not_set}</option>\r
-                                                                       <option value="meet">Meet</option>\r
-                                                                       <option value="fill">Fill</option>\r
-                                                                       <option value="stage">Stage</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="shockwave_autostart" name="shockwave_autostart" onchange="generatePreview();" checked="checked" /></td>\r
-                                                                               <td><label for="shockwave_autostart">{$lang_media_autostart}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="shockwave_sound" name="shockwave_sound" onchange="generatePreview();" checked="checked" /></td>\r
-                                                                               <td><label for="shockwave_sound">{$lang_media_sound}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-\r
-                                               <tr>\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="shockwave_swliveconnect" name="shockwave_swliveconnect" onchange="generatePreview();" /></td>\r
-                                                                               <td><label for="shockwave_swliveconnect">{$lang_media_liveconnect}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-\r
-                                                       <td colspan="2">\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input type="checkbox" class="checkbox" id="shockwave_progress" name="shockwave_progress" onchange="generatePreview();" checked="checked" /></td>\r
-                                                                               <td><label for="shockwave_progress">{$lang_media_progress}</label></td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-               </div>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div style="float: left">\r
-                               <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertMedia();" />\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-                       </div>\r
-               </div>\r
-       </form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js
deleted file mode 100644 (file)
index 5b12797..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('nonbreaking');var TinyMCE_NonBreakingPlugin={getInfo:function(){return{longname:'Nonbreaking space',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){switch(cn){case"nonbreaking":return tinyMCE.getButtonHTML(cn,'lang_nonbreaking_desc','{$pluginurl}/images/nonbreaking.gif','mceNonBreaking',false)}return""},execCommand:function(editor_id,element,command,user_interface,value){var inst=tinyMCE.getInstanceById(editor_id),h;switch(command){case"mceNonBreaking":h=(inst.visualChars&&inst.visualChars.state)?'<span class="mceItemHiddenVisualChar">&middot;</span>':'&nbsp;';tinyMCE.execInstanceCommand(editor_id,'mceInsertContent',false,h);return true}return false},handleEvent:function(e){var inst,h;if(!tinyMCE.isOpera&&e.type=='keydown'&&e.keyCode==9&&tinyMCE.getParam('nonbreaking_force_tab',false)){inst=tinyMCE.selectedInstance;h=(inst.visualChars&&inst.visualChars.state)?'<span class="mceItemHiddenVisualChar">&middot;&middot;&middot;</span>':'&nbsp;&nbsp;&nbsp;';tinyMCE.execInstanceCommand(inst.editorId,'mceInsertContent',false,h);tinyMCE.cancelEvent(e);return false}return true}};tinyMCE.addPlugin("nonbreaking",TinyMCE_NonBreakingPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js
deleted file mode 100644 (file)
index 73d5478..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('nonbreaking');\r
-\r
-var TinyMCE_NonBreakingPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Nonbreaking space',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "nonbreaking":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_nonbreaking_desc', '{$pluginurl}/images/nonbreaking.gif', 'mceNonBreaking', false);\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               var inst = tinyMCE.getInstanceById(editor_id), h;\r
-\r
-               switch (command) {\r
-                       case "mceNonBreaking":\r
-                               h = (inst.visualChars && inst.visualChars.state) ? '<span class="mceItemHiddenVisualChar">&middot;</span>' : '&nbsp;';\r
-                               tinyMCE.execInstanceCommand(editor_id, 'mceInsertContent', false, h);\r
-                               return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       handleEvent : function(e) {\r
-               var inst, h;\r
-\r
-               if (!tinyMCE.isOpera && e.type == 'keydown' && e.keyCode == 9 && tinyMCE.getParam('nonbreaking_force_tab', false)) {\r
-                       inst = tinyMCE.selectedInstance;\r
-\r
-                       h = (inst.visualChars && inst.visualChars.state) ? '<span class="mceItemHiddenVisualChar">&middot;&middot;&middot;</span>' : '&nbsp;&nbsp;&nbsp;';\r
-                       tinyMCE.execInstanceCommand(inst.editorId, 'mceInsertContent', false, h);\r
-\r
-                       tinyMCE.cancelEvent(e);\r
-                       return false;\r
-               }\r
-\r
-               return true;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("nonbreaking", TinyMCE_NonBreakingPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/images/nonbreaking.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/images/nonbreaking.gif
deleted file mode 100644 (file)
index a731fc9..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/images/nonbreaking.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/nonbreaking/langs/en.js
deleted file mode 100644 (file)
index fd49a64..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('nonbreaking',{\r
-desc : 'Insert non-breaking space character'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/css/noneditable.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/css/noneditable.css
deleted file mode 100644 (file)
index be0ab65..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-/* This is the CSS file for the noneditable elements plugin */\r
-\r
-.mceEditable {\r
-       /*border: 1px dotted #0000cc;*/\r
-}\r
-\r
-.mceNonEditable {\r
-       /*border: 1px dotted #cc0000;*/\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js
deleted file mode 100644 (file)
index 6060981..0000000
+++ /dev/null
@@ -1 +0,0 @@
-var TinyMCE_NonEditablePlugin={getInfo:function(){return{longname:'Non editable elements',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/noneditable',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){tinyMCE.importCSS(inst.getDoc(),tinyMCE.baseURL+"/plugins/noneditable/css/noneditable.css");if(tinyMCE.isMSIE5_0)tinyMCE.settings['plugins']=tinyMCE.settings['plugins'].replace(/noneditable/gi,'Noneditable')},handleEvent:function(e){return this._moveSelection(e,tinyMCE.selectedInstance)},cleanup:function(type,content,inst){switch(type){case"insert_to_editor_dom":var nodes,i,editClass,nonEditClass,editable,elm;if(tinyMCE.isGecko)return content;nodes=tinyMCE.getNodeTree(content,[],1);editClass=tinyMCE.getParam("noneditable_editable_class","mceEditable");nonEditClass=tinyMCE.getParam("noneditable_noneditable_class","mceNonEditable");for(i=0;i<nodes.length;i++){elm=nodes[i];editable=tinyMCE.getAttrib(elm,"contenteditable");if(new RegExp("true|false","gi").test(editable))TinyMCE_NonEditablePlugin._setEditable(elm,editable=="true");if(tinyMCE.isIE){if(tinyMCE.hasCSSClass(elm,editClass))elm.contentEditable=true;if(tinyMCE.hasCSSClass(elm,nonEditClass))elm.contentEditable=false}}break;case"insert_to_editor":var editClass=tinyMCE.getParam("noneditable_editable_class","mceEditable");var nonEditClass=tinyMCE.getParam("noneditable_noneditable_class","mceNonEditable");content=content.replace(/mceItemEditable/g,editClass);content=content.replace(/mceItemNonEditable/g,nonEditClass);if(tinyMCE.isIE&&(content.indexOf(editClass)!=-1||content.indexOf(nonEditClass)!=-1)){content=content.replace(new RegExp("class=\"(.+)("+editClass+")\"","gi"),'class="$1$2" contenteditable="true"');content=content.replace(new RegExp("class=\"(.+)("+nonEditClass+")\"","gi"),'class="$1$2" contenteditable="false"');content=content.replace(new RegExp("class=\"("+editClass+")([^\"]*)\"","gi"),'class="$1$2" contenteditable="true"');content=content.replace(new RegExp("class=\"("+nonEditClass+")([^\"]*)\"","gi"),'class="$1$2" contenteditable="false"');content=content.replace(new RegExp("class=\"(.+)("+editClass+")([^\"]*)\"","gi"),'class="$1$2$3" contenteditable="true"');content=content.replace(new RegExp("class=\"(.+)("+nonEditClass+")([^\"]*)\"","gi"),'class="$1$2$3" contenteditable="false"')}break;case"get_from_editor_dom":if(tinyMCE.isGecko)return content;if(tinyMCE.getParam("noneditable_leave_contenteditable",false)){var nodes=tinyMCE.getNodeTree(content,new Array(),1);for(var i=0;i<nodes.length;i++)nodes[i].removeAttribute("contenteditable")}break}return content},_moveSelection:function(e,inst){var s,r,sc,ec,el,c=tinyMCE.getParam('noneditable_editable_class','mceNonEditable');if(!inst)return true;if(tinyMCE.isGecko){s=inst.selection.getSel();r=s.getRangeAt(0);sc=tinyMCE.getParentNode(r.startContainer,function(n){return tinyMCE.hasCSSClass(n,c)});ec=tinyMCE.getParentNode(r.endContainer,function(n){return tinyMCE.hasCSSClass(n,c)});sc&&r.setStartBefore(sc);ec&&r.setEndAfter(ec);if(sc||ec){if(e.type=='keypress'&&e.keyCode==39){el=sc||ec;}s.removeAllRanges();s.addRange(r);return tinyMCE.cancelEvent(e)}}return true},_setEditable:function(elm,state){var editClass=tinyMCE.getParam("noneditable_editable_class","mceEditable");var nonEditClass=tinyMCE.getParam("noneditable_noneditable_class","mceNonEditable");var className=elm.className?elm.className:"";if(className.indexOf(editClass)!=-1||className.indexOf(nonEditClass)!=-1)return;if((className=tinyMCE.getAttrib(elm,"class"))!="")className+=" ";className+=state?editClass:nonEditClass;elm.setAttribute("class",className);elm.className=className}};tinyMCE.addPlugin("noneditable",TinyMCE_NonEditablePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js
deleted file mode 100644 (file)
index df3000c..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 205 2007-02-12 18:58:29Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-var TinyMCE_NonEditablePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Non editable elements',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/noneditable',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               tinyMCE.importCSS(inst.getDoc(), tinyMCE.baseURL + "/plugins/noneditable/css/noneditable.css");\r
-\r
-               // Ugly hack\r
-               if (tinyMCE.isMSIE5_0)\r
-                       tinyMCE.settings['plugins'] = tinyMCE.settings['plugins'].replace(/noneditable/gi, 'Noneditable');\r
-       },\r
-\r
-       handleEvent : function(e) {\r
-               return this._moveSelection(e, tinyMCE.selectedInstance);\r
-       },\r
-\r
-       cleanup : function(type, content, inst) {\r
-               switch (type) {\r
-                       case "insert_to_editor_dom":\r
-                               var nodes, i, editClass, nonEditClass, editable, elm;\r
-\r
-                               // Pass through Gecko\r
-                               if (tinyMCE.isGecko)\r
-                                       return content;\r
-\r
-                               nodes = tinyMCE.getNodeTree(content, [], 1);\r
-\r
-                               editClass = tinyMCE.getParam("noneditable_editable_class", "mceEditable");\r
-                               nonEditClass = tinyMCE.getParam("noneditable_noneditable_class", "mceNonEditable");\r
-\r
-                               for (i=0; i<nodes.length; i++) {\r
-                                       elm = nodes[i];\r
-\r
-                                       // Convert contenteditable to classes\r
-                                       editable = tinyMCE.getAttrib(elm, "contenteditable");\r
-                                       if (new RegExp("true|false","gi").test(editable))\r
-                                               TinyMCE_NonEditablePlugin._setEditable(elm, editable == "true");\r
-\r
-                                       if (tinyMCE.isIE) {\r
-                                               if (tinyMCE.hasCSSClass(elm, editClass))\r
-                                                       elm.contentEditable = true;\r
-\r
-                                               if (tinyMCE.hasCSSClass(elm, nonEditClass))\r
-                                                       elm.contentEditable = false;\r
-                                       }\r
-                               }\r
-\r
-                               break;\r
-\r
-                       case "insert_to_editor":\r
-                               var editClass = tinyMCE.getParam("noneditable_editable_class", "mceEditable");\r
-                               var nonEditClass = tinyMCE.getParam("noneditable_noneditable_class", "mceNonEditable");\r
-\r
-                               // Replace mceItem to new school\r
-                               content = content.replace(/mceItemEditable/g, editClass);\r
-                               content = content.replace(/mceItemNonEditable/g, nonEditClass);\r
-\r
-                               if (tinyMCE.isIE && (content.indexOf(editClass) != -1 || content.indexOf(nonEditClass) != -1)) {\r
-                                       content = content.replace(new RegExp("class=\"(.+)(" + editClass + ")\"", "gi"), 'class="$1$2" contenteditable="true"');\r
-                                       content = content.replace(new RegExp("class=\"(.+)(" + nonEditClass + ")\"", "gi"), 'class="$1$2" contenteditable="false"');\r
-                                       content = content.replace(new RegExp("class=\"(" + editClass + ")([^\"]*)\"", "gi"), 'class="$1$2" contenteditable="true"');\r
-                                       content = content.replace(new RegExp("class=\"(" + nonEditClass + ")([^\"]*)\"", "gi"), 'class="$1$2" contenteditable="false"');\r
-                                       content = content.replace(new RegExp("class=\"(.+)(" + editClass + ")([^\"]*)\"", "gi"), 'class="$1$2$3" contenteditable="true"');\r
-                                       content = content.replace(new RegExp("class=\"(.+)(" + nonEditClass + ")([^\"]*)\"", "gi"), 'class="$1$2$3" contenteditable="false"');\r
-                               }\r
-\r
-                               break;\r
-\r
-                       case "get_from_editor_dom":\r
-                               // Pass through Gecko\r
-                               if (tinyMCE.isGecko)\r
-                                       return content;\r
-\r
-                               if (tinyMCE.getParam("noneditable_leave_contenteditable", false)) {\r
-                                       var nodes = tinyMCE.getNodeTree(content, new Array(), 1);\r
-\r
-                                       for (var i=0; i<nodes.length; i++)\r
-                                               nodes[i].removeAttribute("contenteditable");\r
-                               }\r
-\r
-                               break;\r
-               }\r
-\r
-               return content;\r
-       },\r
-\r
-       _moveSelection : function(e, inst) {\r
-               var s, r, sc, ec, el, c = tinyMCE.getParam('noneditable_editable_class', 'mceNonEditable');\r
-\r
-               if (!inst)\r
-                       return true;\r
-\r
-               // Always select whole element\r
-               if (tinyMCE.isGecko) {\r
-                       s = inst.selection.getSel();\r
-                       r = s.getRangeAt(0);\r
-                       sc = tinyMCE.getParentNode(r.startContainer, function (n) {return tinyMCE.hasCSSClass(n, c);});\r
-                       ec = tinyMCE.getParentNode(r.endContainer, function (n) {return tinyMCE.hasCSSClass(n, c);});\r
-\r
-                       sc && r.setStartBefore(sc);\r
-                       ec && r.setEndAfter(ec);\r
-\r
-                       if (sc || ec) {\r
-                               if (e.type == 'keypress' && e.keyCode == 39) {\r
-                                       el = sc || ec;\r
-\r
-                                       // Try!!\r
-                               }\r
-\r
-                               s.removeAllRanges();\r
-                               s.addRange(r);\r
-\r
-                               return tinyMCE.cancelEvent(e);\r
-                       }\r
-               }\r
-\r
-               return true;\r
-       },\r
-\r
-       _setEditable : function(elm, state) {\r
-               var editClass = tinyMCE.getParam("noneditable_editable_class", "mceEditable");\r
-               var nonEditClass = tinyMCE.getParam("noneditable_noneditable_class", "mceNonEditable");\r
-\r
-               var className = elm.className ? elm.className : "";\r
-\r
-               if (className.indexOf(editClass) != -1 || className.indexOf(nonEditClass) != -1)\r
-                       return;\r
-\r
-               if ((className = tinyMCE.getAttrib(elm, "class")) != "")\r
-                       className += " ";\r
-\r
-               className += state ? editClass : nonEditClass;\r
-\r
-               elm.setAttribute("class", className);\r
-               elm.className = className;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("noneditable", TinyMCE_NonEditablePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/noneditable/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/blank.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/blank.htm
deleted file mode 100644 (file)
index 1ddf829..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>blank_page</title>\r
-       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />\r
-       <script language="javascript">\r
-               function init() {\r
-                       document.body.contentEditable = true;\r
-                       document.designMode = 'on';\r
-                       parent.initIframe(document);\r
-                       window.focus();\r
-               }\r
-       </script>\r
-       <link href="css/blank.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="init();">\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/css/blank.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/css/blank.css
deleted file mode 100644 (file)
index eca411a..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-body {\r
-       background-color: #FFFFFF;\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 10px;\r
-       scrollbar-3dlight-color: #F0F0EE;\r
-       scrollbar-arrow-color: #676662;\r
-       scrollbar-base-color: #F0F0EE;\r
-       scrollbar-darkshadow-color: #DDDDDD;\r
-       scrollbar-face-color: #E0E0DD;\r
-       scrollbar-highlight-color: #F0F0EE;\r
-       scrollbar-shadow-color: #F0F0EE;\r
-       scrollbar-track-color: #F5F5F5;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/css/pasteword.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/css/pasteword.css
deleted file mode 100644 (file)
index b3be627..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-.sourceIframe {\r
-       border: 1px solid #808080;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js
deleted file mode 100644 (file)
index ed901bb..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('paste');var TinyMCE_PastePlugin={getInfo:function(){return{longname:'Paste text/word',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/paste',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){if(tinyMCE.isMSIE&&tinyMCE.getParam("paste_auto_cleanup_on_paste",false))tinyMCE.addEvent(inst.getBody(),"paste",TinyMCE_PastePlugin._handlePasteEvent)},handleEvent:function(e){if(!tinyMCE.isRealIE&&tinyMCE.getParam("paste_auto_cleanup_on_paste",false)&&e.ctrlKey&&e.keyCode==86&&e.type=="keydown"){window.setTimeout('tinyMCE.selectedInstance.execCommand("mcePasteText",true)',1);return tinyMCE.cancelEvent(e)}return true},getControlHTML:function(cn){switch(cn){case"pastetext":return tinyMCE.getButtonHTML(cn,'lang_paste_text_desc','{$pluginurl}/images/pastetext.gif','mcePasteText',true);case"pasteword":return tinyMCE.getButtonHTML(cn,'lang_paste_word_desc','{$pluginurl}/images/pasteword.gif','mcePasteWord',true);case"selectall":return tinyMCE.getButtonHTML(cn,'lang_selectall_desc','{$pluginurl}/images/selectall.gif','mceSelectAll',true)}return''},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mcePasteText":if(user_interface){if((tinyMCE.isMSIE&&!tinyMCE.isOpera)&&!tinyMCE.getParam('paste_use_dialog',false))TinyMCE_PastePlugin._insertText(clipboardData.getData("Text"),true);else{var template=new Array();template['file']='../../plugins/paste/pastetext.htm';template['width']=450;template['height']=400;var plain_text="";tinyMCE.openWindow(template,{editor_id:editor_id,plain_text:plain_text,resizable:"yes",scrollbars:"no",inline:"yes",mceDo:'insert'})}}else TinyMCE_PastePlugin._insertText(value['html'],value['linebreaks']);return true;case"mcePasteWord":if(user_interface){if((tinyMCE.isMSIE&&!tinyMCE.isOpera)&&!tinyMCE.getParam('paste_use_dialog',false)){TinyMCE_PastePlugin._insertWordContent(TinyMCE_PastePlugin._clipboardHTML())}else{var template=new Array();template['file']='../../plugins/paste/pasteword.htm';template['width']=450;template['height']=400;var plain_text="";tinyMCE.openWindow(template,{editor_id:editor_id,plain_text:plain_text,resizable:"yes",scrollbars:"no",inline:"yes",mceDo:'insert'})}}else TinyMCE_PastePlugin._insertWordContent(value);return true;case"mceSelectAll":tinyMCE.execInstanceCommand(editor_id,'selectall');return true}return false},_handlePasteEvent:function(e){switch(e.type){case"paste":var html=TinyMCE_PastePlugin._clipboardHTML();var r,inst=tinyMCE.selectedInstance;if(inst&&(r=inst.getRng())&&r.text.length>0)tinyMCE.execCommand('delete');if(html&&html.length>0)tinyMCE.execCommand('mcePasteWord',false,html);tinyMCE.cancelEvent(e);return false}return true},_insertText:function(content,bLinebreaks){if(content&&content.length>0){if(bLinebreaks){if(tinyMCE.getParam("paste_create_paragraphs",true)){var rl=tinyMCE.getParam("paste_replace_list",'\u2122,<sup>TM</sup>,\u2026,...,\u201c|\u201d,",\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(',');for(var i=0;i<rl.length;i+=2)content=content.replace(new RegExp(rl[i],'gi'),rl[i+1]);content=tinyMCE.regexpReplace(content,"\r\n\r\n","</p><p>","gi");content=tinyMCE.regexpReplace(content,"\r\r","</p><p>","gi");content=tinyMCE.regexpReplace(content,"\n\n","</p><p>","gi");if((pos=content.indexOf('</p><p>'))!=-1){tinyMCE.execCommand("Delete");var node=tinyMCE.selectedInstance.getFocusElement();var breakElms=new Array();do{if(node.nodeType==1){if(node.nodeName=="TD"||node.nodeName=="BODY")break;breakElms[breakElms.length]=node}}while(node=node.parentNode);var before="",after="</p>";before+=content.substring(0,pos);for(var i=0;i<breakElms.length;i++){before+="</"+breakElms[i].nodeName+">";after+="<"+breakElms[(breakElms.length-1)-i].nodeName+">"}before+="<p>";content=before+content.substring(pos+7)+after}}if(tinyMCE.getParam("paste_create_linebreaks",true)){content=tinyMCE.regexpReplace(content,"\r\n","<br />","gi");content=tinyMCE.regexpReplace(content,"\r","<br />","gi");content=tinyMCE.regexpReplace(content,"\n","<br />","gi")}}tinyMCE.execCommand("mceInsertRawHTML",false,content)}},_insertWordContent:function(content){if(content&&content.length>0){var bull=String.fromCharCode(8226);var middot=String.fromCharCode(183);var cb;if((cb=tinyMCE.getParam("paste_insert_word_content_callback",""))!="")content=eval(cb+"('before', content)");var rl=tinyMCE.getParam("paste_replace_list",'\u2122,<sup>TM</sup>,\u2026,...,\u201c|\u201d,",\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(',');for(var i=0;i<rl.length;i+=2)content=content.replace(new RegExp(rl[i],'gi'),rl[i+1]);if(tinyMCE.getParam("paste_convert_headers_to_strong",false)){content=content.replace(new RegExp('<p class=MsoHeading.*?>(.*?)<\/p>','gi'),'<p><b>$1</b></p>')}content=content.replace(new RegExp('tab-stops: list [0-9]+.0pt">','gi'),'">'+"--list--");content=content.replace(new RegExp(bull+"(.*?)<BR>","gi"),"<p>"+middot+"$1</p>");content=content.replace(new RegExp('<SPAN style="mso-list: Ignore">','gi'),"<span>"+bull);content=content.replace(/<o:p><\/o:p>/gi,"");content=content.replace(new RegExp('<br style="page-break-before: always;.*>','gi'),'-- page break --');content=content.replace(new RegExp('<(!--)([^>]*)(--)>','g'),"");if(tinyMCE.getParam("paste_remove_spans",true))content=content.replace(/<\/?span[^>]*>/gi,"");if(tinyMCE.getParam("paste_remove_styles",true))content=content.replace(new RegExp('<(\\w[^>]*) style="([^"]*)"([^>]*)','gi'),"<$1$3");content=content.replace(/<\/?font[^>]*>/gi,"");switch(tinyMCE.getParam("paste_strip_class_attributes","all")){case"all":content=content.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi,"<$1$3");break;case"mso":content=content.replace(new RegExp('<(\\w[^>]*) class="?mso([^ |>]*)([^>]*)','gi'),"<$1$3");break}content=content.replace(new RegExp('href="?'+TinyMCE_PastePlugin._reEscape(""+document.location)+'','gi'),'href="'+tinyMCE.settings['document_base_url']);content=content.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi,"<$1$3");content=content.replace(/<\\?\?xml[^>]*>/gi,"");content=content.replace(/<\/?\w+:[^>]*>/gi,"");content=content.replace(/-- page break --\s*<p>&nbsp;<\/p>/gi,"");content=content.replace(/-- page break --/gi,"");if(!tinyMCE.settings['force_p_newlines']){content=content.replace('','','gi');content=content.replace('</p>','<br /><br />','gi')}if(!tinyMCE.isMSIE&&!tinyMCE.settings['force_p_newlines']){content=content.replace(/<\/?p[^>]*>/gi,"")}content=content.replace(/<\/?div[^>]*>/gi,"");if(tinyMCE.getParam("paste_convert_middot_lists",true)){var div=document.createElement("div");div.innerHTML=content;var className=tinyMCE.getParam("paste_unindented_list_class","unIndentedList");while(TinyMCE_PastePlugin._convertMiddots(div,"--list--"));while(TinyMCE_PastePlugin._convertMiddots(div,middot,className));while(TinyMCE_PastePlugin._convertMiddots(div,bull));content=div.innerHTML}if(tinyMCE.getParam("paste_convert_headers_to_strong",false)){content=content.replace(/<h[1-6]>&nbsp;<\/h[1-6]>/gi,'<p>&nbsp;&nbsp;</p>');content=content.replace(/<h[1-6]>/gi,'<p><b>');content=content.replace(/<\/h[1-6]>/gi,'</b></p>');content=content.replace(/<b>&nbsp;<\/b>/gi,'<b>&nbsp;&nbsp;</b>');content=content.replace(/^(&nbsp;)*/gi,'')}content=content.replace(/--list--/gi,"");if((cb=tinyMCE.getParam("paste_insert_word_content_callback",""))!="")content=eval(cb+"('after', content)");tinyMCE.execCommand("mceInsertContent",false,content);if(tinyMCE.getParam('paste_force_cleanup_wordpaste',true))window.setTimeout('tinyMCE.execCommand("mceCleanup");',1);}},_reEscape:function(s){var l="?.\\*[](){}+^$:";var o="";for(var i=0;i<s.length;i++){var c=s.charAt(i);if(l.indexOf(c)!=-1)o+='\\'+c;else o+=c}return o},_convertMiddots:function(div,search,class_name){var mdot=String.fromCharCode(183);var bull=String.fromCharCode(8226);var nodes=div.getElementsByTagName("p");var prevul;for(var i=0;i<nodes.length;i++){var p=nodes[i];if(p.innerHTML.indexOf(search)==0){var ul=document.createElement("ul");if(class_name)ul.className=class_name;var li=document.createElement("li");li.innerHTML=p.innerHTML.replace(new RegExp(''+mdot+'|'+bull+'|--list--|&nbsp;',"gi"),'');ul.appendChild(li);var np=p.nextSibling;while(np){if(np.nodeType==3&&new RegExp('^\\s$','m').test(np.nodeValue)){np=np.nextSibling;continue}if(search==mdot){if(np.nodeType==1&&new RegExp('^o(\\s+|&nbsp;)').test(np.innerHTML)){if(!prevul){prevul=ul;ul=document.createElement("ul");prevul.appendChild(ul)}np.innerHTML=np.innerHTML.replace(/^o/,'')}else{if(prevul){ul=prevul;prevul=null}if(np.nodeType!=1||np.innerHTML.indexOf(search)!=0)break}}else{if(np.nodeType!=1||np.innerHTML.indexOf(search)!=0)break}var cp=np.nextSibling;var li=document.createElement("li");li.innerHTML=np.innerHTML.replace(new RegExp(''+mdot+'|'+bull+'|--list--|&nbsp;',"gi"),'');np.parentNode.removeChild(np);ul.appendChild(li);np=cp}p.parentNode.replaceChild(ul,p);return true}}return false},_clipboardHTML:function(){var div=document.getElementById('_TinyMCE_clipboardHTML');if(!div){var div=document.createElement('DIV');div.id='_TinyMCE_clipboardHTML';with(div.style){visibility='hidden';overflow='hidden';position='absolute';width=1;height=1}document.body.appendChild(div)}div.innerHTML='';var rng=document.body.createTextRange();rng.moveToElementText(div);rng.execCommand('Paste');var html=div.innerHTML;div.innerHTML='';return html}};tinyMCE.addPlugin("paste",TinyMCE_PastePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin_src.js
deleted file mode 100644 (file)
index 4704e69..0000000
+++ /dev/null
@@ -1,395 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */ \r
-tinyMCE.importPluginLanguagePack('paste');\r
-\r
-var TinyMCE_PastePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Paste text/word',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/paste',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               if (tinyMCE.isMSIE && tinyMCE.getParam("paste_auto_cleanup_on_paste", false))\r
-                       tinyMCE.addEvent(inst.getBody(), "paste", TinyMCE_PastePlugin._handlePasteEvent);\r
-       },\r
-\r
-       handleEvent : function(e) {\r
-               // Force paste dialog if non IE browser\r
-               if (!tinyMCE.isRealIE && tinyMCE.getParam("paste_auto_cleanup_on_paste", false) && e.ctrlKey && e.keyCode == 86 && e.type == "keydown") {\r
-                       window.setTimeout('tinyMCE.selectedInstance.execCommand("mcePasteText",true)', 1);\r
-                       return tinyMCE.cancelEvent(e);\r
-               }\r
-\r
-               return true;\r
-       },\r
-\r
-       getControlHTML : function(cn) { \r
-               switch (cn) { \r
-                       case "pastetext":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_paste_text_desc', '{$pluginurl}/images/pastetext.gif', 'mcePasteText', true);\r
-\r
-                       case "pasteword":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_paste_word_desc', '{$pluginurl}/images/pasteword.gif', 'mcePasteWord', true);\r
-\r
-                       case "selectall":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_selectall_desc', '{$pluginurl}/images/selectall.gif', 'mceSelectAll', true);\r
-               } \r
-\r
-               return ''; \r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) { \r
-               switch (command) { \r
-                       case "mcePasteText": \r
-                               if (user_interface) {\r
-                                       if ((tinyMCE.isMSIE && !tinyMCE.isOpera) && !tinyMCE.getParam('paste_use_dialog', false))\r
-                                               TinyMCE_PastePlugin._insertText(clipboardData.getData("Text"), true); \r
-                                       else { \r
-                                               var template = new Array(); \r
-                                               template['file']        = '../../plugins/paste/pastetext.htm'; // Relative to theme \r
-                                               template['width']  = 450; \r
-                                               template['height'] = 400; \r
-                                               var plain_text = ""; \r
-                                               tinyMCE.openWindow(template, {editor_id : editor_id, plain_text: plain_text, resizable : "yes", scrollbars : "no", inline : "yes", mceDo : 'insert'}); \r
-                                       }\r
-                               } else\r
-                                       TinyMCE_PastePlugin._insertText(value['html'], value['linebreaks']);\r
-\r
-                               return true;\r
-\r
-                       case "mcePasteWord": \r
-                               if (user_interface) {\r
-                                       if ((tinyMCE.isMSIE && !tinyMCE.isOpera) && !tinyMCE.getParam('paste_use_dialog', false)) {\r
-                                               TinyMCE_PastePlugin._insertWordContent(TinyMCE_PastePlugin._clipboardHTML());\r
-                                       } else { \r
-                                               var template = new Array(); \r
-                                               template['file']        = '../../plugins/paste/pasteword.htm'; // Relative to theme \r
-                                               template['width']  = 450; \r
-                                               template['height'] = 400; \r
-                                               var plain_text = ""; \r
-                                               tinyMCE.openWindow(template, {editor_id : editor_id, plain_text: plain_text, resizable : "yes", scrollbars : "no", inline : "yes", mceDo : 'insert'});\r
-                                       }\r
-                               } else\r
-                                       TinyMCE_PastePlugin._insertWordContent(value);\r
-\r
-                               return true;\r
-\r
-                       case "mceSelectAll":\r
-                               tinyMCE.execInstanceCommand(editor_id, 'selectall'); \r
-                               return true; \r
-\r
-               } \r
-\r
-               // Pass to next handler in chain \r
-               return false; \r
-       },\r
-\r
-       // Private plugin internal methods\r
-\r
-       _handlePasteEvent : function(e) {\r
-               switch (e.type) {\r
-                       case "paste":\r
-                               var html = TinyMCE_PastePlugin._clipboardHTML();\r
-                               var r, inst = tinyMCE.selectedInstance;\r
-\r
-                               // Removes italic, strong etc, the if was needed due to bug #1437114\r
-                               if (inst && (r = inst.getRng()) && r.text.length > 0)\r
-                                       tinyMCE.execCommand('delete');\r
-\r
-                               if (html && html.length > 0)\r
-                                       tinyMCE.execCommand('mcePasteWord', false, html);\r
-\r
-                               tinyMCE.cancelEvent(e);\r
-                               return false;\r
-               }\r
-\r
-               return true;\r
-       },\r
-\r
-       _insertText : function(content, bLinebreaks) { \r
-               if (content && content.length > 0) {\r
-                       if (bLinebreaks) { \r
-                               // Special paragraph treatment \r
-                               if (tinyMCE.getParam("paste_create_paragraphs", true)) {\r
-                                       var rl = tinyMCE.getParam("paste_replace_list", '\u2122,<sup>TM</sup>,\u2026,...,\u201c|\u201d,",\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(',');\r
-                                       for (var i=0; i<rl.length; i+=2)\r
-                                               content = content.replace(new RegExp(rl[i], 'gi'), rl[i+1]);\r
-\r
-                                       content = tinyMCE.regexpReplace(content, "\r\n\r\n", "</p><p>", "gi"); \r
-                                       content = tinyMCE.regexpReplace(content, "\r\r", "</p><p>", "gi"); \r
-                                       content = tinyMCE.regexpReplace(content, "\n\n", "</p><p>", "gi"); \r
-\r
-                                       // Has paragraphs \r
-                                       if ((pos = content.indexOf('</p><p>')) != -1) { \r
-                                               tinyMCE.execCommand("Delete"); \r
-\r
-                                               var node = tinyMCE.selectedInstance.getFocusElement(); \r
-\r
-                                               // Get list of elements to break \r
-                                               var breakElms = new Array(); \r
-\r
-                                               do { \r
-                                                       if (node.nodeType == 1) { \r
-                                                               // Don't break tables and break at body \r
-                                                               if (node.nodeName == "TD" || node.nodeName == "BODY") \r
-                                                                       break; \r
-               \r
-                                                               breakElms[breakElms.length] = node; \r
-                                                       } \r
-                                               } while(node = node.parentNode); \r
-\r
-                                               var before = "", after = "</p>"; \r
-                                               before += content.substring(0, pos); \r
-\r
-                                               for (var i=0; i<breakElms.length; i++) { \r
-                                                       before += "</" + breakElms[i].nodeName + ">"; \r
-                                                       after += "<" + breakElms[(breakElms.length-1)-i].nodeName + ">"; \r
-                                               } \r
-\r
-                                               before += "<p>"; \r
-                                               content = before + content.substring(pos+7) + after; \r
-                                       } \r
-                               } \r
-\r
-                               if (tinyMCE.getParam("paste_create_linebreaks", true)) {\r
-                                       content = tinyMCE.regexpReplace(content, "\r\n", "<br />", "gi"); \r
-                                       content = tinyMCE.regexpReplace(content, "\r", "<br />", "gi"); \r
-                                       content = tinyMCE.regexpReplace(content, "\n", "<br />", "gi"); \r
-                               }\r
-                       } \r
-               \r
-                       tinyMCE.execCommand("mceInsertRawHTML", false, content); \r
-               }\r
-       },\r
-\r
-       _insertWordContent : function(content) { \r
-               if (content && content.length > 0) {\r
-                       // Cleanup Word content\r
-                       var bull = String.fromCharCode(8226);\r
-                       var middot = String.fromCharCode(183);\r
-                       var cb;\r
-\r
-                       if ((cb = tinyMCE.getParam("paste_insert_word_content_callback", "")) != "")\r
-                               content = eval(cb + "('before', content)");\r
-\r
-                       var rl = tinyMCE.getParam("paste_replace_list", '\u2122,<sup>TM</sup>,\u2026,...,\u201c|\u201d,",\u2019,\',\u2013|\u2014|\u2015|\u2212,-').split(',');\r
-                       for (var i=0; i<rl.length; i+=2)\r
-                               content = content.replace(new RegExp(rl[i], 'gi'), rl[i+1]);\r
-\r
-                       if (tinyMCE.getParam("paste_convert_headers_to_strong", false)) {\r
-                               content = content.replace(new RegExp('<p class=MsoHeading.*?>(.*?)<\/p>', 'gi'), '<p><b>$1</b></p>');\r
-                       }\r
-\r
-                       content = content.replace(new RegExp('tab-stops: list [0-9]+.0pt">', 'gi'), '">' + "--list--");\r
-                       content = content.replace(new RegExp(bull + "(.*?)<BR>", "gi"), "<p>" + middot + "$1</p>");\r
-                       content = content.replace(new RegExp('<SPAN style="mso-list: Ignore">', 'gi'), "<span>" + bull); // Covert to bull list\r
-                       content = content.replace(/<o:p><\/o:p>/gi, "");\r
-                       content = content.replace(new RegExp('<br style="page-break-before: always;.*>', 'gi'), '-- page break --'); // Replace pagebreaks\r
-                       content = content.replace(new RegExp('<(!--)([^>]*)(--)>', 'g'), "");  // Word comments\r
-\r
-                       if (tinyMCE.getParam("paste_remove_spans", true))\r
-                               content = content.replace(/<\/?span[^>]*>/gi, "");\r
-\r
-                       if (tinyMCE.getParam("paste_remove_styles", true))\r
-                               content = content.replace(new RegExp('<(\\w[^>]*) style="([^"]*)"([^>]*)', 'gi'), "<$1$3");\r
-\r
-                       content = content.replace(/<\/?font[^>]*>/gi, "");\r
-\r
-                       // Strips class attributes.\r
-                       switch (tinyMCE.getParam("paste_strip_class_attributes", "all")) {\r
-                               case "all":\r
-                                       content = content.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi, "<$1$3");\r
-                                       break;\r
-\r
-                               case "mso":\r
-                                       content = content.replace(new RegExp('<(\\w[^>]*) class="?mso([^ |>]*)([^>]*)', 'gi'), "<$1$3");\r
-                                       break;\r
-                       }\r
-\r
-                       content = content.replace(new RegExp('href="?' + TinyMCE_PastePlugin._reEscape("" + document.location) + '', 'gi'), 'href="' + tinyMCE.settings['document_base_url']);\r
-                       content = content.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi, "<$1$3");\r
-                       content = content.replace(/<\\?\?xml[^>]*>/gi, "");\r
-                       content = content.replace(/<\/?\w+:[^>]*>/gi, "");\r
-                       content = content.replace(/-- page break --\s*<p>&nbsp;<\/p>/gi, ""); // Remove pagebreaks\r
-                       content = content.replace(/-- page break --/gi, ""); // Remove pagebreaks\r
-\r
-       //              content = content.replace(/\/?&nbsp;*/gi, ""); &nbsp;\r
-       //              content = content.replace(/<p>&nbsp;<\/p>/gi, '');\r
-\r
-                       if (!tinyMCE.settings['force_p_newlines']) {\r
-                               content = content.replace('', '' ,'gi');\r
-                               content = content.replace('</p>', '<br /><br />' ,'gi');\r
-                       }\r
-\r
-                       if (!tinyMCE.isMSIE && !tinyMCE.settings['force_p_newlines']) {\r
-                               content = content.replace(/<\/?p[^>]*>/gi, "");\r
-                       }\r
-\r
-                       content = content.replace(/<\/?div[^>]*>/gi, "");\r
-\r
-                       // Convert all middlot lists to UL lists\r
-                       if (tinyMCE.getParam("paste_convert_middot_lists", true)) {\r
-                               var div = document.createElement("div");\r
-                               div.innerHTML = content;\r
-\r
-                               // Convert all middot paragraphs to li elements\r
-                               var className = tinyMCE.getParam("paste_unindented_list_class", "unIndentedList");\r
-\r
-                               while (TinyMCE_PastePlugin._convertMiddots(div, "--list--")) ; // bull\r
-                               while (TinyMCE_PastePlugin._convertMiddots(div, middot, className)) ; // Middot\r
-                               while (TinyMCE_PastePlugin._convertMiddots(div, bull)) ; // bull\r
-\r
-                               content = div.innerHTML;\r
-                       }\r
-\r
-                       // Replace all headers with strong and fix some other issues\r
-                       if (tinyMCE.getParam("paste_convert_headers_to_strong", false)) {\r
-                               content = content.replace(/<h[1-6]>&nbsp;<\/h[1-6]>/gi, '<p>&nbsp;&nbsp;</p>');\r
-                               content = content.replace(/<h[1-6]>/gi, '<p><b>');\r
-                               content = content.replace(/<\/h[1-6]>/gi, '</b></p>');\r
-                               content = content.replace(/<b>&nbsp;<\/b>/gi, '<b>&nbsp;&nbsp;</b>');\r
-                               content = content.replace(/^(&nbsp;)*/gi, '');\r
-                       }\r
-\r
-                       content = content.replace(/--list--/gi, ""); // Remove --list--\r
-\r
-                       if ((cb = tinyMCE.getParam("paste_insert_word_content_callback", "")) != "")\r
-                               content = eval(cb + "('after', content)");\r
-\r
-                       // Insert cleaned content\r
-                       tinyMCE.execCommand("mceInsertContent", false, content);\r
-\r
-                       if (tinyMCE.getParam('paste_force_cleanup_wordpaste', true))\r
-                               window.setTimeout('tinyMCE.execCommand("mceCleanup");', 1); // Do normal cleanup detached from this thread\r
-               }\r
-       },\r
-\r
-       _reEscape : function(s) {\r
-               var l = "?.\\*[](){}+^$:";\r
-               var o = "";\r
-\r
-               for (var i=0; i<s.length; i++) {\r
-                       var c = s.charAt(i);\r
-\r
-                       if (l.indexOf(c) != -1)\r
-                               o += '\\' + c;\r
-                       else\r
-                               o += c;\r
-               }\r
-\r
-               return o;\r
-       },\r
-\r
-       _convertMiddots : function(div, search, class_name) {\r
-               var mdot = String.fromCharCode(183);\r
-               var bull = String.fromCharCode(8226);\r
-\r
-               var nodes = div.getElementsByTagName("p");\r
-               var prevul;\r
-               for (var i=0; i<nodes.length; i++) {\r
-                       var p = nodes[i];\r
-\r
-                       // Is middot\r
-                       if (p.innerHTML.indexOf(search) == 0) {\r
-                               var ul = document.createElement("ul");\r
-\r
-                               if (class_name)\r
-                                       ul.className = class_name;\r
-\r
-                               // Add the first one\r
-                               var li = document.createElement("li");\r
-                               li.innerHTML = p.innerHTML.replace(new RegExp('' + mdot + '|' + bull + '|--list--|&nbsp;', "gi"), '');\r
-                               ul.appendChild(li);\r
-\r
-                               // Add the rest\r
-                               var np = p.nextSibling;\r
-                               while (np) {\r
-                               // If the node is whitespace, then\r
-                               // ignore it and continue on.\r
-                               if (np.nodeType == 3 && new RegExp('^\\s$', 'm').test(np.nodeValue)) {\r
-                                       np = np.nextSibling;\r
-                                       continue;\r
-                               }\r
-\r
-                                       if (search == mdot) {\r
-                                               if (np.nodeType == 1 && new RegExp('^o(\\s+|&nbsp;)').test(np.innerHTML)) {\r
-                                                       // Second level of nesting\r
-                                                       if (!prevul) {\r
-                                                               prevul = ul;\r
-                                                               ul = document.createElement("ul");\r
-                                                               prevul.appendChild(ul);\r
-                                                       }\r
-                                                       np.innerHTML = np.innerHTML.replace(/^o/, '');\r
-                                               } else {\r
-                                                       // Pop the stack if we're going back up to the first level\r
-                                                       if (prevul) {\r
-                                                               ul = prevul;\r
-                                                               prevul = null;\r
-                                                       }\r
-                                                       // Not element or middot paragraph\r
-                                                       if (np.nodeType != 1 || np.innerHTML.indexOf(search) != 0)\r
-                                                               break;\r
-                                               }\r
-                                       } else {\r
-                                               // Not element or middot paragraph\r
-                                               if (np.nodeType != 1 || np.innerHTML.indexOf(search) != 0)\r
-                                                       break;\r
-                                       }\r
-\r
-                                       var cp = np.nextSibling;\r
-                                       var li = document.createElement("li");\r
-                                       li.innerHTML = np.innerHTML.replace(new RegExp('' + mdot + '|' + bull + '|--list--|&nbsp;', "gi"), '');\r
-                                       np.parentNode.removeChild(np);\r
-                                       ul.appendChild(li);\r
-                                       np = cp;\r
-                               }\r
-\r
-                               p.parentNode.replaceChild(ul, p);\r
-\r
-                               return true;\r
-                       }\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       _clipboardHTML : function() {\r
-               var div = document.getElementById('_TinyMCE_clipboardHTML');\r
-\r
-               if (!div) {\r
-                       var div = document.createElement('DIV');\r
-                       div.id = '_TinyMCE_clipboardHTML';\r
-\r
-                       with (div.style) {\r
-                               visibility = 'hidden';\r
-                               overflow = 'hidden';\r
-                               position = 'absolute';\r
-                               width = 1;\r
-                               height = 1;\r
-                       }\r
-\r
-                       document.body.appendChild(div);\r
-               }\r
-\r
-               div.innerHTML = '';\r
-               var rng = document.body.createTextRange();\r
-               rng.moveToElementText(div);\r
-               rng.execCommand('Paste');\r
-               var html = div.innerHTML;\r
-               div.innerHTML = '';\r
-               return html;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("paste", TinyMCE_PastePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/pastetext.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/pastetext.gif
deleted file mode 100644 (file)
index e381cc6..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/pastetext.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/pasteword.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/pasteword.gif
deleted file mode 100644 (file)
index 0ccb008..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/pasteword.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/selectall.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/selectall.gif
deleted file mode 100644 (file)
index c4f9901..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/images/selectall.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/jscripts/pastetext.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/jscripts/pastetext.js
deleted file mode 100644 (file)
index 4c07691..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-function saveContent() {\r
-       if (document.forms[0].htmlSource.value == '') {\r
-               tinyMCEPopup.close();\r
-               return false;\r
-       }\r
-\r
-       tinyMCEPopup.execCommand('mcePasteText', false, {\r
-               html : document.forms[0].htmlSource.value,\r
-               linebreaks : document.forms[0].linebreaks.checked\r
-       });\r
-\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function onLoadInit() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       // Remove Gecko spellchecking\r
-       if (tinyMCE.isGecko)\r
-               document.body.spellcheck = tinyMCE.getParam("gecko_spellcheck");\r
-\r
-       resizeInputs();\r
-}\r
-\r
-var wHeight=0, wWidth=0, owHeight=0, owWidth=0;\r
-\r
-function resizeInputs() {\r
-       if (!tinyMCE.isMSIE) {\r
-               wHeight = self.innerHeight-80;\r
-               wWidth = self.innerWidth-17;\r
-       } else {\r
-               wHeight = document.body.clientHeight-80;\r
-               wWidth = document.body.clientWidth-17;\r
-       }\r
-\r
-       document.forms[0].htmlSource.style.height = Math.abs(wHeight) + 'px';\r
-       document.forms[0].htmlSource.style.width  = Math.abs(wWidth) + 'px';\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/jscripts/pasteword.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/jscripts/pasteword.js
deleted file mode 100644 (file)
index b243a10..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-function saveContent() {\r
-       var html = document.getElementById("frmData").contentWindow.document.body.innerHTML;\r
-\r
-       if (html == ''){\r
-               tinyMCEPopup.close();\r
-               return false;\r
-       }\r
-\r
-       tinyMCEPopup.execCommand('mcePasteWord', false, html);\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function onLoadInit() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       // Fix for endless reloading in FF\r
-       window.setTimeout('createIFrame();', 10);\r
-}\r
-\r
-function createIFrame() {\r
-       document.getElementById('iframecontainer').innerHTML = '<iframe id="frmData" name="frmData" class="sourceIframe" src="blank.htm" height="280" width="400" frameborder="0" style="background-color:#FFFFFF; width:100%;" dir="ltr" wrap="soft"></iframe>';\r
-}\r
-\r
-var wHeight=0, wWidth=0, owHeight=0, owWidth=0;\r
-\r
-function initIframe(doc) {\r
-       var dir = tinyMCE.selectedInstance.settings['directionality'];\r
-\r
-       doc.body.dir = dir;\r
-\r
-       // Remove Gecko spellchecking\r
-       if (tinyMCE.isGecko)\r
-               doc.body.spellcheck = tinyMCE.getParam("gecko_spellcheck");\r
-\r
-       resizeInputs();\r
-}\r
-\r
-function resizeInputs() {\r
-       if (!tinyMCE.isMSIE) {\r
-               wHeight = self.innerHeight - 80;\r
-               wWidth = self.innerWidth - 18;\r
-       } else {\r
-               wHeight = document.body.clientHeight - 80;\r
-               wWidth = document.body.clientWidth - 18;\r
-       }\r
-\r
-       var elm = document.getElementById('frmData');\r
-       if (elm) {\r
-               elm.style.height = Math.abs(wHeight) + 'px';\r
-               elm.style.width  = Math.abs(wWidth) + 'px';\r
-       }\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/langs/en.js
deleted file mode 100644 (file)
index b125d51..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-paste_text_desc : 'Paste as Plain Text',\r
-paste_text_title : 'Use CTRL+V on your keyboard to paste the text into the window.',\r
-paste_text_linebreaks : 'Keep linebreaks',\r
-paste_word_desc : 'Paste from Word',\r
-paste_word_title : 'Use CTRL+V on your keyboard to paste the text into the window.',\r
-selectall_desc : 'Select All'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/pastetext.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/pastetext.htm
deleted file mode 100644 (file)
index 63ff000..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_paste_text_desc}</title>\r
-       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/pastetext.js"></script>\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('onLoadInit();');" onresize="resizeInputs();" style="display: none">\r
-<form name="source" onsubmit="saveContent();">\r
-       <div style="float: left" class="title">{$lang_paste_text_desc}</div>\r
-\r
-       <div style="float: right">\r
-               <input type="checkbox" name="linebreaks" id="linebreaks" class="wordWrapCode" checked="checked" /><label for="linebreaks">{$lang_paste_text_linebreaks}</label>\r
-       </div>\r
-\r
-       <br style="clear: both" />\r
-\r
-       <div>{$lang_paste_text_title}</div>\r
-\r
-       <textarea name="htmlSource" id="htmlSource" rows="15" cols="100" style="width: 100%; height: 100%; font-family: 'Courier New',Courier,mono; font-size: 12px;" dir="ltr" wrap="soft"></textarea>\r
-\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" name="insert" value="{$lang_insert}" onclick="saveContent();" id="insert" />\r
-               </div>\r
-\r
-               <div style="float: right">\r
-                       <input type="button" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" id="cancel" />\r
-               </div>\r
-       </div>\r
-</form>\r
-</body> \r
-</html>
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm
deleted file mode 100644 (file)
index 7acc7f7..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />\r
-       <title>{$lang_paste_word_desc}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/pasteword.js"></script>\r
-       <link href="css/pasteword.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('onLoadInit();');" onresize="resizeInputs();" style="display: none">\r
-       <form name="source" onsubmit="saveContent();" action="#">\r
-               <div class="title">{$lang_paste_word_desc}</div>\r
-\r
-               <div>{$lang_paste_word_title}</div>\r
-\r
-               <div id="iframecontainer"></div>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div style="float: left">\r
-                               <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="saveContent();" />\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-                       </div>\r
-               </div>\r
-       </form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/paste/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js
deleted file mode 100644 (file)
index 5409610..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('preview');var TinyMCE_PreviewPlugin={getInfo:function(){return{longname:'Preview',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/preview',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){switch(cn){case"preview":return tinyMCE.getButtonHTML(cn,'lang_preview_desc','{$pluginurl}/images/preview.gif','mcePreview')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mcePreview":var previewPage=tinyMCE.getParam("plugin_preview_pageurl",null);var previewWidth=tinyMCE.getParam("plugin_preview_width","550");var previewHeight=tinyMCE.getParam("plugin_preview_height","600");if(previewPage){var template=new Array();template['file']=previewPage;template['width']=previewWidth;template['height']=previewHeight;tinyMCE.openWindow(template,{editor_id:editor_id,resizable:"yes",scrollbars:"yes",inline:"yes",content:tinyMCE.getContent(),content_css:tinyMCE.getParam("content_css")})}else{var win=window.open("","mcePreview","menubar=no,toolbar=no,scrollbars=yes,resizable=yes,left=20,top=20,width="+previewWidth+",height="+previewHeight);var html="",i;var c=tinyMCE.getContent();var pos=c.indexOf('<body'),pos2,css=tinyMCE.getParam("content_css").split(',');if(pos!=-1){pos=c.indexOf('>',pos);pos2=c.lastIndexOf('</body>');c=c.substring(pos+1,pos2)}html+=tinyMCE.getParam('doctype');html+='<html xmlns="http://www.w3.org/1999/xhtml">';html+='<head>';html+='<title>'+tinyMCE.getLang('lang_preview_desc')+'</title>';html+='<base href="'+tinyMCE.settings['base_href']+'" />';html+='<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';for(i=0;i<css.length;i++)html+='<link href="'+css[i]+'" rel="stylesheet" type="text/css" />';html+='<script type="text/javascript">';html+='window.opener.TinyMCE_PreviewPlugin._setDoc(document);';html+='window.opener.TinyMCE_PreviewPlugin._setWin(window);';html+='writeFlash = window.opener.TinyMCE_PreviewPlugin._writeFlash;';html+='writeShockWave = window.opener.TinyMCE_PreviewPlugin._writeShockWave;';html+='writeQuickTime = window.opener.TinyMCE_PreviewPlugin._writeQuickTime;';html+='writeRealMedia = window.opener.TinyMCE_PreviewPlugin._writeRealMedia;';html+='writeWindowsMedia = window.opener.TinyMCE_PreviewPlugin._writeWindowsMedia;';html+='writeEmbed = window.opener.TinyMCE_PreviewPlugin._writeEmbed;';html+='</script>';html+='</head>';html+='<body dir="'+tinyMCE.getParam("directionality")+'" onload="window.opener.TinyMCE_PreviewPlugin._onLoad();">';html+=c;html+='</body>';html+='</html>';win.document.write(html);win.document.close()}return true}return false},_setDoc:function(d){TinyMCE_PreviewPlugin._doc=d;d._embeds=new Array()},_setWin:function(d){TinyMCE_PreviewPlugin._win=d},_onLoad:function(){var nl,i,el=new Array(),d=TinyMCE_PreviewPlugin._doc,sv,ne;nl=d.getElementsByTagName("script");for(i=0;i<nl.length;i++){sv=tinyMCE.isMSIE?nl[i].innerHTML:nl[i].firstChild.nodeValue;if(new RegExp('write(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)\\(.*','g').test(sv))el[el.length]=nl[i]}for(i=0;i<el.length;i++){ne=d.createElement("div");ne.innerHTML=d._embeds[i];el[i].parentNode.insertBefore(ne.firstChild,el[i])}},_writeFlash:function(p){p.src=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'],p.src);TinyMCE_PreviewPlugin._writeEmbed('D27CDB6E-AE6D-11cf-96B8-444553540000','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0','application/x-shockwave-flash',p)},_writeShockWave:function(p){p.src=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'],p.src);TinyMCE_PreviewPlugin._writeEmbed('166B1BCA-3F9C-11CF-8075-444553540000','http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0','application/x-director',p)},_writeQuickTime:function(p){p.src=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'],p.src);TinyMCE_PreviewPlugin._writeEmbed('02BF25D5-8C17-4B23-BC80-D3488ABDDC6B','http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0','video/quicktime',p)},_writeRealMedia:function(p){p.src=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'],p.src);TinyMCE_PreviewPlugin._writeEmbed('CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0','audio/x-pn-realaudio-plugin',p)},_writeWindowsMedia:function(p){p.src=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'],p.src);p.url=p.src;TinyMCE_PreviewPlugin._writeEmbed('6BF52A52-394A-11D3-B153-00C04F79FAA6','http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701','application/x-mplayer2',p)},_writeEmbed:function(cls,cb,mt,p){var h='',n,d=TinyMCE_PreviewPlugin._doc,ne,c;h+='<object classid="clsid:'+cls+'" codebase="'+cb+'"';h+=typeof(p.id)!="undefined"?'id="'+p.id+'"':'';h+=typeof(p.name)!="undefined"?'name="'+p.name+'"':'';h+=typeof(p.width)!="undefined"?'width="'+p.width+'"':'';h+=typeof(p.height)!="undefined"?'height="'+p.height+'"':'';h+=typeof(p.align)!="undefined"?'align="'+p.align+'"':'';h+='>';for(n in p)h+='<param name="'+n+'" value="'+p[n]+'">';h+='<embed type="'+mt+'"';for(n in p)h+=n+'="'+p[n]+'" ';h+='></embed></object>';d._embeds[d._embeds.length]=h}};tinyMCE.addPlugin("preview",TinyMCE_PreviewPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js
deleted file mode 100644 (file)
index 449e226..0000000
+++ /dev/null
@@ -1,205 +0,0 @@
-/**
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $
- *
- * @author Moxiecode
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.
- */
-
-/* Import plugin specific language pack */
-tinyMCE.importPluginLanguagePack('preview');
-
-var TinyMCE_PreviewPlugin = {
-       getInfo : function() {
-               return {
-                       longname : 'Preview',
-                       author : 'Moxiecode Systems AB',
-                       authorurl : 'http://tinymce.moxiecode.com',
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/preview',
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion
-               };
-       },
-
-       /**
-        * Returns the HTML contents of the preview control.
-        */
-       getControlHTML : function(cn) {
-               switch (cn) {
-                       case "preview":
-                               return tinyMCE.getButtonHTML(cn, 'lang_preview_desc', '{$pluginurl}/images/preview.gif', 'mcePreview');
-               }
-
-               return "";
-       },
-
-       /**
-        * Executes the mcePreview command.
-        */
-       execCommand : function(editor_id, element, command, user_interface, value) {
-               // Handle commands
-               switch (command) {
-                       case "mcePreview":
-                               var previewPage = tinyMCE.getParam("plugin_preview_pageurl", null);
-                               var previewWidth = tinyMCE.getParam("plugin_preview_width", "550");
-                               var previewHeight = tinyMCE.getParam("plugin_preview_height", "600");
-
-                               // Use a custom preview page
-                               if (previewPage) {
-                                       var template = new Array();
-
-                                       template['file'] = previewPage;
-                                       template['width'] = previewWidth;
-                                       template['height'] = previewHeight;
-
-                                       tinyMCE.openWindow(template, {editor_id : editor_id, resizable : "yes", scrollbars : "yes", inline : "yes", content : tinyMCE.getContent(), content_css : tinyMCE.getParam("content_css")});
-                               } else {
-                                       var win = window.open("", "mcePreview", "menubar=no,toolbar=no,scrollbars=yes,resizable=yes,left=20,top=20,width=" + previewWidth + ",height="  + previewHeight);
-                                       var html = "", i;
-                                       var c = tinyMCE.getContent();
-                                       var pos = c.indexOf('<body'), pos2, css = tinyMCE.getParam("content_css").split(',');
-
-                                       if (pos != -1) {
-                                               pos = c.indexOf('>', pos);
-                                               pos2 = c.lastIndexOf('</body>');
-                                               c = c.substring(pos + 1, pos2);
-                                       }
-
-                                       html += tinyMCE.getParam('doctype');
-                                       html += '<html xmlns="http://www.w3.org/1999/xhtml">';
-                                       html += '<head>';
-                                       html += '<title>' + tinyMCE.getLang('lang_preview_desc') + '</title>';
-                                       html += '<base href="' + tinyMCE.settings['base_href'] + '" />';
-                                       html += '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';
-
-                                       for (i=0; i<css.length; i++)
-                                               html += '<link href="' + css[i] + '" rel="stylesheet" type="text/css" />';
-
-                                       html += '<script type="text/javascript">';
-                                       html += 'window.opener.TinyMCE_PreviewPlugin._setDoc(document);';
-                                       html += 'window.opener.TinyMCE_PreviewPlugin._setWin(window);';
-                                       html += 'writeFlash = window.opener.TinyMCE_PreviewPlugin._writeFlash;';
-                                       html += 'writeShockWave = window.opener.TinyMCE_PreviewPlugin._writeShockWave;';
-                                       html += 'writeQuickTime = window.opener.TinyMCE_PreviewPlugin._writeQuickTime;';
-                                       html += 'writeRealMedia = window.opener.TinyMCE_PreviewPlugin._writeRealMedia;';
-                                       html += 'writeWindowsMedia = window.opener.TinyMCE_PreviewPlugin._writeWindowsMedia;';
-                                       html += 'writeEmbed = window.opener.TinyMCE_PreviewPlugin._writeEmbed;';
-                                       html += '</script>';
-                                       html += '</head>';
-                                       html += '<body dir="' + tinyMCE.getParam("directionality") + '" onload="window.opener.TinyMCE_PreviewPlugin._onLoad();">';
-                                       html += c;
-                                       html += '</body>';
-                                       html += '</html>';
-
-                                       win.document.write(html);
-                                       win.document.close();
-                               }
-
-                               return true;
-               }
-
-               return false;
-       },
-
-       _setDoc : function(d) {
-               TinyMCE_PreviewPlugin._doc = d;
-               d._embeds = new Array();
-       },
-
-       _setWin : function(d) {
-               TinyMCE_PreviewPlugin._win = d;
-       },
-
-       _onLoad : function() {
-               var nl, i, el = new Array(), d = TinyMCE_PreviewPlugin._doc, sv, ne;
-
-               nl = d.getElementsByTagName("script");
-               for (i=0; i<nl.length; i++) {
-                       sv = tinyMCE.isMSIE ? nl[i].innerHTML : nl[i].firstChild.nodeValue;
-
-                       if (new RegExp('write(Flash|ShockWave|WindowsMedia|QuickTime|RealMedia)\\(.*', 'g').test(sv))
-                               el[el.length] = nl[i];
-               }
-
-               for (i=0; i<el.length; i++) {
-                       ne = d.createElement("div");
-                       ne.innerHTML = d._embeds[i];
-                       el[i].parentNode.insertBefore(ne.firstChild, el[i]);
-               }
-       },
-
-       _writeFlash : function(p) {
-               p.src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], p.src);
-               TinyMCE_PreviewPlugin._writeEmbed(
-                       'D27CDB6E-AE6D-11cf-96B8-444553540000',
-                       'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',
-                       'application/x-shockwave-flash',
-                       p
-               );
-       },
-
-       _writeShockWave : function(p) {
-               p.src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], p.src);
-               TinyMCE_PreviewPlugin._writeEmbed(
-                       '166B1BCA-3F9C-11CF-8075-444553540000',
-                       'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0',
-                       'application/x-director',
-                       p
-               );
-       },
-
-       _writeQuickTime : function(p) {
-               p.src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], p.src);
-               TinyMCE_PreviewPlugin._writeEmbed(
-                       '02BF25D5-8C17-4B23-BC80-D3488ABDDC6B',
-                       'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0',
-                       'video/quicktime',
-                       p
-               );
-       },
-
-       _writeRealMedia : function(p) {
-               p.src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], p.src);
-               TinyMCE_PreviewPlugin._writeEmbed(
-                       'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA',
-                       'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',
-                       'audio/x-pn-realaudio-plugin',
-                       p
-               );
-       },
-
-       _writeWindowsMedia : function(p) {
-               p.src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], p.src);
-               p.url = p.src;
-               TinyMCE_PreviewPlugin._writeEmbed(
-                       '6BF52A52-394A-11D3-B153-00C04F79FAA6',
-                       'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701',
-                       'application/x-mplayer2',
-                       p
-               );
-       },
-
-       _writeEmbed : function(cls, cb, mt, p) {
-               var h = '', n, d = TinyMCE_PreviewPlugin._doc, ne, c;
-
-               h += '<object classid="clsid:' + cls + '" codebase="' + cb + '"';
-               h += typeof(p.id) != "undefined" ? 'id="' + p.id + '"' : '';
-               h += typeof(p.name) != "undefined" ? 'name="' + p.name + '"' : '';
-               h += typeof(p.width) != "undefined" ? 'width="' + p.width + '"' : '';
-               h += typeof(p.height) != "undefined" ? 'height="' + p.height + '"' : '';
-               h += typeof(p.align) != "undefined" ? 'align="' + p.align + '"' : '';
-               h += '>';
-
-               for (n in p)
-                       h += '<param name="' + n + '" value="' + p[n] + '">';
-
-               h += '<embed type="' + mt + '"';
-
-               for (n in p)
-                       h += n + '="' + p[n] + '" ';
-
-               h += '></embed></object>';
-
-               d._embeds[d._embeds.length] = h;
-       }
-};
-
-tinyMCE.addPlugin("preview", TinyMCE_PreviewPlugin);
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/example.html b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/example.html
deleted file mode 100644 (file)
index d02eb73..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-<script language="javascript" src="../../tiny_mce_popup.js"></script>\r
-<script type="text/javascript" src="jscripts/embed.js"></script>\r
-<title>Example of a custom preview page</title>\r
-<link href="{$content_css}" rel="stylesheet" type="text/css" />\r
-</head>\r
-<body>\r
-\r
-Editor contents: <br />\r
-{$content}\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/images/preview.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/images/preview.gif
deleted file mode 100644 (file)
index 318936e..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/images/preview.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/embed.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/embed.js
deleted file mode 100644 (file)
index f8dc810..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/**\r
- * This script contains embed functions for common plugins. This scripts are complety free to use for any purpose.\r
- */\r
-\r
-function writeFlash(p) {\r
-       writeEmbed(\r
-               'D27CDB6E-AE6D-11cf-96B8-444553540000',\r
-               'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',\r
-               'application/x-shockwave-flash',\r
-               p\r
-       );\r
-}\r
-\r
-function writeShockWave(p) {\r
-       writeEmbed(\r
-       '166B1BCA-3F9C-11CF-8075-444553540000',\r
-       'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0',\r
-       'application/x-director',\r
-               p\r
-       );\r
-}\r
-\r
-function writeQuickTime(p) {\r
-       writeEmbed(\r
-               '02BF25D5-8C17-4B23-BC80-D3488ABDDC6B',\r
-               'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0',\r
-               'video/quicktime',\r
-               p\r
-       );\r
-}\r
-\r
-function writeRealMedia(p) {\r
-       writeEmbed(\r
-               'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA',\r
-               'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',\r
-               'audio/x-pn-realaudio-plugin',\r
-               p\r
-       );\r
-}\r
-\r
-function writeWindowsMedia(p) {\r
-       p.url = p.src;\r
-       writeEmbed(\r
-               '6BF52A52-394A-11D3-B153-00C04F79FAA6',\r
-               'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701',\r
-               'application/x-mplayer2',\r
-               p\r
-       );\r
-}\r
-\r
-function writeEmbed(cls, cb, mt, p) {\r
-       var h = '', n;\r
-\r
-       h += '<object classid="clsid:' + cls + '" codebase="' + cb + '"';\r
-       h += typeof(p.id) != "undefined" ? 'id="' + p.id + '"' : '';\r
-       h += typeof(p.name) != "undefined" ? 'name="' + p.name + '"' : '';\r
-       h += typeof(p.width) != "undefined" ? 'width="' + p.width + '"' : '';\r
-       h += typeof(p.height) != "undefined" ? 'height="' + p.height + '"' : '';\r
-       h += typeof(p.align) != "undefined" ? 'align="' + p.align + '"' : '';\r
-       h += '>';\r
-\r
-       for (n in p)\r
-               h += '<param name="' + n + '" value="' + p[n] + '">';\r
-\r
-       h += '<embed type="' + mt + '"';\r
-\r
-       for (n in p)\r
-               h += n + '="' + p[n] + '" ';\r
-\r
-       h += '></embed></object>';\r
-\r
-       document.write(h);\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/langs/en.js
deleted file mode 100644 (file)
index b68b675..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-preview_desc : 'Preview'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/preview/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js
deleted file mode 100644 (file)
index 79241fe..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('print');var TinyMCE_PrintPlugin={getInfo:function(){return{longname:'Print',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/print',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){switch(cn){case"print":return tinyMCE.getButtonHTML(cn,'lang_print_desc','{$pluginurl}/images/print.gif','mcePrint')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mcePrint":tinyMCE.getInstanceById(editor_id).contentWindow.print();return true}return false}};tinyMCE.addPlugin("print",TinyMCE_PrintPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js
deleted file mode 100644 (file)
index 9478a51..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import theme        specific language pack */\r
-tinyMCE.importPluginLanguagePack('print');\r
-\r
-var TinyMCE_PrintPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Print',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/print',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       getControlHTML : function(cn)   {\r
-               switch (cn) {\r
-                       case "print":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_print_desc', '{$pluginurl}/images/print.gif', 'mcePrint');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       /**\r
-        * Executes     the     search/replace commands.\r
-        */\r
-       execCommand : function(editor_id, element, command,     user_interface, value) {\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mcePrint":\r
-                               tinyMCE.getInstanceById(editor_id).contentWindow.print();\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("print", TinyMCE_PrintPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/images/print.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/images/print.gif
deleted file mode 100644 (file)
index 72104d1..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/images/print.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/langs/en.js
deleted file mode 100644 (file)
index 6407cdb..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-print_desc : 'Print'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/print/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/readme.txt
deleted file mode 100644 (file)
index b694fdb..0000000
+++ /dev/null
@@ -1 +0,0 @@
-This is the location you place TinyMCE plugins.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js
deleted file mode 100644 (file)
index bd23dab..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('save');var TinyMCE_SavePlugin={getInfo:function(){return{longname:'Save',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/save',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){inst.addShortcut('ctrl','s','lang_save_desc','mceSave')},getControlHTML:function(cn){switch(cn){case"save":return tinyMCE.getButtonHTML(cn,'lang_save_desc','{$pluginurl}/images/save.gif','mceSave');case"cancel":return tinyMCE.getButtonHTML(cn,'lang_cancel_desc','{$pluginurl}/images/cancel.gif','mceCancel')}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceSave":return this._save(editor_id,element,command,user_interface,value);case"mceCancel":return this._cancel(editor_id,element,command,user_interface,value)}return false},_save:function(editor_id,element,command,user_interface,value){var inst,formObj,os,i,elementId;if(tinyMCE.getParam("fullscreen_is_enabled"))return true;inst=tinyMCE.selectedInstance;formObj=inst.formElement.form;if(tinyMCE.getParam("save_enablewhendirty")&&!inst.isDirty())return true;if(formObj){tinyMCE.triggerSave();if((os=tinyMCE.getParam("save_onsavecallback"))){if(eval(os+'(inst);')){inst.startContent=tinyMCE.trim(inst.getBody().innerHTML);tinyMCE.triggerNodeChange(false,true)}return true}for(i=0;i<formObj.elements.length;i++){elementId=formObj.elements[i].name?formObj.elements[i].name:formObj.elements[i].id;if(elementId.indexOf('mce_editor_')==0)formObj.elements[i].disabled=true}inst.isNotDirty=true;if(formObj.onsubmit==null||formObj.onsubmit()!=false)inst.formElement.form.submit();tinyMCE.triggerNodeChange(false,true)}else alert("Error: No form element found.");return true},_cancel:function(editor_id,element,command,user_interface,value){var inst=tinyMCE.getInstanceById(editor_id),os,h=tinyMCE.trim(inst.startContent);if((os=tinyMCE.getParam("save_oncancelcallback"))){if(eval(os+'(inst);'))return true}inst.setHTML(h);inst.undoRedo.undoLevels=[];inst.undoRedo.add({content:h});inst.undoRedo.undoIndex=0;inst.undoRedo.typingUndoIndex=-1;tinyMCE.triggerNodeChange(false,true);return true},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){var inst;if(tinyMCE.getParam("fullscreen_is_enabled")){tinyMCE.switchClass(editor_id+'_save','mceButtonDisabled');return true}if(tinyMCE.getParam("save_enablewhendirty")){inst=tinyMCE.getInstanceById(editor_id);if(inst.isDirty()){tinyMCE.switchClass(editor_id+'_save','mceButtonNormal');return true}tinyMCE.switchClass(editor_id+'_save','mceButtonDisabled')}return true}};tinyMCE.addPlugin("save",TinyMCE_SavePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js
deleted file mode 100644 (file)
index 7ad469a..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 251 2007-04-10 20:16:15Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('save');\r
-\r
-var TinyMCE_SavePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Save',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/save',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               inst.addShortcut('ctrl', 's', 'lang_save_desc', 'mceSave');\r
-       },\r
-\r
-       /**\r
-        * Returns the HTML contents of the save control.\r
-        */\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "save":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_save_desc', '{$pluginurl}/images/save.gif', 'mceSave');\r
-\r
-                       case "cancel":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_cancel_desc', '{$pluginurl}/images/cancel.gif', 'mceCancel');\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       /**\r
-        * Executes the save command.\r
-        */\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceSave":\r
-                               return this._save(editor_id, element, command, user_interface, value);\r
-\r
-                       case "mceCancel":\r
-                               return this._cancel(editor_id, element, command, user_interface, value);\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       },\r
-\r
-       _save : function(editor_id, element, command, user_interface, value) {\r
-               var inst, formObj, os, i, elementId;\r
-\r
-               if (tinyMCE.getParam("fullscreen_is_enabled"))\r
-                       return true;\r
-\r
-               inst = tinyMCE.selectedInstance;\r
-               formObj = inst.formElement.form;\r
-\r
-               if (tinyMCE.getParam("save_enablewhendirty") && !inst.isDirty())\r
-                       return true;\r
-\r
-               if (formObj) {\r
-                       tinyMCE.triggerSave();\r
-\r
-                       // Use callback instead\r
-                       if ((os = tinyMCE.getParam("save_onsavecallback"))) {\r
-                               if (eval(os + '(inst);')) {\r
-                                       inst.startContent = tinyMCE.trim(inst.getBody().innerHTML);\r
-                                       /*inst.undoLevels = new Array();\r
-                                       inst.undoIndex = 0;\r
-                                       inst.typingUndoIndex = -1;\r
-                                       inst.undoRedo = true;\r
-                                       inst.undoLevels[inst.undoLevels.length] = inst.startContent;*/\r
-                                       tinyMCE.triggerNodeChange(false, true);\r
-                               }\r
-\r
-                               return true;\r
-                       }\r
-\r
-                       // Disable all UI form elements that TinyMCE created\r
-                       for (i=0; i<formObj.elements.length; i++) {\r
-                               elementId = formObj.elements[i].name ? formObj.elements[i].name : formObj.elements[i].id;\r
-\r
-                               if (elementId.indexOf('mce_editor_') == 0)\r
-                                       formObj.elements[i].disabled = true;\r
-                       }\r
-\r
-                       inst.isNotDirty = true;\r
-\r
-                       if (formObj.onsubmit == null || formObj.onsubmit() != false)\r
-                               inst.formElement.form.submit();\r
-\r
-                       tinyMCE.triggerNodeChange(false, true);\r
-               } else\r
-                       alert("Error: No form element found.");\r
-\r
-               return true;\r
-       },\r
-\r
-       _cancel : function(editor_id, element, command, user_interface, value) {\r
-               var inst = tinyMCE.getInstanceById(editor_id), os, h = tinyMCE.trim(inst.startContent);\r
-\r
-               // Use callback instead\r
-               if ((os = tinyMCE.getParam("save_oncancelcallback"))) {\r
-                       if (eval(os + '(inst);'))\r
-                               return true;\r
-               }\r
-\r
-               inst.setHTML(h);\r
-\r
-               inst.undoRedo.undoLevels = [];\r
-               inst.undoRedo.add({ content : h });\r
-               inst.undoRedo.undoIndex = 0;\r
-               inst.undoRedo.typingUndoIndex = -1;\r
-\r
-               tinyMCE.triggerNodeChange(false, true);\r
-\r
-               return true;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               var inst;\r
-\r
-               if (tinyMCE.getParam("fullscreen_is_enabled")) {\r
-                       tinyMCE.switchClass(editor_id + '_save', 'mceButtonDisabled');\r
-                       return true;\r
-               }\r
-\r
-               if (tinyMCE.getParam("save_enablewhendirty")) {\r
-                       inst = tinyMCE.getInstanceById(editor_id);\r
-\r
-                       if (inst.isDirty()) {\r
-                               tinyMCE.switchClass(editor_id + '_save', 'mceButtonNormal');\r
-                               return true;\r
-                       }\r
-\r
-                       tinyMCE.switchClass(editor_id + '_save', 'mceButtonDisabled');\r
-               }\r
-\r
-               return true;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("save", TinyMCE_SavePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/images/cancel.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/images/cancel.gif
deleted file mode 100644 (file)
index ad190ef..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/images/cancel.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/images/save.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/images/save.gif
deleted file mode 100644 (file)
index 2777beb..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/images/save.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/langs/en.js
deleted file mode 100644 (file)
index 7793088..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-save_desc : 'Save',\r
-cancel_desc : 'Cancel all changes'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/save/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css
deleted file mode 100644 (file)
index 4c7bd13..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/* stylesheet for advsearchreplace plugin*/\r
-\r
-.panel_wrapper { height: 85px; }\r
-.panel_wrapper div.current { height: 85px; }\r
-\r
-/* MS IE only styles */\r
-* html .panel_wrapper { height: 100px; }\r
-* html .panel_wrapper div.current { height: 100px; }\r
-\r
-#replaceBtn, #replaceAllBtn {\r
-       padding-bottom: 2px;\r
-       font-weight: bold;\r
-       width: 90px;\r
-       height: 21px;\r
-       border: 0;\r
-       cursor: pointer;\r
-}\r
-\r
-#replaceBtn { background: url(../images/replace_button_bg.gif); }\r
-#replaceAllBtn { background: url(../images/replace_all_button_bg.gif); }\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js
deleted file mode 100644 (file)
index 959e9cc..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('searchreplace');var TinyMCE_SearchReplacePlugin={getInfo:function(){return{longname:'Search/Replace',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){inst.addShortcut('ctrl','f','lang_searchreplace_search_desc','mceSearch',true);},getControlHTML:function(cn){switch(cn){case"search":return tinyMCE.getButtonHTML(cn,'lang_searchreplace_search_desc','{$pluginurl}/images/search.gif','mceSearch',true);case"replace":return tinyMCE.getButtonHTML(cn,'lang_searchreplace_replace_desc','{$pluginurl}/images/replace.gif','mceSearchReplace',true)}return""},execCommand:function(editor_id,element,command,user_interface,value){var inst=tinyMCE.getInstanceById(editor_id),selectedText=inst.selection.getSelectedText(),rng;function defValue(key,default_value){value[key]=typeof(value[key])=="undefined"?default_value:value[key]}function replaceSel(search_str,str,back){if(!inst.selection.isCollapsed()){if(tinyMCE.isRealIE)inst.selection.getRng().duplicate().pasteHTML(str);else inst.execCommand('mceInsertContent',false,str)}}if(!value)value=[];defValue("editor_id",editor_id);defValue("searchstring",selectedText);defValue("replacestring",null);defValue("replacemode","none");defValue("casesensitive",false);defValue("backwards",false);defValue("wrap",false);defValue("wholeword",false);defValue("inline","yes");defValue("resizable","no");switch(command){case"mceSearch":if(user_interface){var template=new Array();template['file']='../../plugins/searchreplace/searchreplace.htm';template['width']=380;template['height']=155+(tinyMCE.isNS7?20:0)+(tinyMCE.isMSIE?15:0);template['width']+=tinyMCE.getLang('lang_searchreplace_delta_width',0);template['height']+=tinyMCE.getLang('lang_searchreplace_delta_height',0);inst.selection.collapse(true);tinyMCE.openWindow(template,value)}else{var win=tinyMCE.getInstanceById(editor_id).contentWindow;var doc=tinyMCE.getInstanceById(editor_id).contentWindow.document;var body=tinyMCE.getInstanceById(editor_id).contentWindow.document.body;var awin=value.win,found;if(body.innerHTML==""){awin.alert(tinyMCE.getLang('lang_searchreplace_notfound'));return true}if(value['replacemode']=="current"){replaceSel(value['string'],value['replacestring'],value['backwards']);value['replacemode']="none";}inst.selection.collapse(value['backwards']);if(tinyMCE.isMSIE){var rng=inst.selection.getRng();var flags=0;if(value['wholeword'])flags=flags|2;if(value['casesensitive'])flags=flags|4;if(!rng.findText){awin.alert('This operation is currently not supported by this browser.');return true}if(value['replacemode']=="all"){found=false;while(rng.findText(value['string'],value['backwards']?-1:1,flags)){found=true;rng.scrollIntoView();rng.select();replaceSel(value['string'],value['replacestring'],value['backwards'])}if(found)awin.alert(tinyMCE.getLang('lang_searchreplace_allreplaced'));else awin.alert(tinyMCE.getLang('lang_searchreplace_notfound'));return true}if(rng.findText(value['string'],value['backwards']?-1:1,flags)){rng.scrollIntoView();rng.select()}else awin.alert(tinyMCE.getLang('lang_searchreplace_notfound'))}else{if(value['replacemode']=="all"){found=false;while(win.find(value['string'],value['casesensitive'],value['backwards'],value['wrap'],value['wholeword'],false,false)){found=true;replaceSel(value['string'],value['replacestring'],value['backwards'])}if(found)awin.alert(tinyMCE.getLang('lang_searchreplace_allreplaced'));else awin.alert(tinyMCE.getLang('lang_searchreplace_notfound'));return true}if(!win.find(value['string'],value['casesensitive'],value['backwards'],value['wrap'],value['wholeword'],false,false))awin.alert(tinyMCE.getLang('lang_searchreplace_notfound'))}}return true;case"mceSearchReplace":value['replacestring']="";tinyMCE.execInstanceCommand(editor_id,'mceSearch',user_interface,value,false);return true}return false}};tinyMCE.addPlugin("searchreplace",TinyMCE_SearchReplacePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js
deleted file mode 100644 (file)
index cd2f3a8..0000000
+++ /dev/null
@@ -1,173 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-tinyMCE.importPluginLanguagePack('searchreplace');\r
-\r
-var TinyMCE_SearchReplacePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Search/Replace',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function (inst) {\r
-               inst.addShortcut('ctrl', 'f', 'lang_searchreplace_search_desc', 'mceSearch', true);\r
-               // No CTRL+R for "replace" because browsers will reload page instead of executing plugin\r
-       },\r
-\r
-       getControlHTML : function (cn) {\r
-               switch (cn) {\r
-                       case "search" :\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_searchreplace_search_desc', '{$pluginurl}/images/search.gif','mceSearch', true);\r
-\r
-                       case "replace" :\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_searchreplace_replace_desc', '{$pluginurl}/images/replace.gif', 'mceSearchReplace', true);\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function (editor_id, element, command, user_interface, value) {\r
-               var inst = tinyMCE.getInstanceById(editor_id), selectedText = inst.selection.getSelectedText(), rng;\r
-\r
-               function defValue(key, default_value) {\r
-                       value[key] = typeof(value[key]) == "undefined" ? default_value : value[key];\r
-               }\r
-\r
-               function replaceSel(search_str, str, back) {\r
-                       if (!inst.selection.isCollapsed()) {\r
-                               if (tinyMCE.isRealIE)\r
-                                       inst.selection.getRng().duplicate().pasteHTML(str); // Needs to be duplicated due to selection bug in IE\r
-                               else\r
-                                       inst.execCommand('mceInsertContent', false, str);\r
-                       }\r
-               }\r
-\r
-               if (!value)\r
-                       value = [];\r
-\r
-               defValue("editor_id", editor_id);\r
-               defValue("searchstring", selectedText);\r
-               defValue("replacestring", null);\r
-               defValue("replacemode", "none");\r
-               defValue("casesensitive", false);\r
-               defValue("backwards", false);\r
-               defValue("wrap", false);\r
-               defValue("wholeword", false);\r
-               defValue("inline", "yes");\r
-               defValue("resizable", "no");\r
-\r
-               switch (command) {\r
-                       case "mceSearch" :\r
-                               if (user_interface) {\r
-                                       var template = new Array();\r
-\r
-                                       template['file'] = '../../plugins/searchreplace/searchreplace.htm';\r
-                                       template['width'] = 380;\r
-                                       template['height'] = 155 + (tinyMCE.isNS7 ? 20 : 0) + (tinyMCE.isMSIE ? 15 : 0);\r
-                                       template['width'] += tinyMCE.getLang('lang_searchreplace_delta_width', 0);\r
-                                       template['height'] += tinyMCE.getLang('lang_searchreplace_delta_height', 0);\r
-\r
-                                       inst.selection.collapse(true);\r
-\r
-                                       tinyMCE.openWindow(template, value);\r
-                               } else {\r
-                                       var win = tinyMCE.getInstanceById(editor_id).contentWindow;\r
-                                       var doc = tinyMCE.getInstanceById(editor_id).contentWindow.document;\r
-                                       var body = tinyMCE.getInstanceById(editor_id).contentWindow.document.body;\r
-                                       var awin = value.win, found;\r
-\r
-                                       if (body.innerHTML == "") {\r
-                                               awin.alert(tinyMCE.getLang('lang_searchreplace_notfound'));\r
-                                               return true;\r
-                                       }\r
-\r
-                                       if (value['replacemode'] == "current") {\r
-                                               replaceSel(value['string'], value['replacestring'], value['backwards']);\r
-                                               value['replacemode'] = "none";\r
-                                               //tinyMCE.execInstanceCommand(editor_id, 'mceSearch', user_interface, value);\r
-                                               //return true;\r
-                                       }\r
-\r
-                                       inst.selection.collapse(value['backwards']);\r
-\r
-                                       if (tinyMCE.isMSIE) {\r
-                                               var rng = inst.selection.getRng();\r
-                                               var flags = 0;\r
-                                               if (value['wholeword'])\r
-                                                       flags = flags | 2;\r
-\r
-                                               if (value['casesensitive'])\r
-                                                       flags = flags | 4;\r
-\r
-                                               if (!rng.findText) {\r
-                                                       awin.alert('This operation is currently not supported by this browser.');\r
-                                                       return true;\r
-                                               }\r
-\r
-                                               if (value['replacemode'] == "all") {\r
-                                                       found = false;\r
-\r
-                                                       while (rng.findText(value['string'], value['backwards'] ? -1 : 1, flags)) {\r
-                                                               found = true;\r
-                                                               rng.scrollIntoView();\r
-                                                               rng.select();\r
-                                                               replaceSel(value['string'], value['replacestring'], value['backwards']);\r
-                                                       }\r
-\r
-                                                       if (found)\r
-                                                               awin.alert(tinyMCE.getLang('lang_searchreplace_allreplaced'));\r
-                                                       else\r
-                                                               awin.alert(tinyMCE.getLang('lang_searchreplace_notfound'));\r
-\r
-                                                       return true;\r
-                                               }\r
-\r
-                                               if (rng.findText(value['string'], value['backwards'] ? -1 : 1, flags)) {\r
-                                                       rng.scrollIntoView();\r
-                                                       rng.select();\r
-                                               } else\r
-                                                       awin.alert(tinyMCE.getLang('lang_searchreplace_notfound'));\r
-                                       } else {\r
-                                               if (value['replacemode'] == "all") {\r
-                                                       found = false;\r
-\r
-                                                       while (win.find(value['string'], value['casesensitive'], value['backwards'], value['wrap'], value['wholeword'], false, false)) {\r
-                                                               found = true;\r
-                                                               replaceSel(value['string'], value['replacestring'], value['backwards']);\r
-                                                       }\r
-\r
-                                                       if (found)\r
-                                                               awin.alert(tinyMCE.getLang('lang_searchreplace_allreplaced'));\r
-                                                       else\r
-                                                               awin.alert(tinyMCE.getLang('lang_searchreplace_notfound'));\r
-\r
-                                                       return true;\r
-                                               }\r
-\r
-                                               if (!win.find(value['string'], value['casesensitive'], value['backwards'], value['wrap'], value['wholeword'], false, false))\r
-                                                       awin.alert(tinyMCE.getLang('lang_searchreplace_notfound'));\r
-                                       }\r
-                               }\r
-\r
-                               return true;\r
-\r
-                       case "mceSearchReplace" :\r
-                               value['replacestring'] = "";\r
-                               tinyMCE.execInstanceCommand(editor_id, 'mceSearch', user_interface, value, false);\r
-                               return true;\r
-               }\r
-\r
-               return false;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("searchreplace", TinyMCE_SearchReplacePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace.gif
deleted file mode 100644 (file)
index 784c73e..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace_all_button_bg.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace_all_button_bg.gif
deleted file mode 100644 (file)
index 123fa5b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace_all_button_bg.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace_button_bg.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace_button_bg.gif
deleted file mode 100644 (file)
index cc2c56e..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/replace_button_bg.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/search.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/search.gif
deleted file mode 100644 (file)
index cfe76b5..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/images/search.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/jscripts/searchreplace.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/jscripts/searchreplace.js
deleted file mode 100644 (file)
index ac6cdf6..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       // start with appropiate tab\r
-       var task = (tinyMCE.getWindowArg("replacestring") != null) ? "replace" : "search";\r
-       mcTabs.displayTab(task + '_tab', task +'_panel');\r
-       manageReplaceButtons();\r
-       \r
-       var formObj = document.forms[0];\r
-\r
-       formObj[task + "_panel_searchstring"].value = tinyMCE.getWindowArg("searchstring");\r
-       formObj["replace_panel_replacestring"].value = (tinyMCE.getWindowArg("replacestring") != null) ? tinyMCE.getWindowArg("replacestring") : "";\r
-       formObj[task + "_panel_casesensitivebox"].checked = tinyMCE.getWindowArg("casesensitive");\r
-       formObj[task + "_panel_backwardsu"].checked = tinyMCE.getWindowArg("backwards");\r
-       formObj[task + "_panel_backwardsd"].checked = !tinyMCE.getWindowArg("backwards");\r
-}\r
-\r
-function searchNext(replacemode) {\r
-       // "search" or "replace" mode of operation?\r
-       var task = (document.getElementById("search_tab").className == "current") ? "search" : "replace";\r
-\r
-       var formObj = document.forms[0];\r
-\r
-       if (task == "replace") {\r
-               // Whats the point?\r
-               if (formObj[task + "_panel_searchstring"].value == "" || formObj[task + "_panel_searchstring"].value == formObj[task + "_panel_replacestring"].value)\r
-                       return false;\r
-       }\r
-\r
-       // Do search\r
-       tinyMCEPopup.execCommand('mceSearch', false, { \r
-               string : formObj[task + "_panel_searchstring"].value,\r
-               replacestring : formObj["replace_panel_replacestring"].value,\r
-               replacemode : replacemode,\r
-               casesensitive : formObj[task + "_panel_casesensitivebox"].checked,\r
-               backwards : formObj[task + "_panel_backwardsu"].checked,\r
-               win : window\r
-               }, false);\r
-\r
-       window.focus();\r
-\r
-       return false;\r
-}\r
-\r
-function cancelAction() {\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function manageReplaceButtons() {\r
-       // "search" or "replace" mode of operation?\r
-       var task = (document.getElementById("search_tab").className == "current") ? "search" : "replace";\r
-       document.getElementById("replace_buttons").style.visibility = (task == "replace") ? "visible" : "hidden";\r
-}\r
-\r
-function copyValues(link) {\r
-       // check if tab is already active\r
-       var tab = link;\r
-       while (tab.tagName && tab.tagName.toLowerCase() != "li") tab = tab.parentNode;\r
-       if (tab.className) return false; // tab is already active -> no need to copy any values!\r
-\r
-       // copy values from one panel to the other (if they exist there)\r
-       var from_panel_name = tab.id.match(/^search/i) ? "replace_panel" : "search_panel";\r
-       var to_panel_name = (from_panel_name == "search_panel") ? "replace_panel" : "search_panel";\r
-\r
-       // find all elements with IDs to copy their values\r
-       var elms = document.getElementById(from_panel_name).getElementsByTagName("*");\r
-       for (var i = 0; i < elms.length; i++) {\r
-               if (elms[i].id && elms[i].id != "") {\r
-                       var checked = "undefined";\r
-                       if (elms[i].type.toLowerCase() == "checkbox" || elms[i].type.toLowerCase() == "radio")\r
-                               checked = elms[i].checked;\r
-\r
-                       // copy values if element exists in other panel\r
-                       var to_elm_name = to_panel_name + elms[i].id.substring(from_panel_name.length, elms[i].id.length);\r
-                       var to_elm = document.getElementById(to_elm_name);\r
-                       if (to_elm) {\r
-                               if (checked != "undefined")\r
-                                       to_elm.checked = checked;\r
-                               else\r
-                                       to_elm.value = elms[i].value;\r
-                       }\r
-               }\r
-       }\r
-\r
-       return false;\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en.js
deleted file mode 100644 (file)
index 32af828..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-searchreplace_search_desc : 'Find',\r
-searchreplace_searchnext_desc : 'Find again',\r
-searchreplace_replace_desc : 'Find/Replace',\r
-searchreplace_notfound : 'The search has been completed. The search string could not be found.',\r
-searchreplace_search_title : 'Find',\r
-searchreplace_replace_title : 'Find/Replace',\r
-searchreplace_allreplaced : 'All occurrences of the search string were replaced.',\r
-searchreplace_findwhat : 'Find what',\r
-searchreplace_replacewith : 'Replace with',\r
-searchreplace_direction : 'Direction',\r
-searchreplace_up : 'Up',\r
-searchreplace_down : 'Down',\r
-searchreplace_case : 'Match case',\r
-searchreplace_findnext : 'Find&nbsp;next',\r
-searchreplace_replace : 'Replace',\r
-searchreplace_replaceall : 'Replace&nbsp;all',\r
-searchreplace_cancel : 'Cancel'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm
deleted file mode 100644 (file)
index 192e0cb..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_searchreplace_replace_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/searchreplace.js"></script>\r
-       <link rel="stylesheet" type="text/css" href="css/searchreplace.css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none; margin: 4px;">\r
-<form onsubmit="return false;" action="#">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="search_tab"><span><a href="javascript:mcTabs.displayTab('search_tab','search_panel');manageReplaceButtons();" onmousedown="return copyValues(this);">{$lang_searchreplace_search_desc}</a></span></li>\r
-                       <li id="replace_tab"><span><a href="javascript:mcTabs.displayTab('replace_tab','replace_panel');manageReplaceButtons();" onmousedown="return copyValues(this);">{$lang_searchreplace_replace}</a></span></li>\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-\r
-               <div id="search_panel" class="panel">\r
-                       <table border="0" cellspacing="0" cellpadding="2">\r
-                               <tr>\r
-                                       <td><label for="search_panel_searchstring">{$lang_searchreplace_findwhat}</label></td>\r
-                                       <td><input type="text" id="search_panel_searchstring" name="search_panel_searchstring" style="width: 200px" /></td>\r
-                               </tr>\r
-                               <tr>\r
-                                       <td colspan="2">\r
-                                               <table border="0" cellspacing="0" cellpadding="0" class="direction">\r
-                                                       <tr>\r
-                                                               <td><label>{$lang_searchreplace_direction}</label></td>\r
-                                                               <td><input id="search_panel_backwardsu" name="search_panel_backwards" class="radio" type="radio" /></td>\r
-                                                               <td><label for="search_panel_backwardsu">{$lang_searchreplace_up}</label></td>\r
-                                                               <td><input id="search_panel_backwardsd" name="search_panel_backwards" class="radio" type="radio" /></td>\r
-                                                               <td><label for="search_panel_backwardsd">{$lang_searchreplace_down}</label></td>\r
-                                                       </tr>\r
-                                               </table>\r
-                                       </td>\r
-                               </tr>\r
-                               <tr>\r
-                                       <td colspan="2">\r
-                                               <table border="0" cellspacing="0" cellpadding="0">\r
-                                                       <tr>\r
-                                                               <td><input id="search_panel_casesensitivebox" name="search_panel_casesensitivebox" class="checkbox" type="checkbox" /></td>\r
-                                                               <td><label for="search_panel_casesensitivebox">{$lang_searchreplace_case}</label></td>\r
-                                                       </tr>\r
-                                               </table>\r
-                                       </td>\r
-                               </tr>\r
-                       </table>\r
-               </div>\r
-\r
-               <div id="replace_panel" class="panel">\r
-                       <table border="0" cellspacing="0" cellpadding="2">\r
-                               <tr>\r
-                                       <td><label for="replace_panel_searchstring">{$lang_searchreplace_findwhat}</label></td>\r
-                                       <td><input type="text" id="replace_panel_searchstring" name="replace_panel_searchstring" style="width: 200px" /></td>\r
-                               </tr>\r
-                               <tr>\r
-                                       <td><label for="replace_panel_replacestring">{$lang_searchreplace_replacewith}</label></td>\r
-                                       <td><input type="text" id="replace_panel_replacestring" name="replace_panel_replacestring" style="width: 200px" /></td>\r
-                               </tr>\r
-                               <tr>\r
-                                       <td colspan="2">\r
-                                               <table border="0" cellspacing="0" cellpadding="0" class="direction">\r
-                                                       <tr>\r
-                                                               <td><label>{$lang_searchreplace_direction}</label></td>\r
-                                                               <td><input id="replace_panel_backwardsu" name="replace_panel_backwards" class="radio" type="radio" /></td>\r
-                                                               <td><label for="replace_panel_backwardsu">{$lang_searchreplace_up}</label></td>\r
-                                                               <td><input id="replace_panel_backwardsd" name="replace_panel_backwards" class="radio" type="radio" /></td>\r
-                                                               <td><label for="replace_panel_backwardsd">{$lang_searchreplace_down}</label></td>\r
-                                                       </tr>\r
-                                               </table>\r
-                                       </td>\r
-                               </tr>\r
-                               <tr>\r
-                                       <td colspan="2">\r
-                                               <table border="0" cellspacing="0" cellpadding="0">\r
-                                                       <tr>\r
-                                                               <td><input id="replace_panel_casesensitivebox" name="replace_panel_casesensitivebox" class="checkbox" type="checkbox" /></td>\r
-                                                               <td><label for="replace_panel_casesensitivebox">{$lang_searchreplace_case}</label></td>\r
-                                                       </tr>\r
-                                               </table>\r
-                                       </td>\r
-                               </tr>\r
-                       </table>\r
-               </div>\r
-\r
-       </div>\r
-\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_searchreplace_findnext}" onclick="searchNext('none');" />\r
-                       <span id="replace_buttons">\r
-                               <input type="button" id="replaceBtn" name="replaceBtn" value="{$lang_searchreplace_replace}" onclick="searchNext('current');" />\r
-                               <input type="button" id="replaceAllBtn" name="replaceAllBtn" value="{$lang_searchreplace_replaceall}" onclick="searchNext('all');;" />\r
-                       </span>\r
-               </div>\r
-\r
-               <div style="float: right">      \r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_searchreplace_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/css/props.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/css/props.css
deleted file mode 100644 (file)
index b159b5f..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-#text_font {\r
-       width: 250px;\r
-}\r
-\r
-#text_size {\r
-       width: 70px;\r
-}\r
-\r
-.mceAddSelectValue {\r
-       background-color: #DDDDDD;\r
-}\r
-\r
-select, #block_text_indent, #box_width, #box_height, #box_padding_top, #box_padding_right, #box_padding_bottom, #box_padding_left {\r
-       width: 70px;\r
-}\r
-\r
-#box_margin_top, #box_margin_right, #box_margin_bottom, #box_margin_left, #positioning_width, #positioning_height, #positioning_zindex {\r
-       width: 70px;\r
-}\r
-\r
-#positioning_placement_top, #positioning_placement_right, #positioning_placement_bottom, #positioning_placement_left {\r
-       width: 70px;\r
-}\r
-\r
-#positioning_clip_top, #positioning_clip_right, #positioning_clip_bottom, #positioning_clip_left {\r
-       width: 70px;\r
-}\r
-\r
-.panel_wrapper div.current {\r
-       padding-top: 10px;\r
-       height: 230px;\r
-}\r
-\r
-.delim {\r
-       border-left: 1px solid gray;\r
-}\r
-\r
-.tdelim {\r
-       border-bottom: 1px solid gray;  \r
-}\r
-\r
-#block_display {\r
-       width: 145px;\r
-}\r
-\r
-#list_type {\r
-       width: 115px;\r
-}\r
-\r
-.disabled {\r
-       background-color: #EEEEEE;\r
-}\r
-\r
-#apply {\r
-       font-weight: bold;\r
-       width: 78px;\r
-       height: 21px;\r
-       border: 0;\r
-       background-image: url('../images/apply_button_bg.gif');\r
-       cursor: pointer;\r
-}\r
-\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js
deleted file mode 100644 (file)
index 89f5b07..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('style');var TinyMCE_StylePlugin={getInfo:function(){return{longname:'Style',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/style',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(cn){switch(cn){case"styleprops":return tinyMCE.getButtonHTML(cn,'lang_style_styleinfo_desc','{$pluginurl}/images/styleprops.gif','mceStyleProps',true)}return""},execCommand:function(editor_id,element,command,user_interface,value){var e,inst;switch(command){case"mceStyleProps":TinyMCE_StylePlugin._styleProps();return true;case"mceSetElementStyle":inst=tinyMCE.getInstanceById(editor_id);e=inst.selection.getFocusElement();if(e){e.style.cssText=value;inst.repaint()}return true}return false},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){if(node.nodeName=='BODY')tinyMCE.switchClass(editor_id+'_styleprops','mceButtonDisabled');else tinyMCE.switchClass(editor_id+'_styleprops','mceButtonNormal')},_styleProps:function(){var e=tinyMCE.selectedInstance.selection.getFocusElement();if(!e||e.nodeName=='BODY')return;tinyMCE.openWindow({file:'../../plugins/style/props.htm',width:480+tinyMCE.getLang('lang_style_props_delta_width',0),height:320+tinyMCE.getLang('lang_style_props_delta_height',0)},{editor_id:tinyMCE.selectedInstance.editorId,inline:"yes",style_text:e.style.cssText})}};tinyMCE.addPlugin("style",TinyMCE_StylePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js
deleted file mode 100644 (file)
index 4fa8aaa..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('style');\r
-\r
-var TinyMCE_StylePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Style',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/style',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "styleprops":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_style_styleinfo_desc', '{$pluginurl}/images/styleprops.gif', 'mceStyleProps', true);\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               var e, inst;\r
-\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceStyleProps":\r
-                               TinyMCE_StylePlugin._styleProps();\r
-                               return true;\r
-\r
-                       case "mceSetElementStyle":\r
-                               inst = tinyMCE.getInstanceById(editor_id);\r
-                               e = inst.selection.getFocusElement();\r
-\r
-                               if (e) {\r
-                                       e.style.cssText = value;\r
-                                       inst.repaint();\r
-                               }\r
-\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               if (node.nodeName == 'BODY')\r
-                       tinyMCE.switchClass(editor_id + '_styleprops', 'mceButtonDisabled');\r
-               else\r
-                       tinyMCE.switchClass(editor_id + '_styleprops', 'mceButtonNormal');\r
-       },\r
-\r
-       // Private plugin specific methods\r
-\r
-       _styleProps : function() {\r
-               var e = tinyMCE.selectedInstance.selection.getFocusElement();\r
-\r
-               if (!e || e.nodeName == 'BODY')\r
-                       return;\r
-\r
-               tinyMCE.openWindow({\r
-                       file : '../../plugins/style/props.htm',\r
-                       width : 480 + tinyMCE.getLang('lang_style_props_delta_width', 0),\r
-                       height : 320 + tinyMCE.getLang('lang_style_props_delta_height', 0)\r
-               }, {\r
-                       editor_id : tinyMCE.selectedInstance.editorId,\r
-                       inline : "yes",\r
-                       style_text : e.style.cssText\r
-               });\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("style", TinyMCE_StylePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/apply_button_bg.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/apply_button_bg.gif
deleted file mode 100644 (file)
index 979e868..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/apply_button_bg.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/style_info.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/style_info.gif
deleted file mode 100644 (file)
index 41f2271..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/style_info.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/styleprops.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/styleprops.gif
deleted file mode 100644 (file)
index 41f2271..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/images/styleprops.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/jscripts/props.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/jscripts/props.js
deleted file mode 100644 (file)
index c9883d7..0000000
+++ /dev/null
@@ -1,633 +0,0 @@
-var defaultFonts = "" + \r
-       "Arial, Helvetica, sans-serif=Arial, Helvetica, sans-serif;" + \r
-       "Times New Roman, Times, serif=Times New Roman, Times, serif;" + \r
-       "Courier New, Courier, mono=Courier New, Courier, mono;" + \r
-       "Times New Roman, Times, serif=Times New Roman, Times, serif;" + \r
-       "Georgia, Times New Roman, Times, serif=Georgia, Times New Roman, Times, serif;" + \r
-       "Verdana, Arial, Helvetica, sans-serif=Verdana, Arial, Helvetica, sans-serif;" + \r
-       "Geneva, Arial, Helvetica, sans-serif=Geneva, Arial, Helvetica, sans-serif";\r
-\r
-var defaultSizes = "9;10;12;14;16;18;24;xx-small;x-small;small;medium;large;x-large;xx-large;smaller;larger";\r
-var defaultMeasurement = "+pixels=px;points=pt;in;cm;mm;picas;ems;exs;%";\r
-var defaultSpacingMeasurement = "pixels=px;points=pt;in;cm;mm;picas;+ems;exs;%";\r
-var defaultIndentMeasurement = "pixels=px;+points=pt;in;cm;mm;picas;ems;exs;%";\r
-var defaultWeight = "normal;bold;bolder;lighter;100;200;300;400;500;600;700;800;900";\r
-var defaultTextStyle = "normal;italic;oblique";\r
-var defaultVariant = "normal;small-caps";\r
-var defaultLineHeight = "normal";\r
-var defaultAttachment = "fixed;scroll";\r
-var defaultRepeat = "no-repeat;repeat;repeat-x;repeat-y";\r
-var defaultPosH = "left;center;right";\r
-var defaultPosV = "top;center;bottom";\r
-var defaultVAlign = "baseline;sub;super;top;text-top;middle;bottom;text-bottom";\r
-var defaultDisplay = "inline;block;list-item;run-in;compact;marker;table;inline-table;table-row-group;table-header-group;table-footer-group;table-row;table-column-group;table-column;table-cell;table-caption;none";\r
-var defaultBorderStyle = "none;solid;dashed;dotted;double;groove;ridge;inset;outset";\r
-var defaultBorderWidth = "thin;medium;thick";\r
-var defaultListType = "disc;circle;square;decimal;lower-roman;upper-roman;lower-alpha;upper-alpha;none";\r
-\r
-function init() {\r
-       var ce = document.getElementById('container'), h;\r
-\r
-       ce.style.cssText = tinyMCEPopup.getWindowArg('style_text');\r
-\r
-       h = getBrowserHTML('background_image_browser','background_image','image','advimage');\r
-       document.getElementById("background_image_browser").innerHTML = h;\r
-\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       document.getElementById('text_color_pickcontainer').innerHTML = getColorPickerHTML('text_color_pick','text_color');\r
-       document.getElementById('background_color_pickcontainer').innerHTML = getColorPickerHTML('background_color_pick','background_color');\r
-       document.getElementById('border_color_top_pickcontainer').innerHTML = getColorPickerHTML('border_color_top_pick','border_color_top');\r
-       document.getElementById('border_color_right_pickcontainer').innerHTML = getColorPickerHTML('border_color_right_pick','border_color_right');\r
-       document.getElementById('border_color_bottom_pickcontainer').innerHTML = getColorPickerHTML('border_color_bottom_pick','border_color_bottom');\r
-       document.getElementById('border_color_left_pickcontainer').innerHTML = getColorPickerHTML('border_color_left_pick','border_color_left');\r
-\r
-       fillSelect(0, 'text_font', 'style_font', defaultFonts, ';', true);\r
-       fillSelect(0, 'text_size', 'style_font_size', defaultSizes, ';', true);\r
-       fillSelect(0, 'text_size_measurement', 'style_font_size_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'text_case', 'style_text_case', "capitalize;uppercase;lowercase", ';', true);\r
-       fillSelect(0, 'text_weight', 'style_font_weight', defaultWeight, ';', true);\r
-       fillSelect(0, 'text_style', 'style_font_style', defaultTextStyle, ';', true);\r
-       fillSelect(0, 'text_variant', 'style_font_variant', defaultVariant, ';', true);\r
-       fillSelect(0, 'text_lineheight', 'style_font_line_height', defaultLineHeight, ';', true);\r
-       fillSelect(0, 'text_lineheight_measurement', 'style_font_line_height_measurement', defaultMeasurement, ';', true);\r
-\r
-       fillSelect(0, 'background_attachment', 'style_background_attachment', defaultAttachment, ';', true);\r
-       fillSelect(0, 'background_repeat', 'style_background_repeat', defaultRepeat, ';', true);\r
-\r
-       fillSelect(0, 'background_hpos_measurement', 'style_background_hpos_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'background_vpos_measurement', 'style_background_vpos_measurement', defaultMeasurement, ';', true);\r
-\r
-       fillSelect(0, 'background_hpos', 'style_background_hpos', defaultPosH, ';', true);\r
-       fillSelect(0, 'background_vpos', 'style_background_vpos', defaultPosV, ';', true);\r
-\r
-       fillSelect(0, 'block_wordspacing', 'style_wordspacing', 'normal', ';', true);\r
-       fillSelect(0, 'block_wordspacing_measurement', 'style_wordspacing_measurement', defaultSpacingMeasurement, ';', true);\r
-       fillSelect(0, 'block_letterspacing', 'style_letterspacing', 'normal', ';', true);\r
-       fillSelect(0, 'block_letterspacing_measurement', 'style_letterspacing_measurement', defaultSpacingMeasurement, ';', true);\r
-       fillSelect(0, 'block_vertical_alignment', 'style_vertical_alignment', defaultVAlign, ';', true);\r
-       fillSelect(0, 'block_text_align', 'style_text_align', "left;right;center;justify", ';', true);\r
-       fillSelect(0, 'block_whitespace', 'style_whitespace', "normal;pre;nowrap", ';', true);\r
-       fillSelect(0, 'block_display', 'style_display', defaultDisplay, ';', true);\r
-       fillSelect(0, 'block_text_indent_measurement', 'style_text_indent_measurement', defaultIndentMeasurement, ';', true);\r
-\r
-       fillSelect(0, 'box_width_measurement', 'style_box_width_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'box_height_measurement', 'style_box_height_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'box_float', 'style_float', 'left;right;none', ';', true);\r
-       fillSelect(0, 'box_clear', 'style_clear', 'left;right;both;none', ';', true);\r
-       fillSelect(0, 'box_padding_left_measurement', 'style_padding_left_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'box_padding_top_measurement', 'style_padding_top_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'box_padding_bottom_measurement', 'style_padding_bottom_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'box_padding_right_measurement', 'style_padding_right_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'box_margin_left_measurement', 'style_margin_left_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'box_margin_top_measurement', 'style_margin_top_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'box_margin_bottom_measurement', 'style_margin_bottom_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'box_margin_right_measurement', 'style_margin_right_measurement', defaultMeasurement, ';', true);\r
-\r
-       fillSelect(0, 'border_style_top', 'style_border_style_top', defaultBorderStyle, ';', true);\r
-       fillSelect(0, 'border_style_right', 'style_border_style_right', defaultBorderStyle, ';', true);\r
-       fillSelect(0, 'border_style_bottom', 'style_border_style_bottom', defaultBorderStyle, ';', true);\r
-       fillSelect(0, 'border_style_left', 'style_border_style_left', defaultBorderStyle, ';', true);\r
-\r
-       fillSelect(0, 'border_width_top', 'style_border_width_top', defaultBorderWidth, ';', true);\r
-       fillSelect(0, 'border_width_right', 'style_border_width_right', defaultBorderWidth, ';', true);\r
-       fillSelect(0, 'border_width_bottom', 'style_border_width_bottom', defaultBorderWidth, ';', true);\r
-       fillSelect(0, 'border_width_left', 'style_border_width_left', defaultBorderWidth, ';', true);\r
-\r
-       fillSelect(0, 'border_width_top_measurement', 'style_border_width_top_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'border_width_right_measurement', 'style_border_width_right_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'border_width_bottom_measurement', 'style_border_width_bottom_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'border_width_left_measurement', 'style_border_width_left_measurement', defaultMeasurement, ';', true);\r
-\r
-       fillSelect(0, 'list_type', 'style_list_type', defaultListType, ';', true);\r
-       fillSelect(0, 'list_position', 'style_list_position', "inside;outside", ';', true);\r
-\r
-       fillSelect(0, 'positioning_type', 'style_positioning_type', "absolute;relative;static", ';', true);\r
-       fillSelect(0, 'positioning_visibility', 'style_positioning_visibility', "inherit;visible;hidden", ';', true);\r
-\r
-       fillSelect(0, 'positioning_width_measurement', 'style_positioning_width_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'positioning_height_measurement', 'style_positioning_height_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'positioning_overflow', 'style_positioning_overflow', "visible;hidden;scroll;auto", ';', true);\r
-\r
-       fillSelect(0, 'positioning_placement_top_measurement', 'style_positioning_placement_top_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'positioning_placement_right_measurement', 'style_positioning_placement_right_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'positioning_placement_bottom_measurement', 'style_positioning_placement_bottom_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'positioning_placement_left_measurement', 'style_positioning_placement_left_measurement', defaultMeasurement, ';', true);\r
-\r
-       fillSelect(0, 'positioning_clip_top_measurement', 'style_positioning_clip_top_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'positioning_clip_right_measurement', 'style_positioning_clip_right_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'positioning_clip_bottom_measurement', 'style_positioning_clip_bottom_measurement', defaultMeasurement, ';', true);\r
-       fillSelect(0, 'positioning_clip_left_measurement', 'style_positioning_clip_left_measurement', defaultMeasurement, ';', true);\r
-\r
-       TinyMCE_EditableSelects.init();\r
-       setupFormData();\r
-       showDisabledControls();\r
-}\r
-\r
-function setupFormData() {\r
-       var ce = document.getElementById('container'), f = document.forms[0], s, b, i;\r
-\r
-       // Setup text fields\r
-\r
-       selectByValue(f, 'text_font', ce.style.fontFamily, true, true);\r
-       selectByValue(f, 'text_size', getNum(ce.style.fontSize), true, true);\r
-       selectByValue(f, 'text_size_measurement', getMeasurement(ce.style.fontSize));\r
-       selectByValue(f, 'text_weight', ce.style.fontWeight, true, true);\r
-       selectByValue(f, 'text_style', ce.style.fontStyle, true, true);\r
-       selectByValue(f, 'text_lineheight', getNum(ce.style.lineHeight), true, true);\r
-       selectByValue(f, 'text_lineheight_measurement', getMeasurement(ce.style.lineHeight));\r
-       selectByValue(f, 'text_case', ce.style.textTransform, true, true);\r
-       selectByValue(f, 'text_variant', ce.style.fontVariant, true, true);\r
-       f.text_color.value = ce.style.color;\r
-       updateColor('text_color_pick', 'text_color');\r
-       f.text_underline.checked = inStr(ce.style.textDecoration, 'underline');\r
-       f.text_overline.checked = inStr(ce.style.textDecoration, 'overline');\r
-       f.text_linethrough.checked = inStr(ce.style.textDecoration, 'line-through');\r
-       f.text_blink.checked = inStr(ce.style.textDecoration, 'blink');\r
-\r
-       // Setup background fields\r
-\r
-       f.background_color.value = ce.style.backgroundColor;\r
-       updateColor('background_color_pick', 'background_color');\r
-       f.background_image.value = ce.style.backgroundImage.replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");\r
-       selectByValue(f, 'background_repeat', ce.style.backgroundRepeat, true, true);\r
-       selectByValue(f, 'background_attachment', ce.style.backgroundAttachment, true, true);\r
-       selectByValue(f, 'background_hpos', getNum(getVal(ce.style.backgroundPosition, 0)), true, true);\r
-       selectByValue(f, 'background_hpos_measurement', getMeasurement(getVal(ce.style.backgroundPosition, 0)));\r
-       selectByValue(f, 'background_vpos', getNum(getVal(ce.style.backgroundPosition, 1)), true, true);\r
-       selectByValue(f, 'background_vpos_measurement', getMeasurement(getVal(ce.style.backgroundPosition, 1)));\r
-\r
-       // Setup block fields\r
-\r
-       selectByValue(f, 'block_wordspacing', getNum(ce.style.wordSpacing), true, true);\r
-       selectByValue(f, 'block_wordspacing_measurement', getMeasurement(ce.style.wordSpacing));\r
-       selectByValue(f, 'block_letterspacing', getNum(ce.style.letterSpacing), true, true);\r
-       selectByValue(f, 'block_letterspacing_measurement', getMeasurement(ce.style.letterSpacing));\r
-       selectByValue(f, 'block_vertical_alignment', ce.style.verticalAlign, true, true);\r
-       selectByValue(f, 'block_text_align', ce.style.textAlign, true, true);\r
-       f.block_text_indent.value = getNum(ce.style.textIndent);\r
-       selectByValue(f, 'block_text_indent_measurement', getMeasurement(ce.style.textIndent));\r
-       selectByValue(f, 'block_whitespace', ce.style.whiteSpace, true, true);\r
-       selectByValue(f, 'block_display', ce.style.display, true, true);\r
-\r
-       // Setup box fields\r
-\r
-       f.box_width.value = getNum(ce.style.width);\r
-       selectByValue(f, 'box_width_measurement', getMeasurement(ce.style.width));\r
-\r
-       f.box_height.value = getNum(ce.style.height);\r
-       selectByValue(f, 'box_height_measurement', getMeasurement(ce.style.height));\r
-\r
-       if (tinyMCE.isGecko)\r
-               selectByValue(f, 'box_float', ce.style.cssFloat, true, true);\r
-       else\r
-               selectByValue(f, 'box_float', ce.style.styleFloat, true, true);\r
-\r
-       selectByValue(f, 'box_clear', ce.style.clear, true, true);\r
-\r
-       setupBox(f, ce, 'box_padding', 'padding', '');\r
-       setupBox(f, ce, 'box_margin', 'margin', '');\r
-\r
-       // Setup border fields\r
-\r
-       setupBox(f, ce, 'border_style', 'border', 'Style');\r
-       setupBox(f, ce, 'border_width', 'border', 'Width');\r
-       setupBox(f, ce, 'border_color', 'border', 'Color');\r
-\r
-       updateColor('border_color_top_pick', 'border_color_top');\r
-       updateColor('border_color_right_pick', 'border_color_right');\r
-       updateColor('border_color_bottom_pick', 'border_color_bottom');\r
-       updateColor('border_color_left_pick', 'border_color_left');\r
-\r
-       // Setup list fields\r
-\r
-       selectByValue(f, 'list_type', ce.style.listStyleType, true, true);\r
-       selectByValue(f, 'list_position', ce.style.listStylePosition, true, true);\r
-       f.list_bullet_image.value = ce.style.listStyleImage.replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");\r
-\r
-       // Setup box fields\r
-\r
-       selectByValue(f, 'positioning_type', ce.style.position, true, true);\r
-       selectByValue(f, 'positioning_visibility', ce.style.visibility, true, true);\r
-       selectByValue(f, 'positioning_overflow', ce.style.overflow, true, true);\r
-       f.positioning_zindex.value = ce.style.zIndex ? ce.style.zIndex : "";\r
-\r
-       f.positioning_width.value = getNum(ce.style.width);\r
-       selectByValue(f, 'positioning_width_measurement', getMeasurement(ce.style.width));\r
-\r
-       f.positioning_height.value = getNum(ce.style.height);\r
-       selectByValue(f, 'positioning_height_measurement', getMeasurement(ce.style.height));\r
-\r
-       setupBox(f, ce, 'positioning_placement', '', '', new Array('top', 'right', 'bottom', 'left'));\r
-\r
-       s = ce.style.clip.replace(new RegExp("rect\\('?([^']*)'?\\)", 'gi'), "$1");\r
-       s = s.replace(/,/g, ' ');\r
-\r
-       if (!hasEqualValues(new Array(getVal(s, 0), getVal(s, 1), getVal(s, 2), getVal(s, 3)))) {\r
-               f.positioning_clip_top.value = getNum(getVal(s, 0));\r
-               selectByValue(f, 'positioning_clip_top_measurement', getMeasurement(getVal(s, 0)));\r
-               f.positioning_clip_right.value = getNum(getVal(s, 1));\r
-               selectByValue(f, 'positioning_clip_right_measurement', getMeasurement(getVal(s, 1)));\r
-               f.positioning_clip_bottom.value = getNum(getVal(s, 2));\r
-               selectByValue(f, 'positioning_clip_bottom_measurement', getMeasurement(getVal(s, 2)));\r
-               f.positioning_clip_left.value = getNum(getVal(s, 3));\r
-               selectByValue(f, 'positioning_clip_left_measurement', getMeasurement(getVal(s, 3)));\r
-       } else {\r
-               f.positioning_clip_top.value = getNum(getVal(s, 0));\r
-               selectByValue(f, 'positioning_clip_top_measurement', getMeasurement(getVal(s, 0)));\r
-               f.positioning_clip_right.value = f.positioning_clip_bottom.value = f.positioning_clip_left.value;\r
-       }\r
-\r
-//     setupBox(f, ce, '', 'border', 'Color');\r
-}\r
-\r
-function getMeasurement(s) {\r
-       return s.replace(/^([0-9]+)(.*)$/, "$2");\r
-}\r
-\r
-function getNum(s) {\r
-       if (new RegExp('^[0-9]+[a-z%]+$', 'gi').test(s))\r
-               return s.replace(/[^0-9]/g, '');\r
-\r
-       return s;\r
-}\r
-\r
-function inStr(s, n) {\r
-       return new RegExp(n, 'gi').test(s);\r
-}\r
-\r
-function getVal(s, i) {\r
-       var a = tinyMCE.explode(' ', s);\r
-\r
-       if (a.length > 1)\r
-               return a[i];\r
-\r
-       return "";\r
-}\r
-\r
-function setValue(f, n, v) {\r
-       if (f.elements[n].type == "text")\r
-               f.elements[n].value = v;\r
-       else\r
-               selectByValue(f, n, v, true, true);\r
-}\r
-\r
-function setupBox(f, ce, fp, pr, sf, b) {\r
-       if (typeof(b) == "undefined")\r
-               b = new Array('Top', 'Right', 'Bottom', 'Left');\r
-\r
-       if (isSame(ce, pr, sf, b)) {\r
-               f.elements[fp + "_same"].checked = true;\r
-\r
-               setValue(f, fp + "_top", getNum(ce.style[pr + b[0] + sf]));\r
-               f.elements[fp + "_top"].disabled = false;\r
-\r
-               f.elements[fp + "_right"].value = "";\r
-               f.elements[fp + "_right"].disabled = true;\r
-               f.elements[fp + "_bottom"].value = "";\r
-               f.elements[fp + "_bottom"].disabled = true;\r
-               f.elements[fp + "_left"].value = "";\r
-               f.elements[fp + "_left"].disabled = true;\r
-\r
-               if (f.elements[fp + "_top_measurement"]) {\r
-                       selectByValue(f, fp + '_top_measurement', getMeasurement(ce.style[pr + b[0] + sf]));\r
-                       f.elements[fp + "_left_measurement"].disabled = true;\r
-                       f.elements[fp + "_bottom_measurement"].disabled = true;\r
-                       f.elements[fp + "_right_measurement"].disabled = true;\r
-               }\r
-       } else {\r
-               f.elements[fp + "_same"].checked = false;\r
-\r
-               setValue(f, fp + "_top", getNum(ce.style[pr + b[0] + sf]));\r
-               f.elements[fp + "_top"].disabled = false;\r
-\r
-               setValue(f, fp + "_right", getNum(ce.style[pr + b[1] + sf]));\r
-               f.elements[fp + "_right"].disabled = false;\r
-\r
-               setValue(f, fp + "_bottom", getNum(ce.style[pr + b[2] + sf]));\r
-               f.elements[fp + "_bottom"].disabled = false;\r
-\r
-               setValue(f, fp + "_left", getNum(ce.style[pr + b[3] + sf]));\r
-               f.elements[fp + "_left"].disabled = false;\r
-\r
-               if (f.elements[fp + "_top_measurement"]) {\r
-                       selectByValue(f, fp + '_top_measurement', getMeasurement(ce.style[pr + b[0] + sf]));\r
-                       selectByValue(f, fp + '_right_measurement', getMeasurement(ce.style[pr + b[1] + sf]));\r
-                       selectByValue(f, fp + '_bottom_measurement', getMeasurement(ce.style[pr + b[2] + sf]));\r
-                       selectByValue(f, fp + '_left_measurement', getMeasurement(ce.style[pr + b[3] + sf]));\r
-                       f.elements[fp + "_left_measurement"].disabled = false;\r
-                       f.elements[fp + "_bottom_measurement"].disabled = false;\r
-                       f.elements[fp + "_right_measurement"].disabled = false;\r
-               }\r
-       }\r
-}\r
-\r
-function isSame(e, pr, sf, b) {\r
-       var a = new Array(), i, x;\r
-\r
-       if (typeof(b) == "undefined")\r
-               b = new Array('Top', 'Right', 'Bottom', 'Left');\r
-\r
-       if (typeof(sf) == "undefined" || sf == null)\r
-               sf = "";\r
-\r
-       a[0] = e.style[pr + b[0] + sf];\r
-       a[1] = e.style[pr + b[1] + sf];\r
-       a[2] = e.style[pr + b[2] + sf];\r
-       a[3] = e.style[pr + b[3] + sf];\r
-\r
-       for (i=0; i<a.length; i++) {\r
-               if (a[i] == null)\r
-                       return false;\r
-\r
-               for (x=0; x<a.length; x++) {\r
-                       if (a[x] != a[i])\r
-                               return false;\r
-               }\r
-       }\r
-\r
-       return true;\r
-};\r
-\r
-function hasEqualValues(a) {\r
-       var i, x;\r
-\r
-       for (i=0; i<a.length; i++) {\r
-               if (a[i] == null)\r
-                       return false;\r
-\r
-               for (x=0; x<a.length; x++) {\r
-                       if (a[x] != a[i])\r
-                               return false;\r
-               }\r
-       }\r
-\r
-       return true;\r
-}\r
-\r
-function applyAction() {\r
-       var ce = document.getElementById('container');\r
-\r
-       generateCSS();\r
-\r
-       tinyMCEPopup.execCommand('mceSetElementStyle', false, tinyMCE.serializeStyle(tinyMCE.parseStyle(ce.style.cssText)));\r
-}\r
-\r
-function updateAction() {\r
-       applyAction();\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function generateCSS() {\r
-       var ce = document.getElementById('container'), f = document.forms[0], num = new RegExp('[0-9]+', 'g'), s, t;\r
-\r
-       ce.style.cssText = "";\r
-\r
-       // Build text styles\r
-       ce.style.fontFamily = f.text_font.value;\r
-       ce.style.fontSize = f.text_size.value + (isNum(f.text_size.value) ? f.text_size_measurement.value : "");\r
-       ce.style.fontStyle = f.text_style.value;\r
-       ce.style.lineHeight = f.text_lineheight.value + (isNum(f.text_lineheight.value) ? f.text_lineheight_measurement.value : "");\r
-       ce.style.textTransform = f.text_case.value;\r
-       ce.style.fontWeight = f.text_weight.value;\r
-       ce.style.fontVariant = f.text_variant.value;\r
-       ce.style.color = f.text_color.value;\r
-\r
-       s = "";\r
-       s += f.text_underline.checked ? " underline" : "";\r
-       s += f.text_overline.checked ? " overline" : "";\r
-       s += f.text_linethrough.checked ? " line-through" : "";\r
-       s += f.text_blink.checked ? " blink" : "";\r
-       s = s.length > 0 ? s.substring(1) : s;\r
-\r
-       if (f.text_none.checked)\r
-               s = "none";\r
-\r
-       ce.style.textDecoration = s;\r
-\r
-       // Build background styles\r
-\r
-       ce.style.backgroundColor = f.background_color.value;\r
-       ce.style.backgroundImage = f.background_image.value != "" ? "url(" + f.background_image.value + ")" : "";\r
-       ce.style.backgroundRepeat = f.background_repeat.value;\r
-       ce.style.backgroundAttachment = f.background_attachment.value;\r
-\r
-       if (f.background_hpos.value != "") {\r
-               s = "";\r
-               s += f.background_hpos.value + (isNum(f.background_hpos.value) ? f.background_hpos_measurement.value : "") + " ";\r
-               s += f.background_vpos.value + (isNum(f.background_vpos.value) ? f.background_vpos_measurement.value : "");\r
-               ce.style.backgroundPosition = s;\r
-       }\r
-\r
-       // Build block styles\r
-\r
-       ce.style.wordSpacing = f.block_wordspacing.value + (isNum(f.block_wordspacing.value) ? f.block_wordspacing_measurement.value : "");\r
-       ce.style.letterSpacing = f.block_letterspacing.value + (isNum(f.block_letterspacing.value) ? f.block_letterspacing_measurement.value : "");\r
-       ce.style.verticalAlign = f.block_vertical_alignment.value;\r
-       ce.style.textAlign = f.block_text_align.value;\r
-       ce.style.textIndent = f.block_text_indent.value + (isNum(f.block_text_indent.value) ? f.block_text_indent_measurement.value : "");\r
-       ce.style.whiteSpace = f.block_whitespace.value;\r
-       ce.style.display = f.block_display.value;\r
-\r
-       // Build box styles\r
-\r
-       ce.style.width = f.box_width.value + (isNum(f.box_width.value) ? f.box_width_measurement.value : "");\r
-       ce.style.height = f.box_height.value + (isNum(f.box_height.value) ? f.box_height_measurement.value : "");\r
-       ce.style.styleFloat = f.box_float.value;\r
-\r
-       if (tinyMCE.isGecko)\r
-               ce.style.cssFloat = f.box_float.value;\r
-\r
-       ce.style.clear = f.box_clear.value;\r
-\r
-       if (!f.box_padding_same.checked) {\r
-               ce.style.paddingTop = f.box_padding_top.value + (isNum(f.box_padding_top.value) ? f.box_padding_top_measurement.value : "");\r
-               ce.style.paddingRight = f.box_padding_right.value + (isNum(f.box_padding_right.value) ? f.box_padding_right_measurement.value : "");\r
-               ce.style.paddingBottom = f.box_padding_bottom.value + (isNum(f.box_padding_bottom.value) ? f.box_padding_bottom_measurement.value : "");\r
-               ce.style.paddingLeft = f.box_padding_left.value + (isNum(f.box_padding_left.value) ? f.box_padding_left_measurement.value : "");\r
-       } else\r
-               ce.style.padding = f.box_padding_top.value + (isNum(f.box_padding_top.value) ? f.box_padding_top_measurement.value : "");               \r
-\r
-       if (!f.box_margin_same.checked) {\r
-               ce.style.marginTop = f.box_margin_top.value + (isNum(f.box_margin_top.value) ? f.box_margin_top_measurement.value : "");\r
-               ce.style.marginRight = f.box_margin_right.value + (isNum(f.box_margin_right.value) ? f.box_margin_right_measurement.value : "");\r
-               ce.style.marginBottom = f.box_margin_bottom.value + (isNum(f.box_margin_bottom.value) ? f.box_margin_bottom_measurement.value : "");\r
-               ce.style.marginLeft = f.box_margin_left.value + (isNum(f.box_margin_left.value) ? f.box_margin_left_measurement.value : "");\r
-       } else\r
-               ce.style.margin = f.box_margin_top.value + (isNum(f.box_margin_top.value) ? f.box_margin_top_measurement.value : "");           \r
-\r
-       // Build border styles\r
-\r
-       if (!f.border_style_same.checked) {\r
-               ce.style.borderTopStyle = f.border_style_top.value;\r
-               ce.style.borderRightStyle = f.border_style_right.value;\r
-               ce.style.borderBottomStyle = f.border_style_bottom.value;\r
-               ce.style.borderLeftStyle = f.border_style_left.value;\r
-       } else\r
-               ce.style.borderStyle = f.border_style_top.value;\r
-\r
-       if (!f.border_width_same.checked) {\r
-               ce.style.borderTopWidth = f.border_width_top.value + (isNum(f.border_width_top.value) ? f.border_width_top_measurement.value : "");\r
-               ce.style.borderRightWidth = f.border_width_right.value + (isNum(f.border_width_right.value) ? f.border_width_right_measurement.value : "");\r
-               ce.style.borderBottomWidth = f.border_width_bottom.value + (isNum(f.border_width_bottom.value) ? f.border_width_bottom_measurement.value : "");\r
-               ce.style.borderLeftWidth = f.border_width_left.value + (isNum(f.border_width_left.value) ? f.border_width_left_measurement.value : "");\r
-       } else\r
-               ce.style.borderWidth = f.border_width_top.value;\r
-\r
-       if (!f.border_color_same.checked) {\r
-               ce.style.borderTopColor = f.border_color_top.value;\r
-               ce.style.borderRightColor = f.border_color_right.value;\r
-               ce.style.borderBottomColor = f.border_color_bottom.value;\r
-               ce.style.borderLeftColor = f.border_color_left.value;\r
-       } else\r
-               ce.style.borderColor = f.border_color_top.value;\r
-\r
-       // Build list styles\r
-\r
-       ce.style.listStyleType = f.list_type.value;\r
-       ce.style.listStylePosition = f.list_position.value;\r
-       ce.style.listStyleImage = f.list_bullet_image.value != "" ? "url(" + f.list_bullet_image.value + ")" : "";\r
-\r
-       // Build positioning styles\r
-\r
-       ce.style.position = f.positioning_type.value;\r
-       ce.style.visibility = f.positioning_visibility.value;\r
-\r
-       if (ce.style.width == "")\r
-               ce.style.width = f.positioning_width.value + (isNum(f.positioning_width.value) ? f.positioning_width_measurement.value : "");\r
-\r
-       if (ce.style.height == "")\r
-               ce.style.height = f.positioning_height.value + (isNum(f.positioning_height.value) ? f.positioning_height_measurement.value : "");\r
-\r
-       ce.style.zIndex = f.positioning_zindex.value;\r
-       ce.style.overflow = f.positioning_overflow.value;\r
-\r
-       if (!f.positioning_placement_same.checked) {\r
-               ce.style.top = f.positioning_placement_top.value + (isNum(f.positioning_placement_top.value) ? f.positioning_placement_top_measurement.value : "");\r
-               ce.style.right = f.positioning_placement_right.value + (isNum(f.positioning_placement_right.value) ? f.positioning_placement_right_measurement.value : "");\r
-               ce.style.bottom = f.positioning_placement_bottom.value + (isNum(f.positioning_placement_bottom.value) ? f.positioning_placement_bottom_measurement.value : "");\r
-               ce.style.left = f.positioning_placement_left.value + (isNum(f.positioning_placement_left.value) ? f.positioning_placement_left_measurement.value : "");\r
-       } else {\r
-               s = f.positioning_placement_top.value + (isNum(f.positioning_placement_top.value) ? f.positioning_placement_top_measurement.value : "");\r
-               ce.style.top = s;\r
-               ce.style.right = s;\r
-               ce.style.bottom = s;\r
-               ce.style.left = s;\r
-       }\r
-\r
-       if (!f.positioning_clip_same.checked) {\r
-               s = "rect(";\r
-               s += (isNum(f.positioning_clip_top.value) ? f.positioning_clip_top.value + f.positioning_clip_top_measurement.value : "auto") + " ";\r
-               s += (isNum(f.positioning_clip_right.value) ? f.positioning_clip_right.value + f.positioning_clip_right_measurement.value : "auto") + " ";\r
-               s += (isNum(f.positioning_clip_bottom.value) ? f.positioning_clip_bottom.value + f.positioning_clip_bottom_measurement.value : "auto") + " ";\r
-               s += (isNum(f.positioning_clip_left.value) ? f.positioning_clip_left.value + f.positioning_clip_left_measurement.value : "auto");\r
-               s += ")";\r
-\r
-               if (s != "rect(auto auto auto auto)")\r
-                       ce.style.clip = s;\r
-       } else {\r
-               s = "rect(";\r
-               t = isNum(f.positioning_clip_top.value) ? f.positioning_clip_top.value + f.positioning_clip_top_measurement.value : "auto";\r
-               s += t + " ";\r
-               s += t + " ";\r
-               s += t + " ";\r
-               s += t + ")";\r
-\r
-               if (s != "rect(auto auto auto auto)")\r
-                       ce.style.clip = s;\r
-       }\r
-\r
-       ce.style.cssText = tinyMCE.serializeStyle(tinyMCE.parseStyle(ce.style.cssText));\r
-}\r
-\r
-function isNum(s) {\r
-       return new RegExp('[0-9]+', 'g').test(s);\r
-}\r
-\r
-function showDisabledControls() {\r
-       var f = document.forms, i, a;\r
-\r
-       for (i=0; i<f.length; i++) {\r
-               for (a=0; a<f[i].elements.length; a++) {\r
-                       if (f[i].elements[a].disabled)\r
-                               tinyMCE.addCSSClass(f[i].elements[a], "disabled");\r
-                       else\r
-                               tinyMCE.removeCSSClass(f[i].elements[a], "disabled");\r
-               }\r
-       }\r
-}\r
-\r
-function fillSelect(f, s, param, dval, sep, em) {\r
-       var i, ar, p, se;\r
-\r
-       f = document.forms[f];\r
-       sep = typeof(sep) == "undefined" ? ";" : sep;\r
-\r
-       if (em)\r
-               addSelectValue(f, s, "", "");\r
-\r
-       ar = tinyMCE.getParam(param, dval).split(sep);\r
-       for (i=0; i<ar.length; i++) {\r
-               se = false;\r
-\r
-               if (ar[i].charAt(0) == '+') {\r
-                       ar[i] = ar[i].substring(1);\r
-                       se = true;\r
-               }\r
-\r
-               p = ar[i].split('=');\r
-\r
-               if (p.length > 1) {\r
-                       addSelectValue(f, s, p[0], p[1]);\r
-\r
-                       if (se)\r
-                               selectByValue(f, s, p[1]);\r
-               } else {\r
-                       addSelectValue(f, s, p[0], p[0]);\r
-\r
-                       if (se)\r
-                               selectByValue(f, s, p[0]);\r
-               }\r
-       }\r
-}\r
-\r
-function toggleSame(ce, pre) {\r
-       var el = document.forms[0].elements, i;\r
-\r
-       if (ce.checked) {\r
-               el[pre + "_top"].disabled = false;\r
-               el[pre + "_right"].disabled = true;\r
-               el[pre + "_bottom"].disabled = true;\r
-               el[pre + "_left"].disabled = true;\r
-\r
-               if (el[pre + "_top_measurement"]) {\r
-                       el[pre + "_top_measurement"].disabled = false;\r
-                       el[pre + "_right_measurement"].disabled = true;\r
-                       el[pre + "_bottom_measurement"].disabled = true;\r
-                       el[pre + "_left_measurement"].disabled = true;\r
-               }\r
-       } else {\r
-               el[pre + "_top"].disabled = false;\r
-               el[pre + "_right"].disabled = false;\r
-               el[pre + "_bottom"].disabled = false;\r
-               el[pre + "_left"].disabled = false;\r
-\r
-               if (el[pre + "_top_measurement"]) {\r
-                       el[pre + "_top_measurement"].disabled = false;\r
-                       el[pre + "_right_measurement"].disabled = false;\r
-                       el[pre + "_bottom_measurement"].disabled = false;\r
-                       el[pre + "_left_measurement"].disabled = false;\r
-               }\r
-       }\r
-\r
-       showDisabledControls();\r
-}\r
-\r
-function synch(fr, to) {\r
-       var f = document.forms[0];\r
-\r
-       f.elements[to].value = f.elements[fr].value;\r
-\r
-       if (f.elements[fr + "_measurement"])\r
-               selectByValue(f, to + "_measurement", f.elements[fr + "_measurement"].value);\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/langs/en.js
deleted file mode 100644 (file)
index 6bed70f..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('style',{\r
-title : 'Edit CSS Style',\r
-styleinfo_desc : 'Edit CSS Style',\r
-apply : 'Apply',\r
-text_tab : 'Text',\r
-background_tab : 'Background',\r
-block_tab : 'Block',\r
-box_tab : 'Box',\r
-border_tab : 'Border',\r
-list_tab : 'List',\r
-positioning_tab : 'Positioning',\r
-text_props : 'Text',\r
-text_font : 'Font',\r
-text_size : 'Size',\r
-text_weight : 'Weight',\r
-text_style : 'Style',\r
-text_variant : 'Variant',\r
-text_lineheight : 'Line height',\r
-text_case : 'Case',\r
-text_color : 'Color',\r
-text_decoration : 'Decoration',\r
-text_overline : 'overline',\r
-text_underline : 'underline',\r
-text_striketrough : 'strikethrough',\r
-text_blink : 'blink',\r
-text_none : 'none',\r
-background_color : 'Background color',\r
-background_image : 'Background image',\r
-background_repeat : 'Repeat',\r
-background_attachment : 'Attachment',\r
-background_hpos : 'Horizontal position',\r
-background_vpos : 'Vertical position',\r
-block_wordspacing : 'Word spacing',\r
-block_letterspacing : 'Letter spacing',\r
-block_vertical_alignment : 'Vertical alignment',\r
-block_text_align : 'Text align',\r
-block_text_indent : 'Text indent',\r
-block_whitespace : 'Whitespace',\r
-block_display : 'Display',\r
-box_width : 'Width',\r
-box_height : 'Height',\r
-box_float : 'Float',\r
-box_clear : 'Clear',\r
-padding : 'Padding',\r
-same : 'Same for all',\r
-top : 'Top',\r
-right : 'Right',\r
-bottom : 'Bottom',\r
-left : 'Left',\r
-margin : 'Margin',\r
-style : 'Style',\r
-width : 'Width',\r
-height : 'Height',\r
-color : 'Color',\r
-list_type : 'Type',\r
-bullet_image : 'Bullet image',\r
-position : 'Position',\r
-positioning_type : 'Type',\r
-visibility : 'Visibility',\r
-zindex : 'Z-index',\r
-overflow : 'Overflow',\r
-placement : 'Placement',\r
-clip : 'Clip'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/props.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/props.htm
deleted file mode 100644 (file)
index 8bbd3db..0000000
+++ /dev/null
@@ -1,729 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-       <title>{$lang_style_title}</title>
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>
-       <script language="javascript" type="text/javascript" src="../../utils/editable_selects.js"></script>
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>
-       <script language="javascript" type="text/javascript" src="jscripts/props.js"></script>
-       <link href="css/props.css" rel="stylesheet" type="text/css" />
-       <base target="_self" />
-</head>
-
-<body id="styleprops" onLoad="tinyMCEPopup.executeOnLoad('init();');" style="display: none">
-<form onSubmit="updateAction();return false;" action="#">
-<div class="tabs">
-       <ul>
-               <li id="text_tab" class="current"><span><a href="javascript:mcTabs.displayTab('text_tab','text_panel');" onMouseDown="return false;">{$lang_style_text_tab}</a></span></li>
-               <li id="background_tab"><span><a href="javascript:mcTabs.displayTab('background_tab','background_panel');" onMouseDown="return false;">{$lang_style_background_tab}</a></span></li>
-               <li id="block_tab"><span><a href="javascript:mcTabs.displayTab('block_tab','block_panel');" onMouseDown="return false;">{$lang_style_block_tab}</a></span></li>
-               <li id="box_tab"><span><a href="javascript:mcTabs.displayTab('box_tab','box_panel');" onMouseDown="return false;">{$lang_style_box_tab}</a></span></li>
-               <li id="border_tab"><span><a href="javascript:mcTabs.displayTab('border_tab','border_panel');" onMouseDown="return false;">{$lang_style_border_tab}</a></span></li>
-               <li id="list_tab"><span><a href="javascript:mcTabs.displayTab('list_tab','list_panel');" onMouseDown="return false;">{$lang_style_list_tab}</a></span></li>
-               <li id="positioning_tab"><span><a href="javascript:mcTabs.displayTab('positioning_tab','positioning_panel');" onMouseDown="return false;">{$lang_style_positioning_tab}</a></span></li>
-       </ul>
-</div>
-
-<div class="panel_wrapper">
-<div id="text_panel" class="panel current">
-       <table border="0" width="100%">
-               <tr>
-                       <td><label for="text_font">{$lang_style_text_font}</label></td>
-                       <td colspan="3">
-                               <select id="text_font" name="text_font" class="mceEditableSelect" onChange="alert(this.options[this.selectedIndex].value);"></select>
-                       </td>
-               </tr>
-               <tr>
-                       <td><label for="text_size">{$lang_style_text_size}</label></td>
-                       <td>
-                               <table border="0" cellspacing="0" cellpadding="0">
-                                       <tr>
-                                               <td><select id="text_size" name="text_size" class="mceEditableSelect"></select></td>
-                                               <td>&nbsp;</td>
-      <td><select id="text_size_measurement" name="text_size_measurement"></select></td>
-                                       </tr>
-                               </table>
-                       </td>
-                       <td><label for="text_weight">{$lang_style_text_weight}</label></td>
-                       <td>
-                               <select id="text_weight" name="text_weight"></select>
-                       </td>
-               </tr>
-               <tr>
-                       <td><label for="text_style">{$lang_style_text_style}</label></td>
-                       <td>
-                               <select id="text_style" name="text_style" class="mceEditableSelect"></select>
-                       </td>
-                       <td><label for="text_variant">{$lang_style_text_variant}</label></td>
-                       <td>
-                               <select id="text_variant" name="text_variant"></select>
-                       </td>
-               </tr>
-               <tr>
-                       <td><label for="text_lineheight">{$lang_style_text_lineheight}</label></td>
-                       <td>
-                               <table border="0" cellspacing="0" cellpadding="0">
-                                       <tr>
-                                               <td>
-                                                       <select id="text_lineheight" name="text_lineheight" class="mceEditableSelect"></select>
-                                               </td>
-                                               <td>&nbsp;</td>
-      <td><select id="text_lineheight_measurement" name="text_lineheight_measurement"></select></td>
-                                       </tr>
-                               </table>
-                       </td>
-                       <td><label for="text_case">{$lang_style_text_case}</label></td>
-                       <td>
-                               <select id="text_case" name="text_case"></select>
-                       </td>
-               </tr>
-               <tr>
-                       <td><label for="text_color">{$lang_style_text_color}</label></td>
-                       <td colspan="2">
-                               <table border="0" cellpadding="0" cellspacing="0">
-                                       <tr>
-                                               <td><input id="text_color" name="text_color" type="text" value="" size="9" onChange="updateColor('text_color_pick','text_color');" /></td>
-                                               <td id="text_color_pickcontainer">&nbsp;</td>
-                                       </tr>
-                               </table>
-                       </td>
-               </tr>
-               <tr>
-                       <td valign="top" style="vertical-align: top; padding-top: 3px;">{$lang_style_text_decoration}</td>
-                       <td colspan="2">
-                               <table border="0" cellspacing="0" cellpadding="0">
-                                       <tr>
-                                               <td><input id="text_underline" name="text_underline" class="checkbox" type="checkbox" /></td>
-                                               <td><label for="text_underline">{$lang_style_text_underline}</label></td>
-                                       </tr>
-                                       <tr>
-                                               <td><input id="text_overline" name="text_overline" class="checkbox" type="checkbox" /></td>
-                                               <td><label for="text_overline">{$lang_style_text_overline}</label></td>
-                                       </tr>
-                                       <tr>
-                                               <td><input id="text_linethrough" name="text_linethrough" class="checkbox" type="checkbox" /></td>
-                                               <td><label for="text_linethrough">{$lang_style_text_striketrough}</label></td>
-                                       </tr>
-                                       <tr>
-                                               <td><input id="text_blink" name="text_blink" class="checkbox" type="checkbox" /></td>
-                                               <td><label for="text_blink">{$lang_style_text_blink}</label></td>
-                                       </tr>
-                                       <tr>
-                                               <td><input id="text_none" name="text_none" class="checkbox" type="checkbox" /></td>
-                                               <td><label for="text_none">{$lang_style_text_none}</label></td>
-                                       </tr>
-                               </table>
-                       </td>
-               </tr>
-       </table>
-</div>
-
-<div id="background_panel" class="panel">
-       <table border="0">
-               <tr>
-                       <td><label for="background_color">{$lang_style_background_color}</label></td>
-                       <td>
-                               <table border="0" cellpadding="0" cellspacing="0">
-                                       <tr>
-                                               <td><input id="background_color" name="background_color" type="text" value="" size="9" onChange="updateColor('background_color_pick','background_color');" /></td>
-                                               <td id="background_color_pickcontainer">&nbsp;</td>
-                                       </tr>
-                               </table>
-                       </td>
-               </tr>
-
-               <tr>
-                       <td><label for="background_image">{$lang_style_background_image}</label></td>
-                       <td><table border="0" cellspacing="0" cellpadding="0">
-                               <tr> 
-                                 <td><input id="background_image" name="background_image" type="text" /></td> 
-                                 <td id="background_image_browser">&nbsp;</td>
-                               </tr>
-                               </table>
-                       </td>
-               </tr>
-
-               <tr>
-                       <td><label for="background_repeat">{$lang_style_background_repeat}</label></td>
-                       <td><select id="background_repeat" name="background_repeat" class="mceEditableSelect"></select></td>
-               </tr>
-
-               <tr>
-                       <td><label for="background_attachment">{$lang_style_background_attachment}</label></td>
-                       <td><select id="background_attachment" name="background_attachment" class="mceEditableSelect"></select></td>
-               </tr>
-
-               <tr>
-                       <td><label for="background_hpos">{$lang_style_background_hpos}</label></td>
-                       <td>
-                               <table border="0" cellspacing="0" cellpadding="0">
-                                       <tr>
-                                               <td><select id="background_hpos" name="background_hpos" class="mceEditableSelect"></select></td>
-                                               <td>&nbsp;</td>
-      <td><select id="background_hpos_measurement" name="background_hpos_measurement"></select></td>
-                                       </tr>
-                               </table>
-                       </td>
-               </tr>
-
-               <tr>
-                       <td><label for="background_vpos">{$lang_style_background_vpos}</label></td>
-                       <td>
-                               <table border="0" cellspacing="0" cellpadding="0">
-                                       <tr>
-                                               <td><select id="background_vpos" name="background_vpos" class="mceEditableSelect"></select></td>
-                                               <td>&nbsp;</td>
-      <td><select id="background_vpos_measurement" name="background_vpos_measurement"></select></td>
-                                       </tr>
-                               </table>
-                       </td>
-               </tr>
-       </table>
-</div>
-
-<div id="block_panel" class="panel">
-       <table border="0">
-               <tr>
-                       <td><label for="block_wordspacing">{$lang_style_block_wordspacing}</label></td>
-                       <td>
-                               <table border="0" cellspacing="0" cellpadding="0">
-                                       <tr>
-                                               <td><select id="block_wordspacing" name="block_wordspacing" class="mceEditableSelect"></select></td>
-                                               <td>&nbsp;</td>
-      <td><select id="block_wordspacing_measurement" name="block_wordspacing_measurement"></select></td>
-                                       </tr>
-                               </table>
-                       </td>
-               </tr>
-
-               <tr>
-                       <td><label for="block_letterspacing">{$lang_style_block_letterspacing}</label></td>
-                       <td>
-                               <table border="0" cellspacing="0" cellpadding="0">
-                                       <tr>
-                                               <td><select id="block_letterspacing" name="block_letterspacing" class="mceEditableSelect"></select></td>
-                                               <td>&nbsp;</td>
-      <td><select id="block_letterspacing_measurement" name="block_letterspacing_measurement"></select></td>
-                                       </tr>
-                               </table>
-                       </td>
-               </tr>
-
-               <tr>
-                       <td><label for="block_vertical_alignment">{$lang_style_block_vertical_alignment}</label></td>
-                       <td><select id="block_vertical_alignment" name="block_vertical_alignment" class="mceEditableSelect"></select></td>
-               </tr>
-
-               <tr>
-                       <td><label for="block_text_align">{$lang_style_block_text_align}</label></td>
-                       <td><select id="block_text_align" name="block_text_align" class="mceEditableSelect"></select></td>
-               </tr>
-
-               <tr>
-                       <td><label for="block_text_indent">{$lang_style_block_text_indent}</label></td>
-                       <td>
-                               <table border="0" cellspacing="0" cellpadding="0">
-                                       <tr>
-                                               <td><input type="text" id="block_text_indent" name="block_text_indent" /></td>
-                                               <td>&nbsp;</td>
-      <td><select id="block_text_indent_measurement" name="block_text_indent_measurement"></select></td>
-                                       </tr>
-                               </table>
-                       </td>
-               </tr>
-
-               <tr>
-                       <td><label for="block_whitespace">{$lang_style_block_whitespace}</label></td>
-                       <td><select id="block_whitespace" name="block_whitespace" class="mceEditableSelect"></select></td>
-               </tr>
-
-               <tr>
-                       <td><label for="block_display">{$lang_style_block_display}</label></td>
-                       <td><select id="block_display" name="block_display" class="mceEditableSelect"></select></td>
-               </tr>
-       </table>
-</div>
-
-<div id="box_panel" class="panel">
-<table border="0">
-       <tr>
-               <td><label for="box_width">{$lang_style_box_width}</label></td>
-               <td>
-                       <table border="0" cellspacing="0" cellpadding="0">
-                               <tr>
-                                       <td><input type="text" id="box_width" name="box_width" class="mceEditableSelect" onChange="synch('box_width','positioning_width');" /></td>
-                                       <td>&nbsp;</td>
-     <td><select id="box_width_measurement" name="box_width_measurement"></select></td>
-                               </tr>
-                       </table>
-               </td>
-               <td>&nbsp;&nbsp;&nbsp;<label for="box_float">{$lang_style_box_float}</label></td>
-               <td><select id="box_float" name="box_float" class="mceEditableSelect"></select></td>
-       </tr>
-
-       <tr>
-               <td><label for="box_height">{$lang_style_box_height}</label></td>
-               <td>
-                       <table border="0" cellspacing="0" cellpadding="0">
-                               <tr>
-                                       <td><input type="text" id="box_height" name="box_height" class="mceEditableSelect" onChange="synch('box_height','positioning_height');" /></td>
-                                       <td>&nbsp;</td>
-     <td><select id="box_height_measurement" name="box_height_measurement"></select></td>
-                               </tr>
-                       </table>
-               </td>
-               <td>&nbsp;&nbsp;&nbsp;<label for="box_clear">{$lang_style_box_clear}</label></td>
-               <td><select id="box_clear" name="box_clear" class="mceEditableSelect"></select></td>
-       </tr>
-</table>
-<div style="float: left; width: 49%">
-       <fieldset>
-               <legend>{$lang_style_padding}</legend>
-
-               <table border="0">
-                       <tr>
-                               <td>&nbsp;</td>
-                               <td><input type="checkbox" id="box_padding_same" name="box_padding_same" class="checkbox" checked="checked" onClick="toggleSame(this,'box_padding');" /> <label for="box_padding_same">{$lang_style_same}</label></td>
-                       </tr>
-                       <tr>
-                               <td><label for="box_padding_top">{$lang_style_top}</label></td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="box_padding_top" name="box_padding_top" class="mceEditableSelect" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="box_padding_top_measurement" name="box_padding_top_measurement"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td><label for="box_padding_right">{$lang_style_right}</label></td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="box_padding_right" name="box_padding_right" class="mceEditableSelect" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="box_padding_right_measurement" name="box_padding_right_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td><label for="box_padding_bottom">{$lang_style_bottom}</label></td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="box_padding_bottom" name="box_padding_bottom" class="mceEditableSelect" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="box_padding_bottom_measurement" name="box_padding_bottom_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td><label for="box_padding_left">{$lang_style_left}</label></td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="box_padding_left" name="box_padding_left" class="mceEditableSelect" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="box_padding_left_measurement" name="box_padding_left_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-               </table>
-       </fieldset>
-</div>
-
-<div style="float: right; width: 49%">
-       <fieldset>
-               <legend>{$lang_style_margin}</legend>
-
-               <table border="0">
-                       <tr>
-                               <td>&nbsp;</td>
-                               <td><input type="checkbox" id="box_margin_same" name="box_margin_same" class="checkbox" checked="checked" onClick="toggleSame(this,'box_margin');" /> <label for="box_margin_same">{$lang_style_same}</label></td>
-                       </tr>
-                       <tr>
-                               <td><label for="box_margin_top">{$lang_style_top}</label></td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="box_margin_top" name="box_margin_top" class="mceEditableSelect" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="box_margin_top_measurement" name="box_margin_top_measurement"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td><label for="box_margin_right">{$lang_style_right}</label></td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="box_margin_right" name="box_margin_right" class="mceEditableSelect" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="box_margin_right_measurement" name="box_margin_right_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td><label for="box_margin_bottom">{$lang_style_bottom}</label></td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="box_margin_bottom" name="box_margin_bottom" class="mceEditableSelect" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="box_margin_bottom_measurement" name="box_margin_bottom_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td><label for="box_margin_left">{$lang_style_left}</label></td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="box_margin_left" name="box_margin_left" class="mceEditableSelect" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="box_margin_left_measurement" name="box_margin_left_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-               </table>
-       </fieldset>
-</div>
-<br style="clear: both" />
-</div>
-
-<div id="border_panel" class="panel">
-<table border="0" cellspacing="0" cellpadding="0" width="100%">
-<tr>
-       <td class="tdelim">&nbsp;</td>
-       <td class="tdelim delim">&nbsp;</td>
-       <td class="tdelim">{$lang_style_style}</td>
-       <td class="tdelim delim">&nbsp;</td>
-       <td class="tdelim">{$lang_style_width}</td>
-       <td class="tdelim delim">&nbsp;</td>
-       <td class="tdelim">{$lang_style_color}</td>
-</tr>
-
-<tr>
-       <td>&nbsp;</td>
-       <td class="delim">&nbsp;</td>
-       <td><input type="checkbox" id="border_style_same" name="border_style_same" class="checkbox" checked="checked" onClick="toggleSame(this,'border_style');" /> <label for="border_style_same">{$lang_style_same}</label></td>
-       <td class="delim">&nbsp;</td>
-       <td><input type="checkbox" id="border_width_same" name="border_width_same" class="checkbox" checked="checked" onClick="toggleSame(this,'border_width');" /> <label for="border_width_same">{$lang_style_same}</label></td>
-       <td class="delim">&nbsp;</td>
-       <td><input type="checkbox" id="border_color_same" name="border_color_same" class="checkbox" checked="checked" onClick="toggleSame(this,'border_color');" /> <label for="border_color_same">{$lang_style_same}</label></td>
-</tr>
-
-<tr>
-       <td>{$lang_style_top}</td>
-       <td class="delim">&nbsp;</td>
-       <td><select id="border_style_top" name="border_style_top" class="mceEditableSelect"></select></td>
-       <td class="delim">&nbsp;</td>
-       <td>
-               <table border="0" cellspacing="0" cellpadding="0">
-                       <tr>
-                               <td><select id="border_width_top" name="border_width_top" class="mceEditableSelect"></select></td>
-                               <td>&nbsp;</td>
-    <td><select id="border_width_top_measurement" name="border_width_top_measurement"></select></td>
-                       </tr>
-               </table>
-       </td>
-       <td class="delim">&nbsp;</td>
-       <td>
-               <table border="0" cellpadding="0" cellspacing="0">
-                       <tr>
-                               <td><input id="border_color_top" name="border_color_top" type="text" value="" size="9" onChange="updateColor('border_color_top_pick','border_color_top');" /></td>
-                               <td id="border_color_top_pickcontainer">&nbsp;</td>
-                       </tr>
-               </table>
-       </td>
-</tr>
-
-<tr>
-       <td>{$lang_style_right}</td>
-       <td class="delim">&nbsp;</td>
-       <td><select id="border_style_right" name="border_style_right" class="mceEditableSelect" disabled="disabled"></select></td>
-       <td class="delim">&nbsp;</td>
-       <td>
-               <table border="0" cellspacing="0" cellpadding="0">
-                       <tr>
-                               <td><select id="border_width_right" name="border_width_right" class="mceEditableSelect" disabled="disabled"></select></td>
-                               <td>&nbsp;</td>
-    <td><select id="border_width_right_measurement" name="border_width_right_measurement" disabled="disabled"></select></td>
-                       </tr>
-               </table>
-       </td>
-       <td class="delim">&nbsp;</td>
-       <td>
-               <table border="0" cellpadding="0" cellspacing="0">
-                       <tr>
-                               <td><input id="border_color_right" name="border_color_right" type="text" value="" size="9" onChange="updateColor('border_color_right_pick','border_color_right');" disabled="disabled" /></td>
-                               <td id="border_color_right_pickcontainer">&nbsp;</td>
-                       </tr>
-               </table>
-       </td>
-</tr>
-
-<tr>
-       <td>{$lang_style_bottom}</td>
-       <td class="delim">&nbsp;</td>
-       <td><select id="border_style_bottom" name="border_style_bottom" class="mceEditableSelect" disabled="disabled"></select></td>
-       <td class="delim">&nbsp;</td>
-       <td>
-               <table border="0" cellspacing="0" cellpadding="0">
-                       <tr>
-                               <td><select id="border_width_bottom" name="border_width_bottom" class="mceEditableSelect" disabled="disabled"></select></td>
-                               <td>&nbsp;</td>
-    <td><select id="border_width_bottom_measurement" name="border_width_bottom_measurement" disabled="disabled"></select></td>
-                       </tr>
-               </table>
-       </td>
-       <td class="delim">&nbsp;</td>
-       <td>
-               <table border="0" cellpadding="0" cellspacing="0">
-                       <tr>
-                               <td><input id="border_color_bottom" name="border_color_bottom" type="text" value="" size="9" onChange="updateColor('border_color_bottom_pick','border_color_bottom');" disabled="disabled" /></td>
-                               <td id="border_color_bottom_pickcontainer">&nbsp;</td>
-                       </tr>
-               </table>
-       </td>
-</tr>
-
-<tr>
-       <td>{$lang_style_left}</td>
-       <td class="delim">&nbsp;</td>
-       <td><select id="border_style_left" name="border_style_left" class="mceEditableSelect" disabled="disabled"></select></td>
-       <td class="delim">&nbsp;</td>
-       <td>
-               <table border="0" cellspacing="0" cellpadding="0">
-                       <tr>
-                               <td><select id="border_width_left" name="border_width_left" class="mceEditableSelect" disabled="disabled"></select></td>
-                               <td>&nbsp;</td>
-    <td><select id="border_width_left_measurement" name="border_width_left_measurement" disabled="disabled"></select></td>
-                       </tr>
-               </table>
-       </td>
-       <td class="delim">&nbsp;</td>
-       <td>
-               <table border="0" cellpadding="0" cellspacing="0">
-                       <tr>
-                               <td><input id="border_color_left" name="border_color_left" type="text" value="" size="9" onChange="updateColor('border_color_left_pick','border_color_left');" disabled="disabled" /></td>
-                               <td id="border_color_left_pickcontainer">&nbsp;</td>
-                       </tr>
-               </table>
-       </td>
-</tr>
-</table>
-</div>
-
-<div id="list_panel" class="panel">
-       <table border="0">
-               <tr>
-                       <td><label for="list_type">{$lang_style_list_type}</label></td>
-                       <td><select id="list_type" name="list_type" class="mceEditableSelect"></select></td>
-               </tr>
-
-               <tr>
-                       <td><label for="list_bullet_image">{$lang_style_bullet_image}</label></td>
-                       <td><input id="list_bullet_image" name="list_bullet_image" type="text" /></td>
-               </tr>
-
-               <tr>
-                       <td><label for="list_position">{$lang_style_position}</label></td>
-                       <td><select id="list_position" name="list_position" class="mceEditableSelect"></select></td>
-               </tr>
-       </table>
-</div>
-
-<div id="positioning_panel" class="panel">
-<table border="0">
-       <tr>
-               <td><label for="positioning_type">{$lang_style_positioning_type}</label></td>
-               <td><select id="positioning_type" name="positioning_type" class="mceEditableSelect"></select></td>
-               <td>&nbsp;&nbsp;&nbsp;<label for="positioning_visibility">{$lang_style_visibility}</label></td>
-               <td><select id="positioning_visibility" name="positioning_visibility" class="mceEditableSelect"></select></td>
-       </tr>
-
-       <tr>
-               <td><label for="positioning_width">{$lang_style_width}</label></td>
-               <td>
-                       <table border="0" cellspacing="0" cellpadding="0">
-                               <tr>
-                                       <td><input type="text" id="positioning_width" name="positioning_width" onChange="synch('positioning_width','box_width');" /></td>
-                                       <td>&nbsp;</td>
-     <td><select id="positioning_width_measurement" name="positioning_width_measurement"></select></td>
-                               </tr>
-                       </table>
-               </td>
-               <td>&nbsp;&nbsp;&nbsp;<label for="positioning_zindex">{$lang_style_zindex}</label></td>
-               <td><input type="text" id="positioning_zindex" name="positioning_zindex" /></td>
-       </tr>
-
-       <tr>
-               <td><label for="positioning_height">{$lang_style_height}</label></td>
-               <td>
-                       <table border="0" cellspacing="0" cellpadding="0">
-                               <tr>
-                                       <td><input type="text" id="positioning_height" name="positioning_height" onChange="synch('positioning_height','box_height');" /></td>
-                                       <td>&nbsp;</td>
-     <td><select id="positioning_height_measurement" name="positioning_height_measurement"></select></td>
-                               </tr>
-                       </table>
-               </td>
-               <td>&nbsp;&nbsp;&nbsp;<label for="positioning_overflow">{$lang_style_overflow}</label></td>
-               <td><select id="positioning_overflow" name="positioning_overflow" class="mceEditableSelect"></select></td>
-       </tr>
-</table>
-
-<div style="float: left; width: 49%">
-       <fieldset>
-               <legend>{$lang_style_placement}</legend>
-
-               <table border="0">
-                       <tr>
-                               <td>&nbsp;</td>
-                               <td><input type="checkbox" id="positioning_placement_same" name="positioning_placement_same" class="checkbox" checked="checked" onClick="toggleSame(this,'positioning_placement');" /> <label for="positioning_placement_same">{$lang_style_same}</label></td>
-                       </tr>
-                       <tr>
-                               <td>{$lang_style_top}</td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="positioning_placement_top" name="positioning_placement_top" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="positioning_placement_top_measurement" name="positioning_placement_top_measurement"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td>{$lang_style_right}</td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="positioning_placement_right" name="positioning_placement_right" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="positioning_placement_right_measurement" name="positioning_placement_right_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td>{$lang_style_bottom}</td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="positioning_placement_bottom" name="positioning_placement_bottom" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="positioning_placement_bottom_measurement" name="positioning_placement_bottom_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td>{$lang_style_left}</td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="positioning_placement_left" name="positioning_placement_left" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="positioning_placement_left_measurement" name="positioning_placement_left_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-               </table>
-       </fieldset>
-</div>
-
-<div style="float: right; width: 49%">
-       <fieldset>
-               <legend>{$lang_style_clip}</legend>
-
-               <table border="0">
-                       <tr>
-                               <td>&nbsp;</td>
-                               <td><input type="checkbox" id="positioning_clip_same" name="positioning_clip_same" class="checkbox" checked="checked" onClick="toggleSame(this,'positioning_clip');" /> <label for="positioning_clip_same">{$lang_style_same}</label></td>
-                       </tr>
-                       <tr>
-                               <td>{$lang_style_top}</td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="positioning_clip_top" name="positioning_clip_top" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="positioning_clip_top_measurement" name="positioning_clip_top_measurement"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td>{$lang_style_right}</td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="positioning_clip_right" name="positioning_clip_right" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="positioning_clip_right_measurement" name="positioning_clip_right_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td>{$lang_style_bottom}</td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="positioning_clip_bottom" name="positioning_clip_bottom" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="positioning_clip_bottom_measurement" name="positioning_clip_bottom_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-                       <tr>
-                               <td>{$lang_style_left}</td>
-                               <td>
-                                       <table border="0" cellspacing="0" cellpadding="0">
-                                               <tr>
-                                                       <td><input type="text" id="positioning_clip_left" name="positioning_clip_left" disabled="disabled" /></td>
-                                                       <td>&nbsp;</td>
-       <td><select id="positioning_clip_left_measurement" name="positioning_clip_left_measurement" disabled="disabled"></select></td>
-                                               </tr>
-                                       </table>
-                               </td>
-                       </tr>
-               </table>
-       </fieldset>
-</div>
-<br style="clear: both" />
-</div>
-</div>
-
-<div class="mceActionPanel">
-       <div style="float: left">
-               <div style="float: left"><input type="button" id="insert" name="insert" value="{$lang_update}" onClick="updateAction();" /></div>
-
-               <div style="float: left">&nbsp;<input type="button" id="apply" name="apply" value="{$lang_style_apply}" onClick="applyAction();" class="updateButton" /></div>
-               <br style="clear: both" />
-       </div>
-
-       <div style="float: right">
-               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onClick="tinyMCEPopup.close();" />
-       </div>
-</div>
-</form>
-
-<div style="display: none">
-       <div id="container"></div>
-</div>
-</body>
-</html>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/style/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/cell.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/cell.htm
deleted file mode 100644 (file)
index 7171d4f..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_table_cell_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/cell.js"></script>\r
-       <link href="css/cell.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body id="tablecell" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-       <form onsubmit="updateAction();return false;" action="#">\r
-               <div class="tabs">\r
-                       <ul>\r
-                               <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_table_general_tab}</a></span></li>\r
-                               <li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{$lang_table_advanced_tab}</a></span></li>\r
-                       </ul>\r
-               </div>\r
-\r
-               <div class="panel_wrapper">\r
-                       <div id="general_panel" class="panel current">\r
-                               <fieldset>\r
-                                       <legend>{$lang_table_general_props}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td><label for="align">{$lang_table_align}</label></td>\r
-                                                       <td>\r
-                                                               <select id="align" name="align">\r
-                                                                       <option value="">{$lang_not_set}</option>\r
-                                                                       <option value="center">{$lang_table_align_middle}</option>\r
-                                                                       <option value="left">{$lang_table_align_left}</option>\r
-                                                                       <option value="right">{$lang_table_align_right}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-               \r
-                                                       <td><label for="celltype">{$lang_table_cell_type}</label></td>\r
-                                                       <td>\r
-                                                               <select id="celltype" name="celltype">\r
-                                                                       <option value="td">{$lang_table_td}</option>\r
-                                                                       <option value="th">{$lang_table_th}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="valign">{$lang_table_valign}</label></td>\r
-                                                       <td>\r
-                                                               <select id="valign" name="valign">\r
-                                                                       <option value="">{$lang_not_set}</option>\r
-                                                                       <option value="top">{$lang_table_align_top}</option>\r
-                                                                       <option value="middle">{$lang_table_align_middle}</option>\r
-                                                                       <option value="bottom">{$lang_table_align_bottom}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-\r
-                                                       <td><label for="scope">{$lang_table_scope}</label></td>\r
-                                                       <td>\r
-                                                               <select id="scope" name="scope">\r
-                                                                       <option value="">{$lang_not_set}</option>\r
-                                                                       <option value="col">{$lang_table_col}</option>\r
-                                                                       <option value="row">{$lang_table_row}</option>\r
-                                                                       <option value="rowgroup">{$lang_table_rowgroup}</option>\r
-                                                                       <option value="colgroup">{$lang_table_colgroup}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="width">{$lang_table_width}</label></td>\r
-                                                       <td><input id="width" name="width" type="text" value="" size="4" maxlength="4" onchange="changedSize();" /></td>\r
-\r
-                                                       <td><label for="height">{$lang_table_height}</label></td>\r
-                                                       <td><input id="height" name="height" type="text" value="" size="4" maxlength="4" onchange="changedSize();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr id="styleSelectRow">\r
-                                                       <td><label for="class">{$lang_class_name}</label></td>\r
-                                                       <td colspan="3">\r
-                                                               <select id="class" name="class">\r
-                                                                       <option value="" selected="selected">{$lang_not_set}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="advanced_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_table_advanced_props}</legend>\r
-\r
-                                       <table border="0" cellpadding="0" cellspacing="4">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="id">{$lang_table_id}</label></td> \r
-                                                       <td><input id="id" name="id" type="text" value="" style="width: 200px" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="style">{$lang_table_style}</label></td>\r
-                                                       <td><input type="text" id="style" name="style" value="" style="width: 200px;" onchange="changedStyle();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="dir">{$lang_table_langdir}</label></td> \r
-                                                       <td>\r
-                                                               <select id="dir" name="dir" style="width: 200px"> \r
-                                                                               <option value="">{$lang_not_set}</option> \r
-                                                                               <option value="ltr">{$lang_table_ltr}</option> \r
-                                                                               <option value="rtl">{$lang_table_rtl}</option> \r
-                                                               </select>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="lang">{$lang_table_langcode}</label></td> \r
-                                                       <td>\r
-                                                               <input id="lang" name="lang" type="text" value="" style="width: 200px" />\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="backgroundimage">{$lang_table_bgimage}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="backgroundimage" name="backgroundimage" type="text" value="" style="width: 200px" onchange="changedBackgroundImage();" /></td>\r
-                                                                               <td id="backgroundimagebrowsercontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="bordercolor">{$lang_table_bordercolor}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="bordercolor" name="bordercolor" type="text" value="" size="9" onchange="updateColor('bordercolor_pick','bordercolor');changedColor();" /></td>\r
-                                                                               <td id="bordercolor_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="bgcolor">{$lang_table_bgcolor}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="bgcolor" name="bgcolor" type="text" value="" size="9" onchange="updateColor('bgcolor_pick','bgcolor');changedColor();" /></td>\r
-                                                                               <td id="bgcolor_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td> \r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-               </div>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div>\r
-                               <select id="action" name="action">\r
-                                       <option value="cell">{$lang_table_cell_cell}</option>\r
-                                       <option value="row">{$lang_table_cell_row}</option>\r
-                                       <option value="all">{$lang_table_cell_all}</option>\r
-                               </select>\r
-                       </div>\r
-\r
-                       <div style="float: left">\r
-                               <div><input type="button" id="insert" name="insert" value="{$lang_update}" onclick="updateAction();" /></div>\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-                       </div>\r
-               </div>\r
-       </form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css
deleted file mode 100644 (file)
index a067ecd..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/* CSS file for cell dialog in the table plugin */\r
-\r
-.panel_wrapper div.current {\r
-       height: 200px;\r
-}\r
-\r
-.advfield {\r
-       width: 200px;\r
-}\r
-\r
-#action {\r
-       margin-bottom: 3px;\r
-}\r
-\r
-#class {\r
-       width: 150px;\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/css/row.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/css/row.css
deleted file mode 100644 (file)
index 1f7755d..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/* CSS file for row dialog in the table plugin */\r
-\r
-.panel_wrapper div.current {\r
-       height: 200px;\r
-}\r
-\r
-.advfield {\r
-       width: 200px;\r
-}\r
-\r
-#action {\r
-       margin-bottom: 3px;\r
-}\r
-\r
-#rowtype,#align,#valign,#class,#height {\r
-       width: 150px;\r
-}\r
-\r
-#height {\r
-       width: 50px;    \r
-}\r
-\r
-.col2 {\r
-       padding-left: 20px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/css/table.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/css/table.css
deleted file mode 100644 (file)
index 804f766..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-/* CSS file for table dialog in the table plugin */\r
-\r
-.panel_wrapper div.current {\r
-       height: 220px;\r
-}\r
-\r
-.advfield {\r
-       width: 200px;\r
-}\r
-\r
-#class {\r
-       width: 150px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js
deleted file mode 100644 (file)
index 2f308f8..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('table');var TinyMCE_TablePlugin={getInfo:function(){return{longname:'Tables',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/table',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){if(tinyMCE.isGecko){var doc=inst.getDoc();tinyMCE.addEvent(doc,"mouseup",TinyMCE_TablePlugin._mouseDownHandler)}inst.tableRowClipboard=null},getControlHTML:function(control_name){var controls=new Array(['table','table.gif','lang_table_desc','mceInsertTable',true],['delete_table','table_delete.gif','lang_table_del','mceTableDelete'],['delete_col','table_delete_col.gif','lang_table_delete_col_desc','mceTableDeleteCol'],['delete_row','table_delete_row.gif','lang_table_delete_row_desc','mceTableDeleteRow'],['col_after','table_insert_col_after.gif','lang_table_col_after_desc','mceTableInsertColAfter'],['col_before','table_insert_col_before.gif','lang_table_col_before_desc','mceTableInsertColBefore'],['row_after','table_insert_row_after.gif','lang_table_row_after_desc','mceTableInsertRowAfter'],['row_before','table_insert_row_before.gif','lang_table_row_before_desc','mceTableInsertRowBefore'],['row_props','table_row_props.gif','lang_table_row_desc','mceTableRowProps',true],['cell_props','table_cell_props.gif','lang_table_cell_desc','mceTableCellProps',true],['split_cells','table_split_cells.gif','lang_table_split_cells_desc','mceTableSplitCells',true],['merge_cells','table_merge_cells.gif','lang_table_merge_cells_desc','mceTableMergeCells',true]);for(var i=0;i<controls.length;i++){var but=controls[i];var cmd='tinyMCE.execInstanceCommand(\'{$editor_id}\',\''+but[3]+'\', '+(but.length>4?but[4]:false)+(but.length>5?', \''+but[5]+'\'':'')+');return false;';if(but[0]==control_name)return tinyMCE.getButtonHTML(control_name,but[2],'{$pluginurl}/images/'+but[1],but[3],(but.length>4?but[4]:false))}if(control_name=="tablecontrols"){var html="";html+=tinyMCE.getControlHTML("table");html+=tinyMCE.getControlHTML("separator");html+=tinyMCE.getControlHTML("row_props");html+=tinyMCE.getControlHTML("cell_props");html+=tinyMCE.getControlHTML("separator");html+=tinyMCE.getControlHTML("row_before");html+=tinyMCE.getControlHTML("row_after");html+=tinyMCE.getControlHTML("delete_row");html+=tinyMCE.getControlHTML("separator");html+=tinyMCE.getControlHTML("col_before");html+=tinyMCE.getControlHTML("col_after");html+=tinyMCE.getControlHTML("delete_col");html+=tinyMCE.getControlHTML("separator");html+=tinyMCE.getControlHTML("split_cells");html+=tinyMCE.getControlHTML("merge_cells");return html}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceInsertTable":case"mceTableRowProps":case"mceTableCellProps":case"mceTableSplitCells":case"mceTableMergeCells":case"mceTableInsertRowBefore":case"mceTableInsertRowAfter":case"mceTableDeleteRow":case"mceTableInsertColBefore":case"mceTableInsertColAfter":case"mceTableDeleteCol":case"mceTableCutRow":case"mceTableCopyRow":case"mceTablePasteRowBefore":case"mceTablePasteRowAfter":case"mceTableDelete":var inst=tinyMCE.getInstanceById(editor_id);inst.execCommand('mceBeginUndoLevel');TinyMCE_TablePlugin._doExecCommand(editor_id,element,command,user_interface,value);inst.execCommand('mceEndUndoLevel');return true}return false},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){var colspan="1",rowspan="1",tdElm;var inst=tinyMCE.getInstanceById(editor_id);tinyMCE.switchClass(editor_id+'_table','mceButtonNormal');tinyMCE.switchClass(editor_id+'_delete_table','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_row_props','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_cell_props','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_row_before','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_row_after','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_delete_row','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_col_before','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_col_after','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_delete_col','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_split_cells','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_merge_cells','mceButtonDisabled');if(tdElm=tinyMCE.getParentElement(node,"td,th")){tinyMCE.switchClass(editor_id+'_cell_props','mceButtonSelected');tinyMCE.switchClass(editor_id+'_delete_table','mceButtonNormal');tinyMCE.switchClass(editor_id+'_row_before','mceButtonNormal');tinyMCE.switchClass(editor_id+'_row_after','mceButtonNormal');tinyMCE.switchClass(editor_id+'_delete_row','mceButtonNormal');tinyMCE.switchClass(editor_id+'_col_before','mceButtonNormal');tinyMCE.switchClass(editor_id+'_col_after','mceButtonNormal');tinyMCE.switchClass(editor_id+'_delete_col','mceButtonNormal');colspan=tinyMCE.getAttrib(tdElm,"colspan");rowspan=tinyMCE.getAttrib(tdElm,"rowspan");colspan=colspan==""?"1":colspan;rowspan=rowspan==""?"1":rowspan;if(colspan!="1"||rowspan!="1")tinyMCE.switchClass(editor_id+'_split_cells','mceButtonNormal')}if(tinyMCE.getParentElement(node,"tr"))tinyMCE.switchClass(editor_id+'_row_props','mceButtonSelected');if(tinyMCE.getParentElement(node,"table")){tinyMCE.switchClass(editor_id+'_table','mceButtonSelected');tinyMCE.switchClass(editor_id+'_merge_cells','mceButtonNormal')}},_mouseDownHandler:function(e){var elm=tinyMCE.isMSIE?event.srcElement:e.target;var focusElm=tinyMCE.selectedInstance.getFocusElement();if(elm.nodeName=="BODY"&&(focusElm.nodeName=="TD"||focusElm.nodeName=="TH"||(focusElm.parentNode&&focusElm.parentNode.nodeName=="TD")||(focusElm.parentNode&&focusElm.parentNode.nodeName=="TH"))){window.setTimeout(function(){var tableElm=tinyMCE.getParentElement(focusElm,"table");tinyMCE.handleVisualAid(tableElm,true,tinyMCE.settings['visual'],tinyMCE.selectedInstance)},10)}},_doExecCommand:function(editor_id,element,command,user_interface,value){var inst=tinyMCE.getInstanceById(editor_id);var focusElm=inst.getFocusElement();var trElm=tinyMCE.getParentElement(focusElm,"tr");var tdElm=tinyMCE.getParentElement(focusElm,"td,th");var tableElm=tinyMCE.getParentElement(focusElm,"table");var doc=inst.contentWindow.document;var tableBorder=tableElm?tableElm.getAttribute("border"):"";if(trElm&&tdElm==null)tdElm=trElm.cells[0];function inArray(ar,v){for(var i=0;i<ar.length;i++){if(ar[i].length>0&&inArray(ar[i],v))return true;if(ar[i]==v)return true}return false}function makeTD(){var newTD=doc.createElement("td");newTD.innerHTML="&nbsp;"}function getColRowSpan(td){var colspan=tinyMCE.getAttrib(td,"colspan");var rowspan=tinyMCE.getAttrib(td,"rowspan");colspan=colspan==""?1:parseInt(colspan);rowspan=rowspan==""?1:parseInt(rowspan);return{colspan:colspan,rowspan:rowspan}}function getCellPos(grid,td){var x,y;for(y=0;y<grid.length;y++){for(x=0;x<grid[y].length;x++){if(grid[y][x]==td)return{cellindex:x,rowindex:y}}}return null}function getCell(grid,row,col){if(grid[row]&&grid[row][col])return grid[row][col];return null}function getTableGrid(table){var grid=new Array(),rows=table.rows,x,y,td,sd,xstart,x2,y2;for(y=0;y<rows.length;y++){for(x=0;x<rows[y].cells.length;x++){td=rows[y].cells[x];sd=getColRowSpan(td);for(xstart=x;grid[y]&&grid[y][xstart];xstart++);for(y2=y;y2<y+sd['rowspan'];y2++){if(!grid[y2])grid[y2]=new Array();for(x2=xstart;x2<xstart+sd['colspan'];x2++)grid[y2][x2]=td}}}return grid}function trimRow(table,tr,td,new_tr){var grid=getTableGrid(table),cpos=getCellPos(grid,td);var cells,lastElm;if(new_tr.cells.length!=tr.childNodes.length){cells=tr.childNodes;lastElm=null;for(var x=0;td=getCell(grid,cpos.rowindex,x);x++){var remove=true;var sd=getColRowSpan(td);if(inArray(cells,td)){new_tr.childNodes[x]._delete=true}else if((lastElm==null||td!=lastElm)&&sd.colspan>1){for(var i=x;i<x+td.colSpan;i++)new_tr.childNodes[i]._delete=true}if((lastElm==null||td!=lastElm)&&sd.rowspan>1)td.rowSpan=sd.rowspan+1;lastElm=td}deleteMarked(tableElm)}}function prevElm(node,name){while((node=node.previousSibling)!=null){if(node.nodeName==name)return node}return null}function nextElm(node,names){var namesAr=names.split(',');while((node=node.nextSibling)!=null){for(var i=0;i<namesAr.length;i++){if(node.nodeName.toLowerCase()==namesAr[i].toLowerCase())return node}}return null}function deleteMarked(tbl){if(tbl.rows==0)return;var tr=tbl.rows[0];do{var next=nextElm(tr,"TR");if(tr._delete){tr.parentNode.removeChild(tr);continue}var td=tr.cells[0];if(td.cells>1){do{var nexttd=nextElm(td,"TD,TH");if(td._delete)td.parentNode.removeChild(td)}while((td=nexttd)!=null)}}while((tr=next)!=null)}function addRows(td_elm,tr_elm,rowspan){td_elm.rowSpan=1;var trNext=nextElm(tr_elm,"TR");for(var i=1;i<rowspan&&trNext;i++){var newTD=doc.createElement("td");newTD.innerHTML="&nbsp;";if(tinyMCE.isMSIE)trNext.insertBefore(newTD,trNext.cells(td_elm.cellIndex));else trNext.insertBefore(newTD,trNext.cells[td_elm.cellIndex]);trNext=nextElm(trNext,"TR")}}function copyRow(doc,table,tr){var grid=getTableGrid(table);var newTR=tr.cloneNode(false);var cpos=getCellPos(grid,tr.cells[0]);var lastCell=null;var tableBorder=tinyMCE.getAttrib(table,"border");var tdElm=null;for(var x=0;tdElm=getCell(grid,cpos.rowindex,x);x++){var newTD=null;if(lastCell!=tdElm){for(var i=0;i<tr.cells.length;i++){if(tdElm==tr.cells[i]){newTD=tdElm.cloneNode(true);break}}}if(newTD==null){newTD=doc.createElement("td");newTD.innerHTML="&nbsp;"}newTD.colSpan=1;newTD.rowSpan=1;newTR.appendChild(newTD);lastCell=tdElm}return newTR}switch(command){case"mceTableRowProps":if(trElm==null)return true;if(user_interface){var template=new Array();template['file']='../../plugins/table/row.htm';template['width']=380;template['height']=295;template['width']+=tinyMCE.getLang('lang_table_rowprops_delta_width',0);template['height']+=tinyMCE.getLang('lang_table_rowprops_delta_height',0);tinyMCE.openWindow(template,{editor_id:inst.editorId,inline:"yes"})}return true;case"mceTableCellProps":if(tdElm==null)return true;if(user_interface){var template=new Array();template['file']='../../plugins/table/cell.htm';template['width']=380;template['height']=295;template['width']+=tinyMCE.getLang('lang_table_cellprops_delta_width',0);template['height']+=tinyMCE.getLang('lang_table_cellprops_delta_height',0);tinyMCE.openWindow(template,{editor_id:inst.editorId,inline:"yes"})}return true;case"mceInsertTable":if(user_interface){var template=new Array();template['file']='../../plugins/table/table.htm';template['width']=380;template['height']=295;template['width']+=tinyMCE.getLang('lang_table_table_delta_width',0);template['height']+=tinyMCE.getLang('lang_table_table_delta_height',0);tinyMCE.openWindow(template,{editor_id:inst.editorId,inline:"yes",action:value})}return true;case"mceTableDelete":var table=tinyMCE.getParentElement(inst.getFocusElement(),"table");if(table){table.parentNode.removeChild(table);inst.repaint()}return true;case"mceTableSplitCells":case"mceTableMergeCells":case"mceTableInsertRowBefore":case"mceTableInsertRowAfter":case"mceTableDeleteRow":case"mceTableInsertColBefore":case"mceTableInsertColAfter":case"mceTableDeleteCol":case"mceTableCutRow":case"mceTableCopyRow":case"mceTablePasteRowBefore":case"mceTablePasteRowAfter":if(!tableElm)return true;if(trElm&&tableElm!=trElm.parentNode)tableElm=trElm.parentNode;if(tableElm&&trElm){switch(command){case"mceTableCutRow":if(!trElm||!tdElm)return true;inst.tableRowClipboard=copyRow(doc,tableElm,trElm);inst.execCommand("mceTableDeleteRow");break;case"mceTableCopyRow":if(!trElm||!tdElm)return true;inst.tableRowClipboard=copyRow(doc,tableElm,trElm);break;case"mceTablePasteRowBefore":if(!trElm||!tdElm)return true;var newTR=inst.tableRowClipboard.cloneNode(true);var prevTR=prevElm(trElm,"TR");if(prevTR!=null)trimRow(tableElm,prevTR,prevTR.cells[0],newTR);trElm.parentNode.insertBefore(newTR,trElm);break;case"mceTablePasteRowAfter":if(!trElm||!tdElm)return true;var nextTR=nextElm(trElm,"TR");var newTR=inst.tableRowClipboard.cloneNode(true);trimRow(tableElm,trElm,tdElm,newTR);if(nextTR==null)trElm.parentNode.appendChild(newTR);else nextTR.parentNode.insertBefore(newTR,nextTR);break;case"mceTableInsertRowBefore":if(!trElm||!tdElm)return true;var grid=getTableGrid(tableElm);var cpos=getCellPos(grid,tdElm);var newTR=doc.createElement("tr");var lastTDElm=null;cpos.rowindex--;if(cpos.rowindex<0)cpos.rowindex=0;for(var x=0;tdElm=getCell(grid,cpos.rowindex,x);x++){if(tdElm!=lastTDElm){var sd=getColRowSpan(tdElm);if(sd['rowspan']==1){var newTD=doc.createElement("td");newTD.innerHTML="&nbsp;";newTD.colSpan=tdElm.colSpan;newTR.appendChild(newTD)}else tdElm.rowSpan=sd['rowspan']+1;lastTDElm=tdElm}}trElm.parentNode.insertBefore(newTR,trElm);grid=getTableGrid(tableElm);inst.selection.selectNode(getCell(grid,cpos.rowindex+1,cpos.cellindex),tinyMCE.isGecko,true);break;case"mceTableInsertRowAfter":if(!trElm||!tdElm)return true;var grid=getTableGrid(tableElm);var cpos=getCellPos(grid,tdElm);var newTR=doc.createElement("tr");var lastTDElm=null;for(var x=0;tdElm=getCell(grid,cpos.rowindex,x);x++){if(tdElm!=lastTDElm){var sd=getColRowSpan(tdElm);if(sd['rowspan']==1){var newTD=doc.createElement("td");newTD.innerHTML="&nbsp;";newTD.colSpan=tdElm.colSpan;newTR.appendChild(newTD)}else tdElm.rowSpan=sd['rowspan']+1;lastTDElm=tdElm}}if(newTR.hasChildNodes()){var nextTR=nextElm(trElm,"TR");if(nextTR)nextTR.parentNode.insertBefore(newTR,nextTR);else tableElm.appendChild(newTR)}grid=getTableGrid(tableElm);inst.selection.selectNode(getCell(grid,cpos.rowindex,cpos.cellindex),tinyMCE.isGecko,true);break;case"mceTableDeleteRow":if(!trElm||!tdElm)return true;var grid=getTableGrid(tableElm);var cpos=getCellPos(grid,tdElm);if(grid.length==1){tableElm=tinyMCE.getParentElement(tableElm,"table");tableElm.parentNode.removeChild(tableElm);return true}var cells=trElm.cells;var nextTR=nextElm(trElm,"TR");for(var x=0;x<cells.length;x++){if(cells[x].rowSpan>1){var newTD=cells[x].cloneNode(true);var sd=getColRowSpan(cells[x]);newTD.rowSpan=sd.rowspan-1;var nextTD=nextTR.cells[x];if(nextTD==null)nextTR.appendChild(newTD);else nextTR.insertBefore(newTD,nextTD)}}var lastTDElm=null;for(var x=0;tdElm=getCell(grid,cpos.rowindex,x);x++){if(tdElm!=lastTDElm){var sd=getColRowSpan(tdElm);if(sd.rowspan>1){tdElm.rowSpan=sd.rowspan-1}else{trElm=tdElm.parentNode;if(trElm.parentNode)trElm._delete=true}lastTDElm=tdElm}}deleteMarked(tableElm);cpos.rowindex--;if(cpos.rowindex<0)cpos.rowindex=0;grid=getTableGrid(tableElm);inst.selection.selectNode(getCell(grid,cpos.rowindex,0),tinyMCE.isGecko,true);break;case"mceTableInsertColBefore":if(!trElm||!tdElm)return true;var grid=getTableGrid(tableElm);var cpos=getCellPos(grid,tdElm);var lastTDElm=null;for(var y=0;tdElm=getCell(grid,y,cpos.cellindex);y++){if(tdElm!=lastTDElm){var sd=getColRowSpan(tdElm);if(sd['colspan']==1){var newTD=doc.createElement(tdElm.nodeName);newTD.innerHTML="&nbsp;";newTD.rowSpan=tdElm.rowSpan;tdElm.parentNode.insertBefore(newTD,tdElm)}else tdElm.colSpan++;lastTDElm=tdElm}}grid=getTableGrid(tableElm);inst.selection.selectNode(getCell(grid,cpos.rowindex,cpos.cellindex+1),tinyMCE.isGecko,true);break;case"mceTableInsertColAfter":if(!trElm||!tdElm)return true;var grid=getTableGrid(tableElm);var cpos=getCellPos(grid,tdElm);var lastTDElm=null;for(var y=0;tdElm=getCell(grid,y,cpos.cellindex);y++){if(tdElm!=lastTDElm){var sd=getColRowSpan(tdElm);if(sd['colspan']==1){var newTD=doc.createElement(tdElm.nodeName);newTD.innerHTML="&nbsp;";newTD.rowSpan=tdElm.rowSpan;var nextTD=nextElm(tdElm,"TD,TH");if(nextTD==null)tdElm.parentNode.appendChild(newTD);else nextTD.parentNode.insertBefore(newTD,nextTD)}else tdElm.colSpan++;lastTDElm=tdElm}}grid=getTableGrid(tableElm);inst.selection.selectNode(getCell(grid,cpos.rowindex,cpos.cellindex),tinyMCE.isGecko,true);break;case"mceTableDeleteCol":if(!trElm||!tdElm)return true;var grid=getTableGrid(tableElm);var cpos=getCellPos(grid,tdElm);var lastTDElm=null;if(grid.length>1&&grid[0].length<=1){tableElm=tinyMCE.getParentElement(tableElm,"table");tableElm.parentNode.removeChild(tableElm);return true}for(var y=0;tdElm=getCell(grid,y,cpos.cellindex);y++){if(tdElm!=lastTDElm){var sd=getColRowSpan(tdElm);if(sd['colspan']>1)tdElm.colSpan=sd['colspan']-1;else{if(tdElm.parentNode)tdElm.parentNode.removeChild(tdElm)}lastTDElm=tdElm}}cpos.cellindex--;if(cpos.cellindex<0)cpos.cellindex=0;grid=getTableGrid(tableElm);inst.selection.selectNode(getCell(grid,cpos.rowindex,0),tinyMCE.isGecko,true);break;case"mceTableSplitCells":if(!trElm||!tdElm)return true;var spandata=getColRowSpan(tdElm);var colspan=spandata["colspan"];var rowspan=spandata["rowspan"];if(colspan>1||rowspan>1){tdElm.colSpan=1;for(var i=1;i<colspan;i++){var newTD=doc.createElement("td");newTD.innerHTML="&nbsp;";trElm.insertBefore(newTD,nextElm(tdElm,"TD,TH"));if(rowspan>1)addRows(newTD,trElm,rowspan)}addRows(tdElm,trElm,rowspan)}tableElm=tinyMCE.getParentElement(inst.getFocusElement(),"table");break;case"mceTableMergeCells":var rows=new Array();var sel=inst.getSel();var grid=getTableGrid(tableElm);if(tinyMCE.isMSIE||sel.rangeCount==1){if(user_interface){var template=new Array();var sp=getColRowSpan(tdElm);template['file']='../../plugins/table/merge_cells.htm';template['width']=250;template['height']=105+(tinyMCE.isNS7?25:0);template['width']+=tinyMCE.getLang('lang_table_merge_cells_delta_width',0);template['height']+=tinyMCE.getLang('lang_table_merge_cells_delta_height',0);tinyMCE.openWindow(template,{editor_id:inst.editorId,inline:"yes",action:"update",numcols:sp.colspan,numrows:sp.rowspan});return true}else{var numRows=parseInt(value['numrows']);var numCols=parseInt(value['numcols']);var cpos=getCellPos(grid,tdElm);if((""+numRows)=="NaN")numRows=1;if((""+numCols)=="NaN")numCols=1;var tRows=tableElm.rows;for(var y=cpos.rowindex;y<grid.length;y++){var rowCells=new Array();for(var x=cpos.cellindex;x<grid[y].length;x++){var td=getCell(grid,y,x);if(td&&!inArray(rows,td)&&!inArray(rowCells,td)){var cp=getCellPos(grid,td);if(cp.cellindex<cpos.cellindex+numCols&&cp.rowindex<cpos.rowindex+numRows)rowCells[rowCells.length]=td}}if(rowCells.length>0)rows[rows.length]=rowCells}}}else{var cells=new Array();var sel=inst.getSel();var lastTR=null;var curRow=null;var x1=-1,y1=-1,x2,y2;if(sel.rangeCount<2)return true;for(var i=0;i<sel.rangeCount;i++){var rng=sel.getRangeAt(i);var tdElm=rng.startContainer.childNodes[rng.startOffset];if(!tdElm)break;if(tdElm.nodeName=="TD")cells[cells.length]=tdElm}var tRows=tableElm.rows;for(var y=0;y<tRows.length;y++){var rowCells=new Array();for(var x=0;x<tRows[y].cells.length;x++){var td=tRows[y].cells[x];for(var i=0;i<cells.length;i++){if(td==cells[i]){rowCells[rowCells.length]=td}}}if(rowCells.length>0)rows[rows.length]=rowCells}var curRow=new Array();var lastTR=null;for(var y=0;y<grid.length;y++){for(var x=0;x<grid[y].length;x++){grid[y][x]._selected=false;for(var i=0;i<cells.length;i++){if(grid[y][x]==cells[i]){if(x1==-1){x1=x;y1=y}x2=x;y2=y;grid[y][x]._selected=true}}}}for(var y=y1;y<=y2;y++){for(var x=x1;x<=x2;x++){if(!grid[y][x]._selected){alert("Invalid selection for merge.");return true}}}}var rowSpan=1,colSpan=1;var lastRowSpan=-1;for(var y=0;y<rows.length;y++){var rowColSpan=0;for(var x=0;x<rows[y].length;x++){var sd=getColRowSpan(rows[y][x]);rowColSpan+=sd['colspan'];if(lastRowSpan!=-1&&sd['rowspan']!=lastRowSpan){alert("Invalid selection for merge.");return true}lastRowSpan=sd['rowspan']}if(rowColSpan>colSpan)colSpan=rowColSpan;lastRowSpan=-1}var lastColSpan=-1;for(var x=0;x<rows[0].length;x++){var colRowSpan=0;for(var y=0;y<rows.length;y++){var sd=getColRowSpan(rows[y][x]);colRowSpan+=sd['rowspan'];if(lastColSpan!=-1&&sd['colspan']!=lastColSpan){alert("Invalid selection for merge.");return true}lastColSpan=sd['colspan']}if(colRowSpan>rowSpan)rowSpan=colRowSpan;lastColSpan=-1}tdElm=rows[0][0];tdElm.rowSpan=rowSpan;tdElm.colSpan=colSpan;for(var y=0;y<rows.length;y++){for(var x=0;x<rows[y].length;x++){var html=rows[y][x].innerHTML;var chk=tinyMCE.regexpReplace(html,"[ \t\r\n]","");if(chk!="<br/>"&&chk!="<br>"&&chk!="&nbsp;"&&(x+y>0))tdElm.innerHTML+=html;if(rows[y][x]!=tdElm&&!rows[y][x]._deleted){var cpos=getCellPos(grid,rows[y][x]);var tr=rows[y][x].parentNode;tr.removeChild(rows[y][x]);rows[y][x]._deleted=true;if(!tr.hasChildNodes()){tr.parentNode.removeChild(tr);var lastCell=null;for(var x=0;cellElm=getCell(grid,cpos.rowindex,x);x++){if(cellElm!=lastCell&&cellElm.rowSpan>1)cellElm.rowSpan--;lastCell=cellElm}if(tdElm.rowSpan>1)tdElm.rowSpan--}}}}break}tableElm=tinyMCE.getParentElement(inst.getFocusElement(),"table");tinyMCE.handleVisualAid(tableElm,true,tinyMCE.settings['visual'],tinyMCE.selectedInstance);tinyMCE.triggerNodeChange();inst.repaint()}return true}return false}};tinyMCE.addPlugin("table",TinyMCE_TablePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js
deleted file mode 100644 (file)
index 75aaa4d..0000000
+++ /dev/null
@@ -1,1073 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('table');\r
-\r
-var TinyMCE_TablePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Tables',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/table',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               if (tinyMCE.isGecko) {\r
-                       var doc = inst.getDoc();\r
-                       tinyMCE.addEvent(doc, "mouseup", TinyMCE_TablePlugin._mouseDownHandler);\r
-               }\r
-\r
-               inst.tableRowClipboard = null;\r
-       },\r
-\r
-       /**\r
-        * Returns the HTML contents of the table control.\r
-        */\r
-       getControlHTML : function(control_name) {\r
-               var controls = new Array(\r
-                       ['table', 'table.gif', 'lang_table_desc', 'mceInsertTable', true],\r
-                       ['delete_table', 'table_delete.gif', 'lang_table_del', 'mceTableDelete'],\r
-                       ['delete_col', 'table_delete_col.gif', 'lang_table_delete_col_desc', 'mceTableDeleteCol'],\r
-                       ['delete_row', 'table_delete_row.gif', 'lang_table_delete_row_desc', 'mceTableDeleteRow'],\r
-                       ['col_after', 'table_insert_col_after.gif', 'lang_table_col_after_desc', 'mceTableInsertColAfter'],\r
-                       ['col_before', 'table_insert_col_before.gif', 'lang_table_col_before_desc', 'mceTableInsertColBefore'],\r
-                       ['row_after', 'table_insert_row_after.gif', 'lang_table_row_after_desc', 'mceTableInsertRowAfter'],\r
-                       ['row_before', 'table_insert_row_before.gif', 'lang_table_row_before_desc', 'mceTableInsertRowBefore'],\r
-                       ['row_props', 'table_row_props.gif', 'lang_table_row_desc', 'mceTableRowProps', true],\r
-                       ['cell_props', 'table_cell_props.gif', 'lang_table_cell_desc', 'mceTableCellProps', true],\r
-                       ['split_cells', 'table_split_cells.gif', 'lang_table_split_cells_desc', 'mceTableSplitCells', true],\r
-                       ['merge_cells', 'table_merge_cells.gif', 'lang_table_merge_cells_desc', 'mceTableMergeCells', true]);\r
-\r
-               // Render table control\r
-               for (var i=0; i<controls.length; i++) {\r
-                       var but = controls[i];\r
-                       var cmd = 'tinyMCE.execInstanceCommand(\'{$editor_id}\',\'' + but[3] + '\', ' + (but.length > 4 ? but[4] : false) + (but.length > 5 ? ', \'' + but[5] + '\'' : '') + ');return false;';\r
-\r
-                       if (but[0] == control_name)\r
-                               return tinyMCE.getButtonHTML(control_name, but[2], '{$pluginurl}/images/'+ but[1], but[3], (but.length > 4 ? but[4] : false));\r
-               }\r
-\r
-               // Special tablecontrols\r
-               if (control_name == "tablecontrols") {\r
-                       var html = "";\r
-\r
-                       html += tinyMCE.getControlHTML("table");\r
-                       html += tinyMCE.getControlHTML("separator");\r
-                       html += tinyMCE.getControlHTML("row_props");\r
-                       html += tinyMCE.getControlHTML("cell_props");\r
-                       html += tinyMCE.getControlHTML("separator");\r
-                       html += tinyMCE.getControlHTML("row_before");\r
-                       html += tinyMCE.getControlHTML("row_after");\r
-                       html += tinyMCE.getControlHTML("delete_row");\r
-                       html += tinyMCE.getControlHTML("separator");\r
-                       html += tinyMCE.getControlHTML("col_before");\r
-                       html += tinyMCE.getControlHTML("col_after");\r
-                       html += tinyMCE.getControlHTML("delete_col");\r
-                       html += tinyMCE.getControlHTML("separator");\r
-                       html += tinyMCE.getControlHTML("split_cells");\r
-                       html += tinyMCE.getControlHTML("merge_cells");\r
-\r
-                       return html;\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       /**\r
-        * Executes the table commands.\r
-        */\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Is table command\r
-               switch (command) {\r
-                       case "mceInsertTable":\r
-                       case "mceTableRowProps":\r
-                       case "mceTableCellProps":\r
-                       case "mceTableSplitCells":\r
-                       case "mceTableMergeCells":\r
-                       case "mceTableInsertRowBefore":\r
-                       case "mceTableInsertRowAfter":\r
-                       case "mceTableDeleteRow":\r
-                       case "mceTableInsertColBefore":\r
-                       case "mceTableInsertColAfter":\r
-                       case "mceTableDeleteCol":\r
-                       case "mceTableCutRow":\r
-                       case "mceTableCopyRow":\r
-                       case "mceTablePasteRowBefore":\r
-                       case "mceTablePasteRowAfter":\r
-                       case "mceTableDelete":\r
-                               var inst = tinyMCE.getInstanceById(editor_id);\r
-\r
-                               inst.execCommand('mceBeginUndoLevel');\r
-                               TinyMCE_TablePlugin._doExecCommand(editor_id, element, command, user_interface, value);\r
-                               inst.execCommand('mceEndUndoLevel');\r
-\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               var colspan = "1", rowspan = "1", tdElm;\r
-\r
-               var inst = tinyMCE.getInstanceById(editor_id);\r
-\r
-               // Reset table controls\r
-               tinyMCE.switchClass(editor_id + '_table', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_delete_table', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_row_props', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_cell_props', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_row_before', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_row_after', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_delete_row', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_col_before', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_col_after', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_delete_col', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_split_cells', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_merge_cells', 'mceButtonDisabled');\r
-\r
-               // Within a td element\r
-               if (tdElm = tinyMCE.getParentElement(node, "td,th")) {\r
-                       tinyMCE.switchClass(editor_id + '_cell_props', 'mceButtonSelected');\r
-                       tinyMCE.switchClass(editor_id + '_delete_table', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_row_before', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_row_after', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_delete_row', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_col_before', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_col_after', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_delete_col', 'mceButtonNormal');\r
-\r
-                       colspan = tinyMCE.getAttrib(tdElm, "colspan");\r
-                       rowspan = tinyMCE.getAttrib(tdElm, "rowspan");\r
-\r
-                       colspan = colspan == "" ? "1" : colspan;\r
-                       rowspan = rowspan == "" ? "1" : rowspan;\r
-\r
-                       if (colspan != "1" || rowspan != "1")\r
-                               tinyMCE.switchClass(editor_id + '_split_cells', 'mceButtonNormal');\r
-               }\r
-\r
-               // Within a tr element\r
-               if (tinyMCE.getParentElement(node, "tr"))\r
-                       tinyMCE.switchClass(editor_id + '_row_props', 'mceButtonSelected');\r
-\r
-               // Within table\r
-               if (tinyMCE.getParentElement(node, "table")) {\r
-                       tinyMCE.switchClass(editor_id + '_table', 'mceButtonSelected');\r
-                       tinyMCE.switchClass(editor_id + '_merge_cells', 'mceButtonNormal');\r
-               }\r
-       },\r
-\r
-       // Private plugin internal methods\r
-\r
-       _mouseDownHandler : function(e) {\r
-               var elm = tinyMCE.isMSIE ? event.srcElement : e.target;\r
-               var focusElm = tinyMCE.selectedInstance.getFocusElement();\r
-\r
-               // If press on special Mozilla create TD/TR thingie\r
-               if (elm.nodeName == "BODY" && (focusElm.nodeName == "TD" || focusElm.nodeName == "TH" || (focusElm.parentNode && focusElm.parentNode.nodeName == "TD") ||(focusElm.parentNode && focusElm.parentNode.nodeName == "TH") )) {\r
-                       window.setTimeout(function() {\r
-                               var tableElm = tinyMCE.getParentElement(focusElm, "table");\r
-                               tinyMCE.handleVisualAid(tableElm, true, tinyMCE.settings['visual'], tinyMCE.selectedInstance);\r
-                       }, 10);\r
-               }\r
-       },\r
-\r
-       /**\r
-        * Executes the table commands.\r
-        */\r
-       _doExecCommand : function(editor_id, element, command, user_interface, value) {\r
-               var inst = tinyMCE.getInstanceById(editor_id);\r
-               var focusElm = inst.getFocusElement();\r
-               var trElm = tinyMCE.getParentElement(focusElm, "tr");\r
-               var tdElm = tinyMCE.getParentElement(focusElm, "td,th");\r
-               var tableElm = tinyMCE.getParentElement(focusElm, "table");\r
-               var doc = inst.contentWindow.document;\r
-               var tableBorder = tableElm ? tableElm.getAttribute("border") : "";\r
-\r
-               // Get first TD if no TD found\r
-               if (trElm && tdElm == null)\r
-                       tdElm = trElm.cells[0];\r
-\r
-               // ------- Inner functions ---------\r
-               function inArray(ar, v) {\r
-                       for (var i=0; i<ar.length; i++) {\r
-                               // Is array\r
-                               if (ar[i].length > 0 && inArray(ar[i], v))\r
-                                       return true;\r
-\r
-                               // Found value\r
-                               if (ar[i] == v)\r
-                                       return true;\r
-                       }\r
-\r
-                       return false;\r
-               }\r
-\r
-               function makeTD() {\r
-                       var newTD = doc.createElement("td");\r
-                       newTD.innerHTML = "&nbsp;";\r
-               }\r
-\r
-               function getColRowSpan(td) {\r
-                       var colspan = tinyMCE.getAttrib(td, "colspan");\r
-                       var rowspan = tinyMCE.getAttrib(td, "rowspan");\r
-\r
-                       colspan = colspan == "" ? 1 : parseInt(colspan);\r
-                       rowspan = rowspan == "" ? 1 : parseInt(rowspan);\r
-\r
-                       return {colspan : colspan, rowspan : rowspan};\r
-               }\r
-\r
-               function getCellPos(grid, td) {\r
-                       var x, y;\r
-\r
-                       for (y=0; y<grid.length; y++) {\r
-                               for (x=0; x<grid[y].length; x++) {\r
-                                       if (grid[y][x] == td)\r
-                                               return {cellindex : x, rowindex : y};\r
-                               }\r
-                       }\r
-\r
-                       return null;\r
-               }\r
-\r
-               function getCell(grid, row, col) {\r
-                       if (grid[row] && grid[row][col])\r
-                               return grid[row][col];\r
-\r
-                       return null;\r
-               }\r
-\r
-               function getTableGrid(table) {\r
-                       var grid = new Array(), rows = table.rows, x, y, td, sd, xstart, x2, y2;\r
-\r
-                       for (y=0; y<rows.length; y++) {\r
-                               for (x=0; x<rows[y].cells.length; x++) {\r
-                                       td = rows[y].cells[x];\r
-                                       sd = getColRowSpan(td);\r
-\r
-                                       // All ready filled\r
-                                       for (xstart = x; grid[y] && grid[y][xstart]; xstart++) ;\r
-\r
-                                       // Fill box\r
-                                       for (y2=y; y2<y+sd['rowspan']; y2++) {\r
-                                               if (!grid[y2])\r
-                                                       grid[y2] = new Array();\r
-\r
-                                               for (x2=xstart; x2<xstart+sd['colspan']; x2++)\r
-                                                       grid[y2][x2] = td;\r
-                                       }\r
-                               }\r
-                       }\r
-\r
-                       return grid;\r
-               }\r
-\r
-               function trimRow(table, tr, td, new_tr) {\r
-                       var grid = getTableGrid(table), cpos = getCellPos(grid, td);\r
-                       var cells, lastElm;\r
-\r
-                       // Time to crop away some\r
-                       if (new_tr.cells.length != tr.childNodes.length) {\r
-                               cells = tr.childNodes;\r
-                               lastElm = null;\r
-\r
-                               for (var x=0; td = getCell(grid, cpos.rowindex, x); x++) {\r
-                                       var remove = true;\r
-                                       var sd = getColRowSpan(td);\r
-\r
-                                       // Remove due to rowspan\r
-                                       if (inArray(cells, td)) {\r
-                                               new_tr.childNodes[x]._delete = true;\r
-                                       } else if ((lastElm == null || td != lastElm) && sd.colspan > 1) { // Remove due to colspan\r
-                                               for (var i=x; i<x+td.colSpan; i++)\r
-                                                       new_tr.childNodes[i]._delete = true;\r
-                                       }\r
-\r
-                                       if ((lastElm == null || td != lastElm) && sd.rowspan > 1)\r
-                                               td.rowSpan = sd.rowspan + 1;\r
-\r
-                                       lastElm = td;\r
-                               }\r
-\r
-                               deleteMarked(tableElm);\r
-                       }\r
-               }\r
-\r
-               function prevElm(node, name) {\r
-                       while ((node = node.previousSibling) != null) {\r
-                               if (node.nodeName == name)\r
-                                       return node;\r
-                       }\r
-\r
-                       return null;\r
-               }\r
-\r
-               function nextElm(node, names) {\r
-                       var namesAr = names.split(',');\r
-\r
-                       while ((node = node.nextSibling) != null) {\r
-                               for (var i=0; i<namesAr.length; i++) {\r
-                                       if (node.nodeName.toLowerCase() == namesAr[i].toLowerCase() )\r
-                                               return node;\r
-                               }\r
-                       }\r
-\r
-                       return null;\r
-               }\r
-\r
-               function deleteMarked(tbl) {\r
-                       if (tbl.rows == 0)\r
-                               return;\r
-\r
-                       var tr = tbl.rows[0];\r
-                       do {\r
-                               var next = nextElm(tr, "TR");\r
-\r
-                               // Delete row\r
-                               if (tr._delete) {\r
-                                       tr.parentNode.removeChild(tr);\r
-                                       continue;\r
-                               }\r
-\r
-                               // Delete cells\r
-                               var td = tr.cells[0];\r
-                               if (td.cells > 1) {\r
-                                       do {\r
-                                               var nexttd = nextElm(td, "TD,TH");\r
-\r
-                                               if (td._delete)\r
-                                                       td.parentNode.removeChild(td);\r
-                                       } while ((td = nexttd) != null);\r
-                               }\r
-                       } while ((tr = next) != null);\r
-               }\r
-\r
-               function addRows(td_elm, tr_elm, rowspan) {\r
-                       // Add rows\r
-                       td_elm.rowSpan = 1;\r
-                       var trNext = nextElm(tr_elm, "TR");\r
-                       for (var i=1; i<rowspan && trNext; i++) {\r
-                               var newTD = doc.createElement("td");\r
-                               newTD.innerHTML = "&nbsp;";\r
-\r
-                               if (tinyMCE.isMSIE)\r
-                                       trNext.insertBefore(newTD, trNext.cells(td_elm.cellIndex));\r
-                               else\r
-                                       trNext.insertBefore(newTD, trNext.cells[td_elm.cellIndex]);\r
-\r
-                               trNext = nextElm(trNext, "TR");\r
-                       }\r
-               }\r
-\r
-               function copyRow(doc, table, tr) {\r
-                       var grid = getTableGrid(table);\r
-                       var newTR = tr.cloneNode(false);\r
-                       var cpos = getCellPos(grid, tr.cells[0]);\r
-                       var lastCell = null;\r
-                       var tableBorder = tinyMCE.getAttrib(table, "border");\r
-                       var tdElm = null;\r
-\r
-                       for (var x=0; tdElm = getCell(grid, cpos.rowindex, x); x++) {\r
-                               var newTD = null;\r
-\r
-                               if (lastCell != tdElm) {\r
-                                       for (var i=0; i<tr.cells.length; i++) {\r
-                                               if (tdElm == tr.cells[i]) {\r
-                                                       newTD = tdElm.cloneNode(true);\r
-                                                       break;\r
-                                               }\r
-                                       }\r
-                               }\r
-\r
-                               if (newTD == null) {\r
-                                       newTD = doc.createElement("td");\r
-                                       newTD.innerHTML = "&nbsp;";\r
-                               }\r
-\r
-                               // Reset col/row span\r
-                               newTD.colSpan = 1;\r
-                               newTD.rowSpan = 1;\r
-\r
-                               newTR.appendChild(newTD);\r
-\r
-                               lastCell = tdElm;\r
-                       }\r
-\r
-                       return newTR;\r
-               }\r
-\r
-               // ---- Commands -----\r
-\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceTableRowProps":\r
-                               if (trElm == null)\r
-                                       return true;\r
-\r
-                               if (user_interface) {\r
-                                       // Setup template\r
-                                       var template = new Array();\r
-\r
-                                       template['file'] = '../../plugins/table/row.htm';\r
-                                       template['width'] = 380;\r
-                                       template['height'] = 295;\r
-\r
-                                       // Language specific width and height addons\r
-                                       template['width'] += tinyMCE.getLang('lang_table_rowprops_delta_width', 0);\r
-                                       template['height'] += tinyMCE.getLang('lang_table_rowprops_delta_height', 0);\r
-\r
-                                       // Open window\r
-                                       tinyMCE.openWindow(template, {editor_id : inst.editorId, inline : "yes"});\r
-                               }\r
-\r
-                               return true;\r
-\r
-                       case "mceTableCellProps":\r
-                               if (tdElm == null)\r
-                                       return true;\r
-\r
-                               if (user_interface) {\r
-                                       // Setup template\r
-                                       var template = new Array();\r
-\r
-                                       template['file'] = '../../plugins/table/cell.htm';\r
-                                       template['width'] = 380;\r
-                                       template['height'] = 295;\r
-\r
-                                       // Language specific width and height addons\r
-                                       template['width'] += tinyMCE.getLang('lang_table_cellprops_delta_width', 0);\r
-                                       template['height'] += tinyMCE.getLang('lang_table_cellprops_delta_height', 0);\r
-\r
-                                       // Open window\r
-                                       tinyMCE.openWindow(template, {editor_id : inst.editorId, inline : "yes"});\r
-                               }\r
-\r
-                               return true;\r
-\r
-                       case "mceInsertTable":\r
-                               if (user_interface) {\r
-                                       // Setup template\r
-                                       var template = new Array();\r
-\r
-                                       template['file'] = '../../plugins/table/table.htm';\r
-                                       template['width'] = 380;\r
-                                       template['height'] = 295;\r
-\r
-                                       // Language specific width and height addons\r
-                                       template['width'] += tinyMCE.getLang('lang_table_table_delta_width', 0);\r
-                                       template['height'] += tinyMCE.getLang('lang_table_table_delta_height', 0);\r
-\r
-                                       // Open window\r
-                                       tinyMCE.openWindow(template, {editor_id : inst.editorId, inline : "yes", action : value});\r
-                               }\r
-\r
-                               return true;\r
-\r
-                       case "mceTableDelete":\r
-                               var table = tinyMCE.getParentElement(inst.getFocusElement(), "table");\r
-                               if (table) {\r
-                                       table.parentNode.removeChild(table);\r
-                                       inst.repaint();\r
-                               }\r
-                               return true;\r
-\r
-                       case "mceTableSplitCells":\r
-                       case "mceTableMergeCells":\r
-                       case "mceTableInsertRowBefore":\r
-                       case "mceTableInsertRowAfter":\r
-                       case "mceTableDeleteRow":\r
-                       case "mceTableInsertColBefore":\r
-                       case "mceTableInsertColAfter":\r
-                       case "mceTableDeleteCol":\r
-                       case "mceTableCutRow":\r
-                       case "mceTableCopyRow":\r
-                       case "mceTablePasteRowBefore":\r
-                       case "mceTablePasteRowAfter":\r
-                               // No table just return (invalid command)\r
-                               if (!tableElm)\r
-                                       return true;\r
-\r
-                               // Table has a tbody use that reference\r
-                               // Changed logic by ApTest 2005.07.12 (www.aptest.com)\r
-                               // Now lookk at the focused element and take its parentNode.  That will be a tbody or a table.\r
-                               if (trElm && tableElm != trElm.parentNode)\r
-                                       tableElm = trElm.parentNode;\r
-\r
-                               if (tableElm && trElm) {\r
-                                       switch (command) {\r
-                                               case "mceTableCutRow":\r
-                                                       if (!trElm || !tdElm)\r
-                                                               return true;\r
-\r
-                                                       inst.tableRowClipboard = copyRow(doc, tableElm, trElm);\r
-                                                       inst.execCommand("mceTableDeleteRow");\r
-                                                       break;\r
-\r
-                                               case "mceTableCopyRow":\r
-                                                       if (!trElm || !tdElm)\r
-                                                               return true;\r
-\r
-                                                       inst.tableRowClipboard = copyRow(doc, tableElm, trElm);\r
-                                                       break;\r
-\r
-                                               case "mceTablePasteRowBefore":\r
-                                                       if (!trElm || !tdElm)\r
-                                                               return true;\r
-\r
-                                                       var newTR = inst.tableRowClipboard.cloneNode(true);\r
-\r
-                                                       var prevTR = prevElm(trElm, "TR");\r
-                                                       if (prevTR != null)\r
-                                                               trimRow(tableElm, prevTR, prevTR.cells[0], newTR);\r
-\r
-                                                       trElm.parentNode.insertBefore(newTR, trElm);\r
-                                                       break;\r
-\r
-                                               case "mceTablePasteRowAfter":\r
-                                                       if (!trElm || !tdElm)\r
-                                                               return true;\r
-                                                       \r
-                                                       var nextTR = nextElm(trElm, "TR");\r
-                                                       var newTR = inst.tableRowClipboard.cloneNode(true);\r
-\r
-                                                       trimRow(tableElm, trElm, tdElm, newTR);\r
-\r
-                                                       if (nextTR == null)\r
-                                                               trElm.parentNode.appendChild(newTR);\r
-                                                       else\r
-                                                               nextTR.parentNode.insertBefore(newTR, nextTR);\r
-\r
-                                                       break;\r
-\r
-                                               case "mceTableInsertRowBefore":\r
-                                                       if (!trElm || !tdElm)\r
-                                                               return true;\r
-\r
-                                                       var grid = getTableGrid(tableElm);\r
-                                                       var cpos = getCellPos(grid, tdElm);\r
-                                                       var newTR = doc.createElement("tr");\r
-                                                       var lastTDElm = null;\r
-\r
-                                                       cpos.rowindex--;\r
-                                                       if (cpos.rowindex < 0)\r
-                                                               cpos.rowindex = 0;\r
-\r
-                                                       // Create cells\r
-                                                       for (var x=0; tdElm = getCell(grid, cpos.rowindex, x); x++) {\r
-                                                               if (tdElm != lastTDElm) {\r
-                                                                       var sd = getColRowSpan(tdElm);\r
-\r
-                                                                       if (sd['rowspan'] == 1) {\r
-                                                                               var newTD = doc.createElement("td");\r
-\r
-                                                                               newTD.innerHTML = "&nbsp;";\r
-                                                                               newTD.colSpan = tdElm.colSpan;\r
-\r
-                                                                               newTR.appendChild(newTD);\r
-                                                                       } else\r
-                                                                               tdElm.rowSpan = sd['rowspan'] + 1;\r
-\r
-                                                                       lastTDElm = tdElm;\r
-                                                               }\r
-                                                       }\r
-\r
-                                                       trElm.parentNode.insertBefore(newTR, trElm);\r
-\r
-                                                       grid = getTableGrid(tableElm);\r
-                                                       inst.selection.selectNode(getCell(grid, cpos.rowindex + 1, cpos.cellindex), tinyMCE.isGecko, true); // Only collape on gecko\r
-                                               break;\r
-\r
-                                               case "mceTableInsertRowAfter":\r
-                                                       if (!trElm || !tdElm)\r
-                                                               return true;\r
-\r
-                                                       var grid = getTableGrid(tableElm);\r
-                                                       var cpos = getCellPos(grid, tdElm);\r
-                                                       var newTR = doc.createElement("tr");\r
-                                                       var lastTDElm = null;\r
-\r
-                                                       // Create cells\r
-                                                       for (var x=0; tdElm = getCell(grid, cpos.rowindex, x); x++) {\r
-                                                               if (tdElm != lastTDElm) {\r
-                                                                       var sd = getColRowSpan(tdElm);\r
-\r
-                                                                       if (sd['rowspan'] == 1) {\r
-                                                                               var newTD = doc.createElement("td");\r
-\r
-                                                                               newTD.innerHTML = "&nbsp;";\r
-                                                                               newTD.colSpan = tdElm.colSpan;\r
-\r
-                                                                               newTR.appendChild(newTD);\r
-                                                                       } else\r
-                                                                               tdElm.rowSpan = sd['rowspan'] + 1;\r
-\r
-                                                                       lastTDElm = tdElm;\r
-                                                               }\r
-                                                       }\r
-\r
-                                                       if (newTR.hasChildNodes()) {\r
-                                                               var nextTR = nextElm(trElm, "TR");\r
-                                                               if (nextTR)\r
-                                                                       nextTR.parentNode.insertBefore(newTR, nextTR);\r
-                                                               else\r
-                                                                       tableElm.appendChild(newTR);\r
-                                                       }\r
-\r
-                                                       grid = getTableGrid(tableElm);\r
-                                                       inst.selection.selectNode(getCell(grid, cpos.rowindex, cpos.cellindex), tinyMCE.isGecko, true); // Only collape on gecko\r
-                                               break;\r
-\r
-                                               case "mceTableDeleteRow":\r
-                                                       if (!trElm || !tdElm)\r
-                                                               return true;\r
-\r
-                                                       var grid = getTableGrid(tableElm);\r
-                                                       var cpos = getCellPos(grid, tdElm);\r
-\r
-                                                       // Only one row, remove whole table\r
-                                                       if (grid.length == 1) {\r
-                                                               tableElm = tinyMCE.getParentElement(tableElm, "table"); // Look for table instead of tbody\r
-                                                               tableElm.parentNode.removeChild(tableElm);\r
-                                                               return true;\r
-                                                       }\r
-\r
-                                                       // Move down row spanned cells\r
-                                                       var cells = trElm.cells;\r
-                                                       var nextTR = nextElm(trElm, "TR");\r
-                                                       for (var x=0; x<cells.length; x++) {\r
-                                                               if (cells[x].rowSpan > 1) {\r
-                                                                       var newTD = cells[x].cloneNode(true);\r
-                                                                       var sd = getColRowSpan(cells[x]);\r
-\r
-                                                                       newTD.rowSpan = sd.rowspan - 1;\r
-\r
-                                                                       var nextTD = nextTR.cells[x];\r
-\r
-                                                                       if (nextTD == null)\r
-                                                                               nextTR.appendChild(newTD);\r
-                                                                       else\r
-                                                                               nextTR.insertBefore(newTD, nextTD);\r
-                                                               }\r
-                                                       }\r
-\r
-                                                       // Delete cells\r
-                                                       var lastTDElm = null;\r
-                                                       for (var x=0; tdElm = getCell(grid, cpos.rowindex, x); x++) {\r
-                                                               if (tdElm != lastTDElm) {\r
-                                                                       var sd = getColRowSpan(tdElm);\r
-\r
-                                                                       if (sd.rowspan > 1) {\r
-                                                                               tdElm.rowSpan = sd.rowspan - 1;\r
-                                                                       } else {\r
-                                                                               trElm = tdElm.parentNode;\r
-\r
-                                                                               if (trElm.parentNode)\r
-                                                                                       trElm._delete = true;\r
-                                                                       }\r
-\r
-                                                                       lastTDElm = tdElm;\r
-                                                               }\r
-                                                       }\r
-\r
-                                                       deleteMarked(tableElm);\r
-\r
-                                                       cpos.rowindex--;\r
-                                                       if (cpos.rowindex < 0)\r
-                                                               cpos.rowindex = 0;\r
-\r
-                                                       // Recalculate grid and select\r
-                                                       grid = getTableGrid(tableElm);\r
-                                                       inst.selection.selectNode(getCell(grid, cpos.rowindex, 0), tinyMCE.isGecko, true); // Only collape on gecko\r
-                                               break;\r
-\r
-                                               case "mceTableInsertColBefore":\r
-                                                       if (!trElm || !tdElm)\r
-                                                               return true;\r
-\r
-                                                       var grid = getTableGrid(tableElm);\r
-                                                       var cpos = getCellPos(grid, tdElm);\r
-                                                       var lastTDElm = null;\r
-\r
-                                                       for (var y=0; tdElm = getCell(grid, y, cpos.cellindex); y++) {\r
-                                                               if (tdElm != lastTDElm) {\r
-                                                                       var sd = getColRowSpan(tdElm);\r
-\r
-                                                                       if (sd['colspan'] == 1) {\r
-                                                                               var newTD = doc.createElement(tdElm.nodeName);\r
-\r
-                                                                               newTD.innerHTML = "&nbsp;";\r
-                                                                               newTD.rowSpan = tdElm.rowSpan;\r
-\r
-                                                                               tdElm.parentNode.insertBefore(newTD, tdElm);\r
-                                                                       } else\r
-                                                                               tdElm.colSpan++;\r
-\r
-                                                                       lastTDElm = tdElm;\r
-                                                               }\r
-                                                       }\r
-\r
-                                                       grid = getTableGrid(tableElm);\r
-                                                       inst.selection.selectNode(getCell(grid, cpos.rowindex, cpos.cellindex + 1), tinyMCE.isGecko, true); // Only collape on gecko\r
-                                               break;\r
-\r
-                                               case "mceTableInsertColAfter":\r
-                                                       if (!trElm || !tdElm)\r
-                                                               return true;\r
-\r
-                                                       var grid = getTableGrid(tableElm);\r
-                                                       var cpos = getCellPos(grid, tdElm);\r
-                                                       var lastTDElm = null;\r
-\r
-                                                       for (var y=0; tdElm = getCell(grid, y, cpos.cellindex); y++) {\r
-                                                               if (tdElm != lastTDElm) {\r
-                                                                       var sd = getColRowSpan(tdElm);\r
-\r
-                                                                       if (sd['colspan'] == 1) {\r
-                                                                               var newTD = doc.createElement(tdElm.nodeName);\r
-\r
-                                                                               newTD.innerHTML = "&nbsp;";\r
-                                                                               newTD.rowSpan = tdElm.rowSpan;\r
-\r
-                                                                               var nextTD = nextElm(tdElm, "TD,TH");\r
-                                                                               if (nextTD == null)\r
-                                                                                       tdElm.parentNode.appendChild(newTD);\r
-                                                                               else\r
-                                                                                       nextTD.parentNode.insertBefore(newTD, nextTD);\r
-                                                                       } else\r
-                                                                               tdElm.colSpan++;\r
-\r
-                                                                       lastTDElm = tdElm;\r
-                                                               }\r
-                                                       }\r
-\r
-                                                       grid = getTableGrid(tableElm);\r
-                                                       inst.selection.selectNode(getCell(grid, cpos.rowindex, cpos.cellindex), tinyMCE.isGecko, true); // Only collape on gecko\r
-                                               break;\r
-\r
-                                               case "mceTableDeleteCol":\r
-                                                       if (!trElm || !tdElm)\r
-                                                               return true;\r
-\r
-                                                       var grid = getTableGrid(tableElm);\r
-                                                       var cpos = getCellPos(grid, tdElm);\r
-                                                       var lastTDElm = null;\r
-\r
-                                                       // Only one col, remove whole table\r
-                                                       if (grid.length > 1 && grid[0].length <= 1) {\r
-                                                               tableElm = tinyMCE.getParentElement(tableElm, "table"); // Look for table instead of tbody\r
-                                                               tableElm.parentNode.removeChild(tableElm);\r
-                                                               return true;\r
-                                                       }\r
-\r
-                                                       // Delete cells\r
-                                                       for (var y=0; tdElm = getCell(grid, y, cpos.cellindex); y++) {\r
-                                                               if (tdElm != lastTDElm) {\r
-                                                                       var sd = getColRowSpan(tdElm);\r
-\r
-                                                                       if (sd['colspan'] > 1)\r
-                                                                               tdElm.colSpan = sd['colspan'] - 1;\r
-                                                                       else {\r
-                                                                               if (tdElm.parentNode)\r
-                                                                                       tdElm.parentNode.removeChild(tdElm);\r
-                                                                       }\r
-\r
-                                                                       lastTDElm = tdElm;\r
-                                                               }\r
-                                                       }\r
-\r
-                                                       cpos.cellindex--;\r
-                                                       if (cpos.cellindex < 0)\r
-                                                               cpos.cellindex = 0;\r
-\r
-                                                       // Recalculate grid and select\r
-                                                       grid = getTableGrid(tableElm);\r
-                                                       inst.selection.selectNode(getCell(grid, cpos.rowindex, 0), tinyMCE.isGecko, true); // Only collape on gecko\r
-                                               break;\r
-\r
-                                       case "mceTableSplitCells":\r
-                                               if (!trElm || !tdElm)\r
-                                                       return true;\r
-\r
-                                               var spandata = getColRowSpan(tdElm);\r
-\r
-                                               var colspan = spandata["colspan"];\r
-                                               var rowspan = spandata["rowspan"];\r
-\r
-                                               // Needs splitting\r
-                                               if (colspan > 1 || rowspan > 1) {\r
-                                                       // Generate cols\r
-                                                       tdElm.colSpan = 1;\r
-                                                       for (var i=1; i<colspan; i++) {\r
-                                                               var newTD = doc.createElement("td");\r
-\r
-                                                               newTD.innerHTML = "&nbsp;";\r
-\r
-                                                               trElm.insertBefore(newTD, nextElm(tdElm, "TD,TH"));\r
-\r
-                                                               if (rowspan > 1)\r
-                                                                       addRows(newTD, trElm, rowspan);\r
-                                                       }\r
-\r
-                                                       addRows(tdElm, trElm, rowspan);\r
-                                               }\r
-\r
-                                               // Apply visual aids\r
-                                               tableElm = tinyMCE.getParentElement(inst.getFocusElement(), "table");\r
-                                               break;\r
-\r
-                                       case "mceTableMergeCells":\r
-                                               var rows = new Array();\r
-                                               var sel = inst.getSel();\r
-                                               var grid = getTableGrid(tableElm);\r
-\r
-                                               if (tinyMCE.isMSIE || sel.rangeCount == 1) {\r
-                                                       if (user_interface) {\r
-                                                               // Setup template\r
-                                                               var template = new Array();\r
-                                                               var sp = getColRowSpan(tdElm);\r
-\r
-                                                               template['file'] = '../../plugins/table/merge_cells.htm';\r
-                                                               template['width'] = 250;\r
-                                                               template['height'] = 105 + (tinyMCE.isNS7 ? 25 : 0);\r
-\r
-                                                               // Language specific width and height addons\r
-                                                               template['width'] += tinyMCE.getLang('lang_table_merge_cells_delta_width', 0);\r
-                                                               template['height'] += tinyMCE.getLang('lang_table_merge_cells_delta_height', 0);\r
-\r
-                                                               // Open window\r
-                                                               tinyMCE.openWindow(template, {editor_id : inst.editorId, inline : "yes", action : "update", numcols : sp.colspan, numrows : sp.rowspan});\r
-\r
-                                                               return true;\r
-                                                       } else {\r
-                                                               var numRows = parseInt(value['numrows']);\r
-                                                               var numCols = parseInt(value['numcols']);\r
-                                                               var cpos = getCellPos(grid, tdElm);\r
-\r
-                                                               if (("" + numRows) == "NaN")\r
-                                                                       numRows = 1;\r
-\r
-                                                               if (("" + numCols) == "NaN")\r
-                                                                       numCols = 1;\r
-\r
-                                                               // Get rows and cells\r
-                                                               var tRows = tableElm.rows;\r
-                                                               for (var y=cpos.rowindex; y<grid.length; y++) {\r
-                                                                       var rowCells = new Array();\r
-\r
-                                                                       for (var x=cpos.cellindex; x<grid[y].length; x++) {\r
-                                                                               var td = getCell(grid, y, x);\r
-\r
-                                                                               if (td && !inArray(rows, td) && !inArray(rowCells, td)) {\r
-                                                                                       var cp = getCellPos(grid, td);\r
-\r
-                                                                                       // Within range\r
-                                                                                       if (cp.cellindex < cpos.cellindex+numCols && cp.rowindex < cpos.rowindex+numRows)\r
-                                                                                               rowCells[rowCells.length] = td;\r
-                                                                               }\r
-                                                                       }\r
-\r
-                                                                       if (rowCells.length > 0)\r
-                                                                               rows[rows.length] = rowCells;\r
-                                                               }\r
-\r
-                                                               //return true;\r
-                                                       }\r
-                                               } else {\r
-                                                       var cells = new Array();\r
-                                                       var sel = inst.getSel();\r
-                                                       var lastTR = null;\r
-                                                       var curRow = null;\r
-                                                       var x1 = -1, y1 = -1, x2, y2;\r
-\r
-                                                       // Only one cell selected, whats the point?\r
-                                                       if (sel.rangeCount < 2)\r
-                                                               return true;\r
-\r
-                                                       // Get all selected cells\r
-                                                       for (var i=0; i<sel.rangeCount; i++) {\r
-                                                               var rng = sel.getRangeAt(i);\r
-                                                               var tdElm = rng.startContainer.childNodes[rng.startOffset];\r
-\r
-                                                               if (!tdElm)\r
-                                                                       break;\r
-\r
-                                                               if (tdElm.nodeName == "TD")\r
-                                                                       cells[cells.length] = tdElm;\r
-                                                       }\r
-\r
-                                                       // Get rows and cells\r
-                                                       var tRows = tableElm.rows;\r
-                                                       for (var y=0; y<tRows.length; y++) {\r
-                                                               var rowCells = new Array();\r
-\r
-                                                               for (var x=0; x<tRows[y].cells.length; x++) {\r
-                                                                       var td = tRows[y].cells[x];\r
-\r
-                                                                       for (var i=0; i<cells.length; i++) {\r
-                                                                               if (td == cells[i]) {\r
-                                                                                       rowCells[rowCells.length] = td;\r
-                                                                               }\r
-                                                                       }\r
-                                                               }\r
-\r
-                                                               if (rowCells.length > 0)\r
-                                                                       rows[rows.length] = rowCells;\r
-                                                       }\r
-\r
-                                                       // Find selected cells in grid and box\r
-                                                       var curRow = new Array();\r
-                                                       var lastTR = null;\r
-                                                       for (var y=0; y<grid.length; y++) {\r
-                                                               for (var x=0; x<grid[y].length; x++) {\r
-                                                                       grid[y][x]._selected = false;\r
-\r
-                                                                       for (var i=0; i<cells.length; i++) {\r
-                                                                               if (grid[y][x] == cells[i]) {\r
-                                                                                       // Get start pos\r
-                                                                                       if (x1 == -1) {\r
-                                                                                               x1 = x;\r
-                                                                                               y1 = y;\r
-                                                                                       }\r
-\r
-                                                                                       // Get end pos\r
-                                                                                       x2 = x;\r
-                                                                                       y2 = y;\r
-\r
-                                                                                       grid[y][x]._selected = true;\r
-                                                                               }\r
-                                                                       }\r
-                                                               }\r
-                                                       }\r
-\r
-                                                       // Is there gaps, if so deny\r
-                                                       for (var y=y1; y<=y2; y++) {\r
-                                                               for (var x=x1; x<=x2; x++) {\r
-                                                                       if (!grid[y][x]._selected) {\r
-                                                                               alert("Invalid selection for merge.");\r
-                                                                               return true;\r
-                                                                       }\r
-                                                               }\r
-                                                       }\r
-                                               }\r
-\r
-                                               // Validate selection and get total rowspan and colspan\r
-                                               var rowSpan = 1, colSpan = 1;\r
-\r
-                                               // Validate horizontal and get total colspan\r
-                                               var lastRowSpan = -1;\r
-                                               for (var y=0; y<rows.length; y++) {\r
-                                                       var rowColSpan = 0;\r
-\r
-                                                       for (var x=0; x<rows[y].length; x++) {\r
-                                                               var sd = getColRowSpan(rows[y][x]);\r
-\r
-                                                               rowColSpan += sd['colspan'];\r
-\r
-                                                               if (lastRowSpan != -1 && sd['rowspan'] != lastRowSpan) {\r
-                                                                       alert("Invalid selection for merge.");\r
-                                                                       return true;\r
-                                                               }\r
-\r
-                                                               lastRowSpan = sd['rowspan'];\r
-                                                       }\r
-\r
-                                                       if (rowColSpan > colSpan)\r
-                                                               colSpan = rowColSpan;\r
-\r
-                                                       lastRowSpan = -1;\r
-                                               }\r
-\r
-                                               // Validate vertical and get total rowspan\r
-                                               var lastColSpan = -1;\r
-                                               for (var x=0; x<rows[0].length; x++) {\r
-                                                       var colRowSpan = 0;\r
-\r
-                                                       for (var y=0; y<rows.length; y++) {\r
-                                                               var sd = getColRowSpan(rows[y][x]);\r
-\r
-                                                               colRowSpan += sd['rowspan'];\r
-\r
-                                                               if (lastColSpan != -1 && sd['colspan'] != lastColSpan) {\r
-                                                                       alert("Invalid selection for merge.");\r
-                                                                       return true;\r
-                                                               }\r
-\r
-                                                               lastColSpan = sd['colspan'];\r
-                                                       }\r
-\r
-                                                       if (colRowSpan > rowSpan)\r
-                                                               rowSpan = colRowSpan;\r
-\r
-                                                       lastColSpan = -1;\r
-                                               }\r
-\r
-                                               // Setup td\r
-                                               tdElm = rows[0][0];\r
-                                               tdElm.rowSpan = rowSpan;\r
-                                               tdElm.colSpan = colSpan;\r
-\r
-                                               // Merge cells\r
-                                               for (var y=0; y<rows.length; y++) {\r
-                                                       for (var x=0; x<rows[y].length; x++) {\r
-                                                               var html = rows[y][x].innerHTML;\r
-                                                               var chk = tinyMCE.regexpReplace(html, "[ \t\r\n]", "");\r
-\r
-                                                               if (chk != "<br/>" && chk != "<br>" && chk != "&nbsp;" && (x+y > 0))\r
-                                                                       tdElm.innerHTML += html;\r
-\r
-                                                               // Not current cell\r
-                                                               if (rows[y][x] != tdElm && !rows[y][x]._deleted) {\r
-                                                                       var cpos = getCellPos(grid, rows[y][x]);\r
-                                                                       var tr = rows[y][x].parentNode;\r
-\r
-                                                                       tr.removeChild(rows[y][x]);\r
-                                                                       rows[y][x]._deleted = true;\r
-\r
-                                                                       // Empty TR, remove it\r
-                                                                       if (!tr.hasChildNodes()) {\r
-                                                                               tr.parentNode.removeChild(tr);\r
-\r
-                                                                               var lastCell = null;\r
-                                                                               for (var x=0; cellElm = getCell(grid, cpos.rowindex, x); x++) {\r
-                                                                                       if (cellElm != lastCell && cellElm.rowSpan > 1)\r
-                                                                                               cellElm.rowSpan--;\r
-\r
-                                                                                       lastCell = cellElm;\r
-                                                                               }\r
-\r
-                                                                               if (tdElm.rowSpan > 1)\r
-                                                                                       tdElm.rowSpan--;\r
-                                                                       }\r
-                                                               }\r
-                                                       }\r
-                                               }\r
-\r
-                                               break;\r
-                                       }\r
-\r
-                                       tableElm = tinyMCE.getParentElement(inst.getFocusElement(), "table");\r
-                                       tinyMCE.handleVisualAid(tableElm, true, tinyMCE.settings['visual'], tinyMCE.selectedInstance);\r
-                                       tinyMCE.triggerNodeChange();\r
-                                       inst.repaint();\r
-                               }\r
-\r
-                       return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("table", TinyMCE_TablePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/buttons.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/buttons.gif
deleted file mode 100644 (file)
index 56a7396..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/buttons.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table.gif
deleted file mode 100644 (file)
index 2911830..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_cell_props.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_cell_props.gif
deleted file mode 100644 (file)
index bee7ed6..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_cell_props.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete.gif
deleted file mode 100644 (file)
index 2a00e6a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete_col.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete_col.gif
deleted file mode 100644 (file)
index 260aa04..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete_col.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete_row.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete_row.gif
deleted file mode 100644 (file)
index 2fb5f2b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_delete_row.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_col_after.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_col_after.gif
deleted file mode 100644 (file)
index 8505808..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_col_after.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_col_before.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_col_before.gif
deleted file mode 100644 (file)
index b669d4f..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_col_before.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_row_after.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_row_after.gif
deleted file mode 100644 (file)
index b9c1446..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_row_after.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_row_before.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_row_before.gif
deleted file mode 100644 (file)
index 157d373..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_insert_row_before.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_merge_cells.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_merge_cells.gif
deleted file mode 100644 (file)
index 6834e61..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_merge_cells.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_row_props.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_row_props.gif
deleted file mode 100644 (file)
index e5c7cc3..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_row_props.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_split_cells.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_split_cells.gif
deleted file mode 100644 (file)
index 8ccb1b5..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/images/table_split_cells.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/cell.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/cell.js
deleted file mode 100644 (file)
index 436eaad..0000000
+++ /dev/null
@@ -1,249 +0,0 @@
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');\r
-       document.getElementById('bordercolor_pickcontainer').innerHTML = getColorPickerHTML('bordercolor_pick','bordercolor');\r
-       document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor')\r
-\r
-       var inst = tinyMCE.selectedInstance;\r
-       var tdElm = tinyMCE.getParentElement(inst.getFocusElement(), "td,th");\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(tinyMCE.getAttrib(tdElm, "style"));\r
-\r
-       // Get table cell data\r
-       var celltype = tdElm.nodeName.toLowerCase();\r
-       var align = tinyMCE.getAttrib(tdElm, 'align');\r
-       var valign = tinyMCE.getAttrib(tdElm, 'valign');\r
-       var width = trimSize(getStyle(tdElm, 'width', 'width'));\r
-       var height = trimSize(getStyle(tdElm, 'height', 'height'));\r
-       var bordercolor = convertRGBToHex(getStyle(tdElm, 'bordercolor', 'borderLeftColor'));\r
-       var bgcolor = convertRGBToHex(getStyle(tdElm, 'bgcolor', 'backgroundColor'));\r
-       var className = tinyMCE.getVisualAidClass(tinyMCE.getAttrib(tdElm, 'class'), false);\r
-       var backgroundimage = getStyle(tdElm, 'background', 'backgroundImage').replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");;\r
-       var id = tinyMCE.getAttrib(tdElm, 'id');\r
-       var lang = tinyMCE.getAttrib(tdElm, 'lang');\r
-       var dir = tinyMCE.getAttrib(tdElm, 'dir');\r
-       var scope = tinyMCE.getAttrib(tdElm, 'scope');\r
-\r
-       // Setup form\r
-       addClassesToList('class', 'table_cell_styles');\r
-       formObj.bordercolor.value = bordercolor;\r
-       formObj.bgcolor.value = bgcolor;\r
-       formObj.backgroundimage.value = backgroundimage;\r
-       formObj.width.value = width;\r
-       formObj.height.value = height;\r
-       formObj.id.value = id;\r
-       formObj.lang.value = lang;\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-       selectByValue(formObj, 'align', align);\r
-       selectByValue(formObj, 'valign', valign);\r
-       selectByValue(formObj, 'class', className);\r
-       selectByValue(formObj, 'celltype', celltype);\r
-       selectByValue(formObj, 'dir', dir);\r
-       selectByValue(formObj, 'scope', scope);\r
-\r
-       // Resize some elements\r
-       if (isVisible('backgroundimagebrowser'))\r
-               document.getElementById('backgroundimage').style.width = '180px';\r
-\r
-       updateColor('bordercolor_pick', 'bordercolor');\r
-       updateColor('bgcolor_pick', 'bgcolor');\r
-}\r
-\r
-function updateAction() {\r
-       tinyMCEPopup.restoreSelection();\r
-\r
-       var inst = tinyMCE.selectedInstance;\r
-       var tdElm = tinyMCE.getParentElement(inst.getFocusElement(), "td,th");\r
-       var trElm = tinyMCE.getParentElement(inst.getFocusElement(), "tr");\r
-       var tableElm = tinyMCE.getParentElement(inst.getFocusElement(), "table");\r
-       var formObj = document.forms[0];\r
-\r
-       inst.execCommand('mceBeginUndoLevel');\r
-\r
-       switch (getSelectValue(formObj, 'action')) {\r
-               case "cell":\r
-                       var celltype = getSelectValue(formObj, 'celltype');\r
-                       var scope = getSelectValue(formObj, 'scope');\r
-\r
-                       if (tinyMCE.getParam("accessibility_warnings")) {\r
-                               if (celltype == "th" && scope == "")\r
-                                       var answer = confirm(tinyMCE.getLang('lang_table_missing_scope', '', true));\r
-                               else\r
-                                       var answer = true;\r
-\r
-                               if (!answer)\r
-                                       return;\r
-                       }\r
-\r
-                       updateCell(tdElm);\r
-                       break;\r
-\r
-               case "row":\r
-                       var cell = trElm.firstChild;\r
-\r
-                       if (cell.nodeName != "TD" && cell.nodeName != "TH")\r
-                               cell = nextCell(cell);\r
-\r
-                       do {\r
-                               cell = updateCell(cell, true);\r
-                       } while ((cell = nextCell(cell)) != null);\r
-\r
-                       break;\r
-\r
-               case "all":\r
-                       var rows = tableElm.getElementsByTagName("tr");\r
-\r
-                       for (var i=0; i<rows.length; i++) {\r
-                               var cell = rows[i].firstChild;\r
-\r
-                               if (cell.nodeName != "TD" && cell.nodeName != "TH")\r
-                                       cell = nextCell(cell);\r
-\r
-                               do {\r
-                                       cell = updateCell(cell, true);\r
-                               } while ((cell = nextCell(cell)) != null);\r
-                       }\r
-\r
-                       break;\r
-       }\r
-\r
-       tinyMCE.handleVisualAid(inst.getBody(), true, inst.visualAid, inst);\r
-       tinyMCE.triggerNodeChange();\r
-       inst.execCommand('mceEndUndoLevel');\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function nextCell(elm) {\r
-       while ((elm = elm.nextSibling) != null) {\r
-               if (elm.nodeName == "TD" || elm.nodeName == "TH")\r
-                       return elm;\r
-       }\r
-\r
-       return null;\r
-}\r
-\r
-function updateCell(td, skip_id) {\r
-       var inst = tinyMCE.selectedInstance;\r
-       var formObj = document.forms[0];\r
-       var curCellType = td.nodeName.toLowerCase();\r
-       var celltype = getSelectValue(formObj, 'celltype');\r
-       var doc = inst.getDoc();\r
-\r
-       if (!skip_id)\r
-               td.setAttribute('id', formObj.id.value);\r
-\r
-       td.setAttribute('align', formObj.align.value);\r
-       td.setAttribute('vAlign', formObj.valign.value);\r
-       td.setAttribute('lang', formObj.lang.value);\r
-       td.setAttribute('dir', getSelectValue(formObj, 'dir'));\r
-       td.setAttribute('style', tinyMCE.serializeStyle(tinyMCE.parseStyle(formObj.style.value)));\r
-       td.setAttribute('scope', formObj.scope.value);\r
-       tinyMCE.setAttrib(td, 'class', getSelectValue(formObj, 'class'));\r
-\r
-       // Clear deprecated attributes\r
-       tinyMCE.setAttrib(td, 'width', '');\r
-       tinyMCE.setAttrib(td, 'height', '');\r
-       tinyMCE.setAttrib(td, 'bgColor', '');\r
-       tinyMCE.setAttrib(td, 'borderColor', '');\r
-       tinyMCE.setAttrib(td, 'background', '');\r
-\r
-       // Set styles\r
-       td.style.width = getCSSSize(formObj.width.value);\r
-       td.style.height = getCSSSize(formObj.height.value);\r
-       if (formObj.bordercolor.value != "") {\r
-               td.style.borderColor = formObj.bordercolor.value;\r
-               td.style.borderStyle = td.style.borderStyle == "" ? "solid" : td.style.borderStyle;\r
-               td.style.borderWidth = td.style.borderWidth == "" ? "1px" : td.style.borderWidth;\r
-       } else\r
-               td.style.borderColor = '';\r
-\r
-       td.style.backgroundColor = formObj.bgcolor.value;\r
-\r
-       if (formObj.backgroundimage.value != "")\r
-               td.style.backgroundImage = "url('" + formObj.backgroundimage.value + "')";\r
-       else\r
-               td.style.backgroundImage = '';\r
-\r
-       if (curCellType != celltype) {\r
-               // changing to a different node type\r
-               var newCell = doc.createElement(celltype);\r
-\r
-               for (var c=0; c<td.childNodes.length; c++)\r
-                       newCell.appendChild(td.childNodes[c].cloneNode(1));\r
-\r
-               for (var a=0; a<td.attributes.length; a++) {\r
-                       var attr = td.attributes[a];\r
-                       newCell.setAttribute(attr.name, attr.value);\r
-               }\r
-\r
-               td.parentNode.replaceChild(newCell, td);\r
-               td = newCell;\r
-       }\r
-\r
-       return td;\r
-}\r
-\r
-function changedBackgroundImage() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       st['background-image'] = "url('" + formObj.backgroundimage.value + "')";\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
-\r
-function changedSize() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       var width = formObj.width.value;\r
-       if (width != "")\r
-               st['width'] = getCSSSize(width);\r
-       else\r
-               st['width'] = "";\r
-\r
-       var height = formObj.height.value;\r
-       if (height != "")\r
-               st['height'] = getCSSSize(height);\r
-       else\r
-               st['height'] = "";\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
-\r
-function changedColor() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       st['background-color'] = formObj.bgcolor.value;\r
-       st['border-color'] = formObj.bordercolor.value;\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
-\r
-function changedStyle() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       if (st['background-image'])\r
-               formObj.backgroundimage.value = st['background-image'].replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");\r
-       else\r
-               formObj.backgroundimage.value = '';\r
-\r
-       if (st['width'])\r
-               formObj.width.value = trimSize(st['width']);\r
-\r
-       if (st['height'])\r
-               formObj.height.value = trimSize(st['height']);\r
-\r
-       if (st['background-color']) {\r
-               formObj.bgcolor.value = st['background-color'];\r
-               updateColor('bgcolor_pick','bgcolor');\r
-       }\r
-\r
-       if (st['border-color']) {\r
-               formObj.bordercolor.value = st['border-color'];\r
-               updateColor('bordercolor_pick','bordercolor');\r
-       }\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/merge_cells.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/merge_cells.js
deleted file mode 100644 (file)
index 06cbb27..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       var formObj = document.forms[0];\r
-\r
-       formObj.numcols.value = tinyMCE.getWindowArg('numcols', 1);\r
-       formObj.numrows.value = tinyMCE.getWindowArg('numrows', 1);\r
-}\r
-\r
-function mergeCells() {\r
-       var args = new Array();\r
-       var formObj = document.forms[0];\r
-\r
-       if (!AutoValidator.validate(formObj)) {\r
-               alert(tinyMCE.getLang('lang_invalid_data'));\r
-               return false;\r
-       }\r
-\r
-       args["numcols"] = formObj.numcols.value;\r
-       args["numrows"] = formObj.numrows.value;\r
-\r
-       tinyMCEPopup.execCommand("mceTableMergeCells", false, args);\r
-       tinyMCEPopup.close();\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/row.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/row.js
deleted file mode 100644 (file)
index 395ddf0..0000000
+++ /dev/null
@@ -1,200 +0,0 @@
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');\r
-       document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');\r
-\r
-       var inst = tinyMCE.selectedInstance;\r
-       var trElm = tinyMCE.getParentElement(inst.getFocusElement(), "tr");\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(tinyMCE.getAttrib(trElm, "style"));\r
-\r
-       // Get table row data\r
-       var rowtype = trElm.parentNode.nodeName.toLowerCase();\r
-       var align = tinyMCE.getAttrib(trElm, 'align');\r
-       var valign = tinyMCE.getAttrib(trElm, 'valign');\r
-       var height = trimSize(getStyle(trElm, 'height', 'height'));\r
-       var className = tinyMCE.getVisualAidClass(tinyMCE.getAttrib(trElm, 'class'), false);\r
-       var bgcolor = convertRGBToHex(getStyle(trElm, 'bgcolor', 'backgroundColor'));\r
-       var backgroundimage = getStyle(trElm, 'background', 'backgroundImage').replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");;\r
-       var id = tinyMCE.getAttrib(trElm, 'id');\r
-       var lang = tinyMCE.getAttrib(trElm, 'lang');\r
-       var dir = tinyMCE.getAttrib(trElm, 'dir');\r
-\r
-       // Setup form\r
-       addClassesToList('class', 'table_row_styles');\r
-       formObj.bgcolor.value = bgcolor;\r
-       formObj.backgroundimage.value = backgroundimage;\r
-       formObj.height.value = height;\r
-       formObj.id.value = id;\r
-       formObj.lang.value = lang;\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-       selectByValue(formObj, 'align', align);\r
-       selectByValue(formObj, 'valign', valign);\r
-       selectByValue(formObj, 'class', className);\r
-       selectByValue(formObj, 'rowtype', rowtype);\r
-       selectByValue(formObj, 'dir', dir);\r
-\r
-       // Resize some elements\r
-       if (isVisible('backgroundimagebrowser'))\r
-               document.getElementById('backgroundimage').style.width = '180px';\r
-\r
-       updateColor('bgcolor_pick', 'bgcolor');\r
-}\r
-\r
-function updateAction() {\r
-       tinyMCEPopup.restoreSelection();\r
-\r
-       var inst = tinyMCE.selectedInstance;\r
-       var trElm = tinyMCE.getParentElement(inst.getFocusElement(), "tr");\r
-       var tableElm = tinyMCE.getParentElement(inst.getFocusElement(), "table");\r
-       var formObj = document.forms[0];\r
-       var action = getSelectValue(formObj, 'action');\r
-\r
-       inst.execCommand('mceBeginUndoLevel');\r
-\r
-       switch (action) {\r
-               case "row":\r
-                       updateRow(trElm);\r
-                       break;\r
-\r
-               case "all":\r
-                       var rows = tableElm.getElementsByTagName("tr");\r
-\r
-                       for (var i=0; i<rows.length; i++)\r
-                               updateRow(rows[i], true);\r
-\r
-                       break;\r
-\r
-               case "odd":\r
-               case "even":\r
-                       var rows = tableElm.getElementsByTagName("tr");\r
-\r
-                       for (var i=0; i<rows.length; i++) {\r
-                               if ((i % 2 == 0 && action == "odd") || (i % 2 != 0 && action == "even"))\r
-                                       updateRow(rows[i], true, true);\r
-                       }\r
-\r
-                       break;\r
-       }\r
-\r
-       tinyMCE.handleVisualAid(inst.getBody(), true, inst.visualAid, inst);\r
-       tinyMCE.triggerNodeChange();\r
-       inst.execCommand('mceEndUndoLevel');\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function updateRow(tr_elm, skip_id, skip_parent) {\r
-       var inst = tinyMCE.selectedInstance;\r
-       var formObj = document.forms[0];\r
-       var curRowType = tr_elm.parentNode.nodeName.toLowerCase();\r
-       var rowtype = getSelectValue(formObj, 'rowtype');\r
-       var doc = inst.getDoc();\r
-\r
-       // Update row element\r
-       if (!skip_id)\r
-               tr_elm.setAttribute('id', formObj.id.value);\r
-\r
-       tr_elm.setAttribute('align', getSelectValue(formObj, 'align'));\r
-       tr_elm.setAttribute('vAlign', getSelectValue(formObj, 'valign'));\r
-       tr_elm.setAttribute('lang', formObj.lang.value);\r
-       tr_elm.setAttribute('dir', getSelectValue(formObj, 'dir'));\r
-       tr_elm.setAttribute('style', tinyMCE.serializeStyle(tinyMCE.parseStyle(formObj.style.value)));\r
-       tinyMCE.setAttrib(tr_elm, 'class', getSelectValue(formObj, 'class'));\r
-\r
-       // Clear deprecated attributes\r
-       tr_elm.setAttribute('background', '');\r
-       tr_elm.setAttribute('bgColor', '');\r
-       tr_elm.setAttribute('height', '');\r
-\r
-       // Set styles\r
-       tr_elm.style.height = getCSSSize(formObj.height.value);\r
-       tr_elm.style.backgroundColor = formObj.bgcolor.value;\r
-\r
-       if (formObj.backgroundimage.value != "")\r
-               tr_elm.style.backgroundImage = "url('" + formObj.backgroundimage.value + "')";\r
-       else\r
-               tr_elm.style.backgroundImage = '';\r
-\r
-       // Setup new rowtype\r
-       if (curRowType != rowtype && !skip_parent) {\r
-               // first, clone the node we are working on\r
-               var newRow = tr_elm.cloneNode(1);\r
-\r
-               // next, find the parent of its new destination (creating it if necessary)\r
-               var theTable = tinyMCE.getParentElement(tr_elm, "table");\r
-               var dest = rowtype;\r
-               var newParent = null;\r
-               for (var i = 0; i < theTable.childNodes.length; i++) {\r
-                       if (theTable.childNodes[i].nodeName.toLowerCase() == dest)\r
-                               newParent = theTable.childNodes[i];\r
-               }\r
-\r
-               if (newParent == null) {\r
-                       newParent = doc.createElement(dest);\r
-\r
-                       if (dest == "thead")\r
-                               theTable.insertBefore(newParent, theTable.firstChild);\r
-                       else\r
-                               theTable.appendChild(newParent);\r
-               }\r
-\r
-               // append the row to the new parent\r
-               newParent.appendChild(newRow);\r
-\r
-               // remove the original\r
-               tr_elm.parentNode.removeChild(tr_elm);\r
-\r
-               // set tr_elm to the new node\r
-               tr_elm = newRow;\r
-       }\r
-}\r
-\r
-function changedBackgroundImage() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       st['background-image'] = "url('" + formObj.backgroundimage.value + "')";\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
-\r
-function changedStyle() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       if (st['background-image'])\r
-               formObj.backgroundimage.value = st['background-image'].replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");\r
-       else\r
-               formObj.backgroundimage.value = '';\r
-\r
-       if (st['height'])\r
-               formObj.height.value = trimSize(st['height']);\r
-\r
-       if (st['background-color']) {\r
-               formObj.bgcolor.value = st['background-color'];\r
-               updateColor('bgcolor_pick','bgcolor');\r
-       }\r
-}\r
-\r
-function changedSize() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       var height = formObj.height.value;\r
-       if (height != "")\r
-               st['height'] = getCSSSize(height);\r
-       else\r
-               st['height'] = "";\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
-\r
-function changedColor() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       st['background-color'] = formObj.bgcolor.value;\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/table.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/jscripts/table.js
deleted file mode 100644 (file)
index 4a0ee3b..0000000
+++ /dev/null
@@ -1,364 +0,0 @@
-var action, orgTableWidth, orgTableHeight;\r
-\r
-function insertTable() {\r
-       var formObj = document.forms[0];\r
-       var inst = tinyMCE.selectedInstance;\r
-       var cols = 2, rows = 2, border = 0, cellpadding = -1, cellspacing = -1, align, width, height, className, caption;\r
-       var html = '', capEl;\r
-       var elm = tinyMCE.tableElm;\r
-       var cellLimit, rowLimit, colLimit;\r
-\r
-       if (!AutoValidator.validate(formObj)) {\r
-               alert(tinyMCE.getLang('lang_invalid_data'));\r
-               return false;\r
-       }\r
-\r
-       tinyMCEPopup.restoreSelection();\r
-\r
-       // Get form data\r
-       cols = formObj.elements['cols'].value;\r
-       rows = formObj.elements['rows'].value;\r
-       border = formObj.elements['border'].value != "" ? formObj.elements['border'].value  : 0;\r
-       cellpadding = formObj.elements['cellpadding'].value != "" ? formObj.elements['cellpadding'].value : "";\r
-       cellspacing = formObj.elements['cellspacing'].value != "" ? formObj.elements['cellspacing'].value : "";\r
-       align = formObj.elements['align'].options[formObj.elements['align'].selectedIndex].value;\r
-       width = formObj.elements['width'].value;\r
-       height = formObj.elements['height'].value;\r
-       bordercolor = formObj.elements['bordercolor'].value;\r
-       bgcolor = formObj.elements['bgcolor'].value;\r
-       className = formObj.elements['class'].options[formObj.elements['class'].selectedIndex].value;\r
-       id = formObj.elements['id'].value;\r
-       summary = formObj.elements['summary'].value;\r
-       style = formObj.elements['style'].value;\r
-       dir = formObj.elements['dir'].value;\r
-       lang = formObj.elements['lang'].value;\r
-       background = formObj.elements['backgroundimage'].value;\r
-       caption = formObj.elements['caption'].checked;\r
-\r
-       cellLimit = tinyMCE.getParam('table_cell_limit', false);\r
-       rowLimit = tinyMCE.getParam('table_row_limit', false);\r
-       colLimit = tinyMCE.getParam('table_col_limit', false);\r
-\r
-       // Validate table size\r
-       if (colLimit && cols > colLimit) {\r
-               alert(tinyMCE.getLang('lang_table_col_limit', '', true, {cols : colLimit}));\r
-               return false;\r
-       } else if (rowLimit && rows > rowLimit) {\r
-               alert(tinyMCE.getLang('lang_table_row_limit', '', true, {rows : rowLimit}));\r
-               return false;\r
-       } else if (cellLimit && cols * rows > cellLimit) {\r
-               alert(tinyMCE.getLang('lang_table_cell_limit', '', true, {cells : cellLimit}));\r
-               return false;\r
-       }\r
-\r
-       // Update table\r
-       if (action == "update") {\r
-               inst.execCommand('mceBeginUndoLevel');\r
-\r
-               tinyMCE.setAttrib(elm, 'cellPadding', cellpadding, true);\r
-               tinyMCE.setAttrib(elm, 'cellSpacing', cellspacing, true);\r
-               tinyMCE.setAttrib(elm, 'border', border, true);\r
-               tinyMCE.setAttrib(elm, 'align', align);\r
-               tinyMCE.setAttrib(elm, 'class', className);\r
-               tinyMCE.setAttrib(elm, 'style', style);\r
-               tinyMCE.setAttrib(elm, 'id', id);\r
-               tinyMCE.setAttrib(elm, 'summary', summary);\r
-               tinyMCE.setAttrib(elm, 'dir', dir);\r
-               tinyMCE.setAttrib(elm, 'lang', lang);\r
-\r
-               capEl = elm.getElementsByTagName('caption')[0];\r
-\r
-               if (capEl && !caption)\r
-                       capEl.parentNode.removeChild(capEl);\r
-\r
-               if (!capEl && caption) {\r
-                       capEl = elm.ownerDocument.createElement('caption');\r
-                       capEl.innerHTML = '&nbsp;';\r
-                       elm.insertBefore(capEl, elm.firstChild);\r
-               }\r
-\r
-               // Not inline styles\r
-               if (!tinyMCE.getParam("inline_styles"))\r
-                       tinyMCE.setAttrib(elm, 'width', width, true);\r
-\r
-               // Remove these since they are not valid XHTML\r
-               tinyMCE.setAttrib(elm, 'borderColor', '');\r
-               tinyMCE.setAttrib(elm, 'bgColor', '');\r
-               tinyMCE.setAttrib(elm, 'background', '');\r
-               tinyMCE.setAttrib(elm, 'height', '');\r
-\r
-               if (background != '')\r
-                       elm.style.backgroundImage = "url('" + background + "')";\r
-               else\r
-                       elm.style.backgroundImage = '';\r
-\r
-               if (tinyMCE.getParam("inline_styles"))\r
-                       elm.style.borderWidth = border + "px";\r
-\r
-               if (tinyMCE.getParam("inline_styles")) {\r
-                       if (width != '')\r
-                               elm.style.width = getCSSSize(width);\r
-               }\r
-\r
-               if (bordercolor != "") {\r
-                       elm.style.borderColor = bordercolor;\r
-                       elm.style.borderStyle = elm.style.borderStyle == "" ? "solid" : elm.style.borderStyle;\r
-                       elm.style.borderWidth = border == "" ? "1px" : border;\r
-               } else\r
-                       elm.style.borderColor = '';\r
-\r
-               elm.style.backgroundColor = bgcolor;\r
-               elm.style.height = getCSSSize(height);\r
-\r
-               tinyMCE.handleVisualAid(tinyMCE.tableElm, false, inst.visualAid, inst);\r
-\r
-               // Fix for stange MSIE align bug\r
-               tinyMCE.tableElm.outerHTML = tinyMCE.tableElm.outerHTML;\r
-\r
-               tinyMCE.handleVisualAid(inst.getBody(), true, inst.visualAid, inst);\r
-               tinyMCE.triggerNodeChange();\r
-               inst.execCommand('mceEndUndoLevel');\r
-\r
-               // Repaint if dimensions changed\r
-               if (formObj.width.value != orgTableWidth || formObj.height.value != orgTableHeight)\r
-                       inst.repaint();\r
-\r
-               tinyMCEPopup.close();\r
-               return true;\r
-       }\r
-\r
-       // Create new table\r
-       html += '<table';\r
-\r
-       html += makeAttrib('id', id);\r
-       html += makeAttrib('border', border);\r
-       html += makeAttrib('cellpadding', cellpadding);\r
-       html += makeAttrib('cellspacing', cellspacing);\r
-       html += makeAttrib('width', width);\r
-       //html += makeAttrib('height', height);\r
-       //html += makeAttrib('bordercolor', bordercolor);\r
-       //html += makeAttrib('bgcolor', bgcolor);\r
-       html += makeAttrib('align', align);\r
-       html += makeAttrib('class', tinyMCE.getVisualAidClass(className, border == 0));\r
-       html += makeAttrib('style', style);\r
-       html += makeAttrib('summary', summary);\r
-       html += makeAttrib('dir', dir);\r
-       html += makeAttrib('lang', lang);\r
-       html += '>';\r
-\r
-       if (caption)\r
-               html += '<caption>&nbsp;</caption>';\r
-\r
-       for (var y=0; y<rows; y++) {\r
-               html += "<tr>";\r
-\r
-               for (var x=0; x<cols; x++)\r
-                       html += '<td>&nbsp;</td>';\r
-\r
-               html += "</tr>";\r
-       }\r
-\r
-       html += "</table>";\r
-\r
-       inst.execCommand('mceBeginUndoLevel');\r
-       inst.execCommand('mceInsertContent', false, html);\r
-       tinyMCE.handleVisualAid(inst.getBody(), true, tinyMCE.settings['visual']);\r
-       inst.execCommand('mceEndUndoLevel');\r
-\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function makeAttrib(attrib, value) {\r
-       var formObj = document.forms[0];\r
-       var valueElm = formObj.elements[attrib];\r
-\r
-       if (typeof(value) == "undefined" || value == null) {\r
-               value = "";\r
-\r
-               if (valueElm)\r
-                       value = valueElm.value;\r
-       }\r
-\r
-       if (value == "")\r
-               return "";\r
-\r
-       // XML encode it\r
-       value = value.replace(/&/g, '&amp;');\r
-       value = value.replace(/\"/g, '&quot;');\r
-       value = value.replace(/</g, '&lt;');\r
-       value = value.replace(/>/g, '&gt;');\r
-\r
-       return ' ' + attrib + '="' + value + '"';\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');\r
-       document.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');\r
-       document.getElementById('bordercolor_pickcontainer').innerHTML = getColorPickerHTML('bordercolor_pick','bordercolor');\r
-       document.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');\r
-\r
-       var cols = 2, rows = 2, border = tinyMCE.getParam('table_default_border', '0'), cellpadding = tinyMCE.getParam('table_default_cellpadding', ''), cellspacing = tinyMCE.getParam('table_default_cellspacing', '');\r
-       var align = "", width = "", height = "", bordercolor = "", bgcolor = "", className = "";\r
-       var id = "", summary = "", style = "", dir = "", lang = "", background = "", bgcolor = "", bordercolor = "";\r
-       var inst = tinyMCE.selectedInstance;\r
-       var formObj = document.forms[0];\r
-       var elm = tinyMCE.getParentElement(inst.getFocusElement(), "table");\r
-\r
-       tinyMCE.tableElm = elm;\r
-       action = tinyMCE.getWindowArg('action');\r
-       if (action == null)\r
-               action = tinyMCE.tableElm ? "update" : "insert";\r
-\r
-       if (tinyMCE.tableElm && action != "insert") {\r
-               var rowsAr = tinyMCE.tableElm.rows;\r
-               var cols = 0;\r
-               for (var i=0; i<rowsAr.length; i++)\r
-                       if (rowsAr[i].cells.length > cols)\r
-                               cols = rowsAr[i].cells.length;\r
-\r
-               cols = cols;\r
-               rows = rowsAr.length;\r
-\r
-               st = tinyMCE.parseStyle(tinyMCE.getAttrib(tinyMCE.tableElm, "style"));\r
-               border = trimSize(getStyle(elm, 'border', 'borderWidth'));\r
-               cellpadding = tinyMCE.getAttrib(tinyMCE.tableElm, 'cellpadding', "");\r
-               cellspacing = tinyMCE.getAttrib(tinyMCE.tableElm, 'cellspacing', "");\r
-               width = trimSize(getStyle(elm, 'width', 'width'));\r
-               height = trimSize(getStyle(elm, 'height', 'height'));\r
-               bordercolor = convertRGBToHex(getStyle(elm, 'bordercolor', 'borderLeftColor'));\r
-               bgcolor = convertRGBToHex(getStyle(elm, 'bgcolor', 'backgroundColor'));\r
-               align = tinyMCE.getAttrib(tinyMCE.tableElm, 'align', align);\r
-               className = tinyMCE.getVisualAidClass(tinyMCE.getAttrib(tinyMCE.tableElm, 'class'), false);\r
-               id = tinyMCE.getAttrib(tinyMCE.tableElm, 'id');\r
-               summary = tinyMCE.getAttrib(tinyMCE.tableElm, 'summary');\r
-               style = tinyMCE.serializeStyle(st);\r
-               dir = tinyMCE.getAttrib(tinyMCE.tableElm, 'dir');\r
-               lang = tinyMCE.getAttrib(tinyMCE.tableElm, 'lang');\r
-               background = getStyle(elm, 'background', 'backgroundImage').replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");\r
-               formObj.caption.checked = tinyMCE.tableElm.getElementsByTagName('caption').length > 0;\r
-\r
-               orgTableWidth = width;\r
-               orgTableHeight = height;\r
-\r
-               action = "update";\r
-       }\r
-\r
-       addClassesToList('class', "table_styles");\r
-\r
-       // Update form\r
-       selectByValue(formObj, 'align', align);\r
-       selectByValue(formObj, 'class', className);\r
-       formObj.cols.value = cols;\r
-       formObj.rows.value = rows;\r
-       formObj.border.value = border;\r
-       formObj.cellpadding.value = cellpadding;\r
-       formObj.cellspacing.value = cellspacing;\r
-       formObj.width.value = width;\r
-       formObj.height.value = height;\r
-       formObj.bordercolor.value = bordercolor;\r
-       formObj.bgcolor.value = bgcolor;\r
-       formObj.id.value = id;\r
-       formObj.summary.value = summary;\r
-       formObj.style.value = style;\r
-       formObj.dir.value = dir;\r
-       formObj.lang.value = lang;\r
-       formObj.backgroundimage.value = background;\r
-       formObj.insert.value = tinyMCE.getLang('lang_' + action, 'Insert', true); \r
-\r
-       updateColor('bordercolor_pick', 'bordercolor');\r
-       updateColor('bgcolor_pick', 'bgcolor');\r
-\r
-       // Resize some elements\r
-       if (isVisible('backgroundimagebrowser'))\r
-               document.getElementById('backgroundimage').style.width = '180px';\r
-\r
-       // Disable some fields in update mode\r
-       if (action == "update") {\r
-               formObj.cols.disabled = true;\r
-               formObj.rows.disabled = true;\r
-       }\r
-}\r
-\r
-function changedSize() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       var width = formObj.width.value;\r
-       if (width != "")\r
-               st['width'] = tinyMCE.getParam("inline_styles") ? getCSSSize(width) : "";\r
-       else\r
-               st['width'] = "";\r
-\r
-       var height = formObj.height.value;\r
-       if (height != "")\r
-               st['height'] = getCSSSize(height);\r
-       else\r
-               st['height'] = "";\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
-\r
-function changedBackgroundImage() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       st['background-image'] = "url('" + formObj.backgroundimage.value + "')";\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
-\r
-function changedBorder() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       // Update border width if the element has a color\r
-       if (formObj.border.value != "" && formObj.bordercolor.value != "")\r
-               st['border-width'] = formObj.border.value + "px";\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
-\r
-function changedColor() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       st['background-color'] = formObj.bgcolor.value;\r
-\r
-       if (formObj.bordercolor.value != "") {\r
-               st['border-color'] = formObj.bordercolor.value;\r
-\r
-               // Add border-width if it's missing\r
-               if (!st['border-width'])\r
-                       st['border-width'] = formObj.border.value == "" ? "1px" : formObj.border.value + "px";\r
-       }\r
-\r
-       formObj.style.value = tinyMCE.serializeStyle(st);\r
-}\r
-\r
-function changedStyle() {\r
-       var formObj = document.forms[0];\r
-       var st = tinyMCE.parseStyle(formObj.style.value);\r
-\r
-       if (st['background-image'])\r
-               formObj.backgroundimage.value = st['background-image'].replace(new RegExp("url\\('?([^']*)'?\\)", 'gi'), "$1");\r
-       else\r
-               formObj.backgroundimage.value = '';\r
-\r
-       if (st['width'])\r
-               formObj.width.value = trimSize(st['width']);\r
-\r
-       if (st['height'])\r
-               formObj.height.value = trimSize(st['height']);\r
-\r
-       if (st['background-color']) {\r
-               formObj.bgcolor.value = st['background-color'];\r
-               updateColor('bgcolor_pick','bgcolor');\r
-       }\r
-\r
-       if (st['border-color']) {\r
-               formObj.bordercolor.value = st['border-color'];\r
-               updateColor('bordercolor_pick','bordercolor');\r
-       }\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/langs/en.js
deleted file mode 100644 (file)
index e2fbba2..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('table',{\r
-general_tab : 'General',\r
-advanced_tab : 'Advanced',\r
-general_props : 'General properties',\r
-advanced_props : 'Advanced properties',\r
-desc : 'Inserts a new table',\r
-row_before_desc : 'Insert row before',\r
-row_after_desc : 'Insert row after',\r
-delete_row_desc : 'Delete row',\r
-col_before_desc : 'Insert column before',\r
-col_after_desc : 'Insert column after',\r
-delete_col_desc : 'Remove column',\r
-rowtype : 'Row in table part',\r
-title : 'Insert/Modify table',\r
-width : 'Width',\r
-height : 'Height',\r
-cols : 'Columns',\r
-rows : 'Rows',\r
-cellspacing : 'Cellspacing',\r
-cellpadding : 'Cellpadding',\r
-border : 'Border',\r
-align : 'Alignment',\r
-align_default : 'Default',\r
-align_left : 'Left',\r
-align_right : 'Right',\r
-align_middle : 'Center',\r
-row_title : 'Table row properties',\r
-cell_title : 'Table cell properties',\r
-cell_type : 'Cell type',\r
-row_desc : 'Table row properties',\r
-cell_desc : 'Table cell properties',\r
-valign : 'Vertical alignment',\r
-align_top : 'Top',\r
-align_bottom : 'Bottom',\r
-props_desc : 'Table properties',\r
-bordercolor : 'Border color',\r
-bgcolor : 'Background color',\r
-merge_cells_title : 'Merge table cells',\r
-split_cells_desc : 'Split merged table cells',\r
-merge_cells_desc : 'Merge table cells',\r
-cut_row_desc : 'Cut table row',\r
-copy_row_desc : 'Copy table row',\r
-paste_row_before_desc : 'Paste table row before',\r
-paste_row_after_desc : 'Paste table row after',\r
-id : 'Id',\r
-style: 'Style',\r
-langdir : 'Language direction',\r
-langcode : 'Language code',\r
-mime : 'Target MIME type',\r
-ltr : 'Left to right',\r
-rtl : 'Right to left',\r
-bgimage : 'Background image',\r
-summary : 'Summary',\r
-td : "Data",\r
-th : "Header",\r
-cell_cell : 'Update current cell',\r
-cell_row : 'Update all cells in row',\r
-cell_all : 'Update all cells in table',\r
-row_row : 'Update current row',\r
-row_odd : 'Update odd rows in table',\r
-row_even : 'Update even rows in table',\r
-row_all : 'Update all rows in table',\r
-thead : 'Table Head',\r
-tbody : 'Table Body',\r
-tfoot : 'Table Foot',\r
-del : 'Delete table',\r
-scope : 'Scope',\r
-row : 'Row',\r
-col : 'Col',\r
-rowgroup : 'Row Group',\r
-colgroup : 'Col Group',\r
-col_limit : 'You\'ve exceeded the maximum number of columns of {$cols}.',\r
-row_limit : 'You\'ve exceeded the maximum number of rows of {$rows}.',\r
-cell_limit : 'You\'ve exceeded the maximum number of cells of {$cells}.',\r
-missing_scope: 'Are you sure you want to continue without specifying a scope for this table header cell. Without it, it may be difficult for some users with disabilities to understand the content or data displayed of the table.',\r
-caption : 'Table caption'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm
deleted file mode 100644 (file)
index 10896bf..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_table_merge_cells_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/validate.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/merge_cells.js"></script>\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="margin: 8px" style="display: none">\r
-<form onsubmit="insertTable();return false;" action="#">\r
-       <fieldset>\r
-               <legend>{$lang_table_merge_cells_title}</legend>\r
-                 <table border="0" cellpadding="0" cellspacing="3" width="100%">\r
-                         <tr>\r
-                               <td>{$lang_table_cols}:</td>\r
-                               <td align="right"><input type="text" name="numcols" value="" class="number min1" style="width: 30px" /></td>\r
-                               <td>\r
-                         </tr>\r
-                         <tr>\r
-                               <td>{$lang_table_rows}:</td>\r
-                               <td align="right"><input type="text" name="numrows" value="" class="number min1" style="width: 30px" /></td>\r
-                         </tr>\r
-                 </table>\r
-       </fieldset>\r
-\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_update}" onclick="mergeCells();" />\r
-               </div>\r
-\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/row.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/row.htm
deleted file mode 100644 (file)
index 64f2afc..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_table_row_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/row.js"></script>\r
-       <link href="css/row.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body id="tablerow" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-       <form onsubmit="updateAction();return false;">\r
-               <div class="tabs">\r
-                       <ul>\r
-                               <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_table_general_tab}</a></span></li>\r
-                               <li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{$lang_table_advanced_tab}</a></span></li>\r
-                       </ul>\r
-               </div>\r
-\r
-               <div class="panel_wrapper">\r
-                       <div id="general_panel" class="panel current">\r
-                               <fieldset>\r
-                                       <legend>{$lang_table_general_props}</legend>\r
-\r
-                                       <table border="0" cellpadding="4" cellspacing="0">\r
-                                               <tr>\r
-                                                       <td><label for="rowtype">{$lang_table_rowtype}</label></td>\r
-                                                       <td class="col2">\r
-                                                               <select id="rowtype" name="rowtype">\r
-                                                                       <option value="thead">{$lang_table_thead}</option>\r
-                                                                       <option value="tbody">{$lang_table_tbody}</option>\r
-                                                                       <option value="tfoot">{$lang_table_tfoot}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="align">{$lang_table_align}</label></td>\r
-                                                       <td class="col2">\r
-                                                               <select id="align" name="align">\r
-                                                                       <option value="">{$lang_not_set}</option>\r
-                                                                       <option value="center">{$lang_table_align_middle}</option>\r
-                                                                       <option value="left">{$lang_table_align_left}</option>\r
-                                                                       <option value="right">{$lang_table_align_right}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="valign">{$lang_table_valign}</label></td>\r
-                                                       <td class="col2">\r
-                                                               <select id="valign" name="valign">\r
-                                                                       <option value="">{$lang_not_set}</option>\r
-                                                                       <option value="top">{$lang_table_align_top}</option>\r
-                                                                       <option value="middle">{$lang_table_align_middle}</option>\r
-                                                                       <option value="bottom">{$lang_table_align_bottom}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr id="styleSelectRow">\r
-                                                       <td><label for="class">{$lang_class_name}</label></td>\r
-                                                       <td class="col2">\r
-                                                               <select id="class" name="class">\r
-                                                                       <option value="" selected="selected">{$lang_not_set}</option>\r
-                                                               </select>\r
-                                                       </td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="height">{$lang_table_height}</label></td>\r
-                                                       <td class="col2"><input name="height" type="text" id="height" value="" size="4" maxlength="4" onchange="changedSize();" /></td>\r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="advanced_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_table_advanced_props}</legend>\r
-\r
-                                       <table border="0" cellpadding="0" cellspacing="4">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="id">{$lang_table_id}</label></td> \r
-                                                       <td><input id="id" name="id" type="text" value="" style="width: 200px" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="style">{$lang_table_style}</label></td>\r
-                                                       <td><input type="text" id="style" name="style" value="" style="width: 200px;" onchange="changedStyle();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="dir">{$lang_table_langdir}</label></td> \r
-                                                       <td>\r
-                                                               <select id="dir" name="dir" style="width: 200px"> \r
-                                                                               <option value="">{$lang_not_set}</option> \r
-                                                                               <option value="ltr">{$lang_table_ltr}</option> \r
-                                                                               <option value="rtl">{$lang_table_rtl}</option> \r
-                                                               </select>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="lang">{$lang_table_langcode}</label></td> \r
-                                                       <td>\r
-                                                               <input id="lang" name="lang" type="text" value="" style="width: 200px" />\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="backgroundimage">{$lang_table_bgimage}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="backgroundimage" name="backgroundimage" type="text" value="" style="width: 200px" onchange="changedBackgroundImage();" /></td>\r
-                                                                               <td id="backgroundimagebrowsercontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="bgcolor">{$lang_table_bgcolor}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="bgcolor" name="bgcolor" type="text" value="" size="9" onchange="updateColor('bgcolor_pick','bgcolor');changedColor();" /></td>\r
-                                                                               <td id="bgcolor_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td> \r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-               </div>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div>\r
-                               <select id="action" name="action">\r
-                                       <option value="row">{$lang_table_row_row}</option>\r
-                                       <option value="odd">{$lang_table_row_odd}</option>\r
-                                       <option value="even">{$lang_table_row_even}</option>\r
-                                       <option value="all">{$lang_table_row_all}</option>\r
-                               </select>\r
-                       </div>\r
-\r
-                       <div style="float: left">\r
-                               <div><input type="button" id="insert" name="insert" value="{$lang_update}" onclick="updateAction();" /></div>\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-                       </div>\r
-               </div>\r
-       </form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/table.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/table/table.htm
deleted file mode 100644 (file)
index f484187..0000000
+++ /dev/null
@@ -1,160 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_table_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/validate.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/table.js"></script>\r
-       <link href="css/table.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body id="table" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-       <form onsubmit="insertTable();return false;" action="#">\r
-               <div class="tabs">\r
-                       <ul>\r
-                               <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_table_general_tab}</a></span></li>\r
-                               <li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{$lang_table_advanced_tab}</a></span></li>\r
-                       </ul>\r
-               </div>\r
-\r
-               <div class="panel_wrapper">\r
-                       <div id="general_panel" class="panel current">\r
-                               <fieldset>\r
-                                       <legend>{$lang_table_general_props}</legend>\r
-\r
-                                         <table border="0" cellpadding="4" cellspacing="0" width="100%">\r
-                                                         <tr>\r
-                                                               <td><label id="colslabel" for="cols">{$lang_table_cols}</label></td>\r
-                                                               <td><input id="cols" name="cols" type="text" value="" size="3" maxlength="3" class="required number min1" /></td>\r
-                                                               <td><label id="rowslabel" for="rows">{$lang_table_rows}</label></td>\r
-                                                               <td><input id="rows" name="rows" type="text" value="" size="3" maxlength="3" class="required number min1" /></td>\r
-                                                         </tr>\r
-                                                         <tr>\r
-                                                               <td><label id="cellpaddinglabel" for="cellpadding">{$lang_table_cellpadding}</label></td>\r
-                                                               <td><input id="cellpadding" name="cellpadding" type="text" value="" size="3" maxlength="3" class="number" /></td>\r
-                                                               <td><label id="cellspacinglabel" for="cellspacing">{$lang_table_cellspacing}</label></td>\r
-                                                               <td><input id="cellspacing" name="cellspacing" type="text" value="" size="3" maxlength="3" class="number" /></td>\r
-                                                         </tr>\r
-                                                         <tr>\r
-                                                               <td><label id="alignlabel" for="align">{$lang_table_align}</label></td>\r
-                                                               <td><select id="align" name="align">\r
-                                                                       <option value="">{$lang_not_set}</option>\r
-                                                                       <option value="center">{$lang_table_align_middle}</option>\r
-                                                                       <option value="left">{$lang_table_align_left}</option>\r
-                                                                       <option value="right">{$lang_table_align_right}</option>\r
-                                                                 </select></td>\r
-                                                               <td><label id="borderlabel" for="border">{$lang_table_border}</label></td>\r
-                                                               <td><input id="border" name="border" type="text" value="" size="3" maxlength="3" onchange="changedBorder();" class="number" /></td>\r
-                                                         </tr>\r
-                                                         <tr id="width_row">\r
-                                                               <td><label id="widthlabel" for="width">{$lang_table_width}</label></td>\r
-                                                               <td><input name="width" type="text" id="width" value="" size="4" maxlength="4" onchange="changedSize();" class="size" /></td>\r
-                                                               <td><label id="heightlabel" for="height">{$lang_table_height}</label></td>\r
-                                                               <td><input name="height" type="text" id="height" value="" size="4" maxlength="4" onchange="changedSize();" class="size" /></td>\r
-                                                         </tr>\r
-                                                         <tr id="styleSelectRow">\r
-                                                               <td><label id="classlabel" for="class">{$lang_class_name}</label></td>\r
-                                                               <td colspan="3">\r
-                                                                <select id="class" name="class">\r
-                                                                       <option value="" selected>{$lang_not_set}</option>\r
-                                                                </select></td>\r
-                                                         </tr>\r
-                                                         <tr>\r
-                                                               <td class="column1"><label for="caption">{$lang_table_caption}</label></td> \r
-                                                               <td><input id="caption" name="caption" type="checkbox" class="checkbox" value="true" /></td> \r
-                                                         </tr>\r
-                                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-\r
-                       <div id="advanced_panel" class="panel">\r
-                               <fieldset>\r
-                                       <legend>{$lang_table_advanced_props}</legend>\r
-\r
-                                       <table border="0" cellpadding="0" cellspacing="4">\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="id">{$lang_table_id}</label></td> \r
-                                                       <td><input id="id" name="id" type="text" value="" class="advfield" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="summary">{$lang_table_summary}</label></td> \r
-                                                       <td><input id="summary" name="summary" type="text" value="" class="advfield" /></td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label for="style">{$lang_table_style}</label></td>\r
-                                                       <td><input type="text" id="style" name="style" value="" class="advfield" onchange="changedStyle();" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="dir">{$lang_table_langdir}</label></td> \r
-                                                       <td>\r
-                                                               <select id="dir" name="dir" class="advfield"> \r
-                                                                               <option value="">{$lang_not_set}</option> \r
-                                                                               <option value="ltr">{$lang_table_ltr}</option> \r
-                                                                               <option value="rtl">{$lang_table_rtl}</option> \r
-                                                               </select>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label id="langlabel" for="lang">{$lang_table_langcode}</label></td> \r
-                                                       <td>\r
-                                                               <input id="lang" name="lang" type="text" value="" class="advfield" />\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="backgroundimage">{$lang_table_bgimage}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="backgroundimage" name="backgroundimage" type="text" value="" class="advfield" onchange="changedBackgroundImage();" /></td>\r
-                                                                               <td id="backgroundimagebrowsercontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="bordercolor">{$lang_table_bordercolor}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="bordercolor" name="bordercolor" type="text" value="" size="9" onchange="updateColor('bordercolor_pick','bordercolor');changedColor();" /></td>\r
-                                                                               <td id="bordercolor_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td> \r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td class="column1"><label for="bgcolor">{$lang_table_bgcolor}</label></td> \r
-                                                       <td>\r
-                                                               <table border="0" cellpadding="0" cellspacing="0">\r
-                                                                       <tr>\r
-                                                                               <td><input id="bgcolor" name="bgcolor" type="text" value="" size="9" onchange="updateColor('bgcolor_pick','bgcolor');changedColor();" /></td>\r
-                                                                               <td id="bgcolor_pickcontainer">&nbsp;</td>\r
-                                                                       </tr>\r
-                                                               </table>\r
-                                                       </td> \r
-                                               </tr>\r
-                                       </table>\r
-                               </fieldset>\r
-                       </div>\r
-               </div>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div style="float: left">\r
-                               <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertTable();" />\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-                       </div>\r
-               </div>\r
-       </form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/blank.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/blank.htm
deleted file mode 100644 (file)
index 44ed22b..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>blank_page</title>\r
-       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />\r
-       <script type="text/javascript">\r
-               var tinyMCE = parent.tinyMCE, css = tinyMCE.getParam("content_css").split(','), i, u;\r
-\r
-               // Load content CSS files\r
-               for (i=0; i<css.length; i++) {\r
-                       u = css[i];\r
-\r
-                       // Fix relative\r
-                       if (u.charAt(0) != '/' && u.indexOf('://') == -1)\r
-                               u = tinyMCE.documentBasePath + "/" + u;\r
-\r
-                       document.write('<link href="' + u + '" rel="stylesheet" type="text/css" />');\r
-               }\r
-       </script>\r
-</head>\r
-<body id="mceTemplatePreview" class="mceContentBody">\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/css/template.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/css/template.css
deleted file mode 100644 (file)
index 2d23a49..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-#frmbody {\r
-       padding: 10px;\r
-       background-color: #FFF;\r
-       border: 1px solid #CCC;\r
-}\r
-\r
-.frmRow {\r
-       margin-bottom: 10px;\r
-}\r
-\r
-#templatesrc {\r
-       border: none;\r
-       width: 320px;\r
-       height: 240px;\r
-}\r
-\r
-.title {\r
-       padding-bottom: 5px;\r
-}\r
-\r
-.mceActionPanel {\r
-       padding-top: 5px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js
deleted file mode 100644 (file)
index 7621af3..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('template');var TinyMCE_TemplatePlugin={getInfo:function(){return{longname:'Template plugin',author:'Moxiecode Systems AB',authorurl:'http://www.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/template',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){var cdate,mdate,content,x=0,key,value,rvals,ds=inst.getData('template');cdate=tinyMCE.getParam("template_cdate_classes",'').split(/\s+/);mdate=tinyMCE.getParam("template_mdate_classes",'').split(/\s+/);content=tinyMCE.getParam("template_selected_content_classes",'').split(/\s+/);for(x=0;x<cdate.length;x++)TinyMCE_TemplatePlugin.functions[cdate[x]]=TinyMCE_TemplatePlugin.functions['cdate'];for(x=0;x<mdate.length;x++)TinyMCE_TemplatePlugin.functions[mdate[x]]=TinyMCE_TemplatePlugin.functions['mdate'];for(x=0;x<content.length;x++)TinyMCE_TemplatePlugin.functions[content[x]]=TinyMCE_TemplatePlugin.functions['selectedContent'];rvals=tinyMCE.getParam("template_replace_values",false);for(key in rvals){value=rvals[key];if(typeof value=="function")TinyMCE_TemplatePlugin.functions[key]=value;else TinyMCE_TemplatePlugin.functions[key]=TinyMCE_TemplatePlugin.functions['generateReplacer'](value)}rvals=tinyMCE.getParam("template_replace_values",false);ds.replace_items={};for(key in rvals)ds.replace_items[key]=rvals[key];inst.addShortcut('ctrl','t','lang_template_desc','mceTemplate');ds.currentAction="insert";ds.currentTmplNode=null},getControlHTML:function(cn){switch(cn){case"template":return tinyMCE.getButtonHTML(cn,'lang_template_desc','{$pluginurl}/images/template.gif','mceTemplate',true)}return""},execCommand:function(editor_id,element,command,user_interface,value){var nodeArray,current,newTmpl,x,inst=tinyMCE.getInstanceById(editor_id),ds=inst.getData('template'),telm;switch(command){case"mceTemplate":if(user_interface){tinyMCE.openWindow({file:'../../plugins/template/template.htm',width:tinyMCE.getParam('template_popup_width',750),height:tinyMCE.getParam('template_popup_height',600)},{editor_id:editor_id,resizable:"yes",scrollbars:"no",pluginObj:TinyMCE_TemplatePlugin})}else{telm=TinyMCE_TemplatePlugin._convertToNode(value.body);nodeArray=tinyMCE.selectElements(telm,'div',function(n){return tinyMCE.hasCSSClass(n,TinyMCE_TemplatePlugin.TMPL)});telm=nodeArray.length>0?nodeArray[0]:null;nodeArray=[];if(ds.currentAction=="insert"){if(telm){tinyMCE.execCommand('mceBeginUndoLevel');ds.currentAction="insert-new";TinyMCE_TemplatePlugin._insertTemplate(editor_id,telm,value.title,value.tsrc,true);ds.currentAction=="insert";tinyMCE.execCommand('mceEndUndoLevel');tinyMCE.execInstanceCommand(editor_id,'mceCleanup',false)}else tinyMCE.execCommand('mceInsertContent',false,this._replaceValues(value.body))}else{nodeArray=TinyMCE_TemplatePlugin._collectTemplateElements(ds.currentTmplNode);current=[];newTmpl=[];tinyMCE.getNodeTree(telm,newTmpl);for(x=0;x<nodeArray.length;x++)tinyMCE.getNodeTree(nodeArray[x],current);var _test=function(elm){var replaced=true;if(elm.className){var names=elm.className.split(/\s+/),c,n;for(c=0;c<names.length;c++){if(names[c].match(/^mce/i))continue;for(n=0;n<newTmpl.length;n++){replaced=false;if(newTmpl[n].className&&newTmpl[n].className.match(new RegExp(names[c],"gi"))){newTmpl[n].innerHTML=elm.innerHTML;replaced=true;break}}}}return replaced};var cont=true;var asked=false;for(x=0;x<current.length;x++){if(!_test(current[x])){cont=(asked||confirm("The new template has less elements than the currently selected content.\nIf you proceed you will loose content.\nAre you sure you want to proceed?","Proceed?"));asked=true;if(!cont)break}};if(cont){tinyMCE.execCommand('mceBeginUndoLevel');TinyMCE_TemplatePlugin._replaceTemplateContent(current[0],editor_id,telm,value.title,value.tsrc);tinyMCE.execCommand('mceEndUndoLevel');tinyMCE.execInstanceCommand(editor_id,'mceCleanup',false)}}tinyMCE.triggerNodeChange(true)}return true}return false},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){var inst=tinyMCE.getInstanceById(editor_id),ds=inst.getData('template');if(tinyMCE.hasCSSClass(node,TinyMCE_TemplatePlugin.TMPL_ELEMENT)||tinyMCE.hasCSSClass(node.parentNode,TinyMCE_TemplatePlugin.TMPL_ELEMENT)){tinyMCE.switchClass(editor_id+'_template','mceButtonSelected');ds.currentAction="update";ds.currentTmplNode=node;return true}ds.currentAction="insert";ds.currentTmplNode=null;tinyMCE.switchClass(editor_id+'_template','mceButtonNormal');return false},cleanup:function(type,content,inst){var nodes=[];switch(type){case"get_from_editor":content=content.replace(new RegExp('<div class="'+TinyMCE_TemplatePlugin.TMPL+'">','gi'),'<!-- '+TinyMCE_TemplatePlugin.TMPL_BEGINS+' -->');content=content.replace(new RegExp('<div class="'+TinyMCE_TemplatePlugin.TMPL+'">(\s|&nbsp;|&#160;)?(<!-- '+TinyMCE_TemplatePlugin.TMPL_ENDS+' -->|\s)?</div>','gi'),'');content=content.replace(new RegExp('<!-- '+TinyMCE_TemplatePlugin.TMPL_ENDS+' --></div>','gi'),'<!-- '+TinyMCE_TemplatePlugin.TMPL_ENDS+' -->');break;case"insert_to_editor":content=content.replace(new RegExp('<!-- '+TinyMCE_TemplatePlugin.TMPL_BEGINS+' -->','gi'),'<div class="'+TinyMCE_TemplatePlugin.TMPL+'">');content=content.replace(new RegExp('<!-- '+TinyMCE_TemplatePlugin.TMPL_ENDS+' -->','gi'),'<!-- '+TinyMCE_TemplatePlugin.TMPL_ENDS+' --></div>');break;case"get_from_editor_dom":nodes=tinyMCE.selectNodes(content,function(n){return tinyMCE.hasCSSClass(n,TinyMCE_TemplatePlugin.TMPL_ELEMENT)});TinyMCE_TemplatePlugin._applyFunctions(nodes,type);break;case"insert_to_editor_dom":nodes=tinyMCE.selectNodes(content,function(n){return tinyMCE.hasCSSClass(n,TinyMCE_TemplatePlugin.TMPL_ELEMENT)});TinyMCE_TemplatePlugin._applyFunctions(nodes,type);break}return content},_convertToNode:function(html){var elm=document.createElement('div');elm.innerHTML=html;return elm},_prepareTemplateContent:function(elms){var x,n,nodes=[];if(!elms)return{};if(!elms.length)elms=[elms];for(x=0;x<elms.length;x++)tinyMCE.getNodeTree(elms[x],nodes,1);for(n=0;n<nodes.length;n++){tinyMCE.addCSSClass(nodes[n],TinyMCE_TemplatePlugin.TMPL_ELEMENT);TinyMCE_TemplatePlugin._applyFunctions(nodes[n],TinyMCE_TemplatePlugin.TMPL_TEMPLATE_EVENT)}return elms},_replaceValues:function(s){var t=this,ds=tinyMCE.selectedInstance.getData('template');return s.replace(/\{\$([^\}]+)\}/g,function(a,b){var it=ds.replace_items[b];if(it){if(typeof(it)!='function')return it}return b})},_applyFunctions:function(elms,editor_event){var x,elm,names,c,f;if(!elms)return{};if(!elms.length)elms=[elms];for(x=0;x<elms.length;x++){elm=elms[x];if(elm.className){names=elm.className.split(/\s+/);for(c=0;c<names.length;c++){if(names[c]==TinyMCE_TemplatePlugin.TMPL_ELEMENT)continue;f=(TinyMCE_TemplatePlugin.functions[names[c]]?TinyMCE_TemplatePlugin.functions[names[c]]:TinyMCE_TemplatePlugin.functions['blank']);f(elm,editor_event)}}}return elms},_collectTemplateElements:function(node){var nodeArray=[],p;p=tinyMCE.getParentElement(node,'DIV',function(n){return tinyMCE.hasCSSClass(n,TinyMCE_TemplatePlugin.TMPL)});if(p)tinyMCE.getNodeTree(p,nodeArray);return nodeArray},_replaceTemplateContent:function(currentNode,editor_id,newTemplate,title,tsrc){TinyMCE_TemplatePlugin._deleteTemplateContent(currentNode);TinyMCE_TemplatePlugin._insertTemplate(editor_id,newTemplate,title,tsrc,false)},_deleteTemplateContent:function(node){var p=tinyMCE.getParentElement(node,'DIV',function(n){return tinyMCE.hasCSSClass(n,TinyMCE_TemplatePlugin.TMPL)});if(p)p.parentNode.removeChild(p,true)},_insertTemplate:function(editor_id,elm,title,tsrc,incComments){var html;TinyMCE_TemplatePlugin._prepareTemplateContent(elm);html='<div class="'+TinyMCE_TemplatePlugin.TMPL+'">';html+=elm.innerHTML;html+='<!-- '+TinyMCE_TemplatePlugin.TMPL_ENDS+' --></div>';tinyMCE.execInstanceCommand(editor_id,'mceInsertContent',false,html)},functions:{blank:function(elm,editor_event){},cdate:function(elm,editor_event){var d,dsrc;if(editor_event!=TinyMCE_TemplatePlugin.TMPL_TEMPLATE_EVENT)return;d=new Date();dsrc=elm.innerHTML.match(new RegExp("<!-- "+TinyMCE_TemplatePlugin.TMPL_DATE_SRC_ATTR+":(.*)  -->","gi"));if(dsrc)d=new Date(RegExp.$1);elm.innerHTML=TinyMCE_TemplatePlugin._getDateTime(d,tinyMCE.getParam("template_cdate_format",tinyMCE.getLang("lang_template_def_date_format")));elm.innerHTML+="<!-- "+TinyMCE_TemplatePlugin.TMPL_DATE_SRC_ATTR+":"+d.toUTCString()+"  -->"},mdate:function(elm,editor_event){var d=new Date();elm.innerHTML=TinyMCE_TemplatePlugin._getDateTime(d,tinyMCE.getParam("template_mdate_format",tinyMCE.getLang("lang_template_def_date_format")))},selectedContent:function(elm,editor_event){var ds=tinyMCE.selectedInstance.getData('template');if(editor_event!=TinyMCE_TemplatePlugin.TMPL_TEMPLATE_EVENT)return;if(ds.currentAction=="insert-new"&&!tinyMCE.hasCSSClass(elm,TinyMCE_TemplatePlugin.TMPL_SEL_HTML_DONE)){elm.innerHTML=tinyMCE.selectedInstance.selection.getSelectedHTML();tinyMCE.addCSSClass(elm,TinyMCE_TemplatePlugin.TMPL_SEL_HTML_DONE)}},generateReplacer:function(s){return function(elm,editor_event){elm.innerHTML=""+s}}},_getDateTime:function(d,fmt){if(!fmt)return"";function addZeros(value,len){var i;value=""+value;if(value.length<len){for(i=0;i<(len-value.length);i++)value="0"+value}return value}fmt=fmt.replace("%D","%m/%d/%y");fmt=fmt.replace("%r","%I:%M:%S %p");fmt=fmt.replace("%Y",""+d.getFullYear());fmt=fmt.replace("%y",""+d.getYear());fmt=fmt.replace("%m",addZeros(d.getMonth()+1,2));fmt=fmt.replace("%d",addZeros(d.getDate(),2));fmt=fmt.replace("%H",""+addZeros(d.getHours(),2));fmt=fmt.replace("%M",""+addZeros(d.getMinutes(),2));fmt=fmt.replace("%S",""+addZeros(d.getSeconds(),2));fmt=fmt.replace("%I",""+((d.getHours()+11)%12+1));fmt=fmt.replace("%p",""+(d.getHours()<12?"AM":"PM"));fmt=fmt.replace("%B",""+tinyMCE.getLang("lang_template_months_long")[d.getMonth()]);fmt=fmt.replace("%b",""+tinyMCE.getLang("lang_template_months_short")[d.getMonth()]);fmt=fmt.replace("%A",""+tinyMCE.getLang("lang_template_day_long")[d.getDay()]);fmt=fmt.replace("%a",""+tinyMCE.getLang("lang_template_day_short")[d.getDay()]);fmt=fmt.replace("%%","%");return fmt},TMPL_ELEMENT:'mceTmplElm',TMPL:'mceTmpl',TMPL_BEGINS:'mceTmplBegins',TMPL_SEL_HTML_DONE:'mceSelHTMLDone',TMPL_ENDS:'mceTmplEnds',TMPL_DATE_SRC_ATTR:'mcetmpldtesrc',TMPL_TEMPLATE_EVENT:'prepare_template'};tinyMCE.addPlugin("template",TinyMCE_TemplatePlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js
deleted file mode 100644 (file)
index 8daddd9..0000000
+++ /dev/null
@@ -1,551 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 162 2007-01-03 16:16:52Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-tinyMCE.importPluginLanguagePack('template');\r
-\r
-var TinyMCE_TemplatePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Template plugin',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://www.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/template',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               var cdate, mdate, content, x = 0, key, value, rvals, ds = inst.getData('template');\r
-\r
-               // ensure the required elements and sttributes are added\r
-               //inst.cleanup.addRuleStr('*[' + TinyMCE_TemplatePlugin.TMPL_DATE_SRC_ATTR + '],div[title,tsrc]');\r
-\r
-               //setup template content functions\r
-               // creation date and modified date classes\r
-               cdate = tinyMCE.getParam("template_cdate_classes", '').split(/\s+/);\r
-               mdate = tinyMCE.getParam("template_mdate_classes", '').split(/\s+/);\r
-\r
-               // classes that specify where selected content should go\r
-               content = tinyMCE.getParam("template_selected_content_classes", '').split(/\s+/);\r
-\r
-               for (x = 0; x < cdate.length; x++)\r
-                       TinyMCE_TemplatePlugin.functions[cdate[x]] = TinyMCE_TemplatePlugin.functions['cdate']; \r
-\r
-               for (x = 0; x < mdate.length; x++)\r
-                       TinyMCE_TemplatePlugin.functions[mdate[x]] = TinyMCE_TemplatePlugin.functions['mdate'];\r
-\r
-               for (x = 0; x < content.length; x++)\r
-                       TinyMCE_TemplatePlugin.functions[content[x]] = TinyMCE_TemplatePlugin.functions['selectedContent'];\r
-\r
-               // special template functions for replacing template content\r
-               rvals = tinyMCE.getParam("template_replace_values", false);\r
-               for (key in rvals) {\r
-                       value = rvals[key];\r
-\r
-                       if (typeof value == "function")\r
-                               TinyMCE_TemplatePlugin.functions[key] = value;\r
-                       else\r
-                               TinyMCE_TemplatePlugin.functions[key] = TinyMCE_TemplatePlugin.functions['generateReplacer'](value);\r
-               }\r
-\r
-               // Setup replace_items\r
-               rvals = tinyMCE.getParam("template_replace_values", false);\r
-               ds.replace_items = {};\r
-\r
-               for (key in rvals)\r
-                       ds.replace_items[key] = rvals[key];\r
-\r
-               inst.addShortcut('ctrl', 't', 'lang_template_desc', 'mceTemplate');\r
-\r
-               // Setup data storage\r
-               ds.currentAction = "insert";\r
-               ds.currentTmplNode = null;\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "template":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_template_desc', '{$pluginurl}/images/template.gif', 'mceTemplate', true);\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               var nodeArray, current, newTmpl, x, inst = tinyMCE.getInstanceById(editor_id), ds = inst.getData('template'), telm;\r
-\r
-               switch (command) {\r
-                       case "mceTemplate":\r
-                               if (user_interface) {\r
-                                       // called from toolbar button - show the popup\r
-                                       tinyMCE.openWindow({\r
-                                               file : '../../plugins/template/template.htm', // Relative to theme\r
-                                               width : tinyMCE.getParam('template_popup_width', 750),\r
-                                               height : tinyMCE.getParam('template_popup_height', 600)\r
-                                       }, {editor_id : editor_id, resizable : "yes", scrollbars : "no", pluginObj : TinyMCE_TemplatePlugin});\r
-                               } else {\r
-                                       // internal command do the template stuff\r
-\r
-                                       // get the returned HTML string from the pop-up and appened it to a DIV element\r
-                                       telm = TinyMCE_TemplatePlugin._convertToNode(value.body);\r
-\r
-                                       // Find template body\r
-                                       nodeArray = tinyMCE.selectElements(telm, 'div', function(n) {\r
-                                               return tinyMCE.hasCSSClass(n, TinyMCE_TemplatePlugin.TMPL);\r
-                                       });\r
-\r
-                                       telm = nodeArray.length > 0 ? nodeArray[0] : null;\r
-                                       nodeArray = [];\r
-\r
-                                       if (ds.currentAction == "insert") {\r
-                                               //insert new template after applying all the template content functions\r
-\r
-                                               // Is it a template or snippet\r
-                                               if (telm) {\r
-                                                       tinyMCE.execCommand('mceBeginUndoLevel');\r
-                                                       ds.currentAction = "insert-new";\r
-                                                       TinyMCE_TemplatePlugin._insertTemplate(editor_id, telm, value.title, value.tsrc, true);\r
-                                                       ds.currentAction == "insert";\r
-                                                       tinyMCE.execCommand('mceEndUndoLevel');\r
-                                                       tinyMCE.execInstanceCommand(editor_id, 'mceCleanup', false);\r
-                                               } else\r
-                                                       tinyMCE.execCommand('mceInsertContent', false, this._replaceValues(value.body));\r
-                                       } else {\r
-                                               // First collect the selected template in the editor\r
-                                               nodeArray = TinyMCE_TemplatePlugin._collectTemplateElements(ds.currentTmplNode);\r
-                                               current = [];\r
-                                               newTmpl = [];\r
-                                               tinyMCE.getNodeTree(telm, newTmpl);\r
-\r
-                                               for (x=0; x<nodeArray.length; x++)\r
-                                                       tinyMCE.getNodeTree(nodeArray[x], current);\r
-\r
-                                               /** \r
-                                                * inner function used in the loop below.\r
-                                                * compares the supplied HTML element to the new template to:\r
-                                                * - find a match with the new template and copy the element's content over\r
-                                                * - find no match and indicate content will be lost\r
-                                                */\r
-                                               var _test = function(elm) {\r
-                                                       var replaced = true;\r
-\r
-                                                       if (elm.className) {\r
-                                                               var names = elm.className.split(/\s+/), c, n;\r
-\r
-                                                               for (c = 0; c<names.length; c++) {\r
-                                                                       if (names[c].match(/^mce/i))\r
-                                                                               continue; // ignore all internal class names\r
-\r
-                                                                       for (n=0; n<newTmpl.length; n++){\r
-                                                                               replaced = false;\r
-\r
-                                                                               if (newTmpl[n].className && newTmpl[n].className.match(new RegExp(names[c], "gi"))) {\r
-                                                                                       newTmpl[n].innerHTML = elm.innerHTML;\r
-                                                                                       //if(tinyMCE.getAttrib(elm,TinyMCE_TemplatePlugin.TMPL_DATE_SRC_ATTR,"") != "") {\r
-                                                                                       //      tinyMCE.setAttrib(newTmpl[n], TinyMCE_TemplatePlugin.TMPL_DATE_SRC_ATTR, tinyMCE.getAttrib(elm,TinyMCE_TemplatePlugin.TMPL_DATE_SRC_ATTR)); \r
-                                                                                       //}\r
-                                                                                       replaced = true;\r
-                                                                                       break;\r
-                                                                               }\r
-\r
-                                                                       }\r
-                                                               }\r
-                                                       }\r
-       \r
-                                                       return replaced;\r
-                                               };\r
-\r
-                                               // comparison loop - first mis-match alerts user for confirmation.\r
-                                               var cont = true;\r
-                                               var asked = false;\r
-\r
-                                               for (x = 0; x < current.length; x++) {\r
-                                                       if(!_test(current[x])) {\r
-                                                               cont = (asked || confirm("The new template has less elements than the currently selected content.\nIf you proceed you will loose content.\nAre you sure you want to proceed?", "Proceed?"));\r
-                                                               asked = true;\r
-\r
-                                                               if (!cont)\r
-                                                                       break;\r
-                                                       }\r
-                                               };\r
-\r
-                                               // apply replacement if allowed to\r
-                                               if (cont) {\r
-                                                       tinyMCE.execCommand('mceBeginUndoLevel');\r
-                                                       TinyMCE_TemplatePlugin._replaceTemplateContent(current[0], editor_id, telm, value.title, value.tsrc);\r
-                                                       tinyMCE.execCommand('mceEndUndoLevel');\r
-                                                       tinyMCE.execInstanceCommand(editor_id, 'mceCleanup', false);\r
-                                               }\r
-                                       }\r
-\r
-                                       tinyMCE.triggerNodeChange(true);\r
-                               }\r
-\r
-                               return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
-               var inst = tinyMCE.getInstanceById(editor_id), ds = inst.getData('template');\r
-\r
-               if (tinyMCE.hasCSSClass(node, TinyMCE_TemplatePlugin.TMPL_ELEMENT) || tinyMCE.hasCSSClass(node.parentNode, TinyMCE_TemplatePlugin.TMPL_ELEMENT)) {\r
-                       tinyMCE.switchClass(editor_id + '_template', 'mceButtonSelected');\r
-                       ds.currentAction = "update";\r
-                       ds.currentTmplNode = node;\r
-\r
-                       return true;\r
-               }\r
-\r
-               ds.currentAction = "insert";\r
-               ds.currentTmplNode = null;\r
-               tinyMCE.switchClass(editor_id + '_template', 'mceButtonNormal');\r
-\r
-               return false;\r
-       },\r
-\r
-       cleanup : function(type, content, inst) {\r
-               var nodes = [];\r
-\r
-               switch (type) {\r
-                       case "get_from_editor":\r
-                               // replace the opening wrapper div tag with a HTML comment\r
-                               content = content.replace(\r
-                                       new RegExp('<div class="' + TinyMCE_TemplatePlugin.TMPL + '">', 'gi'),\r
-                                       '<!-- ' + TinyMCE_TemplatePlugin.TMPL_BEGINS + ' -->'\r
-                               );\r
-\r
-                               // delete any empty template wrappers\r
-                               content = content.replace(\r
-                                       new RegExp('<div class="' + TinyMCE_TemplatePlugin.TMPL + '">(\s|&nbsp;|&#160;)?(<!-- ' + TinyMCE_TemplatePlugin.TMPL_ENDS + ' -->|\s)?</div>', 'gi'),\r
-                                       ''\r
-                               );\r
-\r
-                               // replace the closing wrapper tag\r
-                               content = content.replace(\r
-                                       new RegExp('<!-- ' + TinyMCE_TemplatePlugin.TMPL_ENDS + ' --></div>', 'gi'),\r
-                                       '<!-- ' + TinyMCE_TemplatePlugin.TMPL_ENDS + ' -->'\r
-                               );\r
-\r
-                               break;\r
-\r
-                       case "insert_to_editor":\r
-                               // replace HTML comment with DIV wrapper\r
-                               content = content.replace(\r
-                                       new RegExp('<!-- ' + TinyMCE_TemplatePlugin.TMPL_BEGINS + ' -->', 'gi'),\r
-                                       '<div class="' + TinyMCE_TemplatePlugin.TMPL + '">'\r
-                               );\r
-\r
-                               content = content.replace(\r
-                                       new RegExp('<!-- ' + TinyMCE_TemplatePlugin.TMPL_ENDS + ' -->', 'gi'),\r
-                                       '<!-- ' + TinyMCE_TemplatePlugin.TMPL_ENDS + ' --></div>'\r
-                               );\r
-\r
-                               break;\r
-\r
-                       case "get_from_editor_dom":\r
-                               // apply template content replacement functions\r
-                               nodes = tinyMCE.selectNodes(content, function(n) {\r
-                                               return tinyMCE.hasCSSClass(n, TinyMCE_TemplatePlugin.TMPL_ELEMENT);\r
-                                       }\r
-                               );\r
-\r
-                               TinyMCE_TemplatePlugin._applyFunctions(nodes, type);\r
-\r
-                               break;\r
-\r
-                       case "insert_to_editor_dom":\r
-                               // apply template content replacement functions\r
-                               nodes = tinyMCE.selectNodes(content, function(n) {\r
-                                               return tinyMCE.hasCSSClass(n, TinyMCE_TemplatePlugin.TMPL_ELEMENT);\r
-                                       }\r
-                               );\r
-\r
-                               TinyMCE_TemplatePlugin._applyFunctions(nodes, type);\r
-\r
-                               break;\r
-               }\r
-\r
-               return content;\r
-       },\r
-\r
-       // Private plugin internal methods\r
-\r
-       /**\r
-        * Creates a HTML DIV element and sets the innerHTML to equal the temlate innerHTML so that the template can be manipulated as DOM nodes.\r
-        *\r
-        * @param {string} Template innerHTML\r
-        * @return a HTML Element\r
-        * @type HTMLElement\r
-        */\r
-       _convertToNode : function(html) {\r
-               var elm = document.createElement('div');\r
-\r
-               elm.innerHTML = html;\r
-\r
-               return elm;\r
-       },\r
-\r
-       /**\r
-        * pass an array of template html elements and they will have the template class name added and any template functions applied\r
-        *\r
-        * @param {array} template HTML elements\r
-        * @return array of template HTML elements\r
-        * @type array\r
-        */\r
-       _prepareTemplateContent : function(elms) {\r
-               var x, n, nodes = [];\r
-\r
-               if (!elms)\r
-                       return {};\r
-\r
-               if (!elms.length)\r
-                       elms = [elms];\r
-\r
-               for (x = 0; x<elms.length; x++)\r
-                       tinyMCE.getNodeTree(elms[x], nodes, 1);\r
-\r
-               for (n = 0; n<nodes.length; n++) {\r
-                       tinyMCE.addCSSClass(nodes[n], TinyMCE_TemplatePlugin.TMPL_ELEMENT);\r
-                       TinyMCE_TemplatePlugin._applyFunctions(nodes[n], TinyMCE_TemplatePlugin.TMPL_TEMPLATE_EVENT);\r
-               }\r
-\r
-               return elms;\r
-       },\r
-\r
-       _replaceValues : function(s) {\r
-               var t = this, ds = tinyMCE.selectedInstance.getData('template');\r
-\r
-               return s.replace(/\{\$([^\}]+)\}/g, function(a, b) {\r
-                       var it = ds.replace_items[b];\r
-\r
-                       if (it) {\r
-                               // Only supports text for now\r
-                               if (typeof(it) != 'function')\r
-                                       return it;\r
-                       }\r
-\r
-                       return b;\r
-               });\r
-       },\r
-\r
-       /**\r
-        * Applies any special functions to the template elements\r
-        *\r
-        * @param {array} template HTML elements\r
-        * @return array of template HTML elements\r
-        * @type array\r
-        */\r
-       _applyFunctions : function(elms, editor_event) {\r
-               var x, elm, names, c, f;\r
-\r
-               if (!elms)\r
-                       return {};\r
-\r
-               if (!elms.length)\r
-                       elms = [elms];\r
-\r
-               for(x = 0; x < elms.length; x++) {\r
-                       elm = elms[x];\r
-\r
-                       if (elm.className){\r
-                               names = elm.className.split(/\s+/);\r
-\r
-                               for (c = 0; c < names.length; c++){\r
-                                       if (names[c] == TinyMCE_TemplatePlugin.TMPL_ELEMENT)\r
-                                               continue;\r
-\r
-                                       f = (TinyMCE_TemplatePlugin.functions[names[c]] ? TinyMCE_TemplatePlugin.functions[names[c]] : TinyMCE_TemplatePlugin.functions['blank']);\r
-                                       f(elm, editor_event);\r
-                               }\r
-                       }\r
-               }\r
-\r
-               return elms;\r
-       },\r
-\r
-       /**\r
-        * Given one node reference this function will collect all the nodes of the template to which it belongs.\r
-        * It does this by finding the parent template wrapper DIV and returning all child nodes.\r
-        *\r
-        * @param {HTMLElement} a HTMLElement which is part of a template\r
-        * @return array of template HTML elements\r
-        * @type array\r
-        */\r
-       _collectTemplateElements : function(node) {\r
-               var nodeArray = [], p;\r
-\r
-               p = tinyMCE.getParentElement(node, 'DIV', function(n) {\r
-                       return tinyMCE.hasCSSClass(n, TinyMCE_TemplatePlugin.TMPL);\r
-               });\r
-\r
-               if (p)\r
-                       tinyMCE.getNodeTree(p, nodeArray);\r
-\r
-               return nodeArray;\r
-       },\r
-\r
-       /**\r
-        * Simply calls TinyMCE_TemplatePlugin._deleteTemplateContent and then TinyMCE_TemplatePlugin._insertTemplate\r
-        *\r
-        * @param {HTMLElement} currently selected template node in editor\r
-        * @param {string} id of editor instance\r
-        * @param {HTMLElement} template contents as a HTMLElement (the parent DIV wrapper)\r
-        * @param {string} title of template (unused as yet)\r
-        * @param {string} source URI of the template file (unused as yet)\r
-        * @return array of template HTML elements\r
-        * @type array\r
-        */\r
-       _replaceTemplateContent : function(currentNode, editor_id, newTemplate, title, tsrc) {\r
-               TinyMCE_TemplatePlugin._deleteTemplateContent(currentNode);\r
-               TinyMCE_TemplatePlugin._insertTemplate(editor_id, newTemplate, title, tsrc, false);\r
-       },\r
-\r
-       /**\r
-        * Deletes a template from the editor content\r
-        * Finds the parent DIV wrapper and deletes it and all children\r
-        * @param {HTMLElement} currently selected template node in editor\r
-        */\r
-       _deleteTemplateContent : function(node) {\r
-               var p = tinyMCE.getParentElement(node, 'DIV', function(n) {\r
-                       return tinyMCE.hasCSSClass(n, TinyMCE_TemplatePlugin.TMPL);\r
-               });\r
-\r
-               if (p)\r
-                       p.parentNode.removeChild(p, true);\r
-       },\r
-\r
-       /**\r
-        *  Inserts a template into the specified editor\r
-        *\r
-        * @param {string} id of editor instance\r
-        * @param {HTMLElement} template contents as a HTMLElement (the parent DIV wrapper)\r
-        * @param {string} title of template (unused as yet)\r
-        * @param {string} source URI of the template file (unused as yet)\r
-        */\r
-       _insertTemplate : function(editor_id, elm, title, tsrc, incComments) {\r
-               var html;\r
-\r
-               TinyMCE_TemplatePlugin._prepareTemplateContent(elm);\r
-\r
-               html = '<div class="' + TinyMCE_TemplatePlugin.TMPL + '">';\r
-               html += elm.innerHTML;\r
-               html += '<!-- ' + TinyMCE_TemplatePlugin.TMPL_ENDS + ' --></div>';\r
-\r
-               tinyMCE.execInstanceCommand(editor_id, 'mceInsertContent', false, html);\r
-       },\r
-\r
-       /**\r
-        * template functions - functions for modifying template content\r
-        */\r
-       functions : { \r
-               blank : function(elm, editor_event) {},\r
-\r
-               cdate : function(elm, editor_event) {\r
-                       var d, dsrc;\r
-\r
-                       if (editor_event != TinyMCE_TemplatePlugin.TMPL_TEMPLATE_EVENT)\r
-                               return;\r
-\r
-                       d = new Date();\r
-                       // find out if the creation date was previously stored\r
-                       dsrc = elm.innerHTML.match(new RegExp("<!-- " + TinyMCE_TemplatePlugin.TMPL_DATE_SRC_ATTR + ":(.*)  -->", "gi"));\r
-\r
-                       if (dsrc)\r
-                               d = new Date(RegExp.$1);\r
-\r
-                       elm.innerHTML = TinyMCE_TemplatePlugin._getDateTime(d, tinyMCE.getParam("template_cdate_format", tinyMCE.getLang("lang_template_def_date_format")));\r
-                       //now we have to store the date value in a format easily read again, in case a future template change changes the date format...\r
-                       elm.innerHTML += "<!-- " + TinyMCE_TemplatePlugin.TMPL_DATE_SRC_ATTR + ":" + d.toUTCString() + "  -->";\r
-               },\r
-\r
-               mdate : function(elm, editor_event) {\r
-                       var d = new Date();\r
-                       elm.innerHTML = TinyMCE_TemplatePlugin._getDateTime(d, tinyMCE.getParam("template_mdate_format", tinyMCE.getLang("lang_template_def_date_format")));\r
-               },\r
-\r
-               /**\r
-                * This will insert the currently selected editor content into the template element.\r
-                * It only does this if the template inserted is a new one and if the element does not have the special class.\r
-                * The special class name prevents this from happening more than once.\r
-                */\r
-               selectedContent : function(elm, editor_event) {\r
-                       var ds = tinyMCE.selectedInstance.getData('template');\r
-       \r
-                       if (editor_event != TinyMCE_TemplatePlugin.TMPL_TEMPLATE_EVENT)\r
-                               return;\r
-\r
-                       if (ds.currentAction == "insert-new" && !tinyMCE.hasCSSClass(elm, TinyMCE_TemplatePlugin.TMPL_SEL_HTML_DONE)) {\r
-                               elm.innerHTML = tinyMCE.selectedInstance.selection.getSelectedHTML();\r
-                               tinyMCE.addCSSClass(elm, TinyMCE_TemplatePlugin.TMPL_SEL_HTML_DONE);\r
-                       }\r
-               },\r
-\r
-               /**\r
-                * When the plugin is initialised this generates the functions that insert configured strings into template elements.\r
-                */\r
-               generateReplacer : function(s) {\r
-                       return function(elm, editor_event) {elm.innerHTML = "" + s;};\r
-               }\r
-       },\r
-\r
-       /**\r
-        * formats a date according to the format string - straight from the 'insert date/time' plugin\r
-        *\r
-        * @param {Date} date object\r
-        * @param {string} format string\r
-        * @return formatted date\r
-        * @type string\r
-        */\r
-       _getDateTime : function(d,fmt) {\r
-                       if (!fmt)\r
-                               return "";\r
-\r
-                       function addZeros(value, len) {\r
-                               var i;\r
-\r
-                               value = "" + value;\r
-\r
-                               if (value.length < len) {\r
-                                       for (i=0; i<(len-value.length); i++)\r
-                                               value = "0" + value;\r
-                               }\r
-\r
-                               return value;\r
-                       }\r
-\r
-                       fmt = fmt.replace("%D", "%m/%d/%y");\r
-                       fmt = fmt.replace("%r", "%I:%M:%S %p");\r
-                       fmt = fmt.replace("%Y", "" + d.getFullYear());\r
-                       fmt = fmt.replace("%y", "" + d.getYear());\r
-                       fmt = fmt.replace("%m", addZeros(d.getMonth()+1, 2));\r
-                       fmt = fmt.replace("%d", addZeros(d.getDate(), 2));\r
-                       fmt = fmt.replace("%H", "" + addZeros(d.getHours(), 2));\r
-                       fmt = fmt.replace("%M", "" + addZeros(d.getMinutes(), 2));\r
-                       fmt = fmt.replace("%S", "" + addZeros(d.getSeconds(), 2));\r
-                       fmt = fmt.replace("%I", "" + ((d.getHours() + 11) % 12 + 1));\r
-                       fmt = fmt.replace("%p", "" + (d.getHours() < 12 ? "AM" : "PM"));\r
-                       fmt = fmt.replace("%B", "" + tinyMCE.getLang("lang_template_months_long")[d.getMonth()]);\r
-                       fmt = fmt.replace("%b", "" + tinyMCE.getLang("lang_template_months_short")[d.getMonth()]);\r
-                       fmt = fmt.replace("%A", "" + tinyMCE.getLang("lang_template_day_long")[d.getDay()]);\r
-                       fmt = fmt.replace("%a", "" + tinyMCE.getLang("lang_template_day_short")[d.getDay()]);\r
-                       fmt = fmt.replace("%%", "%");\r
-\r
-                       return fmt;\r
-       },\r
-\r
-       TMPL_ELEMENT : 'mceTmplElm',\r
-       TMPL : 'mceTmpl',\r
-       TMPL_BEGINS : 'mceTmplBegins',\r
-       TMPL_SEL_HTML_DONE : 'mceSelHTMLDone',\r
-       TMPL_ENDS : 'mceTmplEnds',\r
-       TMPL_DATE_SRC_ATTR : 'mcetmpldtesrc',\r
-       TMPL_TEMPLATE_EVENT : 'prepare_template'\r
-};\r
-\r
-tinyMCE.addPlugin("template", TinyMCE_TemplatePlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/images/template.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/images/template.gif
deleted file mode 100644 (file)
index 58c6610..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/images/template.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/jscripts/template.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/jscripts/template.js
deleted file mode 100644 (file)
index 4c95927..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-// Import external list url javascript\r
-var url = tinyMCE.getParam("template_external_list_url");\r
-if (url != null) {\r
-       // Fix relative\r
-       if (url.charAt(0) != '/' && url.indexOf('://') == -1)\r
-               url = tinyMCE.documentBasePath + "/" + url;\r
-\r
-       document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '"></sc'+'ript>');\r
-}\r
-\r
-var TPU = { //Template Popup Utils\r
-       currentTemplateHTML : null,\r
-       templates : [],\r
-       inst : tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id')),\r
-       plugin : tinyMCE.getWindowArg('pluginObj'),\r
-       data : tinyMCE.selectedInstance.getData('template'),\r
-\r
-       init : function() {\r
-               document.forms[0].insert.value = tinyMCE.getLang('lang_' + this.data.currentAction, 'Insert', true); \r
-               TPU.loadTemplatePaths();\r
-\r
-               if (this.data.currentAction == "update")\r
-                       document.getElementById('warning').innerHTML = tinyMCE.getLang('lang_template_warning');\r
-\r
-               this.resizeInputs();\r
-       },\r
-\r
-       loadTemplatePaths : function() {\r
-               var tsrc, sel, x, u;\r
-\r
-               tsrc = tinyMCE.getParam("template_templates", false);\r
-               sel = document.getElementById('tpath');\r
-\r
-               // Setup external template list\r
-               if (!tsrc && typeof(tinyMCETemplateList) != 'undefined') {\r
-                       for (x=0, tsrc = []; x<tinyMCETemplateList.length; x++)\r
-                               tsrc.push({title : tinyMCETemplateList[x][0], src : tinyMCETemplateList[x][1], description : tinyMCETemplateList[x][2]});\r
-               }\r
-\r
-               for (x=0; x<tsrc.length; x++) {\r
-                       u = tsrc[x].src;\r
-\r
-                       // Force absolute\r
-                       if (u.indexOf('://') == -1 && u.indexOf('/') != 0)\r
-                               u = tinyMCE.documentBasePath + "/" + u;\r
-\r
-                       tsrc[x].src = u;\r
-               }\r
-\r
-               TPU.templates = tsrc;\r
-\r
-               for (x = 0; x < tsrc.length; x++)\r
-                       sel.options[sel.options.length] = new Option(tsrc[x].title, tsrc[x].src);\r
-       },\r
-\r
-       selectTemplate : function(o) {\r
-               var x, d = window.frames['templatesrc'].document;\r
-\r
-               this.currentTemplateHTML = this.plugin._replaceValues(this.getFileContents(o.value));\r
-\r
-               // Force complete document\r
-/*             if (!/<body/gi.test(this.currentTemplateHTML)) {\r
-                       this.currentTemplateHTML = '<html xmlns="http://www.w3.org/1999/xhtml">' + \r
-                               '<head>' + \r
-                                       '<title>blank_page</title>' + \r
-                                       '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />' + \r
-                               '</head>' + \r
-                               '<body>' + \r
-                               this.currentTemplateHTML + \r
-                               '</body>' + \r
-                               '</html>';\r
-               }*/\r
-\r
-               // Write HTML to preview iframe\r
-               d.body.innerHTML = this.currentTemplateHTML;\r
-\r
-               // Display description\r
-               for (x = 0; x < TPU.templates.length; x++) {\r
-                       if (TPU.templates[x].src == o.value) {\r
-                               document.getElementById('tmpldesc').innerHTML = TPU.templates[x].description;\r
-                               break;\r
-                       }\r
-               }\r
-       },\r
-\r
-       insertTemplate : function() {\r
-               var sel, opt;\r
-\r
-               sel = document.getElementById('tpath');\r
-               opt = sel.options[sel.selectedIndex];\r
-\r
-               // Is it a template or snippet\r
-               if (TPU.currentTemplateHTML.indexOf('mceTmpl'))\r
-                       tinyMCEPopup.execCommand('mceTemplate', false, {title : opt.text, tsrc : opt.value, body : TPU.currentTemplateHTML});\r
-               else\r
-                       tinyMCEPopup.execCommand('mceInsertContent', false, TPU.currentTemplateHTML);\r
-\r
-               tinyMCEPopup.close();\r
-       },\r
-\r
-       getFileContents : function(u) {\r
-               var x, d, t = 'text/plain';\r
-\r
-               function g(s) {\r
-                       x = 0;\r
-\r
-                       try {\r
-                               x = new ActiveXObject(s);\r
-                       } catch (s) {\r
-                       }\r
-\r
-                       return x;\r
-               };\r
-\r
-               x = window.ActiveXObject ? g('Msxml2.XMLHTTP') || g('Microsoft.XMLHTTP') : new XMLHttpRequest();\r
-\r
-               // Synchronous AJAX load file\r
-               x.overrideMimeType && x.overrideMimeType(t);\r
-               x.open("GET", u, false);\r
-               x.send(null);\r
-\r
-               return x.responseText;\r
-       },\r
-\r
-       resizeInputs : function() {\r
-               var wHeight, wWidth, elm;\r
-\r
-               if (!self.innerWidth) {\r
-                       wHeight = document.body.clientHeight - 160;\r
-                       wWidth = document.body.clientWidth - 40;\r
-               } else {\r
-                       wHeight = self.innerHeight - 160;\r
-                       wWidth = self.innerWidth - 40;\r
-               }\r
-\r
-               elm = document.getElementById('templatesrc');\r
-\r
-               if (elm) {\r
-                       elm.style.height = Math.abs(wHeight) + 'px';\r
-                       elm.style.width  = Math.abs(wWidth - 5) + 'px';\r
-               }\r
-       }\r
-};\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/langs/en.js
deleted file mode 100644 (file)
index bdbf3ff..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('template',{\r
-title : 'Templates',\r
-label : 'Template',\r
-desc_label : 'Description',\r
-desc : 'Insert predefined template content',\r
-select : 'Select a template',\r
-preview : 'Preview',\r
-warning : 'Warning: Updating a template with a different one may cause data loss.',\r
-def_date_format : '%Y-%m-%d %H:%M:%S',\r
-months_long : new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"),\r
-months_short : new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"),\r
-day_long : new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"),\r
-day_short : new Array("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun")\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/template.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/template/template.htm
deleted file mode 100644 (file)
index 1e4a98a..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_template_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/template.js"></script>\r
-       <link href="css/template.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('TPU.init();');" onresize="TPU.resizeInputs();"> \r
-       <form onsubmit="insert();return false;">\r
-               <div id="frmbody">\r
-                       <div class="title">{$lang_template_desc}</div>\r
-                       <div class="frmRow"><label for="tpath" title="{$lang_template_select}">{$lang_template_label}:</label>\r
-                       <select id="tpath" name="tpath" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="TPU.selectTemplate(this.options[this.selectedIndex]);">\r
-                               <option value="">{$lang_template_select}...</option>\r
-                       </select>\r
-                       <span id="warning"></span></div>\r
-                       <div class="frmRow"><label for="tdesc">{$lang_template_desc_label}:</label>\r
-                       <span id="tmpldesc"></span></div>\r
-                       <fieldset>\r
-                               <legend>{$lang_template_preview}</legend>\r
-                               <iframe id="templatesrc" name="templatesrc" src="blank.htm" width="690" height="400" frameborder="0"></iframe>\r
-                       </fieldset>\r
-               </div>\r
-               \r
-               <div class="mceActionPanel">\r
-                       <div style="float: left">\r
-                               <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="TPU.insertTemplate();" />\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-                       </div>\r
-               </div>\r
-       </form>\r
-</body> \r
-</html> \r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin.js
deleted file mode 100644 (file)
index a358754..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('visualchars');var TinyMCE_VisualCharsPlugin={getInfo:function(){return{longname:'Visual characters',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/visualchars',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){inst.visualChars={state:false}},getControlHTML:function(cn){switch(cn){case"visualchars":return tinyMCE.getButtonHTML(cn,'lang_visualchars_desc','{$pluginurl}/images/visualchars.gif','mceVisualChars',false)}return""},execCommand:function(editor_id,element,command,user_interface,value){var inst=tinyMCE.getInstanceById(editor_id);switch(command){case"mceVisualChars":this._toggleVisualChars(editor_id,inst);return true}return false},cleanup:function(type,content,inst){if(type=="insert_to_editor_dom"||type=="get_from_editor_dom"){inst.visualChars.state=true;this._toggleVisualChars(inst.editorId,inst)}return content},_toggleVisualChars:function(editor_id,inst){var nl,i,h,d=inst.getDoc(),b=inst.getBody(),nv,s=inst.selection,bo;inst.visualChars.state=!inst.visualChars.state;bo=s.getBookmark(true);tinyMCE.switchClass(editor_id+'_visualchars',inst.visualChars.state?'mceButtonSelected':'mceButtonNormal');if(inst.visualChars.state){nl=tinyMCE.selectNodes(b,function(n){return n.nodeType==3&&n.nodeValue&&n.nodeValue.indexOf('\u00a0')!=-1});for(i=0;i<nl.length;i++){nv=nl[i].nodeValue;nv=nv.replace(/(\u00a0+)/g,'<span class="mceItemHiddenVisualChar">$1</span>');nv=nv.replace(/\u00a0/g,'\u00b7');tinyMCE.setOuterHTML(nl[i],nv,d)}}else{nl=tinyMCE.selectNodes(b,function(n){return n.nodeType==1&&n.nodeName=='SPAN'&&n.className=='mceItemHiddenVisualChar'});for(i=0;i<nl.length;i++)tinyMCE.setOuterHTML(nl[i],nl[i].innerHTML.replace(/(&middot;|\u00b7)/g,'&nbsp;'),d)}}};tinyMCE.addPlugin("visualchars",TinyMCE_VisualCharsPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin_src.js
deleted file mode 100644 (file)
index fb7236d..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('visualchars');\r
-\r
-var TinyMCE_VisualCharsPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Visual characters',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/visualchars',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               inst.visualChars = {\r
-                       state : false\r
-               };\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "visualchars":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_visualchars_desc', '{$pluginurl}/images/visualchars.gif', 'mceVisualChars', false);\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               var inst = tinyMCE.getInstanceById(editor_id);\r
-\r
-               switch (command) {\r
-                       case "mceVisualChars":\r
-                               this._toggleVisualChars(editor_id, inst);\r
-                               return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       cleanup : function(type, content, inst) {\r
-               if (type == "insert_to_editor_dom" || type == "get_from_editor_dom") {\r
-                       inst.visualChars.state = true;\r
-                       this._toggleVisualChars(inst.editorId, inst);\r
-               }\r
-\r
-               return content;\r
-       },\r
-\r
-       // Private plugin internal methods\r
-\r
-       _toggleVisualChars : function(editor_id, inst) {\r
-               var nl, i, h, d = inst.getDoc(), b = inst.getBody(), nv, s = inst.selection, bo;\r
-\r
-               inst.visualChars.state = !inst.visualChars.state;\r
-\r
-               bo = s.getBookmark(true);\r
-\r
-               tinyMCE.switchClass(editor_id + '_visualchars', inst.visualChars.state ? 'mceButtonSelected' : 'mceButtonNormal');\r
-\r
-               if (inst.visualChars.state) {\r
-                       nl = tinyMCE.selectNodes(b, function(n) {return n.nodeType == 3 && n.nodeValue && n.nodeValue.indexOf('\u00a0') != -1;});\r
-\r
-                       for (i=0; i<nl.length; i++) {\r
-                               nv = nl[i].nodeValue;\r
-                               nv = nv.replace(/(\u00a0+)/g, '<span class="mceItemHiddenVisualChar">$1</span>');\r
-                               nv = nv.replace(/\u00a0/g, '\u00b7');\r
-                               tinyMCE.setOuterHTML(nl[i], nv, d);\r
-                       }\r
-               } else {\r
-                       nl = tinyMCE.selectNodes(b, function(n) {return n.nodeType == 1 && n.nodeName == 'SPAN' && n.className == 'mceItemHiddenVisualChar';});\r
-\r
-                       for (i=0; i<nl.length; i++)\r
-                               tinyMCE.setOuterHTML(nl[i], nl[i].innerHTML.replace(/(&middot;|\u00b7)/g, '&nbsp;'), d);\r
-               }\r
-\r
-               //s.moveToBookmark(bo);\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("visualchars", TinyMCE_VisualCharsPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/images/visualchars.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/images/visualchars.gif
deleted file mode 100644 (file)
index 3b4293e..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/images/visualchars.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/visualchars/langs/en.js
deleted file mode 100644 (file)
index a82a4ee..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-// EN lang variables\r
-\r
-tinyMCE.addToLang('visualchars',{\r
-desc : 'Visual control characters on/off.'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm
deleted file mode 100644 (file)
index 30b0d1c..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_xhtmlxtras_title_abbr_element}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/editable_selects.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/element_common.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/abbr.js"></script>\r
-       <link rel="stylesheet" type="text/css" href="css/popup.css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-<form onsubmit="insertAbbr();return false;" action="#">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_xhtmlxtras_general_tab}</a></span></li>\r
-                       <!-- <li id="events_tab"><span><a href="javascript:mcTabs.displayTab('events_tab','events_panel');" onmousedown="return false;">{$lang_xhtmlxtras_events_tab}</a></span></li> -->\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-               <div id="general_panel" class="panel current">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_attrib_tab}</legend>\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label id="titlelabel" for="title">{$lang_xhtmlxtras_attribute_label_title}</label>:</td> \r
-                                               <td><input id="title" name="title" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="idlabel" for="id">{$lang_xhtmlxtras_attribute_label_id}</label>:</td> \r
-                                               <td><input id="id" name="id" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="classlabel" for="class">{$lang_xhtmlxtras_attribute_label_class}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="class" name="class" class="field mceEditableSelect">\r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                       </select>\r
-                                               </td>\r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="stylelabel" for="class">{$lang_xhtmlxtras_attribute_label_style}</label>:</td> \r
-                                               <td><input id="style" name="style" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="dirlabel" for="dir">{$lang_xhtmlxtras_attribute_label_langdir}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="dir" name="dir" class="field"> \r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                               <option value="ltr">{$lang_xhtmlxtras_attribute_option_ltr}</option> \r
-                                                               <option value="rtl">{$lang_xhtmlxtras_attribute_option_rtl}</option> \r
-                                                       </select>\r
-                                               </td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="langlabel" for="lang">{$lang_xhtmlxtras_attribute_label_langcode}</label>:</td> \r
-                                               <td>\r
-                                                       <input id="lang" name="lang" type="text" value="" class="field" />\r
-                                               </td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-               <div id="events_panel" class="panel">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_events_tab}</legend>\r
-\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label for="onfocus">onfocus</label>:</td> \r
-                                               <td><input id="onfocus" name="onfocus" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onblur">onblur</label>:</td> \r
-                                               <td><input id="onblur" name="onblur" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onclick">onclick</label>:</td> \r
-                                               <td><input id="onclick" name="onclick" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="ondblclick">ondblclick</label>:</td> \r
-                                               <td><input id="ondblclick" name="ondblclick" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousedown">onmousedown</label>:</td> \r
-                                               <td><input id="onmousedown" name="onmousedown" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseup">onmouseup</label>:</td> \r
-                                               <td><input id="onmouseup" name="onmouseup" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseover">onmouseover</label>:</td> \r
-                                               <td><input id="onmouseover" name="onmouseover" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousemove">onmousemove</label>:</td> \r
-                                               <td><input id="onmousemove" name="onmousemove" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseout">onmouseout</label>:</td> \r
-                                               <td><input id="onmouseout" name="onmouseout" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeypress">onkeypress</label>:</td> \r
-                                               <td><input id="onkeypress" name="onkeypress" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeydown">onkeydown</label>:</td> \r
-                                               <td><input id="onkeydown" name="onkeydown" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeyup">onkeyup</label>:</td> \r
-                                               <td><input id="onkeyup" name="onkeyup" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-       </div>\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_update}" onclick="insertAbbr();" />\r
-               </div>\r
-               <div style="float: left">\r
-                       <input type="button" id="remove" name="remove" value="{$lang_xhtmlxtras_remove}" onclick="removeAbbr();" style="display: none;" />\r
-               </div>\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm
deleted file mode 100644 (file)
index 193760e..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_xhtmlxtras_title_acronym_element}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/editable_selects.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/element_common.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/acronym.js"></script>\r
-       <link rel="stylesheet" type="text/css" href="css/popup.css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-<form onsubmit="insertAcronym();return false;" action="#">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_xhtmlxtras_general_tab}</a></span></li>\r
-                       <!-- <li id="events_tab"><span><a href="javascript:mcTabs.displayTab('events_tab','events_panel');" onmousedown="return false;">{$lang_xhtmlxtras_events_tab}</a></span></li> -->\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-               <div id="general_panel" class="panel current">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_attrib_tab}</legend>\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label id="titlelabel" for="title">{$lang_xhtmlxtras_attribute_label_title}</label>:</td> \r
-                                               <td><input id="title" name="title" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="idlabel" for="id">{$lang_xhtmlxtras_attribute_label_id}</label>:</td> \r
-                                               <td><input id="id" name="id" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="classlabel" for="class">{$lang_xhtmlxtras_attribute_label_class}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="class" name="class" class="field mceEditableSelect">\r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                       </select>\r
-                                               </td>\r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="stylelabel" for="class">{$lang_xhtmlxtras_attribute_label_style}</label>:</td> \r
-                                               <td><input id="style" name="style" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="dirlabel" for="dir">{$lang_xhtmlxtras_attribute_label_langdir}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="dir" name="dir" class="field"> \r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                               <option value="ltr">{$lang_xhtmlxtras_attribute_option_ltr}</option> \r
-                                                               <option value="rtl">{$lang_xhtmlxtras_attribute_option_rtl}</option> \r
-                                                       </select>\r
-                                               </td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="langlabel" for="lang">{$lang_xhtmlxtras_attribute_label_langcode}</label>:</td> \r
-                                               <td>\r
-                                                       <input id="lang" name="lang" type="text" value="" class="field" />\r
-                                               </td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-               <div id="events_panel" class="panel">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_events_tab}</legend>\r
-\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label for="onfocus">onfocus</label>:</td> \r
-                                               <td><input id="onfocus" name="onfocus" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onblur">onblur</label>:</td> \r
-                                               <td><input id="onblur" name="onblur" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onclick">onclick</label>:</td> \r
-                                               <td><input id="onclick" name="onclick" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="ondblclick">ondblclick</label>:</td> \r
-                                               <td><input id="ondblclick" name="ondblclick" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousedown">onmousedown</label>:</td> \r
-                                               <td><input id="onmousedown" name="onmousedown" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseup">onmouseup</label>:</td> \r
-                                               <td><input id="onmouseup" name="onmouseup" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseover">onmouseover</label>:</td> \r
-                                               <td><input id="onmouseover" name="onmouseover" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousemove">onmousemove</label>:</td> \r
-                                               <td><input id="onmousemove" name="onmousemove" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseout">onmouseout</label>:</td> \r
-                                               <td><input id="onmouseout" name="onmouseout" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeypress">onkeypress</label>:</td> \r
-                                               <td><input id="onkeypress" name="onkeypress" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeydown">onkeydown</label>:</td> \r
-                                               <td><input id="onkeydown" name="onkeydown" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeyup">onkeyup</label>:</td> \r
-                                               <td><input id="onkeyup" name="onkeyup" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-       </div>\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_update}" onclick="insertAcronym();" />\r
-               </div>\r
-               <div style="float: left">\r
-                       <input type="button" id="remove" name="remove" value="{$lang_xhtmlxtras_remove}" onclick="removeAcronym();" style="display: none;" />\r
-               </div>\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm
deleted file mode 100644 (file)
index aaf1dee..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_xhtmlxtras_attribs_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/editable_selects.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/attributes.js"></script>\r
-       <link rel="stylesheet" type="text/css" href="css/attributes.css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-<form onsubmit="insertAction();return false;" action="#">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_xhtmlxtras_attribute_attrib_tab}</a></span></li>\r
-                       <li id="events_tab"><span><a href="javascript:mcTabs.displayTab('events_tab','events_panel');" onmousedown="return false;">{$lang_xhtmlxtras_attribute_events_tab}</a></span></li>\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-               <div id="general_panel" class="panel current">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_attribute_attrib_tab}</legend>\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label id="titlelabel" for="title">{$lang_xhtmlxtras_attribute_label_title}</label>:</td> \r
-                                               <td><input id="title" name="title" type="text" value="" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="idlabel" for="id">{$lang_xhtmlxtras_attribute_label_id}</label>:</td> \r
-                                               <td><input id="id" name="id" type="text" value="" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td><label id="classlabel" for="classlist">{$lang_class_name}</label></td>\r
-                                               <td>\r
-                                                       <select id="classlist" name="classlist" class="mceEditableSelect">\r
-                                                               <option value="" selected>{$lang_not_set}</option>\r
-                                                       </select>\r
-                                               </td>\r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="stylelabel" for="class">{$lang_xhtmlxtras_attribute_label_style}</label>:</td> \r
-                                               <td><input id="style" name="style" type="text" value="" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="dirlabel" for="dir">{$lang_xhtmlxtras_attribute_label_langdir}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="dir" name="dir"> \r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                               <option value="ltr">{$lang_xhtmlxtras_option_ltr}</option> \r
-                                                               <option value="rtl">{$lang_xhtmlxtras_option_rtl}</option> \r
-                                                       </select>\r
-                                               </td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="langlabel" for="lang">{$lang_xhtmlxtras_attribute_label_langcode}</label>:</td> \r
-                                               <td>\r
-                                                       <input id="lang" name="lang" type="text" value="" />\r
-                                               </td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                                       <td><label id="tabindexlabel" for="tabindex">{$lang_xhtmlxtras_attribute_label_tabindex}</label></td>\r
-                                                       <td><input type="text" id="tabindex" name="tabindex" value="" /></td>\r
-                                               </tr>\r
-\r
-                                               <tr>\r
-                                                       <td><label id="accesskeylabel" for="accesskey">{$lang_xhtmlxtras_attribute_label_accesskey}</label></td>\r
-                                                       <td><input type="text" id="accesskey" name="accesskey" value="" /></td>\r
-                                               </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-               <div id="events_panel" class="panel">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_attribute_events_tab}</legend>\r
-\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label for="onfocus">onfocus</label>:</td> \r
-                                               <td><input id="onfocus" name="onfocus" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onblur">onblur</label>:</td> \r
-                                               <td><input id="onblur" name="onblur" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onclick">onclick</label>:</td> \r
-                                               <td><input id="onclick" name="onclick" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="ondblclick">ondblclick</label>:</td> \r
-                                               <td><input id="ondblclick" name="ondblclick" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousedown">onmousedown</label>:</td> \r
-                                               <td><input id="onmousedown" name="onmousedown" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseup">onmouseup</label>:</td> \r
-                                               <td><input id="onmouseup" name="onmouseup" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseover">onmouseover</label>:</td> \r
-                                               <td><input id="onmouseover" name="onmouseover" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousemove">onmousemove</label>:</td> \r
-                                               <td><input id="onmousemove" name="onmousemove" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseout">onmouseout</label>:</td> \r
-                                               <td><input id="onmouseout" name="onmouseout" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeypress">onkeypress</label>:</td> \r
-                                               <td><input id="onkeypress" name="onkeypress" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeydown">onkeydown</label>:</td> \r
-                                               <td><input id="onkeydown" name="onkeydown" type="text" value="" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeyup">onkeyup</label>:</td> \r
-                                               <td><input id="onkeyup" name="onkeyup" type="text" value="" /></td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-       </div>\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertAction();" />\r
-               </div>\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm
deleted file mode 100644 (file)
index c72538c..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_xhtmlxtras_title_cite_element}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/editable_selects.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/element_common.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/cite.js"></script>\r
-       <link rel="stylesheet" type="text/css" href="css/popup.css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-<form onsubmit="insertCite();return false;" action="#">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_xhtmlxtras_general_tab}</a></span></li>\r
-                       <!-- <li id="events_tab"><span><a href="javascript:mcTabs.displayTab('events_tab','events_panel');" onmousedown="return false;">{$lang_xhtmlxtras_events_tab}</a></span></li> -->\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-               <div id="general_panel" class="panel current">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_attrib_tab}</legend>\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label id="titlelabel" for="title">{$lang_xhtmlxtras_attribute_label_title}</label>:</td> \r
-                                               <td><input id="title" name="title" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="idlabel" for="id">{$lang_xhtmlxtras_attribute_label_id}</label>:</td> \r
-                                               <td><input id="id" name="id" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="classlabel" for="class">{$lang_xhtmlxtras_attribute_label_class}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="class" name="class" class="field mceEditableSelect">\r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                       </select>\r
-                                               </td>\r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="stylelabel" for="class">{$lang_xhtmlxtras_attribute_label_style}</label>:</td> \r
-                                               <td><input id="style" name="style" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="dirlabel" for="dir">{$lang_xhtmlxtras_attribute_label_langdir}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="dir" name="dir" class="field"> \r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                               <option value="ltr">{$lang_xhtmlxtras_attribute_option_ltr}</option> \r
-                                                               <option value="rtl">{$lang_xhtmlxtras_attribute_option_rtl}</option> \r
-                                                       </select>\r
-                                               </td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="langlabel" for="lang">{$lang_xhtmlxtras_attribute_label_langcode}</label>:</td> \r
-                                               <td>\r
-                                                       <input id="lang" name="lang" type="text" value="" class="field" />\r
-                                               </td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-               <div id="events_panel" class="panel">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_events_tab}</legend>\r
-\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label for="onfocus">onfocus</label>:</td> \r
-                                               <td><input id="onfocus" name="onfocus" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onblur">onblur</label>:</td> \r
-                                               <td><input id="onblur" name="onblur" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onclick">onclick</label>:</td> \r
-                                               <td><input id="onclick" name="onclick" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="ondblclick">ondblclick</label>:</td> \r
-                                               <td><input id="ondblclick" name="ondblclick" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousedown">onmousedown</label>:</td> \r
-                                               <td><input id="onmousedown" name="onmousedown" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseup">onmouseup</label>:</td> \r
-                                               <td><input id="onmouseup" name="onmouseup" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseover">onmouseover</label>:</td> \r
-                                               <td><input id="onmouseover" name="onmouseover" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousemove">onmousemove</label>:</td> \r
-                                               <td><input id="onmousemove" name="onmousemove" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseout">onmouseout</label>:</td> \r
-                                               <td><input id="onmouseout" name="onmouseout" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeypress">onkeypress</label>:</td> \r
-                                               <td><input id="onkeypress" name="onkeypress" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeydown">onkeydown</label>:</td> \r
-                                               <td><input id="onkeydown" name="onkeydown" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeyup">onkeyup</label>:</td> \r
-                                               <td><input id="onkeyup" name="onkeyup" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-       </div>\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_update}" onclick="insertCite();" />\r
-               </div>\r
-               <div style="float: left">\r
-                       <input type="button" id="remove" name="remove" value="{$lang_xhtmlxtras_remove}" onclick="removeCite();" style="display: none;" />\r
-               </div>\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css
deleted file mode 100644 (file)
index 9a6a235..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-.panel_wrapper div.current {\r
-       height: 290px;\r
-}\r
-\r
-#id, #style, #title, #dir, #hreflang, #lang, #classlist, #tabindex, #accesskey {\r
-       width: 200px;\r
-}\r
-\r
-#events_panel input {\r
-       width: 200px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css
deleted file mode 100644 (file)
index ecdc370..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-a.mceButtonNormal img, a.mceButtonSelected img {border: 1px solid #F0F0EE !important;}\r
-a.mceButtonNormal img:hover, a.mceButtonSelected img:hover {border: 1px solid #0A246A !important;  cursor: default;  background-color: #B6BDD2;}\r
-\r
-img {\r
-       border: 0;\r
-}\r
-\r
-input.field, select.field {\r
-       width: 200px;\r
-}\r
-\r
-input.picker {\r
-       width: 179px;\r
-       margin-left: 5px;\r
-}\r
-\r
-input.disabled {\r
-       border-color: #F2F2F2;\r
-}\r
-\r
-img.picker {\r
-       vertical-align: text-bottom;\r
-       cursor: pointer;\r
-}\r
-\r
-h1 {\r
-       padding: 0 0 5px 0;\r
-}\r
-\r
-#remove {\r
-       font-weight: bold;\r
-       width: 90px;\r
-       height: 21px;\r
-       border: 0px;\r
-       background-image: url('../images/remove_button_bg.gif');\r
-       cursor: pointer;\r
-       margin-left: 3px;\r
-}\r
-\r
-.panel_wrapper div.current {\r
-       height: 160px;\r
-}\r
-\r
-#xhtmlxtrasdel .panel_wrapper div.current, #xhtmlxtrasins .panel_wrapper div.current {\r
-       height: 220px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/xhtmlxtras.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/xhtmlxtras.css
deleted file mode 100644 (file)
index 6838d90..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-ins {\r
-       border-bottom: 1px solid green;\r
-       text-decoration: none;\r
-       color: green;\r
-}\r
-\r
-del {\r
-       color: Red;\r
-       text-decoration: line-through;\r
-}\r
-\r
-cite {\r
-       border-bottom: 1px dashed blue;\r
-}\r
-\r
-acronym {\r
-       border-bottom: 1px dotted #CCC;\r
-       cursor: help;\r
-}\r
-\r
-abbr, html\:abbr {\r
-       border-bottom: 1px dashed #CCC;\r
-       cursor: help;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm
deleted file mode 100644 (file)
index 11a4d18..0000000
+++ /dev/null
@@ -1,169 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_xhtmlxtras_title_del_element}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/editable_selects.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/element_common.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/del.js"></script>\r
-       <link rel="stylesheet" type="text/css" href="css/popup.css" />\r
-       <base target="_self" />\r
-</head>\r
-<body id="xhtmlxtrasins" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-<form onsubmit="insertDel();return false;" action="#">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_xhtmlxtras_general_tab}</a></span></li>\r
-                       <!-- <li id="events_tab"><span><a href="javascript:mcTabs.displayTab('events_tab','events_panel');" onmousedown="return false;">{$lang_xhtmlxtras_events_tab}</a></span></li> -->\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-               <div id="general_panel" class="panel current">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_general_tab}</legend>\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label id="datetimelabel" for="datetime">{$lang_xhtmlxtras_attribute_label_datetime}</label>:</td>\r
-                                               <td>\r
-                                                       <table border="0" cellspacing="0" cellpadding="0">\r
-                                                               <tr> \r
-                                                                       <td><input id="datetime" name="datetime" type="text" value="" maxlength="19" class="field" /></td> \r
-                                                                       <td><a href="javascript:insertDateTime('datetime');" class="mceButtonNormal"><img src="images/date_time.gif" class="picker" alt="{$lang_xhtmlxtras_insert_date}" title="{$lang_xhtmlxtras_insert_date}" /></a></td>\r
-                                                               </tr>\r
-                                                       </table>\r
-                                               </td>\r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="citelabel" for="cite">{$lang_xhtmlxtras_attribute_label_cite}</label>:</td>\r
-                                               <td><input id="cite" name="cite" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_attrib_tab}</legend>\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label id="titlelabel" for="title">{$lang_xhtmlxtras_attribute_label_title}</label>:</td> \r
-                                               <td><input id="title" name="title" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="idlabel" for="id">{$lang_xhtmlxtras_attribute_label_id}</label>:</td> \r
-                                               <td><input id="id" name="id" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="classlabel" for="class">{$lang_xhtmlxtras_attribute_label_class}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="class" name="class" class="field mceEditableSelect">\r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                       </select>\r
-                                               </td>\r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="stylelabel" for="class">{$lang_xhtmlxtras_attribute_label_style}</label>:</td> \r
-                                               <td><input id="style" name="style" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="dirlabel" for="dir">{$lang_xhtmlxtras_attribute_label_langdir}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="dir" name="dir" class="field"> \r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                               <option value="ltr">{$lang_xhtmlxtras_attribute_option_ltr}</option> \r
-                                                               <option value="rtl">{$lang_xhtmlxtras_attribute_option_rtl}</option> \r
-                                                       </select>\r
-                                               </td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="langlabel" for="lang">{$lang_xhtmlxtras_attribute_label_langcode}</label>:</td> \r
-                                               <td>\r
-                                                       <input id="lang" name="lang" type="text" value="" class="field" />\r
-                                               </td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-               <div id="events_panel" class="panel">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_events_tab}</legend>\r
-\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label for="onfocus">onfocus</label>:</td> \r
-                                               <td><input id="onfocus" name="onfocus" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onblur">onblur</label>:</td> \r
-                                               <td><input id="onblur" name="onblur" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onclick">onclick</label>:</td> \r
-                                               <td><input id="onclick" name="onclick" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="ondblclick">ondblclick</label>:</td> \r
-                                               <td><input id="ondblclick" name="ondblclick" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousedown">onmousedown</label>:</td> \r
-                                               <td><input id="onmousedown" name="onmousedown" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseup">onmouseup</label>:</td> \r
-                                               <td><input id="onmouseup" name="onmouseup" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseover">onmouseover</label>:</td> \r
-                                               <td><input id="onmouseover" name="onmouseover" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousemove">onmousemove</label>:</td> \r
-                                               <td><input id="onmousemove" name="onmousemove" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseout">onmouseout</label>:</td> \r
-                                               <td><input id="onmouseout" name="onmouseout" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeypress">onkeypress</label>:</td> \r
-                                               <td><input id="onkeypress" name="onkeypress" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeydown">onkeydown</label>:</td> \r
-                                               <td><input id="onkeydown" name="onkeydown" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeyup">onkeyup</label>:</td> \r
-                                               <td><input id="onkeyup" name="onkeyup" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-       </div>\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_update}" onclick="insertDel();" />\r
-               </div>\r
-               <div style="float: left">\r
-                       <input type="button" id="remove" name="remove" value="{$lang_xhtmlxtras_remove}" onclick="removeDel();" style="display: none;" />\r
-               </div>\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-\r
-</form>\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js
deleted file mode 100644 (file)
index 8fa8055..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importPluginLanguagePack('xhtmlxtras');var TinyMCE_XHTMLXtrasPlugin={getInfo:function(){return{longname:'XHTML Xtras Plugin',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/xhtmlxtras',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},initInstance:function(inst){tinyMCE.importCSS(inst.getDoc(),tinyMCE.baseURL+"/plugins/xhtmlxtras/css/xhtmlxtras.css")},getControlHTML:function(cn){switch(cn){case"cite":return tinyMCE.getButtonHTML(cn,'lang_xhtmlxtras_cite_desc','{$pluginurl}/images/cite.gif','mceCite',true);case"acronym":return tinyMCE.getButtonHTML(cn,'lang_xhtmlxtras_acronym_desc','{$pluginurl}/images/acronym.gif','mceAcronym',true);case"abbr":return tinyMCE.getButtonHTML(cn,'lang_xhtmlxtras_abbr_desc','{$pluginurl}/images/abbr.gif','mceAbbr',true);case"del":return tinyMCE.getButtonHTML(cn,'lang_xhtmlxtras_del_desc','{$pluginurl}/images/del.gif','mceDel',true);case"ins":return tinyMCE.getButtonHTML(cn,'lang_xhtmlxtras_ins_desc','{$pluginurl}/images/ins.gif','mceIns',true);case"attribs":return tinyMCE.getButtonHTML(cn,'lang_xhtmlxtras_attribs_desc','{$pluginurl}/images/attribs.gif','mceAttributes',true)}return""},execCommand:function(editor_id,element,command,user_interface,value){var template,inst,elm;switch(command){case"mceCite":if(!this._anySel(editor_id))return true;template=new Array();template['file']='../../plugins/xhtmlxtras/cite.htm';template['width']=350;template['height']=250;tinyMCE.openWindow(template,{editor_id:editor_id});return true;case"mceAcronym":if(!this._anySel(editor_id))return true;template=new Array();template['file']='../../plugins/xhtmlxtras/acronym.htm';template['width']=350;template['height']=250;tinyMCE.openWindow(template,{editor_id:editor_id});return true;case"mceAbbr":if(!this._anySel(editor_id))return true;template=new Array();template['file']='../../plugins/xhtmlxtras/abbr.htm';template['width']=350;template['height']=250;tinyMCE.openWindow(template,{editor_id:editor_id});return true;case"mceIns":if(!this._anySel(editor_id))return true;template=new Array();template['file']='../../plugins/xhtmlxtras/ins.htm';template['width']=350;template['height']=310;tinyMCE.openWindow(template,{editor_id:editor_id});return true;case"mceDel":if(!this._anySel(editor_id))return true;template=new Array();template['file']='../../plugins/xhtmlxtras/del.htm';template['width']=350;template['height']=310;tinyMCE.openWindow(template,{editor_id:editor_id});return true;case"mceAttributes":inst=tinyMCE.getInstanceById(editor_id);elm=inst.getFocusElement();if(elm&&elm.nodeName!=='BODY'&&elm.className.indexOf('mceItem')==-1){tinyMCE.openWindow({file:'../../plugins/xhtmlxtras/attributes.htm',width:380,height:370},{editor_id:editor_id})}return true}return false},cleanup:function(type,content,inst){if(type=='insert_to_editor'&&tinyMCE.isIE&&!tinyMCE.isOpera){content=content.replace(/<abbr([^>]+)>/gi,'<html:ABBR $1>');content=content.replace(/<\/abbr>/gi,'</html:ABBR>')}return content},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){var elm=tinyMCE.getParentElement(node);if(node==null)return;tinyMCE.switchClass(editor_id+'_attribs','mceButtonDisabled');if(!any_selection){tinyMCE.switchClass(editor_id+'_cite','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_acronym','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_abbr','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_del','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_ins','mceButtonDisabled')}else{tinyMCE.switchClass(editor_id+'_cite','mceButtonNormal');tinyMCE.switchClass(editor_id+'_acronym','mceButtonNormal');tinyMCE.switchClass(editor_id+'_abbr','mceButtonNormal');tinyMCE.switchClass(editor_id+'_del','mceButtonNormal');tinyMCE.switchClass(editor_id+'_ins','mceButtonNormal')}if(elm&&elm.nodeName!='BODY'&&elm.className.indexOf('mceItem')==-1)tinyMCE.switchClass(editor_id+'_attribs','mceButtonNormal');switch(node.nodeName){case"CITE":tinyMCE.switchClass(editor_id+'_cite','mceButtonSelected');return true;case"ACRONYM":tinyMCE.switchClass(editor_id+'_acronym','mceButtonSelected');return true;case"abbr":case"HTML:ABBR":case"ABBR":tinyMCE.switchClass(editor_id+'_abbr','mceButtonSelected');return true;case"DEL":tinyMCE.switchClass(editor_id+'_del','mceButtonSelected');return true;case"INS":tinyMCE.switchClass(editor_id+'_ins','mceButtonSelected');return true}return true},_anySel:function(editor_id){var inst=tinyMCE.getInstanceById(editor_id),t=inst.selection.getSelectedText(),pe;pe=tinyMCE.getParentElement(inst.getFocusElement(),'CITE,ACRONYM,ABBR,HTML:ABBR,DEL,INS');return pe||inst.getFocusElement().nodeName=="IMG"||(t&&t.length>0)}};tinyMCE.addPlugin("xhtmlxtras",TinyMCE_XHTMLXtrasPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js
deleted file mode 100644 (file)
index 7e73466..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
- /**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode - based on work by Andrew Tetlaw\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('xhtmlxtras');\r
-\r
-var TinyMCE_XHTMLXtrasPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'XHTML Xtras Plugin',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/xhtmlxtras',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               tinyMCE.importCSS(inst.getDoc(), tinyMCE.baseURL + "/plugins/xhtmlxtras/css/xhtmlxtras.css");\r
-       },\r
-\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "cite":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_xhtmlxtras_cite_desc', '{$pluginurl}/images/cite.gif', 'mceCite', true);\r
-\r
-                       case "acronym":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_xhtmlxtras_acronym_desc', '{$pluginurl}/images/acronym.gif', 'mceAcronym', true);\r
-\r
-                       case "abbr":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_xhtmlxtras_abbr_desc', '{$pluginurl}/images/abbr.gif', 'mceAbbr', true);\r
-\r
-                       case "del":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_xhtmlxtras_del_desc', '{$pluginurl}/images/del.gif', 'mceDel', true);\r
-\r
-                       case "ins":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_xhtmlxtras_ins_desc', '{$pluginurl}/images/ins.gif', 'mceIns', true);\r
-\r
-                       case "attribs":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_xhtmlxtras_attribs_desc', '{$pluginurl}/images/attribs.gif', 'mceAttributes', true);\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               var template, inst, elm;\r
-\r
-               switch (command) {\r
-                       case "mceCite":\r
-                               if (!this._anySel(editor_id))\r
-                                       return true;\r
-\r
-                               template = new Array();\r
-                               template['file'] = '../../plugins/xhtmlxtras/cite.htm';\r
-                               template['width'] = 350;\r
-                               template['height'] = 250;\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id});\r
-                               return true;\r
-\r
-                       case "mceAcronym":\r
-                               if (!this._anySel(editor_id))\r
-                                       return true;\r
-\r
-                               template = new Array();\r
-                               template['file'] = '../../plugins/xhtmlxtras/acronym.htm';\r
-                               template['width'] = 350;\r
-                               template['height'] = 250;\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id});\r
-                               return true;\r
-\r
-                       case "mceAbbr":\r
-                               if (!this._anySel(editor_id))\r
-                                       return true;\r
-\r
-                               template = new Array();\r
-                               template['file'] = '../../plugins/xhtmlxtras/abbr.htm';\r
-                               template['width'] = 350;\r
-                               template['height'] = 250;\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id});\r
-                               return true;\r
-\r
-                       case "mceIns":\r
-                               if (!this._anySel(editor_id))\r
-                                       return true;\r
-\r
-                               template = new Array();\r
-                               template['file'] = '../../plugins/xhtmlxtras/ins.htm';\r
-                               template['width'] = 350;\r
-                               template['height'] = 310;\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id});\r
-                               return true;\r
-\r
-                       case "mceDel":\r
-                               if (!this._anySel(editor_id))\r
-                                       return true;\r
-\r
-                               template = new Array();\r
-                               template['file'] = '../../plugins/xhtmlxtras/del.htm';\r
-                               template['width'] = 350;\r
-                               template['height'] = 310;\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id});\r
-                               return true;\r
-\r
-                       case "mceAttributes":\r
-                               inst = tinyMCE.getInstanceById(editor_id);\r
-                               elm = inst.getFocusElement();\r
-\r
-                               if (elm && elm.nodeName !== 'BODY' && elm.className.indexOf('mceItem') == -1) {\r
-                                       tinyMCE.openWindow({\r
-                                               file : '../../plugins/xhtmlxtras/attributes.htm',\r
-                                               width : 380,\r
-                                               height : 370\r
-                                       }, {editor_id : editor_id});\r
-                               }\r
-\r
-                               return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       cleanup : function(type, content, inst) {\r
-               if (type == 'insert_to_editor' && tinyMCE.isIE && !tinyMCE.isOpera) {\r
-                       content = content.replace(/<abbr([^>]+)>/gi, '<html:ABBR $1>');\r
-                       content = content.replace(/<\/abbr>/gi, '</html:ABBR>');\r
-               }\r
-\r
-               return content;\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node, undo_index,undo_levels, visual_aid, any_selection) {\r
-               var elm = tinyMCE.getParentElement(node);\r
-\r
-               if (node == null)\r
-                       return;\r
-\r
-               tinyMCE.switchClass(editor_id + '_attribs', 'mceButtonDisabled');\r
-\r
-               if (!any_selection) {\r
-                       // Disable the buttons\r
-                       tinyMCE.switchClass(editor_id + '_cite', 'mceButtonDisabled');\r
-                       tinyMCE.switchClass(editor_id + '_acronym', 'mceButtonDisabled');\r
-                       tinyMCE.switchClass(editor_id + '_abbr', 'mceButtonDisabled');\r
-                       tinyMCE.switchClass(editor_id + '_del', 'mceButtonDisabled');\r
-                       tinyMCE.switchClass(editor_id + '_ins', 'mceButtonDisabled');\r
-               } else {\r
-                       // A selection means the buttons should be active.\r
-                       tinyMCE.switchClass(editor_id + '_cite', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_acronym', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_abbr', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_del', 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_ins', 'mceButtonNormal');\r
-               }\r
-\r
-               if (elm && elm.nodeName != 'BODY' && elm.className.indexOf('mceItem') == -1)\r
-                       tinyMCE.switchClass(editor_id + '_attribs', 'mceButtonNormal');\r
-\r
-               switch (node.nodeName) {\r
-                       case "CITE":\r
-                               tinyMCE.switchClass(editor_id + '_cite', 'mceButtonSelected');\r
-                               return true;\r
-\r
-                       case "ACRONYM":\r
-                               tinyMCE.switchClass(editor_id + '_acronym', 'mceButtonSelected');\r
-                               return true;\r
-\r
-                       case "abbr": // IE\r
-                       case "HTML:ABBR": // FF\r
-                       case "ABBR":\r
-                               tinyMCE.switchClass(editor_id + '_abbr', 'mceButtonSelected');\r
-                               return true;\r
-\r
-                       case "DEL":\r
-                               tinyMCE.switchClass(editor_id + '_del', 'mceButtonSelected');\r
-                               return true;\r
-\r
-                       case "INS":\r
-                               tinyMCE.switchClass(editor_id + '_ins', 'mceButtonSelected');\r
-                               return true;\r
-               }\r
-\r
-               return true;\r
-       },\r
-\r
-       _anySel : function(editor_id) {\r
-               var inst = tinyMCE.getInstanceById(editor_id), t = inst.selection.getSelectedText(), pe;\r
-\r
-               pe = tinyMCE.getParentElement(inst.getFocusElement(), 'CITE,ACRONYM,ABBR,HTML:ABBR,DEL,INS');\r
-\r
-               return pe || inst.getFocusElement().nodeName == "IMG" || (t && t.length > 0);\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("xhtmlxtras", TinyMCE_XHTMLXtrasPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/abbr.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/abbr.gif
deleted file mode 100644 (file)
index d00d830..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/abbr.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/acronym.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/acronym.gif
deleted file mode 100644 (file)
index df4c93b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/acronym.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/attribs.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/attribs.gif
deleted file mode 100644 (file)
index fe4a3b6..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/attribs.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/cite.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/cite.gif
deleted file mode 100644 (file)
index 585bcd1..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/cite.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/date_time.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/date_time.gif
deleted file mode 100644 (file)
index 8ad424d..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/date_time.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/del.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/del.gif
deleted file mode 100644 (file)
index ba49408..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/del.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/ins.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/ins.gif
deleted file mode 100644 (file)
index 277a364..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/ins.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/remove_button_bg.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/remove_button_bg.gif
deleted file mode 100644 (file)
index 5a069a8..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/images/remove_button_bg.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm
deleted file mode 100644 (file)
index 0aeb076..0000000
+++ /dev/null
@@ -1,169 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_xhtmlxtras_title_ins_element}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/editable_selects.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/element_common.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/ins.js"></script>\r
-       <link rel="stylesheet" type="text/css" href="css/popup.css" />\r
-       <base target="_self" />\r
-</head>\r
-<body id="xhtmlxtrasins" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-<form onsubmit="insertIns();return false;" action="#">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_xhtmlxtras_general_tab}</a></span></li>\r
-                       <!-- <li id="events_tab"><span><a href="javascript:mcTabs.displayTab('events_tab','events_panel');" onmousedown="return false;">{$lang_xhtmlxtras_events_tab}</a></span></li> -->\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-               <div id="general_panel" class="panel current">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_general_tab}</legend>\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label id="datetimelabel" for="datetime">{$lang_xhtmlxtras_attribute_label_datetime}</label>:</td> \r
-                                               <td>\r
-                                                       <table border="0" cellspacing="0" cellpadding="0">\r
-                                                               <tr> \r
-                                                                       <td><input id="datetime" name="datetime" type="text" value="" maxlength="19" class="field" /></td> \r
-                                                                       <td><a href="javascript:insertDateTime('datetime');" class="mceButtonNormal"><img src="images/date_time.gif" class="picker" alt="{$lang_xhtmlxtras_insert_date}" title="{$lang_xhtmlxtras_insert_date}" /></a></td>\r
-                                                               </tr>\r
-                                                       </table>\r
-                                               </td>\r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="citelabel" for="cite">{$lang_xhtmlxtras_attribute_label_cite}</label>:</td> \r
-                                               <td><input id="cite" name="cite" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_attrib_tab}</legend>\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label id="titlelabel" for="title">{$lang_xhtmlxtras_attribute_label_title}</label>:</td> \r
-                                               <td><input id="title" name="title" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="idlabel" for="id">{$lang_xhtmlxtras_attribute_label_id}</label>:</td> \r
-                                               <td><input id="id" name="id" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="classlabel" for="class">{$lang_xhtmlxtras_attribute_label_class}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="class" name="class" class="field mceEditableSelect">\r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                       </select>\r
-                                               </td>\r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="stylelabel" for="class">{$lang_xhtmlxtras_attribute_label_style}</label>:</td> \r
-                                               <td><input id="style" name="style" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="dirlabel" for="dir">{$lang_xhtmlxtras_attribute_label_langdir}</label>:</td> \r
-                                               <td>\r
-                                                       <select id="dir" name="dir" class="field"> \r
-                                                               <option value="">{$lang_xhtmlxtras_not_set}</option> \r
-                                                               <option value="ltr">{$lang_xhtmlxtras_attribute_option_ltr}</option> \r
-                                                               <option value="rtl">{$lang_xhtmlxtras_attribute_option_rtl}</option> \r
-                                                       </select>\r
-                                               </td> \r
-                                       </tr>\r
-                                       <tr>\r
-                                               <td class="label"><label id="langlabel" for="lang">{$lang_xhtmlxtras_attribute_label_langcode}</label>:</td> \r
-                                               <td>\r
-                                                       <input id="lang" name="lang" type="text" value="" class="field" />\r
-                                               </td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-               <div id="events_panel" class="panel">\r
-                       <fieldset>\r
-                               <legend>{$lang_xhtmlxtras_fieldset_events_tab}</legend>\r
-\r
-                               <table border="0" cellpadding="0" cellspacing="4">\r
-                                       <tr>\r
-                                               <td class="label"><label for="onfocus">onfocus</label>:</td> \r
-                                               <td><input id="onfocus" name="onfocus" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onblur">onblur</label>:</td> \r
-                                               <td><input id="onblur" name="onblur" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onclick">onclick</label>:</td> \r
-                                               <td><input id="onclick" name="onclick" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="ondblclick">ondblclick</label>:</td> \r
-                                               <td><input id="ondblclick" name="ondblclick" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousedown">onmousedown</label>:</td> \r
-                                               <td><input id="onmousedown" name="onmousedown" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseup">onmouseup</label>:</td> \r
-                                               <td><input id="onmouseup" name="onmouseup" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseover">onmouseover</label>:</td> \r
-                                               <td><input id="onmouseover" name="onmouseover" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmousemove">onmousemove</label>:</td> \r
-                                               <td><input id="onmousemove" name="onmousemove" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onmouseout">onmouseout</label>:</td> \r
-                                               <td><input id="onmouseout" name="onmouseout" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeypress">onkeypress</label>:</td> \r
-                                               <td><input id="onkeypress" name="onkeypress" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeydown">onkeydown</label>:</td> \r
-                                               <td><input id="onkeydown" name="onkeydown" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-\r
-                                       <tr>\r
-                                               <td class="label"><label for="onkeyup">onkeyup</label>:</td> \r
-                                               <td><input id="onkeyup" name="onkeyup" type="text" value="" class="field" /></td> \r
-                                       </tr>\r
-                               </table>\r
-                       </fieldset>\r
-               </div>\r
-       </div>\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_update}" onclick="insertIns();" />\r
-               </div>\r
-               <div style="float: left">\r
-                       <input type="button" id="remove" name="remove" value="{$lang_xhtmlxtras_remove}" onclick="removeIns();" style="display: none;" />\r
-               </div>\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-\r
-</form>\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/abbr.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/abbr.js
deleted file mode 100644 (file)
index 3f6853c..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
- /**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode - based on work by Andrew Tetlaw\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-function preinit() {\r
-       // Initialize\r
-       tinyMCE.setWindowArg('mce_windowresize', false);\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-       SXE.initElementDialog('abbr');\r
-       if (SXE.currentAction == "update") {\r
-               SXE.showRemoveButton();\r
-       }\r
-}\r
-\r
-function insertAbbr() {\r
-       SXE.insertElement(tinyMCE.isIE && !tinyMCE.isOpera ? 'html:ABBR' : 'abbr');\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function removeAbbr() {\r
-       SXE.removeElement('abbr');\r
-       tinyMCEPopup.close();\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/acronym.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/acronym.js
deleted file mode 100644 (file)
index 36d76ee..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
- /**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode - based on work by Andrew Tetlaw\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-function preinit() {\r
-       // Initialize\r
-       tinyMCE.setWindowArg('mce_windowresize', false);\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-       SXE.initElementDialog('acronym');\r
-       if (SXE.currentAction == "update") {\r
-               SXE.showRemoveButton();\r
-       }\r
-}\r
-\r
-function insertAcronym() {\r
-       SXE.insertElement('acronym');\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function removeAcronym() {\r
-       SXE.removeElement('acronym');\r
-       tinyMCEPopup.close();\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/attributes.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/attributes.js
deleted file mode 100644 (file)
index ad886e5..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
- /**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode - based on work by Andrew Tetlaw\r
- * @copyright Copyright © 2004-2006, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-function preinit() {\r
-       // Initialize\r
-       tinyMCE.setWindowArg('mce_windowresize', false);\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var elm = inst.getFocusElement();\r
-\r
-       var f = document.forms[0];\r
-       \r
-       var onclick = tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onclick'));\r
-\r
-       setFormValue('title', tinyMCE.getAttrib(elm, 'title'));\r
-       setFormValue('id', tinyMCE.getAttrib(elm, 'id'));\r
-       setFormValue('style', tinyMCE.serializeStyle(tinyMCE.parseStyle(tinyMCE.getAttrib(elm, "style"))));\r
-       setFormValue('dir', tinyMCE.getAttrib(elm, 'dir'));\r
-       setFormValue('lang', tinyMCE.getAttrib(elm, 'lang'));\r
-       setFormValue('tabindex', tinyMCE.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != "undefined" ? elm.tabindex : ""));\r
-       setFormValue('accesskey', tinyMCE.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != "undefined" ? elm.accesskey : ""));\r
-       setFormValue('onfocus', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onfocus')));\r
-       setFormValue('onblur', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onblur')));\r
-       setFormValue('onclick', onclick);\r
-       setFormValue('ondblclick', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'ondblclick')));\r
-       setFormValue('onmousedown', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmousedown')));\r
-       setFormValue('onmouseup', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmouseup')));\r
-       setFormValue('onmouseover', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmouseover')));\r
-       setFormValue('onmousemove', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmousemove')));\r
-       setFormValue('onmouseout', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onmouseout')));\r
-       setFormValue('onkeypress', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onkeypress')));\r
-       setFormValue('onkeydown', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onkeydown')));\r
-       setFormValue('onkeyup', tinyMCE.cleanupEventStr(tinyMCE.getAttrib(elm, 'onkeyup')));\r
-       \r
-       className = tinyMCE.getVisualAidClass(tinyMCE.getAttrib(elm, 'class'), false);\r
-               \r
-       addClassesToList('classlist', 'advlink_styles');\r
-       selectByValue(f, 'classlist', className, true);\r
-       \r
-       TinyMCE_EditableSelects.init();\r
-}\r
-\r
-function setFormValue(name, value) {\r
-       if(value && document.forms[0].elements[name]){\r
-               document.forms[0].elements[name].value = value;\r
-       }\r
-}\r
-\r
-function insertAction() {\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var elm = inst.getFocusElement();\r
-\r
-       tinyMCEPopup.execCommand("mceBeginUndoLevel");  \r
-       tinyMCEPopup.restoreSelection();\r
-       \r
-       setAllAttribs(elm);\r
-       \r
-       tinyMCE.handleVisualAid(inst.getBody(), true, inst.visualAid, inst);\r
-       tinyMCE._setEventsEnabled(inst.getBody(), false);\r
-       tinyMCEPopup.execCommand("mceEndUndoLevel");\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function setAttrib(elm, attrib, value) {\r
-       var formObj = document.forms[0];\r
-       var valueElm = formObj.elements[attrib.toLowerCase()];\r
-\r
-       if (typeof(value) == "undefined" || value == null) {\r
-               value = "";\r
-\r
-               if (valueElm)\r
-                       value = valueElm.value;\r
-       }\r
-\r
-       if (value != "") {\r
-               tinyMCE.setAttrib(elm, attrib.toLowerCase(), value);\r
-\r
-               if (attrib == "style")\r
-                       attrib = "style.cssText";\r
-\r
-               if (attrib.substring(0, 2) == 'on')\r
-                       value = 'return true;' + value;\r
-\r
-               if (attrib == "class")\r
-                       attrib = "className";\r
-\r
-               eval('elm.' + attrib + "=value;");\r
-       } else\r
-               elm.removeAttribute(attrib);\r
-}\r
-\r
-function setAllAttribs(elm) {\r
-       var f = document.forms[0];\r
-\r
-       setAttrib(elm, 'title');\r
-       setAttrib(elm, 'id');\r
-       setAttrib(elm, 'style');\r
-       setAttrib(elm, 'class', getSelectValue(f, 'classlist'));\r
-       setAttrib(elm, 'dir');\r
-       setAttrib(elm, 'lang');\r
-       setAttrib(elm, 'tabindex');\r
-       setAttrib(elm, 'accesskey');\r
-       setAttrib(elm, 'onfocus');\r
-       setAttrib(elm, 'onblur');\r
-       setAttrib(elm, 'onclick');\r
-       setAttrib(elm, 'ondblclick');\r
-       setAttrib(elm, 'onmousedown');\r
-       setAttrib(elm, 'onmouseup');\r
-       setAttrib(elm, 'onmouseover');\r
-       setAttrib(elm, 'onmousemove');\r
-       setAttrib(elm, 'onmouseout');\r
-       setAttrib(elm, 'onkeypress');\r
-       setAttrib(elm, 'onkeydown');\r
-       setAttrib(elm, 'onkeyup');\r
-\r
-       // Refresh in old MSIE\r
-       if (tinyMCE.isMSIE5)\r
-               elm.outerHTML = elm.outerHTML;\r
-}\r
-\r
-function insertAttribute() {\r
-       tinyMCEPopup.close();\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/cite.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/cite.js
deleted file mode 100644 (file)
index 4804db4..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
- /**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode - based on work by Andrew Tetlaw\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-function preinit() {\r
-       // Initialize\r
-       tinyMCE.setWindowArg('mce_windowresize', false);\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-       SXE.initElementDialog('cite');\r
-       if (SXE.currentAction == "update") {\r
-               SXE.showRemoveButton();\r
-       }\r
-}\r
-\r
-function insertCite() {\r
-       SXE.insertElement('cite');\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function removeCite() {\r
-       SXE.removeElement('cite');\r
-       tinyMCEPopup.close();\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/del.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/del.js
deleted file mode 100644 (file)
index 08e2f16..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
- /**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode - based on work by Andrew Tetlaw\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-function preinit() {\r
-       // Initialize\r
-       tinyMCE.setWindowArg('mce_windowresize', false);\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-       SXE.initElementDialog('del');\r
-       if (SXE.currentAction == "update") {\r
-               setFormValue('datetime', tinyMCE.getAttrib(SXE.updateElement, 'datetime'));\r
-               setFormValue('cite', tinyMCE.getAttrib(SXE.updateElement, 'cite'));\r
-               SXE.showRemoveButton();\r
-       }\r
-}\r
-\r
-function setElementAttribs(elm) {\r
-       setAllCommonAttribs(elm);\r
-       setAttrib(elm, 'datetime');\r
-       setAttrib(elm, 'cite');\r
-}\r
-\r
-function insertDel() {\r
-       var elm = tinyMCE.getParentElement(SXE.focusElement, 'del');\r
-\r
-       tinyMCEPopup.execCommand('mceBeginUndoLevel');\r
-       if (elm == null) {\r
-               var s = SXE.inst.selection.getSelectedHTML();\r
-               if(s.length > 0) {\r
-                       tinyMCEPopup.execCommand('mceInsertContent', false, '<del id="#sxe_temp_del#">' + s + '</del>');\r
-                       var elementArray = tinyMCE.getElementsByAttributeValue(SXE.inst.getBody(), 'del', 'id', '#sxe_temp_del#');\r
-                       for (var i=0; i<elementArray.length; i++) {\r
-                               var elm = elementArray[i];\r
-                               setElementAttribs(elm);\r
-                       }\r
-               }\r
-       } else {\r
-               setElementAttribs(elm);\r
-       }\r
-       tinyMCE.triggerNodeChange();\r
-       tinyMCEPopup.execCommand('mceEndUndoLevel');\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function removeDel() {\r
-       SXE.removeElement('del');\r
-       tinyMCEPopup.close();\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/element_common.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/element_common.js
deleted file mode 100644 (file)
index 40e5860..0000000
+++ /dev/null
@@ -1,241 +0,0 @@
- /**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode - based on work by Andrew Tetlaw\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-function initCommonAttributes(elm) {\r
-       var formObj = document.forms[0];\r
-\r
-       // Setup form data for common element attributes\r
-       setFormValue('title', tinyMCE.getAttrib(elm, 'title'));\r
-       setFormValue('id', tinyMCE.getAttrib(elm, 'id'));\r
-       selectByValue(formObj, 'class', tinyMCE.getAttrib(elm, 'class'), true);\r
-       setFormValue('style', tinyMCE.getAttrib(elm, 'style'));\r
-       selectByValue(formObj, 'dir', tinyMCE.getAttrib(elm, 'dir'));\r
-       setFormValue('lang', tinyMCE.getAttrib(elm, 'lang'));\r
-       setFormValue('onfocus', tinyMCE.getAttrib(elm, 'onfocus'));\r
-       setFormValue('onblur', tinyMCE.getAttrib(elm, 'onblur'));\r
-       setFormValue('onclick', tinyMCE.getAttrib(elm, 'onclick'));\r
-       setFormValue('ondblclick', tinyMCE.getAttrib(elm, 'ondblclick'));\r
-       setFormValue('onmousedown', tinyMCE.getAttrib(elm, 'onmousedown'));\r
-       setFormValue('onmouseup', tinyMCE.getAttrib(elm, 'onmouseup'));\r
-       setFormValue('onmouseover', tinyMCE.getAttrib(elm, 'onmouseover'));\r
-       setFormValue('onmousemove', tinyMCE.getAttrib(elm, 'onmousemove'));\r
-       setFormValue('onmouseout', tinyMCE.getAttrib(elm, 'onmouseout'));\r
-       setFormValue('onkeypress', tinyMCE.getAttrib(elm, 'onkeypress'));\r
-       setFormValue('onkeydown', tinyMCE.getAttrib(elm, 'onkeydown'));\r
-       setFormValue('onkeyup', tinyMCE.getAttrib(elm, 'onkeyup'));\r
-}\r
-\r
-function setFormValue(name, value) {\r
-       if(document.forms[0].elements[name]) document.forms[0].elements[name].value = value;\r
-}\r
-\r
-function insertDateTime(id) {\r
-       document.getElementById(id).value = getDateTime(new Date(), "%Y-%m-%dT%H:%M:%S");\r
-}\r
-\r
-function getDateTime(d, fmt) {\r
-       fmt = fmt.replace("%D", "%m/%d/%y");\r
-       fmt = fmt.replace("%r", "%I:%M:%S %p");\r
-       fmt = fmt.replace("%Y", "" + d.getFullYear());\r
-       fmt = fmt.replace("%y", "" + d.getYear());\r
-       fmt = fmt.replace("%m", addZeros(d.getMonth()+1, 2));\r
-       fmt = fmt.replace("%d", addZeros(d.getDate(), 2));\r
-       fmt = fmt.replace("%H", "" + addZeros(d.getHours(), 2));\r
-       fmt = fmt.replace("%M", "" + addZeros(d.getMinutes(), 2));\r
-       fmt = fmt.replace("%S", "" + addZeros(d.getSeconds(), 2));\r
-       fmt = fmt.replace("%I", "" + ((d.getHours() + 11) % 12 + 1));\r
-       fmt = fmt.replace("%p", "" + (d.getHours() < 12 ? "AM" : "PM"));\r
-       fmt = fmt.replace("%%", "%");\r
-\r
-       return fmt;\r
-}\r
-\r
-function addZeros(value, len) {\r
-       var i;\r
-\r
-       value = "" + value;\r
-\r
-       if (value.length < len) {\r
-               for (i=0; i<(len-value.length); i++)\r
-                       value = "0" + value;\r
-       }\r
-\r
-       return value;\r
-}\r
-\r
-function selectByValue(form_obj, field_name, value, add_custom, ignore_case) {\r
-       if (!form_obj || !form_obj.elements[field_name])\r
-               return;\r
-\r
-       var sel = form_obj.elements[field_name];\r
-\r
-       var found = false;\r
-       for (var i=0; i<sel.options.length; i++) {\r
-               var option = sel.options[i];\r
-\r
-               if (option.value == value || (ignore_case && option.value.toLowerCase() == value.toLowerCase())) {\r
-                       option.selected = true;\r
-                       found = true;\r
-               } else\r
-                       option.selected = false;\r
-       }\r
-\r
-       if (!found && add_custom && value != '') {\r
-               var option = new Option('Value: ' + value, value);\r
-               option.selected = true;\r
-               sel.options[sel.options.length] = option;\r
-       }\r
-\r
-       return found;\r
-}\r
-\r
-function setAttrib(elm, attrib, value) {\r
-       var formObj = document.forms[0];\r
-       var valueElm = formObj.elements[attrib.toLowerCase()];\r
-\r
-       if (typeof(value) == "undefined" || value == null) {\r
-               value = "";\r
-\r
-               if (valueElm)\r
-                       value = valueElm.value;\r
-       }\r
-\r
-       if (value != "") {\r
-               if (attrib == "style")\r
-                       attrib = "style.cssText";\r
-\r
-               if (attrib.substring(0, 2) == 'on')\r
-                       value = 'return true;' + value;\r
-\r
-               if (attrib == "class") {\r
-                       tinyMCE.addCSSClass(elm, value);\r
-                       return;\r
-               }\r
-\r
-               elm.setAttribute(attrib.toLowerCase(), value);\r
-       } else\r
-               elm.removeAttribute(attrib);\r
-}\r
-\r
-function setAllCommonAttribs(elm) {\r
-       setAttrib(elm, 'title');\r
-       setAttrib(elm, 'id');\r
-       setAttrib(elm, 'class');\r
-       setAttrib(elm, 'style');\r
-       setAttrib(elm, 'dir');\r
-       setAttrib(elm, 'lang');\r
-       /*setAttrib(elm, 'onfocus');\r
-       setAttrib(elm, 'onblur');\r
-       setAttrib(elm, 'onclick');\r
-       setAttrib(elm, 'ondblclick');\r
-       setAttrib(elm, 'onmousedown');\r
-       setAttrib(elm, 'onmouseup');\r
-       setAttrib(elm, 'onmouseover');\r
-       setAttrib(elm, 'onmousemove');\r
-       setAttrib(elm, 'onmouseout');\r
-       setAttrib(elm, 'onkeypress');\r
-       setAttrib(elm, 'onkeydown');\r
-       setAttrib(elm, 'onkeyup');*/\r
-}\r
-\r
-SXE = {\r
-       currentAction : "insert",\r
-       inst : tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id')),\r
-       updateElement : null\r
-}\r
-\r
-SXE.focusElement = SXE.inst.getFocusElement();\r
-\r
-SXE.initElementDialog = function(element_name) {\r
-       addClassesToList('class', 'xhtmlxtras_styles');\r
-       TinyMCE_EditableSelects.init();\r
-\r
-       element_name = element_name.toLowerCase();\r
-       var elm = tinyMCE.getParentElement(SXE.focusElement, element_name);\r
-       if (elm != null && elm.nodeName == element_name.toUpperCase()) {\r
-               SXE.currentAction = "update";\r
-       }\r
-\r
-       if (SXE.currentAction == "update") {\r
-               initCommonAttributes(elm);\r
-               SXE.updateElement = elm;\r
-       }\r
-\r
-       document.forms[0].insert.value = tinyMCE.getLang('lang_' + SXE.currentAction, 'Insert', true); \r
-}\r
-\r
-SXE.insertElement = function(element_name) {\r
-       var elm = tinyMCE.getParentElement(SXE.focusElement, element_name), h, tagName;\r
-\r
-       tinyMCEPopup.execCommand('mceBeginUndoLevel');\r
-       if (elm == null) {\r
-               var s = SXE.inst.selection.getSelectedHTML();\r
-               if(s.length > 0) {\r
-                       tagName = element_name;\r
-\r
-                       if (tinyMCE.isIE && !tinyMCE.isOpera && element_name.indexOf('html:') == 0)\r
-                               element_name = element_name.substring(5).toLowerCase();\r
-\r
-                       h = '<' + tagName + ' id="#sxe_temp_' + element_name + '#">' + s + '</' + tagName + '>';\r
-\r
-                       tinyMCEPopup.execCommand('mceInsertContent', false, h);\r
-\r
-                       var elementArray = tinyMCE.getElementsByAttributeValue(SXE.inst.getBody(), element_name, 'id', '#sxe_temp_' + element_name + '#');\r
-                       for (var i=0; i<elementArray.length; i++) {\r
-                               var elm = elementArray[i];\r
-\r
-                               elm.id = '';\r
-                               elm.setAttribute('id', '');\r
-                               elm.removeAttribute('id');\r
-\r
-                               setAllCommonAttribs(elm);\r
-                       }\r
-               }\r
-       } else {\r
-               setAllCommonAttribs(elm);\r
-       }\r
-       tinyMCE.triggerNodeChange();\r
-       tinyMCEPopup.execCommand('mceEndUndoLevel');\r
-}\r
-\r
-SXE.removeElement = function(element_name){\r
-       element_name = element_name.toLowerCase();\r
-       elm = tinyMCE.getParentElement(SXE.focusElement, element_name);\r
-       if(elm && elm.nodeName == element_name.toUpperCase()){\r
-               tinyMCEPopup.execCommand('mceBeginUndoLevel');\r
-               tinyMCE.execCommand('mceRemoveNode', false, elm);\r
-               tinyMCE.triggerNodeChange();\r
-               tinyMCEPopup.execCommand('mceEndUndoLevel');\r
-       }\r
-}\r
-\r
-SXE.showRemoveButton = function() {\r
-               document.getElementById("remove").style.display = 'block';\r
-}\r
-\r
-SXE.containsClass = function(elm,cl) {\r
-       return (elm.className.indexOf(cl) > -1) ? true : false;\r
-}\r
-\r
-SXE.removeClass = function(elm,cl) {\r
-       if(elm.className == null || elm.className == "" || !SXE.containsClass(elm,cl)) {\r
-               return true;\r
-       }\r
-       var classNames = elm.className.split(" ");\r
-       var newClassNames = "";\r
-       for (var x = 0, cnl = classNames.length; x < cnl; x++) {\r
-               if (classNames[x] != cl) {\r
-                       newClassNames += (classNames[x] + " ");\r
-               }\r
-       }\r
-       elm.className = newClassNames.substring(0,newClassNames.length-1); //removes extra space at the end\r
-}\r
-\r
-SXE.addClass = function(elm,cl) {\r
-       if(!SXE.containsClass(elm,cl)) elm.className ? elm.className += " " + cl : elm.className = cl;\r
-       return true;\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/ins.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/jscripts/ins.js
deleted file mode 100644 (file)
index 8fdc364..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
- /**\r
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $\r
- *\r
- * @author Moxiecode - based on work by Andrew Tetlaw\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-function preinit() {\r
-       // Initialize\r
-       tinyMCE.setWindowArg('mce_windowresize', false);\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-       SXE.initElementDialog('ins');\r
-       if (SXE.currentAction == "update") {\r
-               setFormValue('datetime', tinyMCE.getAttrib(SXE.updateElement, 'datetime'));\r
-               setFormValue('cite', tinyMCE.getAttrib(SXE.updateElement, 'cite'));\r
-               SXE.showRemoveButton();\r
-       }\r
-}\r
-\r
-function setElementAttribs(elm) {\r
-       setAllCommonAttribs(elm);\r
-       setAttrib(elm, 'datetime');\r
-       setAttrib(elm, 'cite');\r
-}\r
-\r
-function insertIns() {\r
-       var elm = tinyMCE.getParentElement(SXE.focusElement, 'ins');\r
-       tinyMCEPopup.execCommand('mceBeginUndoLevel');\r
-       if (elm == null) {\r
-               var s = SXE.inst.selection.getSelectedHTML();\r
-               if(s.length > 0) {\r
-                       tinyMCEPopup.execCommand('mceInsertContent', false, '<ins id="#sxe_temp_ins#">' + s + '</ins>');\r
-                       var elementArray = tinyMCE.getElementsByAttributeValue(SXE.inst.getBody(), 'ins', 'id', '#sxe_temp_ins#');\r
-                       for (var i=0; i<elementArray.length; i++) {\r
-                               var elm = elementArray[i];\r
-                               setElementAttribs(elm);\r
-                       }\r
-               }\r
-       } else {\r
-               setElementAttribs(elm);\r
-       }\r
-       tinyMCE.triggerNodeChange();\r
-       tinyMCEPopup.execCommand('mceEndUndoLevel');\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function removeIns() {\r
-       SXE.removeElement('ins');\r
-       tinyMCEPopup.close();\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/en.js
deleted file mode 100644 (file)
index 50d244c..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('xhtmlxtras',{\r
-cite_desc : 'Citation',\r
-abbr_desc : 'Abbreviation',\r
-acronym_desc : 'Acronym',\r
-del_desc : 'Deletion',\r
-ins_desc : 'Insertion',\r
-attribute_label_title : 'Title',\r
-attribute_label_id : 'ID',\r
-attribute_label_class : 'Class',\r
-attribute_label_style : 'Style',\r
-attribute_label_cite : 'Cite',\r
-attribute_label_datetime : 'Date/Time',\r
-attribute_label_langdir : 'Text Direction',\r
-attribute_option_ltr : 'Left to right',\r
-attribute_option_rtl : 'Right to left',\r
-attribute_label_langcode : 'Language',\r
-attribute_label_tabindex : 'TabIndex',\r
-attribute_label_accesskey : 'AccessKey',\r
-attribute_label_cite : 'Cite',\r
-attribute_events_tab : 'Events',\r
-attribute_attrib_tab : 'Attributes',\r
-general_tab : 'General',\r
-attrib_tab : 'Attributes',\r
-events_tab : 'Events',\r
-fieldset_general_tab : 'General Settings',\r
-fieldset_attrib_tab : 'Element Attributes',\r
-fieldset_events_tab : 'Element Events',\r
-title_ins_element : 'Insertion Element',\r
-title_del_element : 'Deletion Element',\r
-title_acronym_element : 'Acronym Element',\r
-title_abbr_element : 'Abbreviation Element',\r
-title_cite_element : 'Citation Element',\r
-remove : 'Remove',\r
-not_set : '--not set--',\r
-insert_date : 'Insert current date/time',\r
-option_ltr : 'Left to right',\r
-option_rtl : 'Right to left',\r
-attribs_desc : 'Insert/Edit Attributes',\r
-attribs_title : 'Insert/Edit Attributes'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/zoom/editor_plugin.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/zoom/editor_plugin.js
deleted file mode 100644 (file)
index ee3dd8e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-var TinyMCE_ZoomPlugin={getInfo:function(){return{longname:'Zoom',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',infourl:'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/zoom',version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion}},getControlHTML:function(control_name){if(!tinyMCE.isMSIE||tinyMCE.isMSIE5_0||tinyMCE.isOpera)return"";switch(control_name){case"zoom":return'<select id="{$editor_id}_zoomSelect" name="{$editor_id}_zoomSelect" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceZoom\',false,this.options[this.selectedIndex].value);" class="mceSelectList">'+'<option value="100%">+ 100%</option>'+'<option value="150%">+ 150%</option>'+'<option value="200%">+ 200%</option>'+'<option value="250%">+ 250%</option>'+'</select>'}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case"mceZoom":tinyMCE.getInstanceById(editor_id).contentDocument.body.style.zoom=value;tinyMCE.getInstanceById(editor_id).contentDocument.body.style.mozZoom=value;return true}return false}};tinyMCE.addPlugin("zoom",TinyMCE_ZoomPlugin);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/zoom/editor_plugin_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/zoom/editor_plugin_src.js
deleted file mode 100644 (file)
index cd09872..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-var TinyMCE_ZoomPlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Zoom',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/zoom',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       /**\r
-        * Returns the HTML contents of the zoom control.\r
-        */\r
-       getControlHTML : function(control_name) {\r
-               if (!tinyMCE.isMSIE || tinyMCE.isMSIE5_0 || tinyMCE.isOpera)\r
-                       return "";\r
-\r
-               switch (control_name) {\r
-                       case "zoom":\r
-                               return '<select id="{$editor_id}_zoomSelect" name="{$editor_id}_zoomSelect" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceZoom\',false,this.options[this.selectedIndex].value);" class="mceSelectList">' + \r
-                                               '<option value="100%">+ 100%</option>' + \r
-                                               '<option value="150%">+ 150%</option>' + \r
-                                               '<option value="200%">+ 200%</option>' + \r
-                                               '<option value="250%">+ 250%</option>' + \r
-                                               '</select>';\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       /**\r
-        * Executes the mceZoom command.\r
-        */\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceZoom":\r
-                               tinyMCE.getInstanceById(editor_id).contentDocument.body.style.zoom = value;\r
-                               tinyMCE.getInstanceById(editor_id).contentDocument.body.style.mozZoom = value;\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("zoom", TinyMCE_ZoomPlugin);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/zoom/readme.txt b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/plugins/zoom/readme.txt
deleted file mode 100644 (file)
index 4fdb78a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Check the TinyMCE documentation for details on this plugin.\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/about.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/about.htm
deleted file mode 100644 (file)
index 6918488..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_about_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/about.js"></script>\r
-       <base target="_self" />\r
-</head>\r
-<body id="about" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-               <div class="tabs">\r
-                       <ul>\r
-                               <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_about}</a></span></li>\r
-                               <li id="help_tab"><span><a href="javascript:mcTabs.displayTab('help_tab','help_panel');" onmousedown="return false;">{$lang_help}</a></span></li>\r
-                               <li id="plugins_tab"><span><a href="javascript:mcTabs.displayTab('plugins_tab','plugins_panel');" onmousedown="return false;">{$lang_plugins}</a></span></li>\r
-                       </ul>\r
-               </div>\r
-\r
-               <div class="panel_wrapper">\r
-                       <div id="general_panel" class="panel current">\r
-                               <h3>{$lang_about_title}</h3>\r
-                               <p>Version: {$tinymce_version} ({$tinymce_releasedate})</p>\r
-                               <p>TinyMCE is a platform independent web based Javascript HTML WYSIWYG editor control released as Open Source under <a href="../../license.txt" target="_blank">LGPL</a>\r
-                               by Moxiecode Systems AB. It has the ability to convert HTML TEXTAREA fields or other HTML elements to editor instances.</p>\r
-                               <p>Copyright &copy; 2003-2007, <a href="http://www.moxiecode.com" target="_blank">Moxiecode Systems AB</a>, All rights reserved.</p>\r
-                               <p>For more information about this software visit the <a href="http://tinymce.moxiecode.com" target="_blank">TinyMCE website</a>.</p>\r
-\r
-                               <div id="buttoncontainer"></div>\r
-                       </div>\r
-\r
-                       <div id="plugins_panel" class="panel">\r
-                               <div id="pluginscontainer">\r
-                                       <h3>{$lang_loaded_plugins}</h3>\r
-\r
-                                       <div id="plugintablecontainer">\r
-                                       </div>\r
-\r
-                                       <p>&nbsp;</p>\r
-                               </div>\r
-                       </div>\r
-\r
-                       <div id="help_panel" class="panel noscroll" style="overflow: visible;">\r
-                               <div id="iframecontainer"></div>\r
-                       </div>\r
-               </div>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div style="float: right">\r
-                               <input type="button" id="cancel" name="cancel" value="{$lang_close}" onclick="tinyMCEPopup.close();" />\r
-                       </div>\r
-               </div>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm
deleted file mode 100644 (file)
index 53d7969..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_insert_anchor_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/anchor.js"></script>\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-<form onsubmit="insertAnchor();return false;" action="#">\r
-\r
-       <table border="0" cellpadding="4" cellspacing="0">\r
-               <tr>\r
-                       <td colspan="2" class="title">{$lang_insert_anchor_title}</td>\r
-               </tr>\r
-               <tr>\r
-                       <td nowrap="nowrap">{$lang_insert_anchor_name}:</td>\r
-                       <td><input name="anchorName" type="text" id="anchorName" value="" style="width: 200px" /></td>\r
-               </tr>\r
-       </table>\r
-\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_update}" onclick="insertAnchor();" />\r
-               </div>\r
-\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm
deleted file mode 100644 (file)
index 9aed1d4..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_theme_charmap_title}</title>\r
-       <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/charmap.js"></script>\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-<table align="center" border="0" cellspacing="0" cellpadding="2">\r
-    <tr>\r
-        <td colspan="2" class="title">{$lang_theme_charmap_title}</td>\r
-    </tr>\r
-    <tr>\r
-        <td rowspan="2" align="left" valign="top">\r
-            <script language="javascript" type="text/javascript">renderCharMapHTML();</script>\r
-        </td>\r
-        <td width="100" align="center" valign="top">\r
-            <table border="0" cellpadding="0" cellspacing="0" width="100" style="height: 100px">\r
-                <tr>\r
-                    <td class="charmapOver" style="font-size: 40px; height:80px;" id="codeV">&nbsp;</td>\r
-                </tr>\r
-                <tr>\r
-                    <td style="font-size: 10px; font-family: Arial, Helvetica, sans-serif; text-align:center;" id="codeN">&nbsp;</td>\r
-                </tr>\r
-            </table>\r
-        </td>\r
-    </tr>\r
-    <tr>\r
-        <td valign="bottom" style="padding-bottom: 3px;">\r
-            <table width="100" align="center" border="0" cellpadding="2" cellspacing="0">\r
-                <tr>\r
-                    <td align="center" style="border-left: 1px solid #666699; border-top: 1px solid #666699; border-right: 1px solid #666699;">HTML-Code</td>\r
-                </tr>\r
-                <tr>\r
-                    <td style="font-size: 16px; font-weight: bold; border-left: 1px solid #666699; border-bottom: 1px solid #666699; border-right: 1px solid #666699;" id="codeA" align="center">&nbsp;</td>\r
-                </tr>\r
-                <tr>\r
-                    <td style="font-size: 1px;">&nbsp;</td>\r
-                </tr>\r
-                <tr>\r
-                    <td align="center" style="border-left: 1px solid #666699; border-top: 1px solid #666699; border-right: 1px solid #666699;">NUM-Code</td>\r
-                </tr>\r
-                <tr>\r
-                    <td style="font-size: 16px; font-weight: bold; border-left: 1px solid #666699; border-bottom: 1px solid #666699; border-right: 1px solid #666699;" id="codeB" align="center">&nbsp;</td>\r
-                </tr>\r
-            </table>\r
-        </td>\r
-    </tr>\r
-</table>\r
-\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm
deleted file mode 100644 (file)
index 668d744..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_theme_colorpicker_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/color_picker.js"></script>\r
-       <link href="css/colorpicker.css" rel="stylesheet" type="text/css" />\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="picker_tab" class="current"><span><a href="javascript:mcTabs.displayTab('picker_tab','picker_panel');" onmousedown="return false;">{$lang_color_picker_tab}</a></span></li>\r
-                       <li id="rgb_tab"><span><a href="#" onclick="generateWebColors();mcTabs.displayTab('rgb_tab','rgb_panel');" onmousedown="return false;">{$lang_web_colors_tab}</a></span></li>\r
-                       <li id="named_tab"><span><a  href="#" onclick="generateNamedColors();javascript:mcTabs.displayTab('named_tab','named_panel');" onmousedown="return false;">{$lang_named_colors_tab}</a></span></li>\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-               <div id="picker_panel" class="panel current">\r
-                       <fieldset>\r
-                               <legend>{$lang_color_picker}</legend>\r
-                               <div id="picker">\r
-                                       <img id="colorpicker" src="images/colors.jpg" onclick="computeColor(event)" onmousedown="isMouseDown = true;return false;" onmouseup="isMouseDown = false;" onmousemove="if (isMouseDown && isMouseOver) computeColor(event); return false;" onmouseover="isMouseOver=true;" onmouseout="isMouseOver=false;" />\r
-\r
-                                       <div id="light">\r
-                                               <!-- Will be filled with divs -->\r
-                                       </div>\r
-\r
-                                       <br style="clear: both" />\r
-                               </div>\r
-                       </fieldset>\r
-               </div>\r
-\r
-               <div id="rgb_panel" class="panel">\r
-                       <fieldset>\r
-                               <legend>{$lang_web_colors}</legend>\r
-                               <div id="webcolors">\r
-                                       <!-- Gets filled with web safe colors-->\r
-                               </div>\r
-\r
-                               <br style="clear: both" />\r
-                       </fieldset>\r
-               </div>\r
-\r
-               <div id="named_panel" class="panel">\r
-                       <fieldset>\r
-                               <legend>{$lang_named_colors}</legend>\r
-                               <div id="namedcolors">\r
-                                       <!-- Gets filled with named colors-->\r
-                               </div>\r
-\r
-                               <br style="clear: both" />\r
-\r
-                               <div id="colornamecontainer">\r
-                                       {$lang_color_name} <span id="colorname"></span>\r
-                               </div>\r
-                       </fieldset>\r
-               </div>\r
-       </div>\r
-\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_theme_colorpicker_apply}" onclick="insertAction();" />\r
-               </div>\r
-\r
-               <div id="preview"></div>\r
-\r
-               <div id="previewblock">\r
-                       <label for="color">{$lang_color}</label> <input id="color" type="text" size="8" maxlength="8" class="text" />\r
-               </div>\r
-       </div>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/colorpicker.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/colorpicker.css
deleted file mode 100644 (file)
index 4b0360b..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Colorpicker dialog specific CSS */\r
-\r
-#preview {\r
-       float: right;\r
-       width: 50px;\r
-       height: 14px;\r
-       line-height: 1px;\r
-       border: 1px solid black;\r
-       margin-left: 5px;\r
-}\r
-\r
-#colorpicker {\r
-       float: left;\r
-       cursor: crosshair;\r
-}\r
-\r
-#light {\r
-       border: 1px solid gray;\r
-       margin-left: 5px;\r
-       float: left;\r
-       width: 15px;\r
-       cursor: crosshair;\r
-}\r
-\r
-#light div {\r
-       overflow: hidden;\r
-}\r
-\r
-#previewblock {\r
-       float: right;\r
-       padding-left: 10px;\r
-       height: 20px;\r
-}\r
-\r
-.panel_wrapper div.current {\r
-       height: 175px;\r
-}\r
-\r
-#namedcolors {\r
-       width: 150px;\r
-}\r
-\r
-#namedcolors a {\r
-       display: block;\r
-       float: left;\r
-       width: 10px; height: 10px;\r
-       margin: 1px 1px 0 0;\r
-       overflow: hidden;\r
-}\r
-\r
-#colornamecontainer {\r
-       margin-top: 5px;\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/editor_content.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/editor_content.css
deleted file mode 100644 (file)
index ec1d693..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* This file contains the CSS data for the editable area(iframe) of TinyMCE */
-/* You can extend this CSS by adding your own CSS file with the content_css option */
-
-body, td, pre {
-       font-family: Verdana, Arial, Helvetica, sans-serif;
-       font-size: 10px;
-}
-
-body {\r
-       background-color: #FFFFFF;\r
-}\r
-\r
-.mceVisualAid {\r
-       border: 1px dashed #BBBBBB !important;\r
-}\r
-\r
-div.mceVisualAid {\r
-       background-image:url('../images/spacer.gif');\r
-       visibility: visible !important;\r
-}\r
-\r
-.mceItemAnchor {\r
-       width: 12px;\r
-       line-height: 6px;\r
-       overflow: hidden;\r
-       padding-left: 12px;\r
-       background-image: url('../images/anchor_symbol.gif');\r
-       background-position: bottom;\r
-       background-repeat: no-repeat;\r
-}\r
-\r
-/* Important is needed in Gecko browsers inorder to style links */\r
-/*\r
-a {\r
-       color: green !important;\r
-}\r
-*/\r
-\r
-/* Style selection range colors in Gecko browsers */\r
-/*\r
-::-moz-selection {\r
-       background-color: red;\r
-       color: green;\r
-}\r
-*/\r
-\r
-/* MSIE specific */\r
-\r
-* html body {\r
-       scrollbar-3dlight-color: #F0F0EE;\r
-       scrollbar-arrow-color: #676662;\r
-       scrollbar-base-color: #F0F0EE;\r
-       scrollbar-darkshadow-color: #DDDDDD;\r
-       scrollbar-face-color: #E0E0DD;\r
-       scrollbar-highlight-color: #F0F0EE;\r
-       scrollbar-shadow-color: #F0F0EE;\r
-       scrollbar-track-color: #F5F5F5;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/editor_popup.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/editor_popup.css
deleted file mode 100644 (file)
index f8d3550..0000000
+++ /dev/null
@@ -1,331 +0,0 @@
-/* This file contains the CSS data for all popups in TinyMCE */\r
-\r
-body {\r
-       background-color: #F0F0EE;\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 11px;\r
-       scrollbar-3dlight-color: #F0F0EE;\r
-       scrollbar-arrow-color: #676662;\r
-       scrollbar-base-color: #F0F0EE;\r
-       scrollbar-darkshadow-color: #DDDDDD;\r
-       scrollbar-face-color: #E0E0DD;\r
-       scrollbar-highlight-color: #F0F0EE;\r
-       scrollbar-shadow-color: #F0F0EE;\r
-       scrollbar-track-color: #F5F5F5;\r
-       margin: 8px;\r
-}\r
-\r
-td {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 11px;\r
-}\r
-\r
-input {\r
-       background: #FFFFFF;\r
-       border: 1px solid #cccccc;\r
-}\r
-\r
-td, input, select, textarea {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 10px;\r
-}\r
-\r
-input, select, textarea {\r
-       border: 1px solid #808080;\r
-}\r
-\r
-.input_noborder {\r
-       border: 0;\r
-}\r
-\r
-#insert, .updateButton {\r
-   font-weight: bold;\r
-   width: 90px;\r
-   height: 21px;\r
-   border: 0;\r
-   background-image: url('../images/insert_button_bg.gif');\r
-   cursor: pointer;\r
-}\r
-\r
-#cancel {\r
-   font-weight: bold;\r
-   width: 90px;\r
-   height: 21px;\r
-   border: 0;\r
-   background-image: url('../images/cancel_button_bg.gif');\r
-   cursor: pointer;\r
-}\r
-\r
-/* Mozilla only style */\r
-html>body #insert, html>body #cancel {\r
-       padding-bottom: 2px;\r
-}\r
-\r
-.title {\r
-       font-size: 12px;\r
-       font-weight: bold;\r
-       color: #2B6FB6;\r
-}\r
-\r
-table.charmap {\r
-       border-style: solid;\r
-       border-width: 1px;\r
-       border-color: #AAAAAA;\r
-}\r
-\r
-td.charmap, td.charmapOver {\r
-       color: #000000;\r
-       border-color: #AAAAAA;\r
-       border-style: solid;\r
-       border-width: 1px;\r
-       text-align: center;\r
-       font-size: 12px;\r
-}\r
-\r
-td.charmapOver {\r
-       background-color: #CCCCCC;\r
-       cursor: default;\r
-}\r
-\r
-a.charmap {\r
-       color: #000000;\r
-       text-decoration: none\r
-}\r
-\r
-.wordWrapCode {\r
-       vertical-align: middle;\r
-       border: 1px none #000000;\r
-       background-color: transparent;\r
-}\r
-\r
-input.radio {\r
-       border: 1px none #000000;\r
-       background-color: transparent;\r
-       vertical-align: middle;\r
-}\r
-\r
-input.checkbox {\r
-       border: 1px none #000000;\r
-       background-color: transparent;\r
-       vertical-align: middle;\r
-}\r
-\r
-.mceButtonNormal, .mceButtonOver, .mceButtonDown, .mceSeparator, .mceButtonDisabled, .mceButtonSelected {\r
-       margin-left: 1px;\r
-}\r
-\r
-.mceButtonNormal {\r
-       border-top: 1px solid;\r
-       border-left: 1px solid;\r
-       border-bottom: 1px solid;\r
-       border-right: 1px solid;\r
-       border-color: #F0F0EE;\r
-       cursor: default;\r
-}\r
-\r
-.mceButtonOver {\r
-       border: 1px solid #0A246A;\r
-       cursor: default;\r
-       background-color: #B6BDD2;\r
-}\r
-\r
-.mceButtonDown {\r
-       cursor: default;\r
-       border: 1px solid #0A246A;\r
-       background-color: #8592B5;\r
-}\r
-\r
-.mceButtonDisabled {\r
-       filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30);\r
-       -moz-opacity:0.3;\r
-       opacity: 0.3;\r
-       border-top: 1px solid;\r
-       border-left: 1px solid;\r
-       border-bottom: 1px solid;\r
-       border-right: 1px solid;\r
-       border-color: #F0F0EE;\r
-       cursor: default;\r
-}\r
-\r
-.mceActionPanel {\r
-       margin-top: 5px;\r
-}\r
-\r
-/* Tabs classes */\r
-\r
-.tabs {\r
-       float: left;\r
-       width: 100%;\r
-       line-height: normal;\r
-       background-image: url("../images/xp/tabs_bg.gif");\r
-}\r
-\r
-.tabs ul {\r
-       margin: 0;\r
-       padding: 0 0 0;\r
-       list-style: none;\r
-}\r
-\r
-.tabs li {\r
-       float: left;\r
-       background: url("../images/xp/tab_bg.gif") no-repeat left top;\r
-       margin: 0;\r
-       margin-left: 0;\r
-       margin-right: 2px;\r
-       padding: 0 0 0 10px;\r
-       line-height: 18px;\r
-}\r
-\r
-.tabs li.current {\r
-       background: url("../images/xp/tab_sel_bg.gif") no-repeat left top;\r
-       margin-right: 2px;\r
-}\r
-\r
-.tabs span {\r
-       float: left;\r
-       display: block;\r
-       background: url("../images/xp/tab_end.gif") no-repeat right top;\r
-       padding: 0px 10px 0 0;\r
-}\r
-\r
-.tabs .current span {\r
-       background: url("../images/xp/tab_sel_end.gif") no-repeat right top;\r
-}\r
-\r
-.tabs a {\r
-       text-decoration: none;\r
-       font-family: Verdana, Arial;\r
-       font-size: 10px;\r
-}\r
-\r
-.tabs a:link, .tabs a:visited, .tabs a:hover {\r
-       color: black;\r
-}\r
-\r
-.tabs a:hover {\r
-}\r
-\r
-.tabs .current {\r
-}\r
-\r
-.tabs .current a, .tabs .current a:link, .tabs .current a:visited {\r
-}\r
-\r
-.panel_wrapper div.panel {\r
-       display: none;\r
-}\r
-\r
-.panel_wrapper div.current {\r
-       display: block;\r
-       width: 100%;\r
-       height: 300px;\r
-       overflow: visible; /* Should be auto but that breaks Safari */\r
-}\r
-\r
-.panel_wrapper {\r
-       border: 1px solid #919B9C;\r
-       border-top: 0px;\r
-       padding: 10px;\r
-       padding-top: 5px;\r
-       clear: both;\r
-       background-color: white;\r
-}\r
-\r
-fieldset {\r
-       border: 1px solid #919B9C;\r
-       font-family: Verdana, Arial;\r
-       font-size: 10px;\r
-       padding: 0;\r
-       margin: 0;\r
-       padding: 4px;\r
-}\r
-\r
-legend {\r
-       color: #2B6FB6;\r
-       font-weight: bold;\r
-}\r
-\r
-.properties {\r
-       width: 100%;\r
-}\r
-\r
-.properties .column1 {\r
-}\r
-\r
-.properties .column2 {\r
-       text-align: left;\r
-}\r
-\r
-a:link, a:visited {\r
-       color: black;\r
-}\r
-\r
-a:hover {\r
-       color: #2B6FB6;\r
-}\r
-\r
-#plugintable thead {\r
-       font-weight: bold;\r
-       background-color: #DDDDDD;\r
-}\r
-\r
-#plugintable, #about #plugintable td {\r
-       border: 1px solid #919B9C;\r
-}\r
-\r
-#plugintable {\r
-       width: 99%;\r
-       margin-top: 10px;\r
-}\r
-\r
-#pluginscontainer {\r
-       height: 290px;\r
-       overflow: auto;\r
-}\r
-\r
-/* MSIE Specific styles */\r
-\r
-* html .panel_wrapper {\r
-       width: 100%;\r
-}\r
-\r
-.column {\r
-       float: left;\r
-}\r
-\r
-h1, h2, h3, h4 {\r
-       color: #2B6FB6;\r
-       margin: 0;\r
-       padding: 0;\r
-       padding-top: 5px;\r
-}\r
-\r
-h3 {\r
-       font-size: 14px;\r
-}\r
-\r
-#link .panel_wrapper, #link div.current {\r
-       height: 125px;\r
-}\r
-\r
-#image .panel_wrapper, #image div.current {\r
-       height: 190px;\r
-}\r
-\r
-label.msg { display: none; }\r
-label.invalid { color: #EE0000; display: inline; }\r
-input.invalid { border: 1px solid #EE0000; }\r
-\r
-/* Disables the advanced tab in the table plugin. */\r
-/*\r
-#table #advanced_tab {\r
-       display: none;\r
-}\r
-*/\r
-\r
-/* Disables the border input field and label in the table plugin. */\r
-/*\r
-#table #border, #table #borderlabel {\r
-       display: none;\r
-}\r
-*/\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/editor_ui.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/css/editor_ui.css
deleted file mode 100644 (file)
index 851837d..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-/* This file contains the CSS data for the editor UI of TinyMCE instances */\r
-\r
-.mceToolbarTop a, .mceToolbarTop a:visited, .mceToolbarTop a:hover, .mceToolbarBottom a, .mceToolbarBottom a:visited, .mceToolbarBottom a:hover {border: 0; margin: 0; padding: 0; background: transparent;}\r
-.mceSeparatorLine {border: 0; padding: 0; margin-left: 4px; margin-right: 2px;}\r
-.mceSelectList {font-family: 'MS Sans Serif', sans-serif, Verdana, Arial; font-size: 7pt !important; font-weight: normal; margin-top: 3px; padding: 0; display: inline; vertical-align: top; background-color: #F0F0EE;}\r
-.mceLabel, .mceLabelDisabled {font-family: 'MS Sans Serif', sans-serif, Verdana, Arial; font-size: 9pt;}\r
-.mceLabel {color: #000000;}\r
-.mceLabelDisabled {cursor: text; color: #999999;}\r
-.mceEditor {background: #F0F0EE; border: 1px solid #cccccc; padding: 0; margin: 0;}\r
-.mceEditorArea { font-family: 'MS Sans Serif', sans-serif, Verdana, Arial; background: #FFFFFF; padding: 0; margin: 0; }\r
-.mceToolbarTop, .mceToolbarBottom {background: #F0F0EE; line-height: 1px; font-size: 1px;}\r
-.mceToolbarTop {border-bottom: 1px solid #cccccc; padding-bottom: 1px;}\r
-.mceToolbarBottom {border-top: 1px solid #cccccc;}\r
-.mceToolbarContainer {display: block; position: relative; left: 0; top: 0; width: 100%;}\r
-.mceStatusbarTop, .mceStatusbarBottom, .mceStatusbar {height: 20px;}\r
-.mceStatusbarTop .mceStatusbarPathText, .mceStatusbarBottom .mceStatusbarPathText, .mceStatusbar .mceStatusbarPathText {font-family: 'MS Sans Serif', sans-serif, Verdana, Arial; font-size: 9pt; padding: 2px; line-height: 16px; overflow: visible;}\r
-.mceStatusbarTop {border-bottom: 1px solid #cccccc;}\r
-.mceStatusbarBottom {border-top: 1px solid #cccccc;}\r
-.mceStatusbar {border-bottom: 1px solid #cccccc;}\r
-.mcePathItem, .mcePathItem:link, .mcePathItem:visited, .mcePathItem:hover {text-decoration: none; font-family: 'MS Sans Serif', sans-serif, Verdana, Arial; font-size: 9pt; color: #000000;}\r
-.mcePathItem:hover {text-decoration: underline;}\r
-.mceStatusbarPathText {float: left;}\r
-.mceStatusbarResize {float: right; background-image: url('../images/statusbar_resize.gif'); background-repeat: no-repeat; width: 11px; height: 20px; cursor: se-resize;}\r
-.mceResizeBox {width: 10px; height: 10px; display: none; border: 1px dotted gray; margin: 0; padding: 0;}\r
-.mceEditorIframe {border: 0;}\r
-\r
-/* Button CSS rules */\r
-\r
-a.mceButtonDisabled img, a.mceButtonNormal img, a.mceButtonSelected img {width: 20px; height: 20px; cursor: default; margin-top: 1px; margin-left: 1px;}\r
-a.mceButtonDisabled img {border: 0 !important;}\r
-a.mceButtonNormal img, a.mceButtonSelected img {border: 1px solid #F0F0EE !important;}\r
-a.mceButtonSelected img {border: 1px solid #6779AA !important; background-color: #D4D5D8;}\r
-a.mceButtonNormal img:hover, a.mceButtonSelected img:hover {border: 1px solid #0A246A !important; cursor: default; background-color: #B6BDD2;}\r
-a.mceButtonDisabled img {-moz-opacity:0.3; opacity: 0.3; border: 1px solid #F0F0EE !important; cursor: default;}\r
-a.mceTiledButton img {background-image: url('../images/buttons.gif'); background-repeat: no-repeat;}\r
-\r
-/* Menu button CSS rules */\r
-\r
-span.mceMenuButton img, span.mceMenuButtonSelected img {border: 1px solid #F0F0EE; margin-left: 1px;}\r
-span.mceMenuButtonSelected img {border: 1px solid #6779AA; background-color: #B6BDD2;}\r
-span.mceMenuButtonSelected img.mceMenuButton {border: 1px solid #F0F0EE; background-color: transparent;}\r
-span.mceMenuButton img.mceMenuButton, span.mceMenuButtonSelected img.mceMenuButton {border-left: 0; margin-left: 0;}\r
-span.mceMenuButton:hover img, span.mceMenuButtonSelected:hover img {border: 1px solid #0A246A; background-color: #B6BDD2;}\r
-span.mceMenuButton:hover img.mceMenuButton, span.mceMenuButtonSelected:hover img.mceMenuButton {border-left: 0;}\r
-span.mceMenuButtonFocus img {border: 1px solid gray; border-right: 0; margin-left: 1px; background-color: #F5F4F2;}\r
-span.mceMenuButtonFocus img.mceMenuButton {border: 1px solid gray; border-left: 1px solid #F5F4F2; margin-left: 0;}\r
-span.mceMenuHover img {border: 1px solid #0A246A; background-color: #B6BDD2;}\r
-span.mceMenuButtonSelected.mceMenuHover img.mceMenuButton {border: 1px solid #0A246A; background-color: #B6BDD2; border-left: 0;}\r
-\r
-/* Menu */\r
-\r
-.mceMenu {position: absolute; left: 0; top: 0; display: none; z-index: 1000; background-color: white; border: 1px solid gray; font-weight: normal;}\r
-.mceMenu a, .mceMenuTitle, .mceMenuDisabled {display: block; width: 100%; text-decoration: none; background-color: white; font-family: Tahoma, Verdana, Arial, Helvetica; font-size: 11px; line-height: 20px; color: black;}\r
-.mceMenu a:hover {background-color: #B6BDD2; color: black; text-decoration: none !important;}\r
-.mceMenu span {padding-left: 10px; padding-right: 10px; display: block; line-height: 20px;}\r
-.mceMenuSeparator {border-bottom: 1px solid gray; background-color: gray; height: 1px;}\r
-.mceMenuTitle span {padding-left: 5px;}\r
-.mceMenuTitle {background-color: #DDDDDD; font-weight: bold;}\r
-.mceMenuDisabled {color: gray;}\r
-span.mceMenuSelectedItem {background-image: url('../images/menu_check.gif'); background-repeat: no-repeat; background-position: 5px 8px; padding-left: 20px;}\r
-span.mceMenuCheckItem {padding-left: 20px;}\r
-span.mceMenuLine {display: block; position: absolute; left: 0; top: -1px; background-color: #F5F4F2; width: 30px; height: 1px; overflow: hidden; padding-left: 0; padding-right: 0;}\r
-.mceColors table, .mceColors td {margin: 0; padding: 2px;}\r
-a.mceMoreColors {width: auto; padding: 0; margin: 0 3px 3px 3px; text-align: center; border: 1px solid white; text-decoration: none !important;}\r
-.mceColorPreview {position: absolute; overflow:hidden; left: 0; top: 0; margin-left: 3px; margin-top: 15px; width: 16px; height: 4px; background-color: red;}\r
-a.mceMoreColors:hover {border: 1px solid #0A246A;}\r
-.mceColors td a {width: 9px; height: 9px; overflow: hidden; border: 1px solid #808080;}\r
-\r
-/* MSIE 6 specific rules */\r
-\r
-* html a.mceButtonNormal img, * html a.mceButtonSelected img, * html a.mceButtonDisabled img {border: 0 !important; margin-top: 2px; margin-bottom: 1px;}\r
-* html a.mceButtonDisabled img {filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30); border: 0 !important;}\r
-* html a.mceButtonDisabled {border: 1px solid #F0F0EE !important;}\r
-* html a.mceButtonNormal, * html a.mceButtonSelected {border: 1px solid #F0F0EE !important; cursor: default;}\r
-* html a.mceButtonSelected {border: 1px solid #6779AA !important; background-color: #D4D5D8;}\r
-* html a.mceButtonNormal:hover, * html a.mceButtonSelected:hover {border: 1px solid #0A246A !important; background-color: #B6BDD2; cursor: default;}\r
-* html .mceSelectList {margin-top: 2px;}\r
-* html span.mceMenuButton, * html span.mceMenuButtonFocus {position: relative; left: 0; top: 0;}\r
-* html span.mceMenuButton img, * html span.mceMenuButtonSelected img, * html span.mceMenuButtonFocus img {position: relative; top: 1px;}\r
-* html a.mceMoreColors {width: auto;}\r
-* html .mceColors td a {width: 10px; height: 10px;}\r
-* html .mceColorPreview {margin-left: 2px; margin-top: 14px;}\r
-\r
-/* MSIE 7 specific rules */\r
-\r
-*:first-child+html a.mceButtonNormal img, *:first-child+html a.mceButtonSelected img, *:first-child+html a.mceButtonDisabled img {border: 0 !important; margin-top: 2px; margin-bottom: 1px;}\r
-*:first-child+html a.mceButtonDisabled img {filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30); border: 0 !important;}\r
-*:first-child+html a.mceButtonDisabled {border: 1px solid #F0F0EE !important;}\r
-*:first-child+html a.mceButtonNormal, *:first-child+html a.mceButtonSelected {border: 1px solid #F0F0EE !important; cursor: default;}\r
-*:first-child+html a.mceButtonSelected {border: 1px solid #6779AA !important; background-color: #D4D5D8;}\r
-*:first-child+html a.mceButtonNormal:hover, *:first-child+html a.mceButtonSelected:hover {border: 1px solid #0A246A !important; background-color: #B6BDD2; cursor: default;}\r
-*:first-child+html .mceSelectList {margin-top: 2px;}\r
-*:first-child+html span.mceMenuButton, *:first-child+html span.mceMenuButtonFocus {position: relative; left: 0; top: 0;}\r
-*:first-child+html span.mceMenuButton img, *:first-child+html span.mceMenuButtonSelected img, *:first-child+html span.mceMenuButtonFocus img {position: relative; top: 1px;}\r
-*:first-child+html a.mceMoreColors {width: 137px;}\r
-*:first-child+html .mceColors td a {width: 10px; height: 10px;}\r
-*:first-child+html .mceColorPreview {margin: 0; padding-left: 4px; margin-top: 14px; width: 14px;}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/about.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/about.htm
deleted file mode 100644 (file)
index a6957a6..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<HEAD>\r
-<TITLE>About TinyMCE</TITLE>\r
-<link href="style.css" rel="stylesheet" type="text/css">\r
-</HEAD>\r
-\r
-<BODY>\r
-\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">\r
-  <tr> \r
-    <td><span class="title">About TinyMCE</span></td>\r
-    <td align="right"><a href="index.htm"><acronym title="Table of contents">TOC</acronym></a></td>\r
-  </tr>\r
-</table>\r
-<hr noshade>\r
-<br>\r
-TinyMCE is a small WYSIWYG editor control for web browsers such as MSIE or Mozilla \r
-that enables you to edit HTML contents in a more user friendly way. It has common \r
-features that are found in most word processors and should not be difficult to \r
-use.<br>\r
-<br>\r
-<hr noshade>\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">\r
-  <tr> \r
-    <td>Go to: <a href="index.htm">Table of contents</a></td>\r
-    <td align="right"><a href="#">Top</a></td>\r
-  </tr>\r
-</table>\r
-<br>\r
-</BODY>\r
-</HTML>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/common_buttons.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/common_buttons.htm
deleted file mode 100644 (file)
index 518b285..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<HEAD>\r
-<TITLE>Common buttons</TITLE>\r
-<link href="style.css" rel="stylesheet" type="text/css">\r
-</HEAD>\r
-\r
-<BODY>\r
-\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">\r
-  <tr> \r
-    <td><span class="title">Common buttons</span></td>\r
-    <td align="right"><a href="index.htm"><acronym title="Table of contents">TOC</acronym></a></td>\r
-  </tr>\r
-</table>\r
-<hr noshade>\r
-<br>\r
-Below is a short description about each button.\r
-<br>\r
-<br>\r
-<table border="1" cellpadding="3" cellspacing="0">\r
-  <tr>\r
-    <td><img src="../../images/bold.gif" width="20" height="20" alt="Bold text icon" /></td>\r
-    <td>Bold text style (Ctrl+B).</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/italic.gif" width="20" height="20" alt="Italic text icon" /></td>\r
-    <td>Italic text style (Ctrl+I).</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/underline.gif" width="20" height="20" alt="Underline text icon." /></td>\r
-    <td>Underline text style (Ctrl+U).</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/strikethrough.gif" width="20" height="20" alt="Strikethrough text icon." /></td>\r
-    <td>Strikethrough text style.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/justifyleft.gif" width="20" height="20" alt="Align left icon." /></td>\r
-    <td>Align left.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/justifycenter.gif" width="20" height="20" alt="Align center icon." /></td>\r
-    <td>Align center.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/justifyright.gif" width="20" height="20" alt="Align right icon." /></td>\r
-    <td>Align right.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/justifyfull.gif" width="20" height="20" alt="Align full icon." /></td>\r
-    <td>Align full.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/bullist.gif" width="20" height="20" alt="Unordered list/bullet list icon." /></td>\r
-    <td>Unordered list/bullet list.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/numlist.gif" width="20" height="20" alt="Ordered list/numbered list icon." /></td>\r
-    <td>Ordered list/numbered list</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/outdent.gif" width="20" height="20" alt="Outdent/decrease indentation icon." /></td>\r
-    <td>Outdent/decrease indentation.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/indent.gif" width="20" height="20" alt="Indent/increase indentation icon." /></td>\r
-    <td>Indent/increase indentation.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/undo.gif" width="20" height="20" alt="Undo the last operation." /></td>\r
-    <td>Undo the last operation (Ctrl+Z).</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/redo.gif" width="20" height="20" alt="Redo the last operation icon." /></td>\r
-    <td>Redo the last operation (Ctrl+Y).</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/link.gif" width="20" height="20" alt="Insert a new link icon." /></td>\r
-    <td>Insert a new link, read more about this function in the <a href="insert_link_button.htm">Insert \r
-      link section</a>.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/unlink.gif" width="20" height="20" alt="Unlinks the current selection icon." /></td>\r
-    <td>Unlinks the current selection/removes all selected links.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/anchor.gif" width="20" height="20" alt="Insert a new anchor icon." /></td>\r
-    <td>Insert a new anchor, read more about this function in the <a href="insert_anchor_button.htm">Insert anchor section.</a></td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/image.gif" width="20" height="20" alt="Insert a new image icon." /></td>\r
-    <td>Insert a new image, read more about this function in the <a href="insert_image_button.htm">Insert \r
-      image section</a>.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/cleanup.gif" width="20" height="20" alt="Cleanup code icon." /></td>\r
-    <td>Cleanup code/Removes unwanted formating. This function is useful when \r
-      you copy contents from for example a office product.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/help.gif" width="20" height="20" alt="Show help icon." /></td>\r
-    <td>Shows this help window.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/code.gif" width="20" height="20" alt="Source code editor icon." /></td>\r
-    <td>Opens HTML source code editor. </td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../../../plugins/table/images/table.gif" width="20" height="20" alt="Insert table icon." /></td>\r
-    <td>Inserts a new table at the current location. </td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../../../plugins/table/images/table_insert_row_before.gif" width="20" height="20" alt="Adds a row above icon." /></td>\r
-    <td>Adds a row above the current one. </td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../../../plugins/table/images/table_insert_row_after.gif" width="20" height="20" alt="Adds a row under icon." /></td>\r
-    <td>Adds a row under the current one. </td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../../../plugins/table/images/table_delete_row.gif" width="20" height="20" alt="Remove row icon." /></td>\r
-    <td>Removes the row. </td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../../../plugins/table/images/table_insert_col_before.gif" width="20" height="20" alt="Add column before icon." /></td>\r
-    <td>Adds a column before the current one.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../../../plugins/table/images/table_insert_col_after.gif" width="20" height="20" alt="Add column after icon." /></td>\r
-    <td>Adds a column after the current one.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../../../plugins/table/images/table_delete_col.gif" width="20" height="20" alt="Remove column icon." /></td>\r
-    <td>Removes the current column.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/hr.gif" width="20" height="20" alt="Insert horizontal ruler icon." /></td>\r
-    <td>Inserts a new horizontal ruler </td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/removeformat.gif" width="20" height="20" alt="Remove formatting icon." /></td>\r
-    <td>Removes formatting from the selection. </td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/sub.gif" width="20" height="20" alt="Subscript icon." /></td>\r
-    <td>Makes the selection to be subscript. </td>\r
-  </tr>\r
-  <tr>\r
-    <td><img src="../../images/sup.gif" width="20" height="20" alt="Superscript icon." /></td>\r
-    <td>Makes the selection to be superscripted. </td>\r
-  </tr>\r
-</table>\r
-<br>\r
-<hr noshade="noshade" />\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">\r
-  <tr> \r
-    <td>Go to: <a href="index.htm">Table of contents</a></td>\r
-    <td align="right"><a href="#">Top</a></td>\r
-  </tr>\r
-</table>\r
-</BODY>\r
-</HTML>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/create_accessible_content.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/create_accessible_content.htm
deleted file mode 100644 (file)
index f4070a3..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<HEAD>\r
-<TITLE>Insert table button</TITLE>\r
-<link href="style.css" rel="stylesheet" type="text/css">\r
-</HEAD>\r
-\r
-<BODY>\r
-\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">\r
-  <tr> \r
-    <td><span class="title">Create accessible content</span></td>\r
-    <td align="right"><a href="index.htm"><acronym title="Table of contents">TOC</acronym></a></td>\r
-  </tr>\r
-</table>\r
-<hr noshade>\r
-<p>TinyMCE can create HTML content that will be accessible to all users, including those with disabilities using assistive technologies, as well as those using text-based browsers, or those browsing the Web with images turned off. </p>\r
-\r
-<p><strong>Things you can do to make your content accessible:</strong></p>\r
-<ol>\r
-<li><strong>Include an Image Description:</strong> Blind users, or others who are unable to view images, will rely on the Image Description (or Alt text) to take the place of the image. If an image contains no meaning, such as a decoration or a spacer image, leave the Image Description empty. TinyMCE will then insert an empty Alt text attribute that will force assistive technologies to ignore the image. <br /><br /></li>\r
-\r
-<li> <strong>Add Scope to data table header cells:</strong> In the table cell editor dialog window, choose a Scope when creating Header cells so the column or row label in that cell becomes explicitely associated with its data cells. Table cell headers will then be announced with each data cell, making it easier for blind users using a screen reader to understand what the content of each cell represents. <br /><br /></li>\r
-\r
-<li><strong> Structure content with properly nested headings:</strong> In the format selection menu choose Heading 1 to Heading 6 to represent headings in your content,  rather than using other font formating options. Blind users using a screen reader can then extract the headings from the page to generate a summary of the content it contains, and use those headings to navigate quickly to subsections within the page.<br /><br /></li>\r
-\r
-<li><strong> Include alternate content:</strong> Create an alternate page for non-HTML content such as Flash, Java applets, or  embedded movies. This might be a static image, with a description of the image, and a description of the content that would have appeared in its place. An alternate HTML page could also be created, and a link to it included next to the non-HTML object. This will ensure that the content will be accessible to users of assistive technologies that can not view or play the content, and ensure the content will be available to those who do not have the appropriate plugin or helper application installed.<br /><br /></li>\r
-\r
-<li><strong> Check accessbility: </strong> When the AChecker plugin is installed with TinyMCE, click on the Check Accessibility button to generate a report of potential accessibility problems.<br /><br /></li>\r
-\r
-</ol>\r
-\r
-<p>See the <a href="http://checker.atrc.utoronto.ca" target="_new">AChecker Web Site</a> for further details about creating content that will be accessible to all users.<br />\r
-</p>\r
-\r
-<hr noshade>\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">\r
-  <tr> \r
-    <td>Go to: <a href="index.htm">Table of contents</a></td>\r
-    <td align="right"><a href="#">Top</a></td>\r
-  </tr>\r
-</table>\r
-\r
-<br>\r
-</BODY>\r
-</HTML>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_anchor_window.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_anchor_window.gif
deleted file mode 100644 (file)
index 5b5f528..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_anchor_window.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_image_window.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_image_window.gif
deleted file mode 100644 (file)
index cdc617e..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_image_window.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_link_window.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_link_window.gif
deleted file mode 100644 (file)
index 7bad758..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_link_window.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_table_window.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_table_window.gif
deleted file mode 100644 (file)
index 6a032c5..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/images/insert_table_window.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/index.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/index.htm
deleted file mode 100644 (file)
index 9810a93..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<HEAD>\r
-<TITLE>Help Index</TITLE>\r
-<link href="style.css" rel="stylesheet" type="text/css">\r
-</HEAD>\r
-<BODY onload="window.focus();">\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">\r
-  <tr> \r
-    <td><span class="title">Table of contents</span></td>\r
-    <td align="right">&nbsp;</td>\r
-  </tr>\r
-</table>\r
-<hr noshade>\r
-<br>\r
-Click the links below to go to the different help sections. \r
-<ul class="toc_ul">\r
-  <li class="toc_li"><a href="about.htm">About TinyMCE</a></li>\r
-  <li class="toc_li"><a href="common_buttons.htm">Common buttons</a></li>\r
-  <li class="toc_li"><a href="insert_image_button.htm">Insert image button</a></li>\r
-  <li class="toc_li"><a href="insert_link_button.htm">Insert link button</a></li>\r
-  <li class="toc_li"><a href="insert_anchor_button.htm">Insert anchor button</a></li>\r
-  <li class="toc_li"><a href="insert_table_button.htm">Insert table button</a></li>\r
- <li class="toc_li"><a href="create_accessible_content.htm">Create accessible content</a></li>\r
-</ul>\r
-<hr noshade>\r
-</BODY>\r
-</HTML>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_anchor_button.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_anchor_button.htm
deleted file mode 100644 (file)
index 332cbc6..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<HEAD>\r
-<TITLE>Insert anchor button</TITLE>\r
-<link href="style.css" rel="stylesheet" type="text/css">\r
-</HEAD>\r
-\r
-<BODY>\r
-\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">\r
-  <tr> \r
-    <td><span class="title">Insert anchor button</span></td>\r
-    <td align="right"><a href="index.htm"><acronym title="Table of contents">TOC</acronym></a></td>\r
-  </tr>\r
-</table>\r
-<hr noshade>\r
-<br>\r
-This button opens a new window with the insert/edit anchor function.<br>\r
-<br>\r
-<img src="images/insert_anchor_window.gif" width="330" height="139" alt="Anchor dialog/window" /><br>\r
-<br>\r
-There are one field in this window, this is where you enter the name of you anchor point. Remember the anchor name needs to be unique. <br>\r
-<br>\r
-<hr noshade>\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">\r
-  <tr> \r
-    <td>Go to: <a href="index.htm">Table of contents</a></td>\r
-    <td align="right"><a href="#">Top</a></td>\r
-  </tr>\r
-</table>\r
-<br>\r
-</BODY>\r
-</HTML>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_image_button.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_image_button.htm
deleted file mode 100644 (file)
index 1529648..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<HEAD>\r
-<TITLE>Insert image button</TITLE>\r
-<link href="style.css" rel="stylesheet" type="text/css">\r
-</HEAD>\r
-\r
-<BODY>\r
-\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">\r
-  <tr> \r
-    <td><span class="title">Insert image button</span></td>\r
-    <td align="right"><a href="index.htm"><acronym title="Table of contents">TOC</acronym></a></td>\r
-  </tr>\r
-</table>\r
-<hr noshade>\r
-<br>\r
-The insert image button opens the window shown below.<br>\r
-<br>\r
-<img src="images/insert_image_window.gif" alt="Insert image dialog/window" /><br>\r
-<br>\r
-You simply enter a URL to the image you want to link to and enter a image description, \r
-this is then displayed as an alternative text descripton of the image on the page.<br>\r
-<br>\r
-<strong>Field descriptions:</strong><br>\r
-<table border="1" cellspacing="0">\r
-  <tr>\r
-    <td width="150"><strong>Image URL </strong></td>\r
-    <td>URL/path to the image.</td>\r
-  </tr>\r
-  <tr>\r
-    <td width="150"><strong>Image description </strong></td>\r
-    <td>Alternative description of image contents.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>Dimentions</strong></td>\r
-    <td>Image width/height. </td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>Alignment</strong></td>\r
-    <td>Image alignment, useful when wrapping text around images.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>Border</strong></td>\r
-    <td>Border thickness. </td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>VSpace</strong></td>\r
-    <td>Vertical space, useful when wrapping text around images.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>HSpace</strong></td>\r
-    <td>Horizontal space, useful when wrapping text around images.</td>\r
-  </tr>\r
-</table>\r
-<br>\r
-<hr noshade>\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">\r
-  <tr> \r
-    <td>Go to: <a href="index.htm">Table of contents</a></td>\r
-    <td align="right"><a href="#">Top</a></td>\r
-  </tr>\r
-</table>\r
-<br>\r
-</BODY>\r
-</HTML>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_link_button.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_link_button.htm
deleted file mode 100644 (file)
index 4f64450..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<HEAD>\r
-<TITLE>Insert link button</TITLE>\r
-<link href="style.css" rel="stylesheet" type="text/css">\r
-</HEAD>\r
-\r
-<BODY>\r
-\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">\r
-  <tr> \r
-    <td><span class="title">Insert link button</span></td>\r
-    <td align="right"><a href="index.htm"><acronym title="Table of contents">TOC</acronym></a></td>\r
-  </tr>\r
-</table>\r
-<hr noshade>\r
-<br>\r
-This button opens a new window with the insert/edit link function.<br>\r
-<br>\r
-<img src="images/insert_link_window.gif" width="330" height="159" alt="Insert link dialog/window" /><br>\r
-<br>\r
-There are two fields in this window the first one &quot;Link URL&quot; is the \r
-URL of the link. The target enables you to select how the link is to be opened.<br>\r
-<br>\r
-<hr noshade>\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">\r
-  <tr> \r
-    <td>Go to: <a href="index.htm">Table of contents</a></td>\r
-    <td align="right"><a href="#">Top</a></td>\r
-  </tr>\r
-</table>\r
-<br>\r
-</BODY>\r
-</HTML>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_table_button.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/insert_table_button.htm
deleted file mode 100644 (file)
index f352a05..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<HEAD>\r
-<TITLE>Insert table button</TITLE>\r
-<link href="style.css" rel="stylesheet" type="text/css">\r
-</HEAD>\r
-\r
-<BODY>\r
-\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pageheader">\r
-  <tr> \r
-    <td><span class="title">Insert table button</span></td>\r
-    <td align="right"><a href="index.htm"><acronym title="Table of contents">TOC</acronym></a></td>\r
-  </tr>\r
-</table>\r
-<hr noshade>\r
-<br>\r
-The insert table button opens the window shown below. This action enables you to create tables. <br>\r
-<br>\r
-<img src="images/insert_table_window.gif" width="340" height="229" alt="Image of table window" /><br>\r
-<br>\r
-<strong>Field descriptions:</strong><br>\r
-<table border="1" cellspacing="0">\r
-  <tr>\r
-    <td width="150"><strong>Columns</strong></td>\r
-    <td>Number of columns in the  table. </td>\r
-  </tr>\r
-  <tr>\r
-    <td width="150"><strong>Rows</strong></td>\r
-    <td>Number of rows in the new table.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>Cellpadding</strong></td>\r
-    <td>Cellpadding of the table . </td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>Cellspacing</strong></td>\r
-    <td>Cellspacing of the table .</td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>Alignment</strong></td>\r
-    <td>Table alignment . </td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>Border</strong></td>\r
-    <td>Border thinkness of table.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>Width</strong></td>\r
-    <td>Width in pixels of table .</td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>Height</strong></td>\r
-    <td>Height in pixels of table.</td>\r
-  </tr>\r
-  <tr>\r
-    <td><strong>Class</strong></td>\r
-    <td>Style or CSS class of table.</td>\r
-  </tr>\r
-</table>\r
-<br>\r
-<br>\r
-<hr noshade>\r
-<table width="100%" border="0" cellpadding="1" cellspacing="3" class="pagefooter">\r
-  <tr> \r
-    <td>Go to: <a href="index.htm">Table of contents</a></td>\r
-    <td align="right"><a href="#">Top</a></td>\r
-  </tr>\r
-</table>\r
-<br>\r
-</BODY>\r
-</HTML>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/style.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/docs/en/style.css
deleted file mode 100644 (file)
index ebc0538..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-body { background-color: #FFFFFF; }\r
-body, td, .content { font-family: Verdana, Arial, helvetica, sans-serif; font-size: 12px; }\r
-.title { font-family: Verdana, Arial, helvetica, sans-serif; font-size: 16px; font-weight: bold; }\r
-.subtitle { font-size: 12px; font-weight: bold; }\r
-\r
-.toc_ul, .toc_li { margin-left: 8px; line-height: 16px; }\r
-.step_ol, .step_li { margin-left: 11px; line-height: 16px; }\r
-img { border: #000000 solid 1px; }\r
-\r
-a:visited { color: #666666; text-decoration: underline; }\r
-a:active { color: #666666; text-decoration: underline; }\r
-a:hover { color: #666666; text-decoration: underline; }\r
-a { color: #666666; text-decoration: underline; }\r
-\r
-.pageheader { border: #E0E0E0 solid 1px; }\r
-.pagefooter { border: #E0E0E0 solid 1px; }\r
-.sample { background-color: #FFFFFF; border: #000000 solid 1px; }\r
-.samplecontent { font-size: 10px; }\r
-\r
-.code { background-color: #FFFFFF; border: #000000 solid 1px; }\r
-.codecontent { font-size: 10px; }\r
-.codecontent a:visited { color: #666666; text-decoration: none; font-weight: bold }\r
-.codecontent a:active { color: #666666; text-decoration: none; font-weight: bold  }\r
-.codecontent a:hover { color: #666666; text-decoration: none; font-weight: bold  }\r
-.codecontent a { color: #666666; text-decoration: none; font-weight: bold  }\r
-\r
-hr { height: 1px; }\r
-\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js
deleted file mode 100644 (file)
index 7697f19..0000000
+++ /dev/null
@@ -1 +0,0 @@
-tinyMCE.importThemeLanguagePack('advanced');var TinyMCE_AdvancedTheme={_defColors:"000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,008000,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF",_autoImportCSSClasses:true,_resizer:{},_buttons:[['bold','{$lang_bold_img}','lang_bold_desc','Bold'],['italic','{$lang_italic_img}','lang_italic_desc','Italic'],['underline','{$lang_underline_img}','lang_underline_desc','Underline'],['strikethrough','strikethrough.gif','lang_striketrough_desc','Strikethrough'],['justifyleft','justifyleft.gif','lang_justifyleft_desc','JustifyLeft'],['justifycenter','justifycenter.gif','lang_justifycenter_desc','JustifyCenter'],['justifyright','justifyright.gif','lang_justifyright_desc','JustifyRight'],['justifyfull','justifyfull.gif','lang_justifyfull_desc','JustifyFull'],['bullist','bullist.gif','lang_bullist_desc','InsertUnorderedList'],['numlist','numlist.gif','lang_numlist_desc','InsertOrderedList'],['outdent','outdent.gif','lang_outdent_desc','Outdent'],['indent','indent.gif','lang_indent_desc','Indent'],['cut','cut.gif','lang_cut_desc','Cut'],['copy','copy.gif','lang_copy_desc','Copy'],['paste','paste.gif','lang_paste_desc','Paste'],['undo','undo.gif','lang_undo_desc','Undo'],['redo','redo.gif','lang_redo_desc','Redo'],['link','link.gif','lang_link_desc','mceLink',true],['unlink','unlink.gif','lang_unlink_desc','unlink'],['image','image.gif','lang_image_desc','mceImage',true],['cleanup','cleanup.gif','lang_cleanup_desc','mceCleanup'],['help','help.gif','lang_help_desc','mceHelp'],['code','code.gif','lang_theme_code_desc','mceCodeEditor'],['hr','hr.gif','lang_theme_hr_desc','inserthorizontalrule'],['removeformat','removeformat.gif','lang_theme_removeformat_desc','removeformat'],['sub','sub.gif','lang_theme_sub_desc','subscript'],['sup','sup.gif','lang_theme_sup_desc','superscript'],['forecolor','forecolor.gif','lang_theme_forecolor_desc','forecolor',true],['forecolorpicker','forecolor.gif','lang_theme_forecolor_desc','forecolorpicker',true],['backcolor','backcolor.gif','lang_theme_backcolor_desc','HiliteColor',true],['backcolorpicker','backcolor.gif','lang_theme_backcolor_desc','backcolorpicker',true],['charmap','charmap.gif','lang_theme_charmap_desc','mceCharMap'],['visualaid','visualaid.gif','lang_theme_visualaid_desc','mceToggleVisualAid'],['anchor','anchor.gif','lang_theme_anchor_desc','mceInsertAnchor'],['newdocument','newdocument.gif','lang_newdocument_desc','mceNewDocument']],_buttonMap:'anchor,backcolor,bold,bullist,charmap,cleanup,code,copy,cut,forecolor,help,hr,image,indent,italic,justifycenter,justifyfull,justifyleft,justifyright,link,newdocument,numlist,outdent,paste,redo,removeformat,strikethrough,sub,sup,underline,undo,unlink,visualaid,advhr,ltr,rtl,emotions,flash,fullpage,fullscreen,iespell,insertdate,inserttime,pastetext,pasteword,selectall,preview,print,save,replace,search,table,cell_props,delete_col,delete_row,col_after,col_before,row_after,row_before,merge_cells,row_props,split_cells,delete_table',getControlHTML:function(button_name){var i,x,but;for(i=0;i<TinyMCE_AdvancedTheme._buttons.length;i++){but=TinyMCE_AdvancedTheme._buttons[i];if(but[0]==button_name&&(button_name=="forecolor"||button_name=="backcolor"))return tinyMCE.getMenuButtonHTML(but[0],but[2],'{$themeurl}/images/'+but[1],but[3]+"Menu",but[3],(but.length>4?but[4]:false),(but.length>5?but[5]:null));if(but[0]==button_name)return tinyMCE.getButtonHTML(but[0],but[2],'{$themeurl}/images/'+but[1],but[3],(but.length>4?but[4]:false),(but.length>5?but[5]:null))}switch(button_name){case"formatselect":var html='<select id="{$editor_id}_formatSelect" name="{$editor_id}_formatSelect" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'FormatBlock\',false,this.options[this.selectedIndex].value);" class="mceSelectList">';var formats=tinyMCE.getParam("theme_advanced_blockformats","p,address,pre,h1,h2,h3,h4,h5,h6",true).split(',');var lookup=[['p','{$lang_theme_paragraph}'],['address','{$lang_theme_address}'],['pre','{$lang_theme_pre}'],['h1','{$lang_theme_h1}'],['h2','{$lang_theme_h2}'],['h3','{$lang_theme_h3}'],['h4','{$lang_theme_h4}'],['h5','{$lang_theme_h5}'],['h6','{$lang_theme_h6}'],['div','{$lang_theme_div}'],['blockquote','{$lang_theme_blockquote}'],['code','{$lang_theme_code}'],['dt','{$lang_theme_dt}'],['dd','{$lang_theme_dd}'],['samp','{$lang_theme_samp}']];html+='<option value="">{$lang_theme_block}</option>';for(var i=0;i<formats.length;i++){for(var x=0;x<lookup.length;x++){if(formats[i]==lookup[x][0])html+='<option value="&lt;'+lookup[x][0]+'&gt;">'+lookup[x][1]+'</option>'}}html+='</select>';return html;case"styleselect":return'<select id="{$editor_id}_styleSelect" onmousedown="tinyMCE.themes.advanced._setupCSSClasses(\'{$editor_id}\');" name="{$editor_id}_styleSelect" onfocus="tinyMCE.addSelectAccessibility(event,this,window);" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceSetCSSClass\',false,this.options[this.selectedIndex].value);" class="mceSelectList">{$style_select_options}</select>';case"fontselect":var fontHTML='<select id="{$editor_id}_fontNameSelect" name="{$editor_id}_fontNameSelect" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'FontName\',false,this.options[this.selectedIndex].value);" class="mceSelectList"><option value="">{$lang_theme_fontdefault}</option>';var iFonts='Arial=arial,helvetica,sans-serif;Courier New=courier new,courier,monospace;Georgia=georgia,times new roman,times,serif;Tahoma=tahoma,arial,helvetica,sans-serif;Times New Roman=times new roman,times,serif;Verdana=verdana,arial,helvetica,sans-serif;Impact=impact;WingDings=wingdings';var nFonts='Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats';var fonts=tinyMCE.getParam("theme_advanced_fonts",nFonts).split(';');for(i=0;i<fonts.length;i++){if(fonts[i]!=''){var parts=fonts[i].split('=');fontHTML+='<option value="'+parts[1]+'">'+parts[0]+'</option>'}}fontHTML+='</select>';return fontHTML;case"fontsizeselect":return'<select id="{$editor_id}_fontSizeSelect" name="{$editor_id}_fontSizeSelect" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'FontSize\',false,this.options[this.selectedIndex].value);" class="mceSelectList">'+'<option value="0">{$lang_theme_font_size}</option>'+'<option value="1">1 (8 pt)</option>'+'<option value="2">2 (10 pt)</option>'+'<option value="3">3 (12 pt)</option>'+'<option value="4">4 (14 pt)</option>'+'<option value="5">5 (18 pt)</option>'+'<option value="6">6 (24 pt)</option>'+'<option value="7">7 (36 pt)</option>'+'</select>';case"|":case"separator":return'<img src="{$themeurl}/images/separator.gif" width="2" height="20" class="mceSeparatorLine" alt="" />';case"spacer":return'<img src="{$themeurl}/images/separator.gif" width="2" height="15" border="0" class="mceSeparatorLine" style="vertical-align: middle" alt="" />';case"rowseparator":return'<br />'}return""},execCommand:function(editor_id,element,command,user_interface,value){switch(command){case'mceHelp':tinyMCE.openWindow({file:'about.htm',width:480,height:380},{tinymce_version:tinyMCE.majorVersion+"."+tinyMCE.minorVersion,tinymce_releasedate:tinyMCE.releaseDate,inline:"yes"});return true;case"mceLink":var inst=tinyMCE.getInstanceById(editor_id);var doc=inst.getDoc();var selectedText="";if(tinyMCE.isMSIE){var rng=doc.selection.createRange();selectedText=rng.text}else selectedText=inst.getSel().toString();if(!tinyMCE.linkElement){if((tinyMCE.selectedElement.nodeName.toLowerCase()!="img")&&(selectedText.length<=0))return true}var href="",target="",title="",onclick="",action="insert",style_class="";if(tinyMCE.selectedElement.nodeName.toLowerCase()=="a")tinyMCE.linkElement=tinyMCE.selectedElement;if(tinyMCE.linkElement!=null&&tinyMCE.getAttrib(tinyMCE.linkElement,'href')=="")tinyMCE.linkElement=null;if(tinyMCE.linkElement){href=tinyMCE.getAttrib(tinyMCE.linkElement,'href');target=tinyMCE.getAttrib(tinyMCE.linkElement,'target');title=tinyMCE.getAttrib(tinyMCE.linkElement,'title');onclick=tinyMCE.getAttrib(tinyMCE.linkElement,'onclick');style_class=tinyMCE.getAttrib(tinyMCE.linkElement,'class');if(onclick=="")onclick=tinyMCE.getAttrib(tinyMCE.linkElement,'onclick');onclick=tinyMCE.cleanupEventStr(onclick);href=eval(tinyMCE.settings['urlconverter_callback']+"(href, tinyMCE.linkElement, true);");mceRealHref=tinyMCE.getAttrib(tinyMCE.linkElement,'mce_href');if(mceRealHref!=""){href=mceRealHref;if(tinyMCE.getParam('convert_urls'))href=eval(tinyMCE.settings['urlconverter_callback']+"(href, tinyMCE.linkElement, true);")}action="update"}var template=new Array();template['file']='link.htm';template['width']=310;template['height']=200;template['width']+=tinyMCE.getLang('lang_insert_link_delta_width',0);template['height']+=tinyMCE.getLang('lang_insert_link_delta_height',0);if(inst.settings['insertlink_callback']){var returnVal=eval(inst.settings['insertlink_callback']+"(href, target, title, onclick, action, style_class);");if(returnVal&&returnVal['href'])TinyMCE_AdvancedTheme._insertLink(returnVal['href'],returnVal['target'],returnVal['title'],returnVal['onclick'],returnVal['style_class'])}else{tinyMCE.openWindow(template,{href:href,target:target,title:title,onclick:onclick,action:action,className:style_class,inline:"yes"})}return true;case"mceImage":var src="",alt="",border="",hspace="",vspace="",width="",height="",align="";var title="",onmouseover="",onmouseout="",action="insert";var img=tinyMCE.imgElement;var inst=tinyMCE.getInstanceById(editor_id);if(tinyMCE.selectedElement!=null&&tinyMCE.selectedElement.nodeName.toLowerCase()=="img"){img=tinyMCE.selectedElement;tinyMCE.imgElement=img}if(img){if(tinyMCE.getAttrib(img,'name').indexOf('mce_')==0)return true;src=tinyMCE.getAttrib(img,'src');alt=tinyMCE.getAttrib(img,'alt');if(alt=="")alt=tinyMCE.getAttrib(img,'title');if(tinyMCE.isGecko){var w=img.style.width;if(w!=null&&w!="")img.setAttribute("width",w);var h=img.style.height;if(h!=null&&h!="")img.setAttribute("height",h)}border=tinyMCE.getAttrib(img,'border');hspace=tinyMCE.getAttrib(img,'hspace');vspace=tinyMCE.getAttrib(img,'vspace');width=tinyMCE.getAttrib(img,'width');height=tinyMCE.getAttrib(img,'height');align=tinyMCE.getAttrib(img,'align');onmouseover=tinyMCE.getAttrib(img,'onmouseover');onmouseout=tinyMCE.getAttrib(img,'onmouseout');title=tinyMCE.getAttrib(img,'title');if(tinyMCE.isMSIE){width=img.attributes['width'].specified?width:"";height=img.attributes['height'].specified?height:""}src=eval(tinyMCE.settings['urlconverter_callback']+"(src, img, true);");mceRealSrc=tinyMCE.getAttrib(img,'mce_src');if(mceRealSrc!=""){src=mceRealSrc;if(tinyMCE.getParam('convert_urls'))src=eval(tinyMCE.settings['urlconverter_callback']+"(src, img, true);")}action="update"}var template=new Array();template['file']='image.htm?src={$src}';template['width']=355;template['height']=265+(tinyMCE.isMSIE?25:0);template['width']+=tinyMCE.getLang('lang_insert_image_delta_width',0);template['height']+=tinyMCE.getLang('lang_insert_image_delta_height',0);if(inst.settings['insertimage_callback']){var returnVal=eval(inst.settings['insertimage_callback']+"(src, alt, border, hspace, vspace, width, height, align, title, onmouseover, onmouseout, action);");if(returnVal&&returnVal['src'])TinyMCE_AdvancedTheme._insertImage(returnVal['src'],returnVal['alt'],returnVal['border'],returnVal['hspace'],returnVal['vspace'],returnVal['width'],returnVal['height'],returnVal['align'],returnVal['title'],returnVal['onmouseover'],returnVal['onmouseout'])}else tinyMCE.openWindow(template,{src:src,alt:alt,border:border,hspace:hspace,vspace:vspace,width:width,height:height,align:align,title:title,onmouseover:onmouseover,onmouseout:onmouseout,action:action,inline:"yes"});return true;case"forecolor":var fcp=new TinyMCE_Layer(editor_id+'_fcPreview',false),p,img,elm;TinyMCE_AdvancedTheme._hideMenus(editor_id);if(!fcp.exists()){fcp.create('div','mceColorPreview',document.getElementById(editor_id+'_toolbar'));elm=fcp.getElement();elm._editor_id=editor_id;elm._command="forecolor";elm._switchId=editor_id+"_forecolor";tinyMCE.addEvent(elm,'click',TinyMCE_AdvancedTheme._handleMenuEvent);tinyMCE.addEvent(elm,'mouseover',TinyMCE_AdvancedTheme._handleMenuEvent);tinyMCE.addEvent(elm,'mouseout',TinyMCE_AdvancedTheme._handleMenuEvent)}img=tinyMCE.selectNodes(document.getElementById(editor_id+"_forecolor"),function(n){return n.nodeName=="IMG"})[0];p=tinyMCE.getAbsPosition(img,document.getElementById(editor_id+'_toolbar'));fcp.moveTo(p.absLeft,p.absTop);fcp.getElement().style.backgroundColor=value!=null?value:tinyMCE.getInstanceById(editor_id).foreColor;fcp.show();return false;case"forecolorpicker":this._pickColor(editor_id,'forecolor');return true;case"forecolorMenu":TinyMCE_AdvancedTheme._hideMenus(editor_id);var ml=new TinyMCE_Layer(editor_id+'_fcMenu');if(!ml.exists())ml.create('div','mceMenu',document.body,TinyMCE_AdvancedTheme._getColorHTML(editor_id,'theme_advanced_text_colors','forecolor'));tinyMCE.switchClass(editor_id+'_forecolor','mceMenuButtonFocus');ml.moveRelativeTo(document.getElementById(editor_id+"_forecolor"),'bl');ml.moveBy(tinyMCE.isMSIE&&!tinyMCE.isOpera?-1:1,-1);if(tinyMCE.isOpera)ml.moveBy(0,-2);ml.show();return true;case"HiliteColor":var bcp=new TinyMCE_Layer(editor_id+'_bcPreview',false),p,img;TinyMCE_AdvancedTheme._hideMenus(editor_id);if(!bcp.exists()){bcp.create('div','mceColorPreview',document.getElementById(editor_id+'_toolbar'));elm=bcp.getElement();elm._editor_id=editor_id;elm._command="HiliteColor";elm._switchId=editor_id+"_backcolor";tinyMCE.addEvent(elm,'click',TinyMCE_AdvancedTheme._handleMenuEvent);tinyMCE.addEvent(elm,'mouseover',TinyMCE_AdvancedTheme._handleMenuEvent);tinyMCE.addEvent(elm,'mouseout',TinyMCE_AdvancedTheme._handleMenuEvent)}img=tinyMCE.selectNodes(document.getElementById(editor_id+"_backcolor"),function(n){return n.nodeName=="IMG"})[0];p=tinyMCE.getAbsPosition(img,document.getElementById(editor_id+'_toolbar'));bcp.moveTo(p.absLeft,p.absTop);bcp.getElement().style.backgroundColor=value!=null?value:tinyMCE.getInstanceById(editor_id).backColor;bcp.show();return false;case"HiliteColorMenu":TinyMCE_AdvancedTheme._hideMenus(editor_id);var ml=new TinyMCE_Layer(editor_id+'_bcMenu');if(!ml.exists())ml.create('div','mceMenu',document.body,TinyMCE_AdvancedTheme._getColorHTML(editor_id,'theme_advanced_background_colors','HiliteColor'));tinyMCE.switchClass(editor_id+'_backcolor','mceMenuButtonFocus');ml.moveRelativeTo(document.getElementById(editor_id+"_backcolor"),'bl');ml.moveBy(tinyMCE.isMSIE&&!tinyMCE.isOpera?-1:1,-1);if(tinyMCE.isOpera)ml.moveBy(0,-2);ml.show();return true;case"backcolorpicker":this._pickColor(editor_id,'HiliteColor');return true;case"mceColorPicker":if(user_interface){var template=[];if(!value['callback']&&!value['color'])value['color']=value['document'].getElementById(value['element_id']).value;template['file']='color_picker.htm';template['width']=380;template['height']=250;template['close_previous']="no";template['width']+=tinyMCE.getLang('lang_theme_advanced_colorpicker_delta_width',0);template['height']+=tinyMCE.getLang('lang_theme_advanced_colorpicker_delta_height',0);if(typeof(value['store_selection'])=="undefined")value['store_selection']=true;tinyMCE.lastColorPickerValue=value;tinyMCE.openWindow(template,{editor_id:editor_id,mce_store_selection:value['store_selection'],inline:"yes",command:"mceColorPicker",input_color:value['color']})}else{var savedVal=tinyMCE.lastColorPickerValue,elm;if(savedVal['callback']){savedVal['callback'](value);return true}elm=savedVal['document'].getElementById(savedVal['element_id']);elm.value=value;if(elm.onchange!=null&&elm.onchange!='')eval('elm.onchange();')}return true;case"mceCodeEditor":var template=new Array();template['file']='source_editor.htm';template['width']=parseInt(tinyMCE.getParam("theme_advanced_source_editor_width",720));template['height']=parseInt(tinyMCE.getParam("theme_advanced_source_editor_height",580));tinyMCE.openWindow(template,{editor_id:editor_id,resizable:"yes",scrollbars:"no",inline:"yes"});return true;case"mceCharMap":var template=new Array();template['file']='charmap.htm';template['width']=550+(tinyMCE.isOpera?40:0);template['height']=250;template['width']+=tinyMCE.getLang('lang_theme_advanced_charmap_delta_width',0);template['height']+=tinyMCE.getLang('lang_theme_advanced_charmap_delta_height',0);tinyMCE.openWindow(template,{editor_id:editor_id,inline:"yes"});return true;case"mceInsertAnchor":var template=new Array();template['file']='anchor.htm';template['width']=320;template['height']=90+(tinyMCE.isNS7?30:0);template['width']+=tinyMCE.getLang('lang_theme_advanced_anchor_delta_width',0);template['height']+=tinyMCE.getLang('lang_theme_advanced_anchor_delta_height',0);tinyMCE.openWindow(template,{editor_id:editor_id,inline:"yes"});return true;case"mceNewDocument":if(confirm(tinyMCE.entityDecode(tinyMCE.getLang('lang_newdocument'))))tinyMCE.execInstanceCommand(editor_id,'mceSetContent',false,' ');return true}return false},getEditorTemplate:function(settings,editorId){function removeFromArray(in_array,remove_array){var outArray=new Array(),skip;for(var i=0;i<in_array.length;i++){skip=false;for(var j=0;j<remove_array.length;j++){if(in_array[i]==remove_array[j]){skip=true}}if(!skip){outArray[outArray.length]=in_array[i]}}return outArray}function addToArray(in_array,add_array){for(var i=0;i<add_array.length;i++){in_array[in_array.length]=add_array[i]}return in_array}var template=new Array();var deltaHeight=0;var resizing=tinyMCE.getParam("theme_advanced_resizing",false);var path=tinyMCE.getParam("theme_advanced_path",true);var statusbarHTML='<div id="{$editor_id}_path" class="mceStatusbarPathText" style="display: '+(path?"block":"none")+'">&#160;</div><div id="{$editor_id}_resize" class="mceStatusbarResize" style="display: '+(resizing?"block":"none")+'" onmousedown="tinyMCE.themes.advanced._setResizing(event,\'{$editor_id}\',true);"></div><br style="clear: both" />';var layoutManager=tinyMCE.getParam("theme_advanced_layout_manager","SimpleLayout");var styleSelectHTML='<option value="">{$lang_theme_style_select}</option>';if(settings['theme_advanced_styles']){var stylesAr=settings['theme_advanced_styles'].split(';');for(var i=0;i<stylesAr.length;i++){var key,value;key=stylesAr[i].split('=')[0];value=stylesAr[i].split('=')[1];styleSelectHTML+='<option value="'+value+'">'+key+'</option>'}TinyMCE_AdvancedTheme._autoImportCSSClasses=false}switch(layoutManager){case"SimpleLayout":var toolbarHTML="";var toolbarLocation=tinyMCE.getParam("theme_advanced_toolbar_location","bottom");var toolbarAlign=tinyMCE.getParam("theme_advanced_toolbar_align","center");var pathLocation=tinyMCE.getParam("theme_advanced_path_location","none");var statusbarLocation=tinyMCE.getParam("theme_advanced_statusbar_location",pathLocation);var defVals={theme_advanced_buttons1:"bold,italic,underline,strikethrough,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,styleselect,formatselect",theme_advanced_buttons2:"bullist,numlist,separator,outdent,indent,separator,undo,redo,separator,link,unlink,anchor,image,cleanup,help,code",theme_advanced_buttons3:"hr,removeformat,visualaid,separator,sub,sup,separator,charmap"};toolbarHTML+='<a href="#" accesskey="q" title="'+tinyMCE.getLang("lang_toolbar_focus")+'"';if(!tinyMCE.getParam("accessibility_focus"))toolbarHTML+=' onfocus="tinyMCE.getInstanceById(\''+editorId+'\').getWin().focus();"';toolbarHTML+='></a>';for(var i=1;i<100;i++){var def=defVals["theme_advanced_buttons"+i];var buttons=tinyMCE.getParam("theme_advanced_buttons"+i,def==null?'':def,true,',');if(buttons.length==0)break;buttons=removeFromArray(buttons,tinyMCE.getParam("theme_advanced_disable","",true,','));buttons=addToArray(buttons,tinyMCE.getParam("theme_advanced_buttons"+i+"_add","",true,','));buttons=addToArray(tinyMCE.getParam("theme_advanced_buttons"+i+"_add_before","",true,','),buttons);for(var b=0;b<buttons.length;b++)toolbarHTML+=tinyMCE.getControlHTML(buttons[b]);if(buttons.length>0){toolbarHTML+="<br />";deltaHeight-=23}}toolbarHTML+='<a href="#" accesskey="z" onfocus="tinyMCE.getInstanceById(\''+editorId+'\').getWin().focus();"></a>';template['html']='<table class="mceEditor" border="0" cellpadding="0" cellspacing="0" width="{$width}" height="{$height}" style="width:{$width_style};height:{$height_style}"><tbody>';if(toolbarLocation=="top")template['html']+='<tr><td dir="ltr" class="mceToolbarTop" align="'+toolbarAlign+'" height="1" nowrap="nowrap"><span id="'+editorId+'_toolbar" class="mceToolbarContainer">'+toolbarHTML+'</span></td></tr>';if(statusbarLocation=="top"){template['html']+='<tr><td class="mceStatusbarTop" height="1">'+statusbarHTML+'</td></tr>';deltaHeight-=23}template['html']+='<tr><td align="center"><span id="{$editor_id}"></span></td></tr>';if(toolbarLocation=="bottom")template['html']+='<tr><td dir="ltr" class="mceToolbarBottom" align="'+toolbarAlign+'" height="1"><span id="'+editorId+'_toolbar" class="mceToolbarContainer">'+toolbarHTML+'</span></td></tr>';if(toolbarLocation=="external"){var bod=document.body;var elm=document.createElement("div");toolbarHTML=tinyMCE.replaceVar(toolbarHTML,'style_select_options',styleSelectHTML);toolbarHTML=tinyMCE.applyTemplate(toolbarHTML,{editor_id:editorId});elm.className="mceToolbarExternal";elm.id=editorId+"_toolbar";elm.innerHTML='<table width="100%" border="0" align="center"><tr><td align="center">'+toolbarHTML+'</td></tr></table>';bod.appendChild(elm);deltaHeight=0;tinyMCE.getInstanceById(editorId).toolbarElement=elm;}else{tinyMCE.getInstanceById(editorId).toolbarElement=null}if(statusbarLocation=="bottom"){template['html']+='<tr><td class="mceStatusbarBottom" height="1">'+statusbarHTML+'</td></tr>';deltaHeight-=23}template['html']+='</tbody></table>';break;case"RowLayout":template['html']='<table class="mceEditor" border="0" cellpadding="0" cellspacing="0" width="{$width}" height="{$height}" style="width:{$width}px;height:{$height}px"><tbody>';var containers=tinyMCE.getParam("theme_advanced_containers","",true,",");var defaultContainerCSS=tinyMCE.getParam("theme_advanced_containers_default_class","container");var defaultContainerAlign=tinyMCE.getParam("theme_advanced_containers_default_align","center");for(var i=0;i<containers.length;i++){if(containers[i]=="mceEditor")template['html']+='<tr><td align="center" class="mceEditor_border"><span id="{$editor_id}"></span></td></tr>';else if(containers[i]=="mceElementpath"||containers[i]=="mceStatusbar"){var pathClass="mceStatusbar";if(i==containers.length-1){pathClass="mceStatusbarBottom"}else if(i==0){pathClass="mceStatusbar"}else{deltaHeight-=2}template['html']+='<tr><td class="'+pathClass+'" height="1">'+statusbarHTML+'</td></tr>';deltaHeight-=22}else{var curContainer=tinyMCE.getParam("theme_advanced_container_"+containers[i],"",true,',');var curContainerHTML="";var curAlign=tinyMCE.getParam("theme_advanced_container_"+containers[i]+"_align",defaultContainerAlign);var curCSS=tinyMCE.getParam("theme_advanced_container_"+containers[i]+"_class",defaultContainerCSS);curContainer=removeFromArray(curContainer,tinyMCE.getParam("theme_advanced_disable","",true,','));for(var j=0;j<curContainer.length;j++)curContainerHTML+=tinyMCE.getControlHTML(curContainer[j]);if(curContainer.length>0){curContainerHTML+="<br />";deltaHeight-=23}template['html']+='<tr><td class="'+curCSS+'" align="'+curAlign+'" height="1">'+curContainerHTML+'</td></tr>'}}template['html']+='</tbody></table>';break;case"CustomLayout":var customLayout=tinyMCE.getParam("theme_advanced_custom_layout","");if(customLayout!=""&&eval("typeof("+customLayout+")")!="undefined"){template=eval(customLayout+"(template);")}break}if(resizing)template['html']+='<span id="{$editor_id}_resize_box" class="mceResizeBox"></span>';template['html']=tinyMCE.replaceVar(template['html'],'style_select_options',styleSelectHTML);if(!template['delta_width'])template['delta_width']=0;if(!template['delta_height'])template['delta_height']=deltaHeight;return template},initInstance:function(inst){if(tinyMCE.getParam("theme_advanced_resizing",false)){if(tinyMCE.getParam("theme_advanced_resizing_use_cookie",true)){var w=TinyMCE_AdvancedTheme._getCookie("TinyMCE_"+inst.editorId+"_width");var h=TinyMCE_AdvancedTheme._getCookie("TinyMCE_"+inst.editorId+"_height");TinyMCE_AdvancedTheme._resizeTo(inst,w,h,tinyMCE.getParam("theme_advanced_resize_horizontal",true))}}inst.addShortcut('ctrl','k','lang_link_desc','mceLink')},removeInstance:function(inst){new TinyMCE_Layer(inst.editorId+'_fcMenu').remove();new TinyMCE_Layer(inst.editorId+'_bcMenu').remove()},hideInstance:function(inst){TinyMCE_AdvancedTheme._hideMenus(inst.editorId)},_handleMenuEvent:function(e){var te=tinyMCE.isMSIE?window.event.srcElement:e.target;tinyMCE._menuButtonEvent(e.type=="mouseover"?"over":"out",document.getElementById(te._switchId));if(e.type=="click")tinyMCE.execInstanceCommand(te._editor_id,te._command)},_hideMenus:function(id){var fcml=new TinyMCE_Layer(id+'_fcMenu'),bcml=new TinyMCE_Layer(id+'_bcMenu');if(fcml.exists()&&fcml.isVisible()){tinyMCE.switchClass(id+'_forecolor','mceMenuButton');fcml.hide()}if(bcml.exists()&&bcml.isVisible()){tinyMCE.switchClass(id+'_backcolor','mceMenuButton');bcml.hide()}},handleNodeChange:function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection,setup_content){var alignNode,breakOut,classNode;function selectByValue(select_elm,value,first_index){first_index=typeof(first_index)=="undefined"?false:true;if(select_elm){for(var i=0;i<select_elm.options.length;i++){var ov=""+select_elm.options[i].value;if(first_index&&ov.toLowerCase().indexOf(value.toLowerCase())==0){select_elm.selectedIndex=i;return true}if(ov==value){select_elm.selectedIndex=i;return true}}}return false};if(node==null)return;var pathElm=document.getElementById(editor_id+"_path");var inst=tinyMCE.getInstanceById(editor_id);var doc=inst.getDoc();TinyMCE_AdvancedTheme._hideMenus(editor_id);if(pathElm){var parentNode=node;var path=new Array();while(parentNode!=null){if(parentNode.nodeName.toUpperCase()=="BODY"){break}if(parentNode.nodeType==1&&tinyMCE.getAttrib(parentNode,"class").indexOf('mceItemHidden')==-1){path[path.length]=parentNode}parentNode=parentNode.parentNode}var html="";for(var i=path.length-1;i>=0;i--){var nodeName=path[i].nodeName.toLowerCase();var nodeData="";if(nodeName.indexOf("html:")==0)nodeName=nodeName.substring(5);if(nodeName=="b"){nodeName="strong"}if(nodeName=="i"){nodeName="em"}if(nodeName=="span"){var cn=tinyMCE.getAttrib(path[i],"class");if(cn!=""&&cn.indexOf('mceItem')==-1)nodeData+="class: "+cn+" ";var st=tinyMCE.getAttrib(path[i],"style");if(st!=""){st=tinyMCE.serializeStyle(tinyMCE.parseStyle(st));nodeData+="style: "+tinyMCE.xmlEncode(st)+" "}}if(nodeName=="font"){if(tinyMCE.getParam("convert_fonts_to_spans"))nodeName="span";var face=tinyMCE.getAttrib(path[i],"face");if(face!="")nodeData+="font: "+tinyMCE.xmlEncode(face)+" ";var size=tinyMCE.getAttrib(path[i],"size");if(size!="")nodeData+="size: "+tinyMCE.xmlEncode(size)+" ";var color=tinyMCE.getAttrib(path[i],"color");if(color!="")nodeData+="color: "+tinyMCE.xmlEncode(color)+" "}if(tinyMCE.getAttrib(path[i],'id')!=""){nodeData+="id: "+path[i].getAttribute('id')+" "}var className=tinyMCE.getVisualAidClass(tinyMCE.getAttrib(path[i],"class"),false);if(className!=""&&className.indexOf('mceItem')==-1)nodeData+="class: "+className+" ";if(tinyMCE.getAttrib(path[i],'src')!=""){var src=tinyMCE.getAttrib(path[i],"mce_src");if(src=="")src=tinyMCE.getAttrib(path[i],"src");nodeData+="src: "+tinyMCE.xmlEncode(src)+" "}if(path[i].nodeName=='A'&&tinyMCE.getAttrib(path[i],'href')!=""){var href=tinyMCE.getAttrib(path[i],"mce_href");if(href=="")href=tinyMCE.getAttrib(path[i],"href");nodeData+="href: "+tinyMCE.xmlEncode(href)+" "}className=tinyMCE.getAttrib(path[i],"class");if((nodeName=="img"||nodeName=="span")&&className.indexOf('mceItem')!=-1){nodeName=className.replace(/mceItem([a-z]+)/gi,'$1').toLowerCase();nodeData=path[i].getAttribute('title')}if(nodeName=="a"&&(anchor=tinyMCE.getAttrib(path[i],"name"))!=""){nodeName="a";nodeName+="#"+tinyMCE.xmlEncode(anchor);nodeData=""}if(tinyMCE.getAttrib(path[i],'name').indexOf("mce_")!=0){var className=tinyMCE.getVisualAidClass(tinyMCE.getAttrib(path[i],"class"),false);if(className!=""&&className.indexOf('mceItem')==-1){nodeName+="."+className}}var cmd='tinyMCE.execInstanceCommand(\''+editor_id+'\',\'mceSelectNodeDepth\',false,\''+i+'\');';html+='<a title="'+nodeData+'" href="javascript:'+cmd+'" onclick="'+cmd+'return false;" onmousedown="return false;" target="_self" class="mcePathItem">'+nodeName+'</a>';if(i>0){html+=" &raquo; "}}pathElm.innerHTML='<a href="#" accesskey="x"></a>'+tinyMCE.getLang('lang_theme_path')+": "+html+'&#160;'}tinyMCE.switchClass(editor_id+'_justifyleft','mceButtonNormal');tinyMCE.switchClass(editor_id+'_justifyright','mceButtonNormal');tinyMCE.switchClass(editor_id+'_justifycenter','mceButtonNormal');tinyMCE.switchClass(editor_id+'_justifyfull','mceButtonNormal');tinyMCE.switchClass(editor_id+'_bold','mceButtonNormal');tinyMCE.switchClass(editor_id+'_italic','mceButtonNormal');tinyMCE.switchClass(editor_id+'_underline','mceButtonNormal');tinyMCE.switchClass(editor_id+'_strikethrough','mceButtonNormal');tinyMCE.switchClass(editor_id+'_bullist','mceButtonNormal');tinyMCE.switchClass(editor_id+'_numlist','mceButtonNormal');tinyMCE.switchClass(editor_id+'_sub','mceButtonNormal');tinyMCE.switchClass(editor_id+'_sup','mceButtonNormal');tinyMCE.switchClass(editor_id+'_anchor','mceButtonNormal');tinyMCE.switchClass(editor_id+'_link','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_unlink','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_outdent','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_image','mceButtonNormal');tinyMCE.switchClass(editor_id+'_hr','mceButtonNormal');if(node.nodeName=="A"&&tinyMCE.getAttrib(node,"class").indexOf('mceItemAnchor')!=-1)tinyMCE.switchClass(editor_id+'_anchor','mceButtonSelected');var anchorLink=tinyMCE.getParentElement(node,"a","href");if(anchorLink||any_selection){tinyMCE.switchClass(editor_id+'_link',anchorLink?'mceButtonSelected':'mceButtonNormal');tinyMCE.switchClass(editor_id+'_unlink',anchorLink?'mceButtonSelected':'mceButtonNormal')}tinyMCE.switchClass(editor_id+'_visualaid',visual_aid?'mceButtonSelected':'mceButtonNormal');if(undo_levels!=-1){tinyMCE.switchClass(editor_id+'_undo','mceButtonDisabled');tinyMCE.switchClass(editor_id+'_redo','mceButtonDisabled')}if(tinyMCE.getParentElement(node,"li,blockquote"))tinyMCE.switchClass(editor_id+'_outdent','mceButtonNormal');if(undo_index!=-1&&(undo_index<undo_levels-1&&undo_levels>0))tinyMCE.switchClass(editor_id+'_redo','mceButtonNormal');if(undo_index!=-1&&(undo_index>0&&undo_levels>0))tinyMCE.switchClass(editor_id+'_undo','mceButtonNormal');var selectElm=document.getElementById(editor_id+"_styleSelect");if(selectElm){TinyMCE_AdvancedTheme._setupCSSClasses(editor_id);classNode=node;breakOut=false;var index=0;do{if(classNode&&classNode.className){for(var i=0;i<selectElm.options.length;i++){if(selectElm.options[i].value==classNode.className){index=i;breakOut=true;break}}}}while(!breakOut&&classNode!=null&&(classNode=classNode.parentNode)!=null);selectElm.selectedIndex=index}var selectElm=document.getElementById(editor_id+"_formatSelect");if(selectElm){var elm=tinyMCE.getParentElement(node,"p,div,h1,h2,h3,h4,h5,h6,pre,address");if(elm)selectByValue(selectElm,"<"+elm.nodeName.toLowerCase()+">");else selectByValue(selectElm,"")}var selectElm=document.getElementById(editor_id+"_fontNameSelect");if(selectElm){if(!tinyMCE.isSafari&&!(tinyMCE.isMSIE&&!tinyMCE.isOpera)){var face=inst.queryCommandValue('FontName');face=face==null||face==""?"":face;selectByValue(selectElm,face,face!="")}else{var elm=tinyMCE.getParentElement(node,"font","face");if(elm){var family=tinyMCE.getAttrib(elm,"face");if(family=='')family=''+elm.style.fontFamily;if(!selectByValue(selectElm,family,family!=""))selectByValue(selectElm,"")}else selectByValue(selectElm,"")}}var selectElm=document.getElementById(editor_id+"_fontSizeSelect");if(selectElm){if(!tinyMCE.isSafari&&!tinyMCE.isOpera){var size=inst.queryCommandValue('FontSize');selectByValue(selectElm,size==null||size==""?"0":size)}else{var elm=tinyMCE.getParentElement(node,"font","size");if(elm){var size=tinyMCE.getAttrib(elm,"size");if(size==''){var sizes=new Array('','8px','10px','12px','14px','18px','24px','36px');size=''+elm.style.fontSize;for(var i=0;i<sizes.length;i++){if((''+sizes[i])==size){size=i;break}}}if(!selectByValue(selectElm,size))selectByValue(selectElm,"")}else selectByValue(selectElm,"0")}}alignNode=node;breakOut=false;do{if(!alignNode.getAttribute||!alignNode.getAttribute('align'))continue;switch(alignNode.getAttribute('align').toLowerCase()){case"left":tinyMCE.switchClass(editor_id+'_justifyleft','mceButtonSelected');breakOut=true;break;case"right":tinyMCE.switchClass(editor_id+'_justifyright','mceButtonSelected');breakOut=true;break;case"middle":case"center":tinyMCE.switchClass(editor_id+'_justifycenter','mceButtonSelected');breakOut=true;break;case"justify":tinyMCE.switchClass(editor_id+'_justifyfull','mceButtonSelected');breakOut=true;break}}while(!breakOut&&(alignNode=alignNode.parentNode)!=null);var div=tinyMCE.getParentElement(node,"div");if(div&&div.style.textAlign=="center")tinyMCE.switchClass(editor_id+'_justifycenter','mceButtonSelected');if(!setup_content){var ar=new Array("Bold","_bold","Italic","_italic","Strikethrough","_strikethrough","superscript","_sup","subscript","_sub");for(var i=0;i<ar.length;i+=2){if(inst.queryCommandState(ar[i]))tinyMCE.switchClass(editor_id+ar[i+1],'mceButtonSelected')}if(inst.queryCommandState("Underline")&&(node.parentNode==null||node.parentNode.nodeName!="A"))tinyMCE.switchClass(editor_id+'_underline','mceButtonSelected')}do{switch(node.nodeName){case"UL":tinyMCE.switchClass(editor_id+'_bullist','mceButtonSelected');break;case"OL":tinyMCE.switchClass(editor_id+'_numlist','mceButtonSelected');break;case"HR":tinyMCE.switchClass(editor_id+'_hr','mceButtonSelected');break;case"IMG":if(tinyMCE.getAttrib(node,'name').indexOf('mce_')!=0&&tinyMCE.getAttrib(node,'class').indexOf('mceItem')==-1){tinyMCE.switchClass(editor_id+'_image','mceButtonSelected')}break}}while((node=node.parentNode)!=null)},_setupCSSClasses:function(editor_id){var i,selectElm;if(!TinyMCE_AdvancedTheme._autoImportCSSClasses)return;selectElm=document.getElementById(editor_id+'_styleSelect');if(selectElm&&selectElm.getAttribute('cssImported')!='true'){var csses=tinyMCE.getCSSClasses(editor_id);if(csses&&selectElm){for(i=0;i<csses.length;i++)selectElm.options[selectElm.options.length]=new Option(csses[i],csses[i])}if(csses!=null&&csses.length>0)selectElm.setAttribute('cssImported','true')}},_setCookie:function(name,value,expires,path,domain,secure){var curCookie=name+"="+escape(value)+((expires)?"; expires="+expires.toGMTString():"")+((path)?"; path="+escape(path):"")+((domain)?"; domain="+domain:"")+((secure)?"; secure":"");document.cookie=curCookie},_getCookie:function(name){var dc=document.cookie;var prefix=name+"=";var begin=dc.indexOf("; "+prefix);if(begin==-1){begin=dc.indexOf(prefix);if(begin!=0)return null}else begin+=2;var end=document.cookie.indexOf(";",begin);if(end==-1)end=dc.length;return unescape(dc.substring(begin+prefix.length,end))},_resizeTo:function(inst,w,h,set_w){var editorContainer=document.getElementById(inst.editorId+'_parent');var tableElm=editorContainer.firstChild;var iframe=inst.iframeElement;if(w==null||w=="null"){set_w=false;w=0}if(h==null||h=="null")return;w=parseInt(w);h=parseInt(h);if(tinyMCE.isGecko){w+=2;h+=2}var dx=w-tableElm.clientWidth;var dy=h-tableElm.clientHeight;w=w<1?30:w;h=h<1?30:h;if(set_w)tableElm.style.width=w+"px";tableElm.style.height=h+"px";iw=iframe.clientWidth+dx;ih=iframe.clientHeight+dy;iw=iw<1?30:iw;ih=ih<1?30:ih;if(tinyMCE.isGecko){iw-=2;ih-=2}if(set_w)iframe.style.width=iw+"px";iframe.style.height=ih+"px";if(set_w){var tableBodyElm=tableElm.firstChild;var minIframeWidth=tableBodyElm.scrollWidth;if(inst.iframeElement.clientWidth<minIframeWidth){dx=minIframeWidth-inst.iframeElement.clientWidth;inst.iframeElement.style.width=(iw+dx)+"px"}}inst.useCSS=false},_resizeEventHandler:function(e){var resizer=TinyMCE_AdvancedTheme._resizer;if(!resizer.resizing)return;e=typeof(e)=="undefined"?window.event:e;var dx=e.screenX-resizer.downX;var dy=e.screenY-resizer.downY;var resizeBox=resizer.resizeBox;var editorId=resizer.editorId;switch(e.type){case"mousemove":var w,h;w=resizer.width+dx;h=resizer.height+dy;w=w<1?1:w;h=h<1?1:h;if(resizer.horizontal)resizeBox.style.width=w+"px";resizeBox.style.height=h+"px";break;case"mouseup":TinyMCE_AdvancedTheme._setResizing(e,editorId,false);TinyMCE_AdvancedTheme._resizeTo(tinyMCE.getInstanceById(editorId),resizer.width+dx,resizer.height+dy,resizer.horizontal);if(tinyMCE.getParam("theme_advanced_resizing_use_cookie",true)){var expires=new Date();expires.setTime(expires.getTime()+3600000*24*30);TinyMCE_AdvancedTheme._setCookie("TinyMCE_"+editorId+"_width",""+(resizer.horizontal?resizer.width+dx:""),expires);TinyMCE_AdvancedTheme._setCookie("TinyMCE_"+editorId+"_height",""+(resizer.height+dy),expires)}break}},_setResizing:function(e,editor_id,state){e=typeof(e)=="undefined"?window.event:e;var resizer=TinyMCE_AdvancedTheme._resizer;var editorContainer=document.getElementById(editor_id+'_parent');var editorArea=document.getElementById(editor_id+'_parent').firstChild;var resizeBox=document.getElementById(editor_id+'_resize_box');var inst=tinyMCE.getInstanceById(editor_id);if(state){var width=editorArea.clientWidth;var height=editorArea.clientHeight;resizeBox.style.width=width+"px";resizeBox.style.height=height+"px";resizer.iframeWidth=inst.iframeElement.clientWidth;resizer.iframeHeight=inst.iframeElement.clientHeight;editorArea.style.display="none";resizeBox.style.display="block";if(!resizer.eventHandlers){if(tinyMCE.isMSIE)tinyMCE.addEvent(document,"mousemove",TinyMCE_AdvancedTheme._resizeEventHandler);else tinyMCE.addEvent(window,"mousemove",TinyMCE_AdvancedTheme._resizeEventHandler);tinyMCE.addEvent(document,"mouseup",TinyMCE_AdvancedTheme._resizeEventHandler);resizer.eventHandlers=true}resizer.resizing=true;resizer.downX=e.screenX;resizer.downY=e.screenY;resizer.width=parseInt(resizeBox.style.width);resizer.height=parseInt(resizeBox.style.height);resizer.editorId=editor_id;resizer.resizeBox=resizeBox;resizer.horizontal=tinyMCE.getParam("theme_advanced_resize_horizontal",true)}else{resizer.resizing=false;resizeBox.style.display="none";editorArea.style.display=tinyMCE.isMSIE&&!tinyMCE.isOpera?"block":"table";tinyMCE.execCommand('mceResetDesignMode')}},_getColorHTML:function(id,n,cm){var i,h,cl;h='<span class="mceMenuLine"></span>';cl=tinyMCE.getParam(n,TinyMCE_AdvancedTheme._defColors).split(',');h+='<table class="mceColors"><tr>';for(i=0;i<cl.length;i++){c='tinyMCE.execInstanceCommand(\''+id+'\', \''+cm+'\', false, \'#'+cl[i]+'\');';h+='<td><a href="javascript:'+c+'" style="background-color: #'+cl[i]+'" onclick="'+c+';return false;"></a></td>';if((i+1)%8==0)h+='</tr><tr>'}h+='</tr></table>';if(tinyMCE.getParam("theme_advanced_more_colors",true))h+='<a href="javascript:void(0);" onclick="TinyMCE_AdvancedTheme._pickColor(\''+id+'\',\''+cm+'\');" class="mceMoreColors">'+tinyMCE.getLang('lang_more_colors')+'</a>';return h},_pickColor:function(id,cm){var inputColor,inst=tinyMCE.selectedInstance;if(cm=='forecolor'&&inst)inputColor=inst.foreColor;if((cm=='backcolor'||cm=='HiliteColor')&&inst)inputColor=inst.backColor;tinyMCE.execCommand('mceColorPicker',true,{color:inputColor,callback:function(c){tinyMCE.execInstanceCommand(id,cm,false,c)}})},_insertImage:function(src,alt,border,hspace,vspace,width,height,align,title,onmouseover,onmouseout){tinyMCE.execCommand("mceInsertContent",false,tinyMCE.createTagHTML('img',{src:tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'],src),mce_src:src,alt:alt,border:border,hspace:hspace,vspace:vspace,width:width,height:height,align:align,title:title,onmouseover:onmouseover,onmouseout:onmouseout}))},_insertLink:function(href,target,title,onclick,style_class){tinyMCE.execCommand('mceBeginUndoLevel');if(tinyMCE.selectedInstance&&tinyMCE.selectedElement&&tinyMCE.selectedElement.nodeName.toLowerCase()=="img"){var doc=tinyMCE.selectedInstance.getDoc();var linkElement=tinyMCE.getParentElement(tinyMCE.selectedElement,"a");var newLink=false;if(!linkElement){linkElement=doc.createElement("a");newLink=true}var mhref=href;var thref=eval(tinyMCE.settings['urlconverter_callback']+"(href, linkElement);");mhref=tinyMCE.getParam('convert_urls')?href:mhref;tinyMCE.setAttrib(linkElement,'href',thref);tinyMCE.setAttrib(linkElement,'mce_href',mhref);tinyMCE.setAttrib(linkElement,'target',target);tinyMCE.setAttrib(linkElement,'title',title);tinyMCE.setAttrib(linkElement,'onclick',onclick);tinyMCE.setAttrib(linkElement,'class',style_class);if(newLink){linkElement.appendChild(tinyMCE.selectedElement.cloneNode(true));tinyMCE.selectedElement.parentNode.replaceChild(linkElement,tinyMCE.selectedElement)}return}if(!tinyMCE.linkElement&&tinyMCE.selectedInstance){if(tinyMCE.isSafari){tinyMCE.execCommand("mceInsertContent",false,'<a href="'+tinyMCE.uniqueURL+'">'+tinyMCE.selectedInstance.selection.getSelectedHTML()+'</a>')}else tinyMCE.selectedInstance.contentDocument.execCommand("createlink",false,tinyMCE.uniqueURL);tinyMCE.linkElement=tinyMCE.getElementByAttributeValue(tinyMCE.selectedInstance.contentDocument.body,"a","href",tinyMCE.uniqueURL);var elementArray=tinyMCE.getElementsByAttributeValue(tinyMCE.selectedInstance.contentDocument.body,"a","href",tinyMCE.uniqueURL);for(var i=0;i<elementArray.length;i++){var mhref=href;var thref=eval(tinyMCE.settings['urlconverter_callback']+"(href, elementArray[i]);");mhref=tinyMCE.getParam('convert_urls')?href:mhref;tinyMCE.setAttrib(elementArray[i],'href',thref);tinyMCE.setAttrib(elementArray[i],'mce_href',mhref);tinyMCE.setAttrib(elementArray[i],'target',target);tinyMCE.setAttrib(elementArray[i],'title',title);tinyMCE.setAttrib(elementArray[i],'onclick',onclick);tinyMCE.setAttrib(elementArray[i],'class',style_class)}tinyMCE.linkElement=elementArray[0]}if(tinyMCE.linkElement){var mhref=href;href=eval(tinyMCE.settings['urlconverter_callback']+"(href, tinyMCE.linkElement);");mhref=tinyMCE.getParam('convert_urls')?href:mhref;tinyMCE.setAttrib(tinyMCE.linkElement,'href',href);tinyMCE.setAttrib(tinyMCE.linkElement,'mce_href',mhref);tinyMCE.setAttrib(tinyMCE.linkElement,'target',target);tinyMCE.setAttrib(tinyMCE.linkElement,'title',title);tinyMCE.setAttrib(tinyMCE.linkElement,'onclick',onclick);tinyMCE.setAttrib(tinyMCE.linkElement,'class',style_class)}tinyMCE.execCommand('mceEndUndoLevel')}};tinyMCE.addTheme("advanced",TinyMCE_AdvancedTheme);tinyMCE.addButtonMap(TinyMCE_AdvancedTheme._buttonMap);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/editor_template_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/editor_template_src.js
deleted file mode 100644 (file)
index 2c403d9..0000000
+++ /dev/null
@@ -1,1516 +0,0 @@
-/**\r
- * $Id: editor_template_src.js 296 2007-08-21 10:36:35Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/* Import theme specific language pack */\r
-tinyMCE.importThemeLanguagePack('advanced');\r
-\r
-var TinyMCE_AdvancedTheme = {\r
-       // Private theme fields\r
-       _defColors : "000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,008000,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF",\r
-       _autoImportCSSClasses : true,\r
-       _resizer : {},\r
-       _buttons : [\r
-               // Control id, button img, button title, command, user_interface, value\r
-               ['bold', '{$lang_bold_img}', 'lang_bold_desc', 'Bold'],\r
-               ['italic', '{$lang_italic_img}', 'lang_italic_desc', 'Italic'],\r
-               ['underline', '{$lang_underline_img}', 'lang_underline_desc', 'Underline'],\r
-               ['strikethrough', 'strikethrough.gif', 'lang_striketrough_desc', 'Strikethrough'],\r
-               ['justifyleft', 'justifyleft.gif', 'lang_justifyleft_desc', 'JustifyLeft'],\r
-               ['justifycenter', 'justifycenter.gif', 'lang_justifycenter_desc', 'JustifyCenter'],\r
-               ['justifyright', 'justifyright.gif', 'lang_justifyright_desc', 'JustifyRight'],\r
-               ['justifyfull', 'justifyfull.gif', 'lang_justifyfull_desc', 'JustifyFull'],\r
-               ['bullist', 'bullist.gif', 'lang_bullist_desc', 'InsertUnorderedList'],\r
-               ['numlist', 'numlist.gif', 'lang_numlist_desc', 'InsertOrderedList'],\r
-               ['outdent', 'outdent.gif', 'lang_outdent_desc', 'Outdent'],\r
-               ['indent', 'indent.gif', 'lang_indent_desc', 'Indent'],\r
-               ['cut', 'cut.gif', 'lang_cut_desc', 'Cut'],\r
-               ['copy', 'copy.gif', 'lang_copy_desc', 'Copy'],\r
-               ['paste', 'paste.gif', 'lang_paste_desc', 'Paste'],\r
-               ['undo', 'undo.gif', 'lang_undo_desc', 'Undo'],\r
-               ['redo', 'redo.gif', 'lang_redo_desc', 'Redo'],\r
-               ['link', 'link.gif', 'lang_link_desc', 'mceLink', true],\r
-               ['unlink', 'unlink.gif', 'lang_unlink_desc', 'unlink'],\r
-               ['image', 'image.gif', 'lang_image_desc', 'mceImage', true],\r
-               ['cleanup', 'cleanup.gif', 'lang_cleanup_desc', 'mceCleanup'],\r
-               ['help', 'help.gif', 'lang_help_desc', 'mceHelp'],\r
-               ['code', 'code.gif', 'lang_theme_code_desc', 'mceCodeEditor'],\r
-               ['hr', 'hr.gif', 'lang_theme_hr_desc', 'inserthorizontalrule'],\r
-               ['removeformat', 'removeformat.gif', 'lang_theme_removeformat_desc', 'removeformat'],\r
-               ['sub', 'sub.gif', 'lang_theme_sub_desc', 'subscript'],\r
-               ['sup', 'sup.gif', 'lang_theme_sup_desc', 'superscript'],\r
-               ['forecolor', 'forecolor.gif', 'lang_theme_forecolor_desc', 'forecolor', true],\r
-               ['forecolorpicker', 'forecolor.gif', 'lang_theme_forecolor_desc', 'forecolorpicker', true],\r
-               ['backcolor', 'backcolor.gif', 'lang_theme_backcolor_desc', 'HiliteColor', true],\r
-               ['backcolorpicker', 'backcolor.gif', 'lang_theme_backcolor_desc', 'backcolorpicker', true],\r
-               ['charmap', 'charmap.gif', 'lang_theme_charmap_desc', 'mceCharMap'],\r
-               ['visualaid', 'visualaid.gif', 'lang_theme_visualaid_desc', 'mceToggleVisualAid'],\r
-               ['anchor', 'anchor.gif', 'lang_theme_anchor_desc', 'mceInsertAnchor'],\r
-               ['newdocument', 'newdocument.gif', 'lang_newdocument_desc', 'mceNewDocument']\r
-       ],\r
-\r
-       _buttonMap : 'anchor,backcolor,bold,bullist,charmap,cleanup,code,copy,cut,forecolor,help,hr,image,indent,italic,justifycenter,justifyfull,justifyleft,justifyright,link,newdocument,numlist,outdent,paste,redo,removeformat,strikethrough,sub,sup,underline,undo,unlink,visualaid,advhr,ltr,rtl,emotions,flash,fullpage,fullscreen,iespell,insertdate,inserttime,pastetext,pasteword,selectall,preview,print,save,replace,search,table,cell_props,delete_col,delete_row,col_after,col_before,row_after,row_before,merge_cells,row_props,split_cells,delete_table',\r
-\r
-       /**\r
-        * Returns HTML code for the specificed control.\r
-        */\r
-       getControlHTML : function(button_name) {\r
-               var i, x, but;\r
-\r
-               // Lookup button in button list\r
-               for (i=0; i<TinyMCE_AdvancedTheme._buttons.length; i++) {\r
-                       but = TinyMCE_AdvancedTheme._buttons[i];\r
-\r
-                       if (but[0] == button_name && (button_name == "forecolor" || button_name == "backcolor"))\r
-                               return tinyMCE.getMenuButtonHTML(but[0], but[2], '{$themeurl}/images/' + but[1], but[3] + "Menu", but[3], (but.length > 4 ? but[4] : false), (but.length > 5 ? but[5] : null));\r
-\r
-                       if (but[0] == button_name)\r
-                               return tinyMCE.getButtonHTML(but[0], but[2], '{$themeurl}/images/' + but[1], but[3], (but.length > 4 ? but[4] : false), (but.length > 5 ? but[5] : null));\r
-               }\r
-\r
-               // Custom controlls other than buttons\r
-               switch (button_name) {\r
-                       case "formatselect":\r
-                               var html = '<select id="{$editor_id}_formatSelect" name="{$editor_id}_formatSelect" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'FormatBlock\',false,this.options[this.selectedIndex].value);" class="mceSelectList">';\r
-                               var formats = tinyMCE.getParam("theme_advanced_blockformats", "p,address,pre,h1,h2,h3,h4,h5,h6", true).split(',');\r
-                               var lookup = [\r
-                                       ['p', '{$lang_theme_paragraph}'],\r
-                                       ['address', '{$lang_theme_address}'],\r
-                                       ['pre', '{$lang_theme_pre}'],\r
-                                       ['h1', '{$lang_theme_h1}'],\r
-                                       ['h2', '{$lang_theme_h2}'],\r
-                                       ['h3', '{$lang_theme_h3}'],\r
-                                       ['h4', '{$lang_theme_h4}'],\r
-                                       ['h5', '{$lang_theme_h5}'],\r
-                                       ['h6', '{$lang_theme_h6}'],\r
-                                       ['div', '{$lang_theme_div}'],\r
-                                       ['blockquote', '{$lang_theme_blockquote}'],\r
-                                       ['code', '{$lang_theme_code}'],\r
-                                       ['dt', '{$lang_theme_dt}'],\r
-                                       ['dd', '{$lang_theme_dd}'],\r
-                                       ['samp', '{$lang_theme_samp}']\r
-                               ];\r
-\r
-                               html += '<option value="">{$lang_theme_block}</option>';\r
-\r
-                               // Build format select\r
-                               for (var i=0; i<formats.length; i++) {\r
-                                       for (var x=0; x<lookup.length; x++) {\r
-                                               if (formats[i] == lookup[x][0])\r
-                                                       html += '<option value="&lt;' + lookup[x][0] + '&gt;">' + lookup[x][1] + '</option>';\r
-                                       }\r
-                               }\r
-\r
-                               html += '</select>';\r
-\r
-                               return html;\r
-\r
-                       case "styleselect":\r
-                               return '<select id="{$editor_id}_styleSelect" onmousedown="tinyMCE.themes.advanced._setupCSSClasses(\'{$editor_id}\');" name="{$editor_id}_styleSelect" onfocus="tinyMCE.addSelectAccessibility(event,this,window);" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'mceSetCSSClass\',false,this.options[this.selectedIndex].value);" class="mceSelectList">{$style_select_options}</select>';\r
-\r
-                       case "fontselect":\r
-                               var fontHTML = '<select id="{$editor_id}_fontNameSelect" name="{$editor_id}_fontNameSelect" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'FontName\',false,this.options[this.selectedIndex].value);" class="mceSelectList"><option value="">{$lang_theme_fontdefault}</option>';\r
-                               var iFonts = 'Arial=arial,helvetica,sans-serif;Courier New=courier new,courier,monospace;Georgia=georgia,times new roman,times,serif;Tahoma=tahoma,arial,helvetica,sans-serif;Times New Roman=times new roman,times,serif;Verdana=verdana,arial,helvetica,sans-serif;Impact=impact;WingDings=wingdings';\r
-                               var nFonts = 'Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats';\r
-                               var fonts = tinyMCE.getParam("theme_advanced_fonts", nFonts).split(';');\r
-                               for (i=0; i<fonts.length; i++) {\r
-                                       if (fonts[i] != '') {\r
-                                               var parts = fonts[i].split('=');\r
-                                               fontHTML += '<option value="' + parts[1] + '">' + parts[0] + '</option>';\r
-                                       }\r
-                               }\r
-\r
-                               fontHTML += '</select>';\r
-                               return fontHTML;\r
-\r
-                       case "fontsizeselect":\r
-                               return '<select id="{$editor_id}_fontSizeSelect" name="{$editor_id}_fontSizeSelect" onfocus="tinyMCE.addSelectAccessibility(event, this, window);" onchange="tinyMCE.execInstanceCommand(\'{$editor_id}\',\'FontSize\',false,this.options[this.selectedIndex].value);" class="mceSelectList">'+\r
-                                               '<option value="0">{$lang_theme_font_size}</option>'+\r
-                                               '<option value="1">1 (8 pt)</option>'+\r
-                                               '<option value="2">2 (10 pt)</option>'+\r
-                                               '<option value="3">3 (12 pt)</option>'+\r
-                                               '<option value="4">4 (14 pt)</option>'+\r
-                                               '<option value="5">5 (18 pt)</option>'+\r
-                                               '<option value="6">6 (24 pt)</option>'+\r
-                                               '<option value="7">7 (36 pt)</option>'+\r
-                                               '</select>';\r
-\r
-                       case "|":\r
-                       case "separator":\r
-                               return '<img src="{$themeurl}/images/separator.gif" width="2" height="20" class="mceSeparatorLine" alt="" />';\r
-\r
-                       case "spacer":\r
-                               return '<img src="{$themeurl}/images/separator.gif" width="2" height="15" border="0" class="mceSeparatorLine" style="vertical-align: middle" alt="" />';\r
-\r
-                       case "rowseparator":\r
-                               return '<br />';\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       /**\r
-        * Theme specific execcommand handling.\r
-        */\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               switch (command) {\r
-                       case 'mceHelp':\r
-                               tinyMCE.openWindow({\r
-                                       file : 'about.htm',\r
-                                       width : 480,\r
-                                       height : 380\r
-                               }, {\r
-                                       tinymce_version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion,\r
-                                       tinymce_releasedate : tinyMCE.releaseDate,\r
-                                       inline : "yes"\r
-                               });\r
-                       return true;\r
-\r
-                       case "mceLink":\r
-                               var inst = tinyMCE.getInstanceById(editor_id);\r
-                               var doc = inst.getDoc();\r
-                               var selectedText = "";\r
-\r
-                               if (tinyMCE.isMSIE) {\r
-                                       var rng = doc.selection.createRange();\r
-                                       selectedText = rng.text;\r
-                               } else\r
-                                       selectedText = inst.getSel().toString();\r
-\r
-                               if (!tinyMCE.linkElement) {\r
-                                       if ((tinyMCE.selectedElement.nodeName.toLowerCase() != "img") && (selectedText.length <= 0))\r
-                                               return true;\r
-                               }\r
-\r
-                               var href = "", target = "", title = "", onclick = "", action = "insert", style_class = "";\r
-\r
-                               if (tinyMCE.selectedElement.nodeName.toLowerCase() == "a")\r
-                                       tinyMCE.linkElement = tinyMCE.selectedElement;\r
-\r
-                               // Is anchor not a link\r
-                               if (tinyMCE.linkElement != null && tinyMCE.getAttrib(tinyMCE.linkElement, 'href') == "")\r
-                                       tinyMCE.linkElement = null;\r
-\r
-                               if (tinyMCE.linkElement) {\r
-                                       href = tinyMCE.getAttrib(tinyMCE.linkElement, 'href');\r
-                                       target = tinyMCE.getAttrib(tinyMCE.linkElement, 'target');\r
-                                       title = tinyMCE.getAttrib(tinyMCE.linkElement, 'title');\r
-                                       onclick = tinyMCE.getAttrib(tinyMCE.linkElement, 'onclick');\r
-                                       style_class = tinyMCE.getAttrib(tinyMCE.linkElement, 'class');\r
-\r
-                                       // Try old onclick to if copy/pasted content\r
-                                       if (onclick == "")\r
-                                               onclick = tinyMCE.getAttrib(tinyMCE.linkElement, 'onclick');\r
-\r
-                                       onclick = tinyMCE.cleanupEventStr(onclick);\r
-\r
-                                       href = eval(tinyMCE.settings['urlconverter_callback'] + "(href, tinyMCE.linkElement, true);");\r
-\r
-                                       // Use mce_href if defined\r
-                                       mceRealHref = tinyMCE.getAttrib(tinyMCE.linkElement, 'mce_href');\r
-                                       if (mceRealHref != "") {\r
-                                               href = mceRealHref;\r
-\r
-                                               if (tinyMCE.getParam('convert_urls'))\r
-                                                       href = eval(tinyMCE.settings['urlconverter_callback'] + "(href, tinyMCE.linkElement, true);");\r
-                                       }\r
-\r
-                                       action = "update";\r
-                               }\r
-\r
-                               var template = new Array();\r
-\r
-                               template['file'] = 'link.htm';\r
-                               template['width'] = 310;\r
-                               template['height'] = 200;\r
-\r
-                               // Language specific width and height addons\r
-                               template['width'] += tinyMCE.getLang('lang_insert_link_delta_width', 0);\r
-                               template['height'] += tinyMCE.getLang('lang_insert_link_delta_height', 0);\r
-\r
-                               if (inst.settings['insertlink_callback']) {\r
-                                       var returnVal = eval(inst.settings['insertlink_callback'] + "(href, target, title, onclick, action, style_class);");\r
-                                       if (returnVal && returnVal['href'])\r
-                                               TinyMCE_AdvancedTheme._insertLink(returnVal['href'], returnVal['target'], returnVal['title'], returnVal['onclick'], returnVal['style_class']);\r
-                               } else {\r
-                                       tinyMCE.openWindow(template, {href : href, target : target, title : title, onclick : onclick, action : action, className : style_class, inline : "yes"});\r
-                               }\r
-\r
-                               return true;\r
-\r
-                       case "mceImage":\r
-                               var src = "", alt = "", border = "", hspace = "", vspace = "", width = "", height = "", align = "";\r
-                               var title = "", onmouseover = "", onmouseout = "", action = "insert";\r
-                               var img = tinyMCE.imgElement;\r
-                               var inst = tinyMCE.getInstanceById(editor_id);\r
-\r
-                               if (tinyMCE.selectedElement != null && tinyMCE.selectedElement.nodeName.toLowerCase() == "img") {\r
-                                       img = tinyMCE.selectedElement;\r
-                                       tinyMCE.imgElement = img;\r
-                               }\r
-\r
-                               if (img) {\r
-                                       // Is it a internal MCE visual aid image, then skip this one.\r
-                                       if (tinyMCE.getAttrib(img, 'name').indexOf('mce_') == 0)\r
-                                               return true;\r
-\r
-                                       src = tinyMCE.getAttrib(img, 'src');\r
-                                       alt = tinyMCE.getAttrib(img, 'alt');\r
-\r
-                                       // Try polling out the title\r
-                                       if (alt == "")\r
-                                               alt = tinyMCE.getAttrib(img, 'title');\r
-\r
-                                       // Fix width/height attributes if the styles is specified\r
-                                       if (tinyMCE.isGecko) {\r
-                                               var w = img.style.width;\r
-                                               if (w != null && w != "")\r
-                                                       img.setAttribute("width", w);\r
-\r
-                                               var h = img.style.height;\r
-                                               if (h != null && h != "")\r
-                                                       img.setAttribute("height", h);\r
-                                       }\r
-\r
-                                       border = tinyMCE.getAttrib(img, 'border');\r
-                                       hspace = tinyMCE.getAttrib(img, 'hspace');\r
-                                       vspace = tinyMCE.getAttrib(img, 'vspace');\r
-                                       width = tinyMCE.getAttrib(img, 'width');\r
-                                       height = tinyMCE.getAttrib(img, 'height');\r
-                                       align = tinyMCE.getAttrib(img, 'align');\r
-                                       onmouseover = tinyMCE.getAttrib(img, 'onmouseover');\r
-                                       onmouseout = tinyMCE.getAttrib(img, 'onmouseout');\r
-                                       title = tinyMCE.getAttrib(img, 'title');\r
-\r
-                                       // Is realy specified?\r
-                                       if (tinyMCE.isMSIE) {\r
-                                               width = img.attributes['width'].specified ? width : "";\r
-                                               height = img.attributes['height'].specified ? height : "";\r
-                                       }\r
-\r
-                                       //onmouseover = tinyMCE.getImageSrc(tinyMCE.cleanupEventStr(onmouseover));\r
-                                       //onmouseout = tinyMCE.getImageSrc(tinyMCE.cleanupEventStr(onmouseout));\r
-\r
-                                       src = eval(tinyMCE.settings['urlconverter_callback'] + "(src, img, true);");\r
-\r
-                                       // Use mce_src if defined\r
-                                       mceRealSrc = tinyMCE.getAttrib(img, 'mce_src');\r
-                                       if (mceRealSrc != "") {\r
-                                               src = mceRealSrc;\r
-\r
-                                               if (tinyMCE.getParam('convert_urls'))\r
-                                                       src = eval(tinyMCE.settings['urlconverter_callback'] + "(src, img, true);");\r
-                                       }\r
-\r
-                                       //if (onmouseover != "")\r
-                                       //      onmouseover = eval(tinyMCE.settings['urlconverter_callback'] + "(onmouseover, img, true);");\r
-\r
-                                       //if (onmouseout != "")\r
-                                       //      onmouseout = eval(tinyMCE.settings['urlconverter_callback'] + "(onmouseout, img, true);");\r
-\r
-                                       action = "update";\r
-                               }\r
-\r
-                               var template = new Array();\r
-\r
-                               template['file'] = 'image.htm?src={$src}';\r
-                               template['width'] = 355;\r
-                               template['height'] = 265 + (tinyMCE.isMSIE ? 25 : 0);\r
-\r
-                               // Language specific width and height addons\r
-                               template['width'] += tinyMCE.getLang('lang_insert_image_delta_width', 0);\r
-                               template['height'] += tinyMCE.getLang('lang_insert_image_delta_height', 0);\r
-\r
-                               if (inst.settings['insertimage_callback']) {\r
-                                       var returnVal = eval(inst.settings['insertimage_callback'] + "(src, alt, border, hspace, vspace, width, height, align, title, onmouseover, onmouseout, action);");\r
-                                       if (returnVal && returnVal['src'])\r
-                                               TinyMCE_AdvancedTheme._insertImage(returnVal['src'], returnVal['alt'], returnVal['border'], returnVal['hspace'], returnVal['vspace'], returnVal['width'], returnVal['height'], returnVal['align'], returnVal['title'], returnVal['onmouseover'], returnVal['onmouseout']);\r
-                               } else\r
-                                       tinyMCE.openWindow(template, {src : src, alt : alt, border : border, hspace : hspace, vspace : vspace, width : width, height : height, align : align, title : title, onmouseover : onmouseover, onmouseout : onmouseout, action : action, inline : "yes"});\r
-\r
-                               return true;\r
-\r
-                       case "forecolor":\r
-                               var fcp = new TinyMCE_Layer(editor_id + '_fcPreview', false), p, img, elm;\r
-\r
-                               TinyMCE_AdvancedTheme._hideMenus(editor_id);\r
-\r
-                               if (!fcp.exists()) {\r
-                                       fcp.create('div', 'mceColorPreview', document.getElementById(editor_id + '_toolbar'));\r
-                                       elm = fcp.getElement();\r
-                                       elm._editor_id = editor_id;\r
-                                       elm._command = "forecolor";\r
-                                       elm._switchId = editor_id + "_forecolor";\r
-                                       tinyMCE.addEvent(elm, 'click', TinyMCE_AdvancedTheme._handleMenuEvent);\r
-                                       tinyMCE.addEvent(elm, 'mouseover', TinyMCE_AdvancedTheme._handleMenuEvent);\r
-                                       tinyMCE.addEvent(elm, 'mouseout', TinyMCE_AdvancedTheme._handleMenuEvent);\r
-                               }\r
-\r
-                               img = tinyMCE.selectNodes(document.getElementById(editor_id + "_forecolor"), function(n) {return n.nodeName == "IMG";})[0];\r
-                               p = tinyMCE.getAbsPosition(img, document.getElementById(editor_id + '_toolbar'));\r
-\r
-                               fcp.moveTo(p.absLeft, p.absTop);\r
-                               fcp.getElement().style.backgroundColor = value != null ? value : tinyMCE.getInstanceById(editor_id).foreColor;\r
-                               fcp.show();\r
-\r
-                               return false;\r
-\r
-                       case "forecolorpicker":\r
-                               this._pickColor(editor_id, 'forecolor');\r
-                               return true;\r
-\r
-                       case "forecolorMenu":\r
-                               TinyMCE_AdvancedTheme._hideMenus(editor_id);\r
-\r
-                               // Create color layer\r
-                               var ml = new TinyMCE_Layer(editor_id + '_fcMenu');\r
-\r
-                               if (!ml.exists())\r
-                                       ml.create('div', 'mceMenu', document.body, TinyMCE_AdvancedTheme._getColorHTML(editor_id, 'theme_advanced_text_colors', 'forecolor'));\r
-\r
-                               tinyMCE.switchClass(editor_id + '_forecolor', 'mceMenuButtonFocus');\r
-                               ml.moveRelativeTo(document.getElementById(editor_id + "_forecolor"), 'bl');\r
-\r
-                               ml.moveBy(tinyMCE.isMSIE && !tinyMCE.isOpera ? -1 : 1, -1);\r
-\r
-                               if (tinyMCE.isOpera)\r
-                                       ml.moveBy(0, -2);\r
-\r
-                               ml.show();\r
-                       return true;\r
-\r
-                       case "HiliteColor":\r
-                               var bcp = new TinyMCE_Layer(editor_id + '_bcPreview', false), p, img;\r
-\r
-                               TinyMCE_AdvancedTheme._hideMenus(editor_id);\r
-\r
-                               if (!bcp.exists()) {\r
-                                       bcp.create('div', 'mceColorPreview', document.getElementById(editor_id + '_toolbar'));\r
-                                       elm = bcp.getElement();\r
-                                       elm._editor_id = editor_id;\r
-                                       elm._command = "HiliteColor";\r
-                                       elm._switchId = editor_id + "_backcolor";\r
-                                       tinyMCE.addEvent(elm, 'click', TinyMCE_AdvancedTheme._handleMenuEvent);\r
-                                       tinyMCE.addEvent(elm, 'mouseover', TinyMCE_AdvancedTheme._handleMenuEvent);\r
-                                       tinyMCE.addEvent(elm, 'mouseout', TinyMCE_AdvancedTheme._handleMenuEvent);\r
-                               }\r
-\r
-                               img = tinyMCE.selectNodes(document.getElementById(editor_id + "_backcolor"), function(n) {return n.nodeName == "IMG";})[0];\r
-                               p = tinyMCE.getAbsPosition(img, document.getElementById(editor_id + '_toolbar'));\r
-\r
-                               bcp.moveTo(p.absLeft, p.absTop);\r
-                               bcp.getElement().style.backgroundColor = value != null ? value : tinyMCE.getInstanceById(editor_id).backColor;\r
-                               bcp.show();\r
-\r
-                               return false;\r
-\r
-                       case "HiliteColorMenu":\r
-                               TinyMCE_AdvancedTheme._hideMenus(editor_id);\r
-\r
-                               // Create color layer\r
-                               var ml = new TinyMCE_Layer(editor_id + '_bcMenu');\r
-\r
-                               if (!ml.exists())\r
-                                       ml.create('div', 'mceMenu', document.body, TinyMCE_AdvancedTheme._getColorHTML(editor_id, 'theme_advanced_background_colors', 'HiliteColor'));\r
-\r
-                               tinyMCE.switchClass(editor_id + '_backcolor', 'mceMenuButtonFocus');\r
-                               ml.moveRelativeTo(document.getElementById(editor_id + "_backcolor"), 'bl');\r
-\r
-                               ml.moveBy(tinyMCE.isMSIE && !tinyMCE.isOpera ? -1 : 1, -1);\r
-\r
-                               if (tinyMCE.isOpera)\r
-                                       ml.moveBy(0, -2);\r
-\r
-                               ml.show();\r
-                       return true;\r
-       \r
-                       case "backcolorpicker":\r
-                               this._pickColor(editor_id, 'HiliteColor');\r
-                               return true;\r
-\r
-                       case "mceColorPicker":\r
-                               if (user_interface) {\r
-                                       var template = [];\r
-       \r
-                                       if (!value['callback'] && !value['color'])\r
-                                               value['color'] = value['document'].getElementById(value['element_id']).value;\r
-\r
-                                       template['file'] = 'color_picker.htm';\r
-                                       template['width'] = 380;\r
-                                       template['height'] = 250;\r
-                                       template['close_previous'] = "no";\r
-\r
-                                       template['width'] += tinyMCE.getLang('lang_theme_advanced_colorpicker_delta_width', 0);\r
-                                       template['height'] += tinyMCE.getLang('lang_theme_advanced_colorpicker_delta_height', 0);\r
-\r
-                                       if (typeof(value['store_selection']) == "undefined")\r
-                                               value['store_selection'] = true;\r
-\r
-                                       tinyMCE.lastColorPickerValue = value;\r
-                                       tinyMCE.openWindow(template, {editor_id : editor_id, mce_store_selection : value['store_selection'], inline : "yes", command : "mceColorPicker", input_color : value['color']});\r
-                               } else {\r
-                                       var savedVal = tinyMCE.lastColorPickerValue, elm;\r
-\r
-                                       if (savedVal['callback']) {\r
-                                               savedVal['callback'](value);\r
-                                               return true;\r
-                                       }\r
-\r
-                                       elm = savedVal['document'].getElementById(savedVal['element_id']);\r
-                                       elm.value = value;\r
-\r
-                                       if (elm.onchange != null && elm.onchange != '')\r
-                                               eval('elm.onchange();');\r
-                               }\r
-                       return true;\r
-\r
-                       case "mceCodeEditor":\r
-                               var template = new Array();\r
-\r
-                               template['file'] = 'source_editor.htm';\r
-                               template['width'] = parseInt(tinyMCE.getParam("theme_advanced_source_editor_width", 720));\r
-                               template['height'] = parseInt(tinyMCE.getParam("theme_advanced_source_editor_height", 580));\r
-\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id, resizable : "yes", scrollbars : "no", inline : "yes"});\r
-                               return true;\r
-\r
-                       case "mceCharMap":\r
-                               var template = new Array();\r
-\r
-                               template['file'] = 'charmap.htm';\r
-                               template['width'] = 550 + (tinyMCE.isOpera ? 40 : 0);\r
-                               template['height'] = 250;\r
-\r
-                               template['width'] += tinyMCE.getLang('lang_theme_advanced_charmap_delta_width', 0);\r
-                               template['height'] += tinyMCE.getLang('lang_theme_advanced_charmap_delta_height', 0);\r
-\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id, inline : "yes"});\r
-                               return true;\r
-\r
-                       case "mceInsertAnchor":\r
-                               var template = new Array();\r
-\r
-                               template['file'] = 'anchor.htm';\r
-                               template['width'] = 320;\r
-                               template['height'] = 90 + (tinyMCE.isNS7 ? 30 : 0);\r
-\r
-                               template['width'] += tinyMCE.getLang('lang_theme_advanced_anchor_delta_width', 0);\r
-                               template['height'] += tinyMCE.getLang('lang_theme_advanced_anchor_delta_height', 0);\r
-\r
-                               tinyMCE.openWindow(template, {editor_id : editor_id, inline : "yes"});\r
-                               return true;\r
-\r
-                       case "mceNewDocument":\r
-                               if (confirm(tinyMCE.entityDecode(tinyMCE.getLang('lang_newdocument'))))\r
-                                       tinyMCE.execInstanceCommand(editor_id, 'mceSetContent', false, ' ');\r
-\r
-                               return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       /**\r
-        * Editor instance template function.\r
-        */\r
-       getEditorTemplate : function(settings, editorId) {\r
-               function removeFromArray(in_array, remove_array) {\r
-                       var outArray = new Array(), skip;\r
-                       \r
-                       for (var i=0; i<in_array.length; i++) {\r
-                               skip = false;\r
-\r
-                               for (var j=0; j<remove_array.length; j++) {\r
-                                       if (in_array[i] == remove_array[j]) {\r
-                                               skip = true;\r
-                                       }\r
-                               }\r
-\r
-                               if (!skip) {\r
-                                       outArray[outArray.length] = in_array[i];\r
-                               }\r
-                       }\r
-\r
-                       return outArray;\r
-               }\r
-\r
-               function addToArray(in_array, add_array) {\r
-                       for (var i=0; i<add_array.length; i++) {\r
-                               in_array[in_array.length] = add_array[i];\r
-                       }\r
-\r
-                       return in_array;\r
-               }\r
-\r
-               var template = new Array();\r
-               var deltaHeight = 0;\r
-               var resizing = tinyMCE.getParam("theme_advanced_resizing", false);\r
-               var path = tinyMCE.getParam("theme_advanced_path", true);\r
-               var statusbarHTML = '<div id="{$editor_id}_path" class="mceStatusbarPathText" style="display: ' + (path ? "block" : "none") + '">&#160;</div><div id="{$editor_id}_resize" class="mceStatusbarResize" style="display: ' + (resizing ? "block" : "none") + '" onmousedown="tinyMCE.themes.advanced._setResizing(event,\'{$editor_id}\',true);"></div><br style="clear: both" />';\r
-               var layoutManager = tinyMCE.getParam("theme_advanced_layout_manager", "SimpleLayout");\r
-\r
-               // Setup style select options -- MOVED UP FOR EXTERNAL TOOLBAR COMPATABILITY!\r
-               var styleSelectHTML = '<option value="">{$lang_theme_style_select}</option>';\r
-               if (settings['theme_advanced_styles']) {\r
-                       var stylesAr = settings['theme_advanced_styles'].split(';');\r
-                       \r
-                       for (var i=0; i<stylesAr.length; i++) {\r
-                               var key, value;\r
-\r
-                               key = stylesAr[i].split('=')[0];\r
-                               value = stylesAr[i].split('=')[1];\r
-\r
-                               styleSelectHTML += '<option value="' + value + '">' + key + '</option>';\r
-                       }\r
-\r
-                       TinyMCE_AdvancedTheme._autoImportCSSClasses = false;\r
-               }\r
-\r
-               switch(layoutManager) {\r
-                       case "SimpleLayout" : //the default TinyMCE Layout (for backwards compatibility)...\r
-                               var toolbarHTML = "";\r
-                               var toolbarLocation = tinyMCE.getParam("theme_advanced_toolbar_location", "bottom");\r
-                               var toolbarAlign = tinyMCE.getParam("theme_advanced_toolbar_align", "center");\r
-                               var pathLocation = tinyMCE.getParam("theme_advanced_path_location", "none"); // Compatiblity\r
-                               var statusbarLocation = tinyMCE.getParam("theme_advanced_statusbar_location", pathLocation);\r
-                               var defVals = {\r
-                                       theme_advanced_buttons1 : "bold,italic,underline,strikethrough,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,styleselect,formatselect",\r
-                                       theme_advanced_buttons2 : "bullist,numlist,separator,outdent,indent,separator,undo,redo,separator,link,unlink,anchor,image,cleanup,help,code",\r
-                                       theme_advanced_buttons3 : "hr,removeformat,visualaid,separator,sub,sup,separator,charmap"\r
-                               };\r
-\r
-                               // Add accessibility control\r
-                               toolbarHTML += '<a href="#" accesskey="q" title="' + tinyMCE.getLang("lang_toolbar_focus") + '"';\r
-\r
-                               if (!tinyMCE.getParam("accessibility_focus"))\r
-                                       toolbarHTML += ' onfocus="tinyMCE.getInstanceById(\'' + editorId + '\').getWin().focus();"';\r
-\r
-                               toolbarHTML += '></a>';\r
-\r
-                               // Render rows\r
-                               for (var i=1; i<100; i++) {\r
-                                       var def = defVals["theme_advanced_buttons" + i];\r
-\r
-                                       var buttons = tinyMCE.getParam("theme_advanced_buttons" + i, def == null ? '' : def, true, ',');\r
-                                       if (buttons.length == 0)\r
-                                               break;\r
-\r
-                                       buttons = removeFromArray(buttons, tinyMCE.getParam("theme_advanced_disable", "", true, ','));\r
-                                       buttons = addToArray(buttons, tinyMCE.getParam("theme_advanced_buttons" + i + "_add", "", true, ','));\r
-                                       buttons = addToArray(tinyMCE.getParam("theme_advanced_buttons" + i + "_add_before", "", true, ','), buttons);\r
-\r
-                                       for (var b=0; b<buttons.length; b++)\r
-                                               toolbarHTML += tinyMCE.getControlHTML(buttons[b]);\r
-\r
-                                       if (buttons.length > 0) {\r
-                                               toolbarHTML += "<br />";\r
-                                               deltaHeight -= 23;\r
-                                       }\r
-                               }\r
-\r
-                               // Add accessibility control\r
-                               toolbarHTML += '<a href="#" accesskey="z" onfocus="tinyMCE.getInstanceById(\'' + editorId + '\').getWin().focus();"></a>';\r
-\r
-                               // Setup template html\r
-                               template['html'] = '<table class="mceEditor" border="0" cellpadding="0" cellspacing="0" width="{$width}" height="{$height}" style="width:{$width_style};height:{$height_style}"><tbody>';\r
-\r
-                               if (toolbarLocation == "top")\r
-                                       template['html'] += '<tr><td dir="ltr" class="mceToolbarTop" align="' + toolbarAlign + '" height="1" nowrap="nowrap"><span id="' + editorId + '_toolbar" class="mceToolbarContainer">' + toolbarHTML + '</span></td></tr>';\r
-\r
-                               if (statusbarLocation == "top") {\r
-                                       template['html'] += '<tr><td class="mceStatusbarTop" height="1">' + statusbarHTML + '</td></tr>';\r
-                                       deltaHeight -= 23;\r
-                               }\r
-\r
-                               template['html'] += '<tr><td align="center"><span id="{$editor_id}"></span></td></tr>';\r
-\r
-                               if (toolbarLocation == "bottom")\r
-                                       template['html'] += '<tr><td dir="ltr" class="mceToolbarBottom" align="' + toolbarAlign + '" height="1"><span id="' + editorId + '_toolbar" class="mceToolbarContainer">' + toolbarHTML + '</span></td></tr>';\r
-\r
-                               // External toolbar changes\r
-                               if (toolbarLocation == "external") {\r
-                                       var bod = document.body;\r
-                                       var elm = document.createElement ("div");\r
-\r
-                                       toolbarHTML = tinyMCE.replaceVar(toolbarHTML, 'style_select_options', styleSelectHTML);\r
-                                       toolbarHTML = tinyMCE.applyTemplate(toolbarHTML, {editor_id : editorId});\r
-\r
-                                       elm.className = "mceToolbarExternal";\r
-                                       elm.id = editorId+"_toolbar";\r
-                                       elm.innerHTML = '<table width="100%" border="0" align="center"><tr><td align="center">'+toolbarHTML+'</td></tr></table>';\r
-                                       bod.appendChild (elm);\r
-                                       // bod.style.marginTop = elm.offsetHeight + "px";\r
-\r
-                                       deltaHeight = 0;\r
-                                       tinyMCE.getInstanceById(editorId).toolbarElement = elm;\r
-\r
-                                       //template['html'] = '<div id="mceExternalToolbar" align="center" class="mceToolbarExternal"><table width="100%" border="0" align="center"><tr><td align="center">'+toolbarHTML+'</td></tr></table></div>' + template["html"];\r
-                               } else {\r
-                                       tinyMCE.getInstanceById(editorId).toolbarElement = null;\r
-                               }\r
-\r
-                               if (statusbarLocation == "bottom") {\r
-                                       template['html'] += '<tr><td class="mceStatusbarBottom" height="1">' + statusbarHTML + '</td></tr>';\r
-                                       deltaHeight -= 23;\r
-                               }\r
-\r
-                               template['html'] += '</tbody></table>';\r
-                               //"SimpleLayout"\r
-                       break;\r
-\r
-                       case "RowLayout" : //Container Layout - containers defined in "theme_advanced_containers" are rendered from top to bottom.\r
-                               template['html'] = '<table class="mceEditor" border="0" cellpadding="0" cellspacing="0" width="{$width}" height="{$height}" style="width:{$width}px;height:{$height}px"><tbody>';\r
-\r
-                               var containers = tinyMCE.getParam("theme_advanced_containers", "", true, ",");\r
-                               var defaultContainerCSS = tinyMCE.getParam("theme_advanced_containers_default_class", "container");\r
-                               var defaultContainerAlign = tinyMCE.getParam("theme_advanced_containers_default_align", "center");\r
-\r
-                               //Render Containers:\r
-                               for (var i = 0; i < containers.length; i++)\r
-                               {\r
-                                       if (containers[i] == "mceEditor") //Exceptions for mceEditor and ...\r
-                                               template['html'] += '<tr><td align="center" class="mceEditor_border"><span id="{$editor_id}"></span></td></tr>';\r
-                                       else if (containers[i] == "mceElementpath" || containers[i] == "mceStatusbar") // ... mceElementpath:\r
-                                       {\r
-                                               var pathClass = "mceStatusbar";\r
-\r
-                                               if (i == containers.length-1)\r
-                                               {\r
-                                                       pathClass = "mceStatusbarBottom";\r
-                                               }\r
-                                               else if (i == 0)\r
-                                               {\r
-                                                       pathClass = "mceStatusbar";\r
-                                               }\r
-                                               else\r
-                                               {\r
-                                                       deltaHeight-=2;\r
-                                               }\r
-\r
-                                               template['html'] += '<tr><td class="' + pathClass + '" height="1">' + statusbarHTML + '</td></tr>';\r
-                                               deltaHeight -= 22;\r
-                                       } else { // Render normal Container\r
-                                               var curContainer = tinyMCE.getParam("theme_advanced_container_"+containers[i], "", true, ',');\r
-                                               var curContainerHTML = "";\r
-                                               var curAlign = tinyMCE.getParam("theme_advanced_container_"+containers[i]+"_align", defaultContainerAlign);\r
-                                               var curCSS = tinyMCE.getParam("theme_advanced_container_"+containers[i]+"_class", defaultContainerCSS);\r
-\r
-                                               curContainer = removeFromArray(curContainer, tinyMCE.getParam("theme_advanced_disable", "", true, ','));\r
-\r
-                                               for (var j=0; j<curContainer.length; j++)\r
-                                                       curContainerHTML += tinyMCE.getControlHTML(curContainer[j]);\r
-\r
-                                               if (curContainer.length > 0) {\r
-                                                       curContainerHTML += "<br />";\r
-                                                       deltaHeight -= 23;\r
-                                               }\r
-\r
-                                               template['html'] += '<tr><td class="' + curCSS + '" align="' + curAlign + '" height="1">' + curContainerHTML + '</td></tr>';\r
-                                       }\r
-                               }\r
-\r
-                               template['html'] += '</tbody></table>';\r
-                               //RowLayout\r
-                       break;\r
-\r
-                       case "CustomLayout" : //User defined layout callback...\r
-                               var customLayout = tinyMCE.getParam("theme_advanced_custom_layout","");\r
-\r
-                               if (customLayout != "" && eval("typeof(" + customLayout + ")") != "undefined") {\r
-                                       template = eval(customLayout + "(template);");\r
-                               }\r
-                       break;\r
-               }\r
-\r
-               if (resizing)\r
-                       template['html'] += '<span id="{$editor_id}_resize_box" class="mceResizeBox"></span>';\r
-\r
-               template['html'] = tinyMCE.replaceVar(template['html'], 'style_select_options', styleSelectHTML);\r
-\r
-               // Set to default values\r
-               if (!template['delta_width'])\r
-                       template['delta_width'] = 0;\r
-\r
-               if (!template['delta_height'])\r
-                       template['delta_height'] = deltaHeight;\r
-\r
-               return template;\r
-       },\r
-\r
-       initInstance : function(inst) {\r
-               if (tinyMCE.getParam("theme_advanced_resizing", false)) {\r
-                       if (tinyMCE.getParam("theme_advanced_resizing_use_cookie", true)) {\r
-                               var w = TinyMCE_AdvancedTheme._getCookie("TinyMCE_" + inst.editorId + "_width");\r
-                               var h = TinyMCE_AdvancedTheme._getCookie("TinyMCE_" + inst.editorId + "_height");\r
-\r
-                               TinyMCE_AdvancedTheme._resizeTo(inst, w, h, tinyMCE.getParam("theme_advanced_resize_horizontal", true));\r
-                       }\r
-               }\r
-\r
-               inst.addShortcut('ctrl', 'k', 'lang_link_desc', 'mceLink');\r
-       },\r
-\r
-       removeInstance : function(inst) {\r
-               new TinyMCE_Layer(inst.editorId + '_fcMenu').remove();\r
-               new TinyMCE_Layer(inst.editorId + '_bcMenu').remove();\r
-       },\r
-\r
-       hideInstance : function(inst) {\r
-               TinyMCE_AdvancedTheme._hideMenus(inst.editorId);\r
-       },\r
-\r
-       _handleMenuEvent : function(e) {\r
-               var te = tinyMCE.isMSIE ? window.event.srcElement : e.target;\r
-               tinyMCE._menuButtonEvent(e.type == "mouseover" ? "over" : "out", document.getElementById(te._switchId));\r
-\r
-               if (e.type == "click")\r
-                       tinyMCE.execInstanceCommand(te._editor_id, te._command);\r
-       },\r
-\r
-       _hideMenus : function(id) {\r
-               var fcml = new TinyMCE_Layer(id + '_fcMenu'), bcml = new TinyMCE_Layer(id + '_bcMenu');\r
-\r
-               if (fcml.exists() && fcml.isVisible()) {\r
-                       tinyMCE.switchClass(id + '_forecolor', 'mceMenuButton');\r
-                       fcml.hide();\r
-               }\r
-\r
-               if (bcml.exists() && bcml.isVisible()) {\r
-                       tinyMCE.switchClass(id + '_backcolor', 'mceMenuButton');\r
-                       bcml.hide();\r
-               }\r
-       },\r
-\r
-       /**\r
-        * Node change handler.\r
-        */\r
-       handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection, setup_content) {\r
-               var alignNode, breakOut, classNode;\r
-\r
-               function selectByValue(select_elm, value, first_index) {\r
-                       first_index = typeof(first_index) == "undefined" ? false : true;\r
-\r
-                       if (select_elm) {\r
-                               for (var i=0; i<select_elm.options.length; i++) {\r
-                                       var ov = "" + select_elm.options[i].value;\r
-\r
-                                       if (first_index && ov.toLowerCase().indexOf(value.toLowerCase()) == 0) {\r
-                                               select_elm.selectedIndex = i;\r
-                                               return true;\r
-                                       }\r
-\r
-                                       if (ov == value) {\r
-                                               select_elm.selectedIndex = i;\r
-                                               return true;\r
-                                       }\r
-                               }\r
-                       }\r
-\r
-                       return false;\r
-               };\r
-\r
-               // No node provided\r
-               if (node == null)\r
-                       return;\r
-\r
-               // Update path\r
-               var pathElm = document.getElementById(editor_id + "_path");\r
-               var inst = tinyMCE.getInstanceById(editor_id);\r
-               var doc = inst.getDoc();\r
-               TinyMCE_AdvancedTheme._hideMenus(editor_id);\r
-\r
-               if (pathElm) {\r
-                       // Get node path\r
-                       var parentNode = node;\r
-                       var path = new Array();\r
-                       \r
-                       while (parentNode != null) {\r
-                               if (parentNode.nodeName.toUpperCase() == "BODY") {\r
-                                       break;\r
-                               }\r
-\r
-                               // Only append element nodes to path\r
-                               if (parentNode.nodeType == 1 && tinyMCE.getAttrib(parentNode, "class").indexOf('mceItemHidden') == -1) {\r
-                                       path[path.length] = parentNode;\r
-                               }\r
-\r
-                               parentNode = parentNode.parentNode;\r
-                       }\r
-\r
-                       // Setup HTML\r
-                       var html = "";\r
-                       for (var i=path.length-1; i>=0; i--) {\r
-                               var nodeName = path[i].nodeName.toLowerCase();\r
-                               var nodeData = "";\r
-\r
-                               if (nodeName.indexOf("html:") == 0)\r
-                                       nodeName = nodeName.substring(5);\r
-\r
-                               if (nodeName == "b") {\r
-                                       nodeName = "strong";\r
-                               }\r
-\r
-                               if (nodeName == "i") {\r
-                                       nodeName = "em";\r
-                               }\r
-\r
-                               if (nodeName == "span") {\r
-                                       var cn = tinyMCE.getAttrib(path[i], "class");\r
-                                       if (cn != "" && cn.indexOf('mceItem') == -1)\r
-                                               nodeData += "class: " + cn + " ";\r
-\r
-                                       var st = tinyMCE.getAttrib(path[i], "style");\r
-                                       if (st != "") {\r
-                                               st = tinyMCE.serializeStyle(tinyMCE.parseStyle(st));\r
-                                               nodeData += "style: " + tinyMCE.xmlEncode(st) + " ";\r
-                                       }\r
-                               }\r
-\r
-                               if (nodeName == "font") {\r
-                                       if (tinyMCE.getParam("convert_fonts_to_spans"))\r
-                                               nodeName = "span";\r
-\r
-                                       var face = tinyMCE.getAttrib(path[i], "face");\r
-                                       if (face != "")\r
-                                               nodeData += "font: " + tinyMCE.xmlEncode(face) + " ";\r
-\r
-                                       var size = tinyMCE.getAttrib(path[i], "size");\r
-                                       if (size != "")\r
-                                               nodeData += "size: " + tinyMCE.xmlEncode(size) + " ";\r
-\r
-                                       var color = tinyMCE.getAttrib(path[i], "color");\r
-                                       if (color != "")\r
-                                               nodeData += "color: " + tinyMCE.xmlEncode(color) + " ";\r
-                               }\r
-\r
-                               if (tinyMCE.getAttrib(path[i], 'id') != "") {\r
-                                       nodeData += "id: " + path[i].getAttribute('id') + " ";\r
-                               }\r
-\r
-                               var className = tinyMCE.getVisualAidClass(tinyMCE.getAttrib(path[i], "class"), false);\r
-                               if (className != "" && className.indexOf('mceItem') == -1)\r
-                                       nodeData += "class: " + className + " ";\r
-\r
-                               if (tinyMCE.getAttrib(path[i], 'src') != "") {\r
-                                       var src = tinyMCE.getAttrib(path[i], "mce_src");\r
-\r
-                                       if (src == "")\r
-                                                src = tinyMCE.getAttrib(path[i], "src");\r
-\r
-                                       nodeData += "src: " + tinyMCE.xmlEncode(src) + " ";\r
-                               }\r
-\r
-                               if (path[i].nodeName == 'A' && tinyMCE.getAttrib(path[i], 'href') != "") {\r
-                                       var href = tinyMCE.getAttrib(path[i], "mce_href");\r
-\r
-                                       if (href == "")\r
-                                                href = tinyMCE.getAttrib(path[i], "href");\r
-\r
-                                       nodeData += "href: " + tinyMCE.xmlEncode(href) + " ";\r
-                               }\r
-\r
-                               className = tinyMCE.getAttrib(path[i], "class");\r
-                               if ((nodeName == "img" || nodeName == "span") && className.indexOf('mceItem') != -1) {\r
-                                       nodeName = className.replace(/mceItem([a-z]+)/gi, '$1').toLowerCase();\r
-                                       nodeData = path[i].getAttribute('title');\r
-                               }\r
-\r
-                               if (nodeName == "a" && (anchor = tinyMCE.getAttrib(path[i], "name")) != "") {\r
-                                       nodeName = "a";\r
-                                       nodeName += "#" + tinyMCE.xmlEncode(anchor);\r
-                                       nodeData = "";\r
-                               }\r
-\r
-                               if (tinyMCE.getAttrib(path[i], 'name').indexOf("mce_") != 0) {\r
-                                       var className = tinyMCE.getVisualAidClass(tinyMCE.getAttrib(path[i], "class"), false);\r
-                                       if (className != "" && className.indexOf('mceItem') == -1) {\r
-                                               nodeName += "." + className;\r
-                                       }\r
-                               }\r
-\r
-                               var cmd = 'tinyMCE.execInstanceCommand(\'' + editor_id + '\',\'mceSelectNodeDepth\',false,\'' + i + '\');';\r
-                               html += '<a title="' + nodeData + '" href="javascript:' + cmd + '" onclick="' + cmd + 'return false;" onmousedown="return false;" target="_self" class="mcePathItem">' + nodeName + '</a>';\r
-\r
-                               if (i > 0) {\r
-                                       html += " &raquo; ";\r
-                               }\r
-                       }\r
-\r
-                       pathElm.innerHTML = '<a href="#" accesskey="x"></a>' + tinyMCE.getLang('lang_theme_path') + ": " + html + '&#160;';\r
-               }\r
-\r
-               // Reset old states\r
-               tinyMCE.switchClass(editor_id + '_justifyleft', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_justifyright', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_justifycenter', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_justifyfull', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_bold', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_italic', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_underline', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_strikethrough', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_bullist', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_numlist', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_sub', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_sup', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_anchor', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_link', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_unlink', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_outdent', 'mceButtonDisabled');\r
-               tinyMCE.switchClass(editor_id + '_image', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_hr', 'mceButtonNormal');\r
-\r
-               if (node.nodeName == "A" && tinyMCE.getAttrib(node, "class").indexOf('mceItemAnchor') != -1)\r
-                       tinyMCE.switchClass(editor_id + '_anchor', 'mceButtonSelected');\r
-\r
-               // Get link\r
-               var anchorLink = tinyMCE.getParentElement(node, "a", "href");\r
-\r
-               if (anchorLink || any_selection) {\r
-                       tinyMCE.switchClass(editor_id + '_link', anchorLink ? 'mceButtonSelected' : 'mceButtonNormal');\r
-                       tinyMCE.switchClass(editor_id + '_unlink', anchorLink ? 'mceButtonSelected' : 'mceButtonNormal');\r
-               }\r
-\r
-               // Handle visual aid\r
-               tinyMCE.switchClass(editor_id + '_visualaid', visual_aid ? 'mceButtonSelected' : 'mceButtonNormal');\r
-\r
-               if (undo_levels != -1) {\r
-                       tinyMCE.switchClass(editor_id + '_undo', 'mceButtonDisabled');\r
-                       tinyMCE.switchClass(editor_id + '_redo', 'mceButtonDisabled');\r
-               }\r
-\r
-               // Within li, blockquote\r
-               if (tinyMCE.getParentElement(node, "li,blockquote"))\r
-                       tinyMCE.switchClass(editor_id + '_outdent', 'mceButtonNormal');\r
-\r
-               // Has redo levels\r
-               if (undo_index != -1 && (undo_index < undo_levels-1 && undo_levels > 0))\r
-                       tinyMCE.switchClass(editor_id + '_redo', 'mceButtonNormal');\r
-\r
-               // Has undo levels\r
-               if (undo_index != -1 && (undo_index > 0 && undo_levels > 0))\r
-                       tinyMCE.switchClass(editor_id + '_undo', 'mceButtonNormal');\r
-\r
-               // Select class in select box\r
-               var selectElm = document.getElementById(editor_id + "_styleSelect");\r
-               \r
-               if (selectElm) {\r
-                       TinyMCE_AdvancedTheme._setupCSSClasses(editor_id);\r
-\r
-                       classNode = node;\r
-                       breakOut = false;\r
-                       var index = 0;\r
-\r
-                       do {\r
-                               if (classNode && classNode.className) {\r
-                                       for (var i=0; i<selectElm.options.length; i++) {\r
-                                               if (selectElm.options[i].value == classNode.className) {\r
-                                                       index = i;\r
-                                                       breakOut = true;\r
-                                                       break;\r
-                                               }\r
-                                       }\r
-                               }\r
-                       } while (!breakOut && classNode != null && (classNode = classNode.parentNode) != null);\r
-\r
-                       selectElm.selectedIndex = index;\r
-               }\r
-\r
-               // Select formatblock\r
-               var selectElm = document.getElementById(editor_id + "_formatSelect");\r
-               if (selectElm) {\r
-                       var elm = tinyMCE.getParentElement(node, "p,div,h1,h2,h3,h4,h5,h6,pre,address");\r
-\r
-                       if (elm)\r
-                               selectByValue(selectElm, "<" + elm.nodeName.toLowerCase() + ">");\r
-                       else\r
-                               selectByValue(selectElm, "");\r
-               }\r
-\r
-               // Select fontselect\r
-               var selectElm = document.getElementById(editor_id + "_fontNameSelect");\r
-               if (selectElm) {\r
-                       if (!tinyMCE.isSafari && !(tinyMCE.isMSIE && !tinyMCE.isOpera)) {\r
-                               var face = inst.queryCommandValue('FontName');\r
-\r
-                               face = face == null || face == "" ? "" : face;\r
-\r
-                               selectByValue(selectElm, face, face != "");\r
-                       } else {\r
-                               var elm = tinyMCE.getParentElement(node, "font", "face");\r
-\r
-                               if (elm) {\r
-                                       var family = tinyMCE.getAttrib(elm, "face");\r
-\r
-                                       if (family == '')\r
-                                               family = '' + elm.style.fontFamily;\r
-\r
-                                       if (!selectByValue(selectElm, family, family != ""))\r
-                                               selectByValue(selectElm, "");\r
-                               } else\r
-                                       selectByValue(selectElm, "");\r
-                       }\r
-               }\r
-\r
-               // Select fontsize\r
-               var selectElm = document.getElementById(editor_id + "_fontSizeSelect");\r
-               if (selectElm) {\r
-                       if (!tinyMCE.isSafari && !tinyMCE.isOpera) {\r
-                               var size = inst.queryCommandValue('FontSize');\r
-                               selectByValue(selectElm, size == null || size == "" ? "0" : size);\r
-                       } else {\r
-                               var elm = tinyMCE.getParentElement(node, "font", "size");\r
-                               if (elm) {\r
-                                       var size = tinyMCE.getAttrib(elm, "size");\r
-\r
-                                       if (size == '') {\r
-                                               var sizes = new Array('', '8px', '10px', '12px', '14px', '18px', '24px', '36px');\r
-\r
-                                               size = '' + elm.style.fontSize;\r
-\r
-                                               for (var i=0; i<sizes.length; i++) {\r
-                                                       if (('' + sizes[i]) == size) {\r
-                                                               size = i;\r
-                                                               break;\r
-                                                       }\r
-                                               }\r
-                                       }\r
-\r
-                                       if (!selectByValue(selectElm, size))\r
-                                               selectByValue(selectElm, "");\r
-                               } else\r
-                                       selectByValue(selectElm, "0");\r
-                       }\r
-               }\r
-\r
-               // Handle align attributes\r
-               alignNode = node;\r
-               breakOut = false;\r
-               do {\r
-                       if (!alignNode.getAttribute || !alignNode.getAttribute('align'))\r
-                               continue;\r
-\r
-                       switch (alignNode.getAttribute('align').toLowerCase()) {\r
-                               case "left":\r
-                                       tinyMCE.switchClass(editor_id + '_justifyleft', 'mceButtonSelected');\r
-                                       breakOut = true;\r
-                               break;\r
-\r
-                               case "right":\r
-                                       tinyMCE.switchClass(editor_id + '_justifyright', 'mceButtonSelected');\r
-                                       breakOut = true;\r
-                               break;\r
-\r
-                               case "middle":\r
-                               case "center":\r
-                                       tinyMCE.switchClass(editor_id + '_justifycenter', 'mceButtonSelected');\r
-                                       breakOut = true;\r
-                               break;\r
-\r
-                               case "justify":\r
-                                       tinyMCE.switchClass(editor_id + '_justifyfull', 'mceButtonSelected');\r
-                                       breakOut = true;\r
-                               break;\r
-                       }\r
-               } while (!breakOut && (alignNode = alignNode.parentNode) != null);\r
-\r
-               // Div justification\r
-               var div = tinyMCE.getParentElement(node, "div");\r
-               if (div && div.style.textAlign == "center")\r
-                       tinyMCE.switchClass(editor_id + '_justifycenter', 'mceButtonSelected');\r
-\r
-               // Do special text\r
-               if (!setup_content) {\r
-                       // , "JustifyLeft", "_justifyleft", "JustifyCenter", "justifycenter", "JustifyRight", "justifyright", "JustifyFull", "justifyfull", "InsertUnorderedList", "bullist", "InsertOrderedList", "numlist", "InsertUnorderedList", "bullist", "Outdent", "outdent", "Indent", "indent", "subscript", "sub"\r
-                       var ar = new Array("Bold", "_bold", "Italic", "_italic", "Strikethrough", "_strikethrough", "superscript", "_sup", "subscript", "_sub");\r
-                       for (var i=0; i<ar.length; i+=2) {\r
-                               if (inst.queryCommandState(ar[i]))\r
-                                       tinyMCE.switchClass(editor_id + ar[i+1], 'mceButtonSelected');\r
-                       }\r
-\r
-                       if (inst.queryCommandState("Underline") && (node.parentNode == null || node.parentNode.nodeName != "A"))\r
-                               tinyMCE.switchClass(editor_id + '_underline', 'mceButtonSelected');\r
-               }\r
-\r
-               // Handle elements\r
-               do {\r
-                       switch (node.nodeName) {\r
-                               case "UL":\r
-                                       tinyMCE.switchClass(editor_id + '_bullist', 'mceButtonSelected');\r
-                               break;\r
-\r
-                               case "OL":\r
-                                       tinyMCE.switchClass(editor_id + '_numlist', 'mceButtonSelected');\r
-                               break;\r
-\r
-                               case "HR":\r
-                                        tinyMCE.switchClass(editor_id + '_hr', 'mceButtonSelected');\r
-                               break;\r
-\r
-                               case "IMG":\r
-                               if (tinyMCE.getAttrib(node, 'name').indexOf('mce_') != 0 && tinyMCE.getAttrib(node, 'class').indexOf('mceItem') == -1) {\r
-                                       tinyMCE.switchClass(editor_id + '_image', 'mceButtonSelected');\r
-                               }\r
-                               break;\r
-                       }\r
-               } while ((node = node.parentNode) != null);\r
-       },\r
-\r
-       // Private theme internal functions\r
-\r
-       // This function auto imports CSS classes into the class selection droplist\r
-       _setupCSSClasses : function(editor_id) {\r
-               var i, selectElm;\r
-\r
-               if (!TinyMCE_AdvancedTheme._autoImportCSSClasses)\r
-                       return;\r
-\r
-               selectElm = document.getElementById(editor_id + '_styleSelect');\r
-\r
-               if (selectElm && selectElm.getAttribute('cssImported') != 'true') {\r
-                       var csses = tinyMCE.getCSSClasses(editor_id);\r
-                       if (csses && selectElm) {\r
-                               for (i=0; i<csses.length; i++)\r
-                                       selectElm.options[selectElm.options.length] = new Option(csses[i], csses[i]);\r
-                       }\r
-\r
-                       // Only do this once\r
-                       if (csses != null && csses.length > 0)\r
-                               selectElm.setAttribute('cssImported', 'true');\r
-               }\r
-       },\r
-\r
-       _setCookie : function(name, value, expires, path, domain, secure) {\r
-               var curCookie = name + "=" + escape(value) +\r
-                       ((expires) ? "; expires=" + expires.toGMTString() : "") +\r
-                       ((path) ? "; path=" + escape(path) : "") +\r
-                       ((domain) ? "; domain=" + domain : "") +\r
-                       ((secure) ? "; secure" : "");\r
-\r
-               document.cookie = curCookie;\r
-       },\r
-\r
-       _getCookie : function(name) {\r
-               var dc = document.cookie;\r
-               var prefix = name + "=";\r
-               var begin = dc.indexOf("; " + prefix);\r
-\r
-               if (begin == -1) {\r
-                       begin = dc.indexOf(prefix);\r
-\r
-                       if (begin != 0)\r
-                               return null;\r
-               } else\r
-                       begin += 2;\r
-\r
-               var end = document.cookie.indexOf(";", begin);\r
-\r
-               if (end == -1)\r
-                       end = dc.length;\r
-\r
-               return unescape(dc.substring(begin + prefix.length, end));\r
-       },\r
-\r
-       _resizeTo : function(inst, w, h, set_w) {\r
-               var editorContainer = document.getElementById(inst.editorId + '_parent');\r
-               var tableElm = editorContainer.firstChild;\r
-               var iframe = inst.iframeElement;\r
-\r
-               if (w == null || w == "null") {\r
-                       set_w = false;\r
-                       w = 0;\r
-               }\r
-\r
-               if (h == null || h == "null")\r
-                       return;\r
-\r
-               w = parseInt(w);\r
-               h = parseInt(h);\r
-\r
-               if (tinyMCE.isGecko) {\r
-                       w += 2;\r
-                       h += 2;\r
-               }\r
-\r
-               var dx = w - tableElm.clientWidth;\r
-               var dy = h - tableElm.clientHeight;\r
-\r
-               w = w < 1 ? 30 : w;\r
-               h = h < 1 ? 30 : h;\r
-\r
-               if (set_w)\r
-                       tableElm.style.width = w + "px";\r
-\r
-               tableElm.style.height = h + "px";\r
-\r
-               iw = iframe.clientWidth + dx;\r
-               ih = iframe.clientHeight + dy;\r
-\r
-               iw = iw < 1 ? 30 : iw;\r
-               ih = ih < 1 ? 30 : ih;\r
-\r
-               if (tinyMCE.isGecko) {\r
-                       iw -= 2;\r
-                       ih -= 2;\r
-               }\r
-\r
-               if (set_w)\r
-                       iframe.style.width = iw + "px";\r
-\r
-               iframe.style.height = ih + "px";\r
-\r
-               // Is it to small, make it bigger again\r
-               if (set_w) {\r
-                       var tableBodyElm = tableElm.firstChild;\r
-                       var minIframeWidth = tableBodyElm.scrollWidth;\r
-                       if (inst.iframeElement.clientWidth < minIframeWidth) {\r
-                               dx = minIframeWidth - inst.iframeElement.clientWidth;\r
-\r
-                               inst.iframeElement.style.width = (iw + dx) + "px";\r
-                       }\r
-               }\r
-\r
-               // Remove pesky table controls\r
-               inst.useCSS = false;\r
-       },\r
-\r
-       /**\r
-        * Handles resizing events.\r
-        */\r
-       _resizeEventHandler : function(e) {\r
-               var resizer = TinyMCE_AdvancedTheme._resizer;\r
-\r
-               // Do nothing\r
-               if (!resizer.resizing)\r
-                       return;\r
-\r
-               e = typeof(e) == "undefined" ? window.event : e;\r
-\r
-               var dx = e.screenX - resizer.downX;\r
-               var dy = e.screenY - resizer.downY;\r
-               var resizeBox = resizer.resizeBox;\r
-               var editorId = resizer.editorId;\r
-\r
-               switch (e.type) {\r
-                       case "mousemove":\r
-                               var w, h;\r
-\r
-                               w = resizer.width + dx;\r
-                               h = resizer.height + dy;\r
-\r
-                               w = w < 1 ? 1 : w;\r
-                               h = h < 1 ? 1 : h;\r
-\r
-                               if (resizer.horizontal)\r
-                                       resizeBox.style.width = w + "px";\r
-\r
-                               resizeBox.style.height = h + "px";\r
-                               break;\r
-\r
-                       case "mouseup":\r
-                               TinyMCE_AdvancedTheme._setResizing(e, editorId, false);\r
-                               TinyMCE_AdvancedTheme._resizeTo(tinyMCE.getInstanceById(editorId), resizer.width + dx, resizer.height + dy, resizer.horizontal);\r
-\r
-                               // Expire in a month\r
-                               if (tinyMCE.getParam("theme_advanced_resizing_use_cookie", true)) {\r
-                                       var expires = new Date();\r
-                                       expires.setTime(expires.getTime() + 3600000 * 24 * 30);\r
-\r
-                                       // Set the cookies\r
-                                       TinyMCE_AdvancedTheme._setCookie("TinyMCE_" + editorId + "_width", "" + (resizer.horizontal ? resizer.width + dx : ""), expires);\r
-                                       TinyMCE_AdvancedTheme._setCookie("TinyMCE_" + editorId + "_height", "" + (resizer.height + dy), expires);\r
-                               }\r
-                               break;\r
-               }\r
-       },\r
-\r
-       /**\r
-        * Starts/stops the editor resizing.\r
-        */\r
-       _setResizing : function(e, editor_id, state) {\r
-               e = typeof(e) == "undefined" ? window.event : e;\r
-\r
-               var resizer = TinyMCE_AdvancedTheme._resizer;\r
-               var editorContainer = document.getElementById(editor_id + '_parent');\r
-               var editorArea = document.getElementById(editor_id + '_parent').firstChild;\r
-               var resizeBox = document.getElementById(editor_id + '_resize_box');\r
-               var inst = tinyMCE.getInstanceById(editor_id);\r
-\r
-               if (state) {\r
-                       // Place box over editor area\r
-                       var width = editorArea.clientWidth;\r
-                       var height = editorArea.clientHeight;\r
-\r
-                       resizeBox.style.width = width + "px";\r
-                       resizeBox.style.height = height + "px";\r
-\r
-                       resizer.iframeWidth = inst.iframeElement.clientWidth;\r
-                       resizer.iframeHeight = inst.iframeElement.clientHeight;\r
-\r
-                       // Hide editor and show resize box\r
-                       editorArea.style.display = "none";\r
-                       resizeBox.style.display = "block";\r
-\r
-                       // Add event handlers, only once\r
-                       if (!resizer.eventHandlers) {\r
-                               if (tinyMCE.isMSIE)\r
-                                       tinyMCE.addEvent(document, "mousemove", TinyMCE_AdvancedTheme._resizeEventHandler);\r
-                               else\r
-                                       tinyMCE.addEvent(window, "mousemove", TinyMCE_AdvancedTheme._resizeEventHandler);\r
-\r
-                               tinyMCE.addEvent(document, "mouseup", TinyMCE_AdvancedTheme._resizeEventHandler);\r
-\r
-                               resizer.eventHandlers = true;\r
-                       }\r
-\r
-                       resizer.resizing = true;\r
-                       resizer.downX = e.screenX;\r
-                       resizer.downY = e.screenY;\r
-                       resizer.width = parseInt(resizeBox.style.width);\r
-                       resizer.height = parseInt(resizeBox.style.height);\r
-                       resizer.editorId = editor_id;\r
-                       resizer.resizeBox = resizeBox;\r
-                       resizer.horizontal = tinyMCE.getParam("theme_advanced_resize_horizontal", true);\r
-               } else {\r
-                       resizer.resizing = false;\r
-                       resizeBox.style.display = "none";\r
-                       editorArea.style.display = tinyMCE.isMSIE && !tinyMCE.isOpera ? "block" : "table";\r
-                       tinyMCE.execCommand('mceResetDesignMode');\r
-               }\r
-       },\r
-\r
-       _getColorHTML : function(id, n, cm) {\r
-               var i, h, cl;\r
-\r
-               h = '<span class="mceMenuLine"></span>';\r
-               cl = tinyMCE.getParam(n, TinyMCE_AdvancedTheme._defColors).split(',');\r
-\r
-               h += '<table class="mceColors"><tr>';\r
-               for (i=0; i<cl.length; i++) {\r
-                       c = 'tinyMCE.execInstanceCommand(\'' + id + '\', \'' + cm + '\', false, \'#' + cl[i] + '\');';\r
-                       h += '<td><a href="javascript:' + c + '" style="background-color: #' + cl[i] + '" onclick="' + c + ';return false;"></a></td>';\r
-\r
-                       if ((i+1) % 8 == 0)\r
-                               h += '</tr><tr>';\r
-               }\r
-\r
-               h += '</tr></table>';\r
-\r
-               if (tinyMCE.getParam("theme_advanced_more_colors", true))\r
-                       h += '<a href="javascript:void(0);" onclick="TinyMCE_AdvancedTheme._pickColor(\'' + id + '\',\'' + cm + '\');" class="mceMoreColors">' + tinyMCE.getLang('lang_more_colors') + '</a>';\r
-\r
-               return h;\r
-       },\r
-\r
-       _pickColor : function(id, cm) {\r
-               var inputColor, inst = tinyMCE.selectedInstance;\r
-\r
-               if (cm == 'forecolor' && inst)\r
-                       inputColor = inst.foreColor;\r
-\r
-               if ((cm == 'backcolor' || cm == 'HiliteColor') && inst)\r
-                       inputColor = inst.backColor;\r
-\r
-               tinyMCE.execCommand('mceColorPicker', true, {color : inputColor, callback : function(c) {\r
-                       tinyMCE.execInstanceCommand(id, cm, false, c);\r
-               }});\r
-       },\r
-\r
-       _insertImage : function(src, alt, border, hspace, vspace, width, height, align, title, onmouseover, onmouseout) {\r
-               tinyMCE.execCommand("mceInsertContent", false, tinyMCE.createTagHTML('img', {\r
-                       src : tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], src), // Force absolute\r
-                       mce_src : src,\r
-                       alt : alt,\r
-                       border : border,\r
-                       hspace : hspace,\r
-                       vspace : vspace,\r
-                       width : width,\r
-                       height : height,\r
-                       align : align,\r
-                       title : title,\r
-                       onmouseover : onmouseover,\r
-                       onmouseout : onmouseout\r
-               }));\r
-       },\r
-\r
-       _insertLink : function(href, target, title, onclick, style_class) {\r
-               tinyMCE.execCommand('mceBeginUndoLevel');\r
-\r
-               if (tinyMCE.selectedInstance && tinyMCE.selectedElement && tinyMCE.selectedElement.nodeName.toLowerCase() == "img") {\r
-                       var doc = tinyMCE.selectedInstance.getDoc();\r
-                       var linkElement = tinyMCE.getParentElement(tinyMCE.selectedElement, "a");\r
-                       var newLink = false;\r
-\r
-                       if (!linkElement) {\r
-                               linkElement = doc.createElement("a");\r
-                               newLink = true;\r
-                       }\r
-\r
-                       var mhref = href;\r
-                       var thref = eval(tinyMCE.settings['urlconverter_callback'] + "(href, linkElement);");\r
-                       mhref = tinyMCE.getParam('convert_urls') ? href : mhref;\r
-\r
-                       tinyMCE.setAttrib(linkElement, 'href', thref);\r
-                       tinyMCE.setAttrib(linkElement, 'mce_href', mhref);\r
-                       tinyMCE.setAttrib(linkElement, 'target', target);\r
-                       tinyMCE.setAttrib(linkElement, 'title', title);\r
-                       tinyMCE.setAttrib(linkElement, 'onclick', onclick);\r
-                       tinyMCE.setAttrib(linkElement, 'class', style_class);\r
-\r
-                       if (newLink) {\r
-                               linkElement.appendChild(tinyMCE.selectedElement.cloneNode(true));\r
-                               tinyMCE.selectedElement.parentNode.replaceChild(linkElement, tinyMCE.selectedElement);\r
-                       }\r
-\r
-                       return;\r
-               }\r
-\r
-               if (!tinyMCE.linkElement && tinyMCE.selectedInstance) {\r
-                       if (tinyMCE.isSafari) {\r
-                               tinyMCE.execCommand("mceInsertContent", false, '<a href="' + tinyMCE.uniqueURL + '">' + tinyMCE.selectedInstance.selection.getSelectedHTML() + '</a>');\r
-                       } else\r
-                               tinyMCE.selectedInstance.contentDocument.execCommand("createlink", false, tinyMCE.uniqueURL);\r
-\r
-                       tinyMCE.linkElement = tinyMCE.getElementByAttributeValue(tinyMCE.selectedInstance.contentDocument.body, "a", "href", tinyMCE.uniqueURL);\r
-\r
-                       var elementArray = tinyMCE.getElementsByAttributeValue(tinyMCE.selectedInstance.contentDocument.body, "a", "href", tinyMCE.uniqueURL);\r
-\r
-                       for (var i=0; i<elementArray.length; i++) {\r
-                               var mhref = href;\r
-                               var thref = eval(tinyMCE.settings['urlconverter_callback'] + "(href, elementArray[i]);");\r
-                               mhref = tinyMCE.getParam('convert_urls') ? href : mhref;\r
-\r
-                               tinyMCE.setAttrib(elementArray[i], 'href', thref);\r
-                               tinyMCE.setAttrib(elementArray[i], 'mce_href', mhref);\r
-                               tinyMCE.setAttrib(elementArray[i], 'target', target);\r
-                               tinyMCE.setAttrib(elementArray[i], 'title', title);\r
-                               tinyMCE.setAttrib(elementArray[i], 'onclick', onclick);\r
-                               tinyMCE.setAttrib(elementArray[i], 'class', style_class);\r
-                       }\r
-\r
-                       tinyMCE.linkElement = elementArray[0];\r
-               }\r
-\r
-               if (tinyMCE.linkElement) {\r
-                       var mhref = href;\r
-                       href = eval(tinyMCE.settings['urlconverter_callback'] + "(href, tinyMCE.linkElement);");\r
-                       mhref = tinyMCE.getParam('convert_urls') ? href : mhref;\r
-\r
-                       tinyMCE.setAttrib(tinyMCE.linkElement, 'href', href);\r
-                       tinyMCE.setAttrib(tinyMCE.linkElement, 'mce_href', mhref);\r
-                       tinyMCE.setAttrib(tinyMCE.linkElement, 'target', target);\r
-                       tinyMCE.setAttrib(tinyMCE.linkElement, 'title', title);\r
-                       tinyMCE.setAttrib(tinyMCE.linkElement, 'onclick', onclick);\r
-                       tinyMCE.setAttrib(tinyMCE.linkElement, 'class', style_class);\r
-               }\r
-\r
-               tinyMCE.execCommand('mceEndUndoLevel');\r
-       }\r
-};\r
-\r
-tinyMCE.addTheme("advanced", TinyMCE_AdvancedTheme);\r
-\r
-// Add default buttons maps for advanced theme and all internal plugins\r
-tinyMCE.addButtonMap(TinyMCE_AdvancedTheme._buttonMap);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/image.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/image.htm
deleted file mode 100644 (file)
index 96a9a75..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_insert_image_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/image.js"></script>\r
-       <base target="_self" />\r
-</head>\r
-<body id="image" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-<form onsubmit="insertImage();return false;" action="#">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_insert_image_title}</a></span></li>\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-               <div id="general_panel" class="panel current">\r
-     <table border="0" cellpadding="4" cellspacing="0">\r
-          <tr>\r
-            <td nowrap="nowrap"><label for="src">{$lang_insert_image_src}</label></td>\r
-            <td><table border="0" cellspacing="0" cellpadding="0">\r
-                <tr>\r
-                  <td><input id="src" name="src" type="text" value="" style="width: 200px" onchange="getImageData();" /></td>\r
-                  <td id="srcbrowsercontainer">&nbsp;</td>\r
-                </tr>\r
-              </table></td>\r
-          </tr>\r
-                 <!-- Image list -->\r
-                 <script language="javascript">\r
-                       if (typeof(tinyMCEImageList) != "undefined" && tinyMCEImageList.length > 0) {\r
-                               var html = "";\r
-\r
-                               html += '<tr><td><label for="image_list">{$lang_image_list}</label></td>';\r
-                               html += '<td><select id="image_list" name="image_list" style="width: 200px" onchange="this.form.src.value=this.options[this.selectedIndex].value;resetImageData();getImageData();">';\r
-                               html += '<option value="">---</option>';\r
-\r
-                               for (var i=0; i<tinyMCEImageList.length; i++)\r
-                                       html += '<option value="' + tinyMCEImageList[i][1] + '">' + tinyMCEImageList[i][0] + '</option>';\r
-\r
-                               html += '</select></td></tr>';\r
-\r
-                               document.write(html);\r
-                       }\r
-                 </script>\r
-                 <!-- /Image list -->\r
-          <tr>\r
-            <td nowrap="nowrap"><label for="alt">{$lang_insert_image_alt}</label></td>\r
-            <td><input id="alt" name="alt" type="text" value="" style="width: 200px" /></td>\r
-          </tr>\r
-          <tr>\r
-            <td nowrap="nowrap"><label for="align">{$lang_insert_image_align}</label></td>\r
-            <td><select id="align" name="align">\r
-                <option value="">{$lang_insert_image_align_default}</option>\r
-                <option value="baseline">{$lang_insert_image_align_baseline}</option>\r
-                <option value="top">{$lang_insert_image_align_top}</option>\r
-                <option value="middle">{$lang_insert_image_align_middle}</option>\r
-                <option value="bottom">{$lang_insert_image_align_bottom}</option>\r
-                <option value="texttop">{$lang_insert_image_align_texttop}</option>\r
-                <option value="absmiddle">{$lang_insert_image_align_absmiddle}</option>\r
-                <option value="absbottom">{$lang_insert_image_align_absbottom}</option>\r
-                <option value="left">{$lang_insert_image_align_left}</option>\r
-                <option value="right">{$lang_insert_image_align_right}</option>\r
-              </select></td>\r
-          </tr>\r
-          <tr>\r
-            <td nowrap="nowrap"><label for="width">{$lang_insert_image_dimensions}</label></td>\r
-            <td><input id="width" name="width" type="text" value="" size="3" maxlength="5" />\r
-              x\r
-              <input id="height" name="height" type="text" value="" size="3" maxlength="5" /></td>\r
-          </tr>\r
-          <tr>\r
-            <td nowrap="nowrap"><label for="border">{$lang_insert_image_border}</label></td>\r
-            <td><input id="border" name="border" type="text" value="" size="3" maxlength="3" /></td>\r
-          </tr>\r
-          <tr>\r
-            <td nowrap="nowrap"><label for="vspace">{$lang_insert_image_vspace}</label></td>\r
-            <td><input id="vspace" name="vspace" type="text" value="" size="3" maxlength="3" /></td>\r
-          </tr>\r
-          <tr>\r
-            <td nowrap="nowrap"><label for="hspace">{$lang_insert_image_hspace}</label></td>\r
-            <td><input id="hspace" name="hspace" type="text" value="" size="3" maxlength="3" /></td>\r
-          </tr>\r
-        </table>\r
-               </div>\r
-       </div>\r
-\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertImage();" />\r
-               </div>\r
-\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/anchor.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/anchor.gif
deleted file mode 100644 (file)
index 34ab715..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/anchor.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/anchor_symbol.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/anchor_symbol.gif
deleted file mode 100644 (file)
index 2eafd79..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/anchor_symbol.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/backcolor.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/backcolor.gif
deleted file mode 100644 (file)
index d03e206..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/backcolor.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold.gif
deleted file mode 100644 (file)
index d6a9cc2..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_de_se.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_de_se.gif
deleted file mode 100644 (file)
index 9b129de..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_de_se.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_es.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_es.gif
deleted file mode 100644 (file)
index ea341e6..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_es.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_fr.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_fr.gif
deleted file mode 100644 (file)
index 2816454..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_fr.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_ru.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_ru.gif
deleted file mode 100644 (file)
index e000d46..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_ru.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_tw.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_tw.gif
deleted file mode 100644 (file)
index 8208543..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bold_tw.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/browse.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/browse.gif
deleted file mode 100644 (file)
index c786d0b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/browse.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bullist.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bullist.gif
deleted file mode 100644 (file)
index 6e19467..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/bullist.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/button_menu.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/button_menu.gif
deleted file mode 100644 (file)
index c3d8fa2..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/button_menu.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/buttons.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/buttons.gif
deleted file mode 100644 (file)
index 5ad99a7..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/buttons.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cancel_button_bg.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cancel_button_bg.gif
deleted file mode 100644 (file)
index 4b4aeef..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cancel_button_bg.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/charmap.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/charmap.gif
deleted file mode 100644 (file)
index 3cdc4ac..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/charmap.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cleanup.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cleanup.gif
deleted file mode 100644 (file)
index 16491f6..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cleanup.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/close.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/close.gif
deleted file mode 100644 (file)
index 679ca2a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/close.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/code.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/code.gif
deleted file mode 100644 (file)
index c5d5a67..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/code.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/color.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/color.gif
deleted file mode 100644 (file)
index 1ecd574..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/color.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/colors.jpg b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/colors.jpg
deleted file mode 100644 (file)
index b4c542d..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/colors.jpg and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/copy.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/copy.gif
deleted file mode 100644 (file)
index dc14686..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/copy.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/custom_1.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/custom_1.gif
deleted file mode 100644 (file)
index 4cbccda..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/custom_1.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cut.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cut.gif
deleted file mode 100644 (file)
index 4e9a70b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/cut.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/forecolor.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/forecolor.gif
deleted file mode 100644 (file)
index 8b70361..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/forecolor.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/help.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/help.gif
deleted file mode 100644 (file)
index 51a1ee4..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/help.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/hr.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/hr.gif
deleted file mode 100644 (file)
index 1a1ba2a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/hr.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/image.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/image.gif
deleted file mode 100644 (file)
index 4b88edd..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/image.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/indent.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/indent.gif
deleted file mode 100644 (file)
index acd315b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/indent.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/insert_button_bg.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/insert_button_bg.gif
deleted file mode 100644 (file)
index 69c131c..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/insert_button_bg.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic.gif
deleted file mode 100644 (file)
index 8bb330b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_de_se.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_de_se.gif
deleted file mode 100644 (file)
index feb0309..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_de_se.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_es.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_es.gif
deleted file mode 100644 (file)
index 4572cdb..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_es.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_ru.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_ru.gif
deleted file mode 100644 (file)
index a2bb69a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_ru.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_tw.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_tw.gif
deleted file mode 100644 (file)
index 4f6eeaa..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/italic_tw.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifycenter.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifycenter.gif
deleted file mode 100644 (file)
index 42d609a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifycenter.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyfull.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyfull.gif
deleted file mode 100644 (file)
index c8504f6..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyfull.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyleft.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyleft.gif
deleted file mode 100644 (file)
index e8f7e42..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyleft.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyright.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyright.gif
deleted file mode 100644 (file)
index e4cea97..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/justifyright.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/link.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/link.gif
deleted file mode 100644 (file)
index 1accf42..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/link.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/menu_check.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/menu_check.gif
deleted file mode 100644 (file)
index 50d6afd..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/menu_check.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/newdocument.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/newdocument.gif
deleted file mode 100644 (file)
index a9d2938..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/newdocument.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/numlist.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/numlist.gif
deleted file mode 100644 (file)
index a268352..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/numlist.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/opacity.png b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/opacity.png
deleted file mode 100644 (file)
index b4217cb..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/opacity.png and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/outdent.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/outdent.gif
deleted file mode 100644 (file)
index 23f6aa4..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/outdent.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/paste.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/paste.gif
deleted file mode 100644 (file)
index 1b45000..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/paste.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/redo.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/redo.gif
deleted file mode 100644 (file)
index 3af9069..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/redo.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/removeformat.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/removeformat.gif
deleted file mode 100644 (file)
index 0fa3cb7..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/removeformat.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/separator.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/separator.gif
deleted file mode 100644 (file)
index 4f39b80..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/separator.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/spacer.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/spacer.gif
deleted file mode 100644 (file)
index 3884865..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/spacer.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/statusbar_resize.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/statusbar_resize.gif
deleted file mode 100644 (file)
index af89d80..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/statusbar_resize.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/strikethrough.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/strikethrough.gif
deleted file mode 100644 (file)
index 3264635..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/strikethrough.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/sub.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/sub.gif
deleted file mode 100644 (file)
index 4d7ce30..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/sub.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/sup.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/sup.gif
deleted file mode 100644 (file)
index a7145e0..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/sup.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline.gif
deleted file mode 100644 (file)
index 1dfeb5f..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_es.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_es.gif
deleted file mode 100644 (file)
index 551d914..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_es.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_fr.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_fr.gif
deleted file mode 100644 (file)
index 551d914..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_fr.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_ru.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_ru.gif
deleted file mode 100644 (file)
index b78e2a4..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_ru.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_tw.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_tw.gif
deleted file mode 100644 (file)
index b715390..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/underline_tw.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/undo.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/undo.gif
deleted file mode 100644 (file)
index 520796d..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/undo.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/unlink.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/unlink.gif
deleted file mode 100644 (file)
index 5c8a33d..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/unlink.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/visualaid.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/visualaid.gif
deleted file mode 100644 (file)
index 63caf18..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/visualaid.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_bg.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_bg.gif
deleted file mode 100644 (file)
index 897a01f..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_bg.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_end.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_end.gif
deleted file mode 100644 (file)
index aee442b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_end.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_sel_bg.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_sel_bg.gif
deleted file mode 100644 (file)
index 9dc8abe..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_sel_bg.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_sel_end.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_sel_end.gif
deleted file mode 100644 (file)
index 616a889..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tab_sel_end.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tabs_bg.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tabs_bg.gif
deleted file mode 100644 (file)
index c303f66..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/images/xp/tabs_bg.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/about.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/about.js
deleted file mode 100644 (file)
index 4e53c28..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-function init() {\r
-       var inst;\r
-\r
-       tinyMCEPopup.resizeToInnerSize();\r
-       inst = tinyMCE.selectedInstance;\r
-\r
-       // Give FF some time\r
-       window.setTimeout('insertHelpIFrame();', 10);\r
-\r
-       var tcont = document.getElementById('plugintablecontainer');\r
-       var plugins = tinyMCE.getParam('plugins', '', true, ',');\r
-       if (plugins.length == 0)\r
-               document.getElementById('plugins_tab').style.display = 'none';\r
-\r
-       var html = "";\r
-       html += '<table id="plugintable">';\r
-       html += '<thead>';\r
-       html += '<tr>';\r
-       html += '<td>' + tinyMCE.getLang('lang_plugin') + '</td>';\r
-       html += '<td>' + tinyMCE.getLang('lang_author') + '</td>';\r
-       html += '<td>' + tinyMCE.getLang('lang_version') + '</td>';\r
-       html += '</tr>';\r
-       html += '</thead>';\r
-       html += '<tbody>';\r
-\r
-       for (var i=0; i<inst.plugins.length; i++) {\r
-               var info = getPluginInfo(inst.plugins[i]);\r
-\r
-               html += '<tr>';\r
-\r
-               if (info.infourl != null && info.infourl != '')\r
-                       html += '<td width="50%" title="' + plugins[i] + '"><a href="' + info.infourl + '" target="mceplugin">' + info.longname + '</a></td>';\r
-               else\r
-                       html += '<td width="50%" title="' + plugins[i] + '">' + info.longname + '</td>';\r
-\r
-               if (info.authorurl != null && info.authorurl != '')\r
-                       html += '<td width="35%"><a href="' + info.authorurl + '" target="mceplugin">' + info.author + '</a></td>';\r
-               else\r
-                       html += '<td width="35%">' + info.author + '</td>';\r
-\r
-               html += '<td width="15%">' + info.version + '</td>';\r
-               html += '</tr>';\r
-       }\r
-\r
-       html += '</tbody>';\r
-       html += '</table>';\r
-\r
-       tcont.innerHTML = html;\r
-}\r
-\r
-function getPluginInfo(name) {\r
-       if (tinyMCE.plugins[name].getInfo)\r
-               return tinyMCE.plugins[name].getInfo();\r
-\r
-       return {\r
-               longname : name,\r
-               authorurl : '',\r
-               infourl : '',\r
-               author : '--',\r
-               version : '--'\r
-       };\r
-}\r
-\r
-function insertHelpIFrame() {\r
-       var html = '<iframe width="100%" height="300" src="' + tinyMCE.themeURL + "/docs/" + tinyMCE.settings['docs_language'] + "/index.htm" + '"></iframe>';\r
-\r
-       document.getElementById('iframecontainer').innerHTML = html;\r
-\r
-       html = '';\r
-       html += '<a href="http://www.moxiecode.com" target="_blank"><img src="http://tinymce.moxiecode.com/images/gotmoxie.png" alt="Got Moxie?" border="0" /></a> ';\r
-       html += '<a href="http://sourceforge.net/projects/tinymce/" target="_blank"><img src="http://sourceforge.net/sflogo.php?group_id=103281" alt="Hosted By Sourceforge" border="0" /></a> ';\r
-       html += '<a href="http://www.freshmeat.net/projects/tinymce" target="_blank"><img src="http://tinymce.moxiecode.com/images/fm.gif" alt="Also on freshmeat" border="0" /></a> ';\r
-\r
-       document.getElementById('buttoncontainer').innerHTML = html;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/anchor.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/anchor.js
deleted file mode 100644 (file)
index e7c1c62..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-var action, element;\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var anchor = tinyMCE.getParentElement(inst.getFocusElement(), "a", "name");\r
-       var img = inst.getFocusElement();\r
-       action = 'insert';\r
-\r
-       if (anchor != null) {\r
-               element = anchor;\r
-               action = "update";\r
-       }\r
-\r
-       if (tinyMCE.getAttrib(img, "class") == "mceItemAnchor") {\r
-               element = img;\r
-               action = "update";\r
-       }\r
-\r
-       if (action == "update")\r
-               document.forms[0].anchorName.value = element.nodeName == "IMG" ? element.getAttribute("title") : element.getAttribute("name");\r
-\r
-       document.forms[0].insert.value = tinyMCE.getLang('lang_' + action, 'Insert', true);\r
-}\r
-\r
-function insertAnchor() {\r
-       var inst = tinyMCE.getInstanceById(tinyMCE.getWindowArg('editor_id'));\r
-       var name = document.forms[0].anchorName.value, e;\r
-\r
-       tinyMCEPopup.execCommand("mceBeginUndoLevel");\r
-\r
-       if (action == "update") {\r
-               if (element.nodeName == "IMG")\r
-                       element.setAttribute("title", name);\r
-               else\r
-                       element.setAttribute("name", name);\r
-       } else {\r
-               var rng = inst.getRng();\r
-\r
-               if (rng.collapse)\r
-                       rng.collapse(false);\r
-\r
-               name = name.replace(/&/g, '&amp;');\r
-               name = name.replace(/\"/g, '&quot;');\r
-               name = name.replace(/</g, '&lt;');\r
-               name = name.replace(/>/g, '&gt;');\r
-\r
-               // Fix for bug #1447335\r
-               if (tinyMCE.isGecko)\r
-                       html = '<a id="mceNewAnchor" name="' + name + '"></a>';\r
-               else\r
-                       html = '<a name="' + name + '"></a>';\r
-\r
-               tinyMCEPopup.execCommand("mceInsertContent", false, html);\r
-\r
-               // Fix for bug #1447335 force cursor after the anchor element\r
-               if (tinyMCE.isGecko) {\r
-                       e = inst.getDoc().getElementById('mceNewAnchor');\r
-\r
-                       if (e) {\r
-                               inst.selection.selectNode(e, true, false, false);\r
-                               e.removeAttribute('id');\r
-                       }\r
-               }\r
-\r
-               tinyMCE.handleVisualAid(inst.getBody(), true, inst.visualAid, inst);\r
-       }\r
-\r
-       tinyMCEPopup.execCommand("mceEndUndoLevel");\r
-\r
-       tinyMCE.triggerNodeChange();\r
-       tinyMCEPopup.close();\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/charmap.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/charmap.js
deleted file mode 100644 (file)
index eaa6a94..0000000
+++ /dev/null
@@ -1,326 +0,0 @@
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-}\r
-\r
-var charmap = new Array();\r
-\r
-// for mor details please see w3c.org\r
-// now here is the complete list ;)\r
-\r
-charmap = [\r
-       ['&nbsp;',    '&#160;',  true, 'no-break space'],\r
-       ['&amp;',     '&#38;',   true, 'ampersand'],\r
-       ['&quot;',    '&#34;',   true, 'quotation mark'],\r
-// finance\r
-       ['&cent;',    '&#162;',  true, 'cent sign'],\r
-       ['&euro;',    '&#8364;', true, 'euro sign'],\r
-       ['&pound;',   '&#163;',  true, 'pound sign'],\r
-       ['&yen;',     '&#165;',  true, 'yen sign'],\r
-// signs\r
-       ['&copy;',    '&#169;',  true, 'copyright sign'],\r
-       ['&reg;',     '&#174;',  true, 'registered sign'],\r
-       ['&trade;',   '&#8482;', true, 'trade mark sign'],\r
-       ['&permil;',  '&#8240;', true, 'per mille sign'],\r
-       ['&micro;',   '&#181;',  true, 'micro sign'],\r
-       ['&middot;',  '&#183;',  true, 'middle dot'],\r
-       ['&bull;',    '&#8226;', true, 'bullet'],\r
-       ['&hellip;',  '&#8230;', true, 'three dot leader'],\r
-       ['&prime;',   '&#8242;', true, 'minutes / feet'],\r
-       ['&Prime;',   '&#8243;', true, 'seconds / inches'],\r
-       ['&sect;',    '&#167;',  true, 'section sign'],\r
-       ['&para;',    '&#182;',  true, 'paragraph sign'],\r
-       ['&szlig;',   '&#223;',  true, 'sharp s / ess-zed'],\r
-// quotations\r
-       ['&lsaquo;',  '&#8249;', true, 'single left-pointing angle quotation mark'],\r
-       ['&rsaquo;',  '&#8250;', true, 'single right-pointing angle quotation mark'],\r
-       ['&laquo;',   '&#171;',  true, 'left pointing guillemet'],\r
-       ['&raquo;',   '&#187;',  true, 'right pointing guillemet'],\r
-       ['&lsquo;',   '&#8216;', true, 'left single quotation mark'],\r
-       ['&rsquo;',   '&#8217;', true, 'right single quotation mark'],\r
-       ['&ldquo;',   '&#8220;', true, 'left double quotation mark'],\r
-       ['&rdquo;',   '&#8221;', true, 'right double quotation mark'],\r
-       ['&sbquo;',   '&#8218;', true, 'single low-9 quotation mark'],\r
-       ['&bdquo;',   '&#8222;', true, 'double low-9 quotation mark'],\r
-       ['&lt;',      '&#60;',   true, 'less-than sign'],\r
-       ['&gt;',      '&#62;',   true, 'greater-than sign'],\r
-       ['&le;',      '&#8804;', true, 'less-than or equal to'],\r
-       ['&ge;',      '&#8805;', true, 'greater-than or equal to'],\r
-       ['&ndash;',   '&#8211;', true, 'en dash'],\r
-       ['&mdash;',   '&#8212;', true, 'em dash'],\r
-       ['&macr;',    '&#175;',  true, 'macron'],\r
-       ['&oline;',   '&#8254;', true, 'overline'],\r
-       ['&curren;',  '&#164;',  true, 'currency sign'],\r
-       ['&brvbar;',  '&#166;',  true, 'broken bar'],\r
-       ['&uml;',     '&#168;',  true, 'diaeresis'],\r
-       ['&iexcl;',   '&#161;',  true, 'inverted exclamation mark'],\r
-       ['&iquest;',  '&#191;',  true, 'turned question mark'],\r
-       ['&circ;',    '&#710;',  true, 'circumflex accent'],\r
-       ['&tilde;',   '&#732;',  true, 'small tilde'],\r
-       ['&deg;',     '&#176;',  true, 'degree sign'],\r
-       ['&minus;',   '&#8722;', true, 'minus sign'],\r
-       ['&plusmn;',  '&#177;',  true, 'plus-minus sign'],\r
-       ['&divide;',  '&#247;',  true, 'division sign'],\r
-       ['&frasl;',   '&#8260;', true, 'fraction slash'],\r
-       ['&times;',   '&#215;',  true, 'multiplication sign'],\r
-       ['&sup1;',    '&#185;',  true, 'superscript one'],\r
-       ['&sup2;',    '&#178;',  true, 'superscript two'],\r
-       ['&sup3;',    '&#179;',  true, 'superscript three'],\r
-       ['&frac14;',  '&#188;',  true, 'fraction one quarter'],\r
-       ['&frac12;',  '&#189;',  true, 'fraction one half'],\r
-       ['&frac34;',  '&#190;',  true, 'fraction three quarters'],\r
-// math / logical\r
-       ['&fnof;',    '&#402;',  true, 'function / florin'],\r
-       ['&int;',     '&#8747;', true, 'integral'],\r
-       ['&sum;',     '&#8721;', true, 'n-ary sumation'],\r
-       ['&infin;',   '&#8734;', true, 'infinity'],\r
-       ['&radic;',   '&#8730;', true, 'square root'],\r
-       ['&sim;',     '&#8764;', false,'similar to'],\r
-       ['&cong;',    '&#8773;', false,'approximately equal to'],\r
-       ['&asymp;',   '&#8776;', true, 'almost equal to'],\r
-       ['&ne;',      '&#8800;', true, 'not equal to'],\r
-       ['&equiv;',   '&#8801;', true, 'identical to'],\r
-       ['&isin;',    '&#8712;', false,'element of'],\r
-       ['&notin;',   '&#8713;', false,'not an element of'],\r
-       ['&ni;',      '&#8715;', false,'contains as member'],\r
-       ['&prod;',    '&#8719;', true, 'n-ary product'],\r
-       ['&and;',     '&#8743;', false,'logical and'],\r
-       ['&or;',      '&#8744;', false,'logical or'],\r
-       ['&not;',     '&#172;',  true, 'not sign'],\r
-       ['&cap;',     '&#8745;', true, 'intersection'],\r
-       ['&cup;',     '&#8746;', false,'union'],\r
-       ['&part;',    '&#8706;', true, 'partial differential'],\r
-       ['&forall;',  '&#8704;', false,'for all'],\r
-       ['&exist;',   '&#8707;', false,'there exists'],\r
-       ['&empty;',   '&#8709;', false,'diameter'],\r
-       ['&nabla;',   '&#8711;', false,'backward difference'],\r
-       ['&lowast;',  '&#8727;', false,'asterisk operator'],\r
-       ['&prop;',    '&#8733;', false,'proportional to'],\r
-       ['&ang;',     '&#8736;', false,'angle'],\r
-// undefined\r
-       ['&acute;',   '&#180;',  true, 'acute accent'],\r
-       ['&cedil;',   '&#184;',  true, 'cedilla'],\r
-       ['&ordf;',    '&#170;',  true, 'feminine ordinal indicator'],\r
-       ['&ordm;',    '&#186;',  true, 'masculine ordinal indicator'],\r
-       ['&dagger;',  '&#8224;', true, 'dagger'],\r
-       ['&Dagger;',  '&#8225;', true, 'double dagger'],\r
-// alphabetical special chars\r
-       ['&Agrave;',  '&#192;',  true, 'A - grave'],\r
-       ['&Aacute;',  '&#193;',  true, 'A - acute'],\r
-       ['&Acirc;',   '&#194;',  true, 'A - circumflex'],\r
-       ['&Atilde;',  '&#195;',  true, 'A - tilde'],\r
-       ['&Auml;',    '&#196;',  true, 'A - diaeresis'],\r
-       ['&Aring;',   '&#197;',  true, 'A - ring above'],\r
-       ['&AElig;',   '&#198;',  true, 'ligature AE'],\r
-       ['&Ccedil;',  '&#199;',  true, 'C - cedilla'],\r
-       ['&Egrave;',  '&#200;',  true, 'E - grave'],\r
-       ['&Eacute;',  '&#201;',  true, 'E - acute'],\r
-       ['&Ecirc;',   '&#202;',  true, 'E - circumflex'],\r
-       ['&Euml;',    '&#203;',  true, 'E - diaeresis'],\r
-       ['&Igrave;',  '&#204;',  true, 'I - grave'],\r
-       ['&Iacute;',  '&#205;',  true, 'I - acute'],\r
-       ['&Icirc;',   '&#206;',  true, 'I - circumflex'],\r
-       ['&Iuml;',    '&#207;',  true, 'I - diaeresis'],\r
-       ['&ETH;',     '&#208;',  true, 'ETH'],\r
-       ['&Ntilde;',  '&#209;',  true, 'N - tilde'],\r
-       ['&Ograve;',  '&#210;',  true, 'O - grave'],\r
-       ['&Oacute;',  '&#211;',  true, 'O - acute'],\r
-       ['&Ocirc;',   '&#212;',  true, 'O - circumflex'],\r
-       ['&Otilde;',  '&#213;',  true, 'O - tilde'],\r
-       ['&Ouml;',    '&#214;',  true, 'O - diaeresis'],\r
-       ['&Oslash;',  '&#216;',  true, 'O - slash'],\r
-       ['&OElig;',   '&#338;',  true, 'ligature OE'],\r
-       ['&Scaron;',  '&#352;',  true, 'S - caron'],\r
-       ['&Ugrave;',  '&#217;',  true, 'U - grave'],\r
-       ['&Uacute;',  '&#218;',  true, 'U - acute'],\r
-       ['&Ucirc;',   '&#219;',  true, 'U - circumflex'],\r
-       ['&Uuml;',    '&#220;',  true, 'U - diaeresis'],\r
-       ['&Yacute;',  '&#221;',  true, 'Y - acute'],\r
-       ['&Yuml;',    '&#376;',  true, 'Y - diaeresis'],\r
-       ['&THORN;',   '&#222;',  true, 'THORN'],\r
-       ['&agrave;',  '&#224;',  true, 'a - grave'],\r
-       ['&aacute;',  '&#225;',  true, 'a - acute'],\r
-       ['&acirc;',   '&#226;',  true, 'a - circumflex'],\r
-       ['&atilde;',  '&#227;',  true, 'a - tilde'],\r
-       ['&auml;',    '&#228;',  true, 'a - diaeresis'],\r
-       ['&aring;',   '&#229;',  true, 'a - ring above'],\r
-       ['&aelig;',   '&#230;',  true, 'ligature ae'],\r
-       ['&ccedil;',  '&#231;',  true, 'c - cedilla'],\r
-       ['&egrave;',  '&#232;',  true, 'e - grave'],\r
-       ['&eacute;',  '&#233;',  true, 'e - acute'],\r
-       ['&ecirc;',   '&#234;',  true, 'e - circumflex'],\r
-       ['&euml;',    '&#235;',  true, 'e - diaeresis'],\r
-       ['&igrave;',  '&#236;',  true, 'i - grave'],\r
-       ['&iacute;',  '&#237;',  true, 'i - acute'],\r
-       ['&icirc;',   '&#238;',  true, 'i - circumflex'],\r
-       ['&iuml;',    '&#239;',  true, 'i - diaeresis'],\r
-       ['&eth;',     '&#240;',  true, 'eth'],\r
-       ['&ntilde;',  '&#241;',  true, 'n - tilde'],\r
-       ['&ograve;',  '&#242;',  true, 'o - grave'],\r
-       ['&oacute;',  '&#243;',  true, 'o - acute'],\r
-       ['&ocirc;',   '&#244;',  true, 'o - circumflex'],\r
-       ['&otilde;',  '&#245;',  true, 'o - tilde'],\r
-       ['&ouml;',    '&#246;',  true, 'o - diaeresis'],\r
-       ['&oslash;',  '&#248;',  true, 'o slash'],\r
-       ['&oelig;',   '&#339;',  true, 'ligature oe'],\r
-       ['&scaron;',  '&#353;',  true, 's - caron'],\r
-       ['&ugrave;',  '&#249;',  true, 'u - grave'],\r
-       ['&uacute;',  '&#250;',  true, 'u - acute'],\r
-       ['&ucirc;',   '&#251;',  true, 'u - circumflex'],\r
-       ['&uuml;',    '&#252;',  true, 'u - diaeresis'],\r
-       ['&yacute;',  '&#253;',  true, 'y - acute'],\r
-       ['&thorn;',   '&#254;',  true, 'thorn'],\r
-       ['&yuml;',    '&#255;',  true, 'y - diaeresis'],\r
-    ['&Alpha;',   '&#913;',  true, 'Alpha'],\r
-       ['&Beta;',    '&#914;',  true, 'Beta'],\r
-       ['&Gamma;',   '&#915;',  true, 'Gamma'],\r
-       ['&Delta;',   '&#916;',  true, 'Delta'],\r
-       ['&Epsilon;', '&#917;',  true, 'Epsilon'],\r
-       ['&Zeta;',    '&#918;',  true, 'Zeta'],\r
-       ['&Eta;',     '&#919;',  true, 'Eta'],\r
-       ['&Theta;',   '&#920;',  true, 'Theta'],\r
-       ['&Iota;',    '&#921;',  true, 'Iota'],\r
-       ['&Kappa;',   '&#922;',  true, 'Kappa'],\r
-       ['&Lambda;',  '&#923;',  true, 'Lambda'],\r
-       ['&Mu;',      '&#924;',  true, 'Mu'],\r
-       ['&Nu;',      '&#925;',  true, 'Nu'],\r
-       ['&Xi;',      '&#926;',  true, 'Xi'],\r
-       ['&Omicron;', '&#927;',  true, 'Omicron'],\r
-       ['&Pi;',      '&#928;',  true, 'Pi'],\r
-       ['&Rho;',     '&#929;',  true, 'Rho'],\r
-       ['&Sigma;',   '&#931;',  true, 'Sigma'],\r
-       ['&Tau;',     '&#932;',  true, 'Tau'],\r
-       ['&Upsilon;', '&#933;',  true, 'Upsilon'],\r
-       ['&Phi;',     '&#934;',  true, 'Phi'],\r
-       ['&Chi;',     '&#935;',  true, 'Chi'],\r
-       ['&Psi;',     '&#936;',  true, 'Psi'],\r
-       ['&Omega;',   '&#937;',  true, 'Omega'],\r
-       ['&alpha;',   '&#945;',  true, 'alpha'],\r
-       ['&beta;',    '&#946;',  true, 'beta'],\r
-       ['&gamma;',   '&#947;',  true, 'gamma'],\r
-       ['&delta;',   '&#948;',  true, 'delta'],\r
-       ['&epsilon;', '&#949;',  true, 'epsilon'],\r
-       ['&zeta;',    '&#950;',  true, 'zeta'],\r
-       ['&eta;',     '&#951;',  true, 'eta'],\r
-       ['&theta;',   '&#952;',  true, 'theta'],\r
-       ['&iota;',    '&#953;',  true, 'iota'],\r
-       ['&kappa;',   '&#954;',  true, 'kappa'],\r
-       ['&lambda;',  '&#955;',  true, 'lambda'],\r
-       ['&mu;',      '&#956;',  true, 'mu'],\r
-       ['&nu;',      '&#957;',  true, 'nu'],\r
-       ['&xi;',      '&#958;',  true, 'xi'],\r
-       ['&omicron;', '&#959;',  true, 'omicron'],\r
-       ['&pi;',      '&#960;',  true, 'pi'],\r
-       ['&rho;',     '&#961;',  true, 'rho'],\r
-       ['&sigmaf;',  '&#962;',  true, 'final sigma'],\r
-       ['&sigma;',   '&#963;',  true, 'sigma'],\r
-       ['&tau;',     '&#964;',  true, 'tau'],\r
-       ['&upsilon;', '&#965;',  true, 'upsilon'],\r
-       ['&phi;',     '&#966;',  true, 'phi'],\r
-       ['&chi;',     '&#967;',  true, 'chi'],\r
-       ['&psi;',     '&#968;',  true, 'psi'],\r
-       ['&omega;',   '&#969;',  true, 'omega'],\r
-// symbols\r
-       ['&alefsym;', '&#8501;', false,'alef symbol'],\r
-       ['&piv;',     '&#982;',  false,'pi symbol'],\r
-       ['&real;',    '&#8476;', false,'real part symbol'],\r
-       ['&thetasym;','&#977;',  false,'theta symbol'],\r
-       ['&upsih;',   '&#978;',  false,'upsilon - hook symbol'],\r
-       ['&weierp;',  '&#8472;', false,'Weierstrass p'],\r
-       ['&image;',   '&#8465;', false,'imaginary part'],\r
-// arrows\r
-       ['&larr;',    '&#8592;', true, 'leftwards arrow'],\r
-       ['&uarr;',    '&#8593;', true, 'upwards arrow'],\r
-       ['&rarr;',    '&#8594;', true, 'rightwards arrow'],\r
-       ['&darr;',    '&#8595;', true, 'downwards arrow'],\r
-       ['&harr;',    '&#8596;', true, 'left right arrow'],\r
-       ['&crarr;',   '&#8629;', false,'carriage return'],\r
-       ['&lArr;',    '&#8656;', false,'leftwards double arrow'],\r
-       ['&uArr;',    '&#8657;', false,'upwards double arrow'],\r
-       ['&rArr;',    '&#8658;', false,'rightwards double arrow'],\r
-       ['&dArr;',    '&#8659;', false,'downwards double arrow'],\r
-       ['&hArr;',    '&#8660;', false,'left right double arrow'],\r
-       ['&there4;',  '&#8756;', false,'therefore'],\r
-       ['&sub;',     '&#8834;', false,'subset of'],\r
-       ['&sup;',     '&#8835;', false,'superset of'],\r
-       ['&nsub;',    '&#8836;', false,'not a subset of'],\r
-       ['&sube;',    '&#8838;', false,'subset of or equal to'],\r
-       ['&supe;',    '&#8839;', false,'superset of or equal to'],\r
-       ['&oplus;',   '&#8853;', false,'circled plus'],\r
-       ['&otimes;',  '&#8855;', false,'circled times'],\r
-       ['&perp;',    '&#8869;', false,'perpendicular'],\r
-       ['&sdot;',    '&#8901;', false,'dot operator'],\r
-       ['&lceil;',   '&#8968;', false,'left ceiling'],\r
-       ['&rceil;',   '&#8969;', false,'right ceiling'],\r
-       ['&lfloor;',  '&#8970;', false,'left floor'],\r
-       ['&rfloor;',  '&#8971;', false,'right floor'],\r
-       ['&lang;',    '&#9001;', false,'left-pointing angle bracket'],\r
-       ['&rang;',    '&#9002;', false,'right-pointing angle bracket'],\r
-       ['&loz;',     '&#9674;', true,'lozenge'],\r
-       ['&spades;',  '&#9824;', false,'black spade suit'],\r
-       ['&clubs;',   '&#9827;', true, 'black club suit'],\r
-       ['&hearts;',  '&#9829;', true, 'black heart suit'],\r
-       ['&diams;',   '&#9830;', true, 'black diamond suit'],\r
-       ['&ensp;',    '&#8194;', false,'en space'],\r
-       ['&emsp;',    '&#8195;', false,'em space'],\r
-       ['&thinsp;',  '&#8201;', false,'thin space'],\r
-       ['&zwnj;',    '&#8204;', false,'zero width non-joiner'],\r
-       ['&zwj;',     '&#8205;', false,'zero width joiner'],\r
-       ['&lrm;',     '&#8206;', false,'left-to-right mark'],\r
-       ['&rlm;',     '&#8207;', false,'right-to-left mark'],\r
-       ['&shy;',     '&#173;',  false,'soft hyphen']\r
-];\r
-\r
-function renderCharMapHTML() {\r
-       var charsPerRow = 20, tdWidth=20, tdHeight=20;\r
-       var html = '<table border="0" cellspacing="1" cellpadding="0" width="' + (tdWidth*charsPerRow) + '"><tr height="' + tdHeight + '">';\r
-       var cols=-1;\r
-       for (var i=0; i<charmap.length; i++) {\r
-               if (charmap[i][2]==true) {\r
-                       cols++;\r
-                       html += ''\r
-                               + '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap"'\r
-                               + ' onmouseover="this.className=\'charmapOver\';'\r
-                               + 'previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');"'\r
-                               + ' onmouseout="this.className=\'charmap\';"'\r
-                               + ' nowrap="nowrap" onclick="insertChar(\'' + charmap[i][1].substring(2,charmap[i][1].length-1) + '\');"><a style="text-decoration: none;" onfocus="previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');" href="javascript:insertChar(\'' + charmap[i][1].substring(2,charmap[i][1].length-1) + '\');" onclick="return false;" onmousedown="return false;" title="' + charmap[i][3] + '">'\r
-                               + charmap[i][1]\r
-                               + '</a></td>';\r
-                       if ((cols+1) % charsPerRow == 0)\r
-                               html += '</tr><tr height="' + tdHeight + '">';\r
-               }\r
-        }\r
-       if (cols % charsPerRow > 0) {\r
-               var padd = charsPerRow - (cols % charsPerRow);\r
-               for (var i=0; i<padd-1; i++)\r
-                       html += '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap">&nbsp;</td>';\r
-       }\r
-       html += '</tr></table>';\r
-       document.write(html);\r
-}\r
-\r
-function insertChar(chr) {\r
-       tinyMCEPopup.execCommand('mceInsertContent', false, '&#' + chr + ';');\r
-\r
-       // Refocus in window\r
-       if (tinyMCEPopup.isWindow)\r
-               window.focus();\r
-\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function previewChar(codeA, codeB, codeN) {\r
-       var elmA = document.getElementById('codeA');\r
-       var elmB = document.getElementById('codeB');\r
-       var elmV = document.getElementById('codeV');\r
-       var elmN = document.getElementById('codeN');\r
-\r
-       if (codeA=='#160;') {\r
-               elmV.innerHTML = '__';\r
-       } else {\r
-               elmV.innerHTML = '&' + codeA;\r
-       }\r
-\r
-       elmB.innerHTML = '&amp;' + codeA;\r
-       elmA.innerHTML = '&amp;' + codeB;\r
-       elmN.innerHTML = codeN;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/color_picker.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/color_picker.js
deleted file mode 100644 (file)
index 00fc823..0000000
+++ /dev/null
@@ -1,240 +0,0 @@
-var detail = 50, strhex = "0123456789abcdef", i, isMouseDown = false, isMouseOver = false;\r
-\r
-var colors = new Array(\r
-       "#000000","#000033","#000066","#000099","#0000cc","#0000ff","#330000","#330033",\r
-       "#330066","#330099","#3300cc","#3300ff","#660000","#660033","#660066","#660099",\r
-       "#6600cc","#6600ff","#990000","#990033","#990066","#990099","#9900cc","#9900ff",\r
-       "#cc0000","#cc0033","#cc0066","#cc0099","#cc00cc","#cc00ff","#ff0000","#ff0033",\r
-       "#ff0066","#ff0099","#ff00cc","#ff00ff","#003300","#003333","#003366","#003399",\r
-       "#0033cc","#0033ff","#333300","#333333","#333366","#333399","#3333cc","#3333ff",\r
-       "#663300","#663333","#663366","#663399","#6633cc","#6633ff","#993300","#993333",\r
-       "#993366","#993399","#9933cc","#9933ff","#cc3300","#cc3333","#cc3366","#cc3399",\r
-       "#cc33cc","#cc33ff","#ff3300","#ff3333","#ff3366","#ff3399","#ff33cc","#ff33ff",\r
-       "#006600","#006633","#006666","#006699","#0066cc","#0066ff","#336600","#336633",\r
-       "#336666","#336699","#3366cc","#3366ff","#666600","#666633","#666666","#666699",\r
-       "#6666cc","#6666ff","#996600","#996633","#996666","#996699","#9966cc","#9966ff",\r
-       "#cc6600","#cc6633","#cc6666","#cc6699","#cc66cc","#cc66ff","#ff6600","#ff6633",\r
-       "#ff6666","#ff6699","#ff66cc","#ff66ff","#009900","#009933","#009966","#009999",\r
-       "#0099cc","#0099ff","#339900","#339933","#339966","#339999","#3399cc","#3399ff",\r
-       "#669900","#669933","#669966","#669999","#6699cc","#6699ff","#999900","#999933",\r
-       "#999966","#999999","#9999cc","#9999ff","#cc9900","#cc9933","#cc9966","#cc9999",\r
-       "#cc99cc","#cc99ff","#ff9900","#ff9933","#ff9966","#ff9999","#ff99cc","#ff99ff",\r
-       "#00cc00","#00cc33","#00cc66","#00cc99","#00cccc","#00ccff","#33cc00","#33cc33",\r
-       "#33cc66","#33cc99","#33cccc","#33ccff","#66cc00","#66cc33","#66cc66","#66cc99",\r
-       "#66cccc","#66ccff","#99cc00","#99cc33","#99cc66","#99cc99","#99cccc","#99ccff",\r
-       "#cccc00","#cccc33","#cccc66","#cccc99","#cccccc","#ccccff","#ffcc00","#ffcc33",\r
-       "#ffcc66","#ffcc99","#ffcccc","#ffccff","#00ff00","#00ff33","#00ff66","#00ff99",\r
-       "#00ffcc","#00ffff","#33ff00","#33ff33","#33ff66","#33ff99","#33ffcc","#33ffff",\r
-       "#66ff00","#66ff33","#66ff66","#66ff99","#66ffcc","#66ffff","#99ff00","#99ff33",\r
-       "#99ff66","#99ff99","#99ffcc","#99ffff","#ccff00","#ccff33","#ccff66","#ccff99",\r
-       "#ccffcc","#ccffff","#ffff00","#ffff33","#ffff66","#ffff99","#ffffcc","#ffffff"\r
-);\r
-\r
-var named = {\r
-       '#F0F8FF':'AliceBlue','#FAEBD7':'AntiqueWhite','#00FFFF':'Aqua','#7FFFD4':'Aquamarine','#F0FFFF':'Azure','#F5F5DC':'Beige',\r
-       '#FFE4C4':'Bisque','#000000':'Black','#FFEBCD':'BlanchedAlmond','#0000FF':'Blue','#8A2BE2':'BlueViolet','#A52A2A':'Brown',\r
-       '#DEB887':'BurlyWood','#5F9EA0':'CadetBlue','#7FFF00':'Chartreuse','#D2691E':'Chocolate','#FF7F50':'Coral','#6495ED':'CornflowerBlue',\r
-       '#FFF8DC':'Cornsilk','#DC143C':'Crimson','#00FFFF':'Cyan','#00008B':'DarkBlue','#008B8B':'DarkCyan','#B8860B':'DarkGoldenRod',\r
-       '#A9A9A9':'DarkGray','#A9A9A9':'DarkGrey','#006400':'DarkGreen','#BDB76B':'DarkKhaki','#8B008B':'DarkMagenta','#556B2F':'DarkOliveGreen',\r
-       '#FF8C00':'Darkorange','#9932CC':'DarkOrchid','#8B0000':'DarkRed','#E9967A':'DarkSalmon','#8FBC8F':'DarkSeaGreen','#483D8B':'DarkSlateBlue',\r
-       '#2F4F4F':'DarkSlateGray','#2F4F4F':'DarkSlateGrey','#00CED1':'DarkTurquoise','#9400D3':'DarkViolet','#FF1493':'DeepPink','#00BFFF':'DeepSkyBlue',\r
-       '#696969':'DimGray','#696969':'DimGrey','#1E90FF':'DodgerBlue','#B22222':'FireBrick','#FFFAF0':'FloralWhite','#228B22':'ForestGreen',\r
-       '#FF00FF':'Fuchsia','#DCDCDC':'Gainsboro','#F8F8FF':'GhostWhite','#FFD700':'Gold','#DAA520':'GoldenRod','#808080':'Gray','#808080':'Grey',\r
-       '#008000':'Green','#ADFF2F':'GreenYellow','#F0FFF0':'HoneyDew','#FF69B4':'HotPink','#CD5C5C':'IndianRed','#4B0082':'Indigo','#FFFFF0':'Ivory',\r
-       '#F0E68C':'Khaki','#E6E6FA':'Lavender','#FFF0F5':'LavenderBlush','#7CFC00':'LawnGreen','#FFFACD':'LemonChiffon','#ADD8E6':'LightBlue',\r
-       '#F08080':'LightCoral','#E0FFFF':'LightCyan','#FAFAD2':'LightGoldenRodYellow','#D3D3D3':'LightGray','#D3D3D3':'LightGrey','#90EE90':'LightGreen',\r
-       '#FFB6C1':'LightPink','#FFA07A':'LightSalmon','#20B2AA':'LightSeaGreen','#87CEFA':'LightSkyBlue','#778899':'LightSlateGray','#778899':'LightSlateGrey',\r
-       '#B0C4DE':'LightSteelBlue','#FFFFE0':'LightYellow','#00FF00':'Lime','#32CD32':'LimeGreen','#FAF0E6':'Linen','#FF00FF':'Magenta','#800000':'Maroon',\r
-       '#66CDAA':'MediumAquaMarine','#0000CD':'MediumBlue','#BA55D3':'MediumOrchid','#9370D8':'MediumPurple','#3CB371':'MediumSeaGreen','#7B68EE':'MediumSlateBlue',\r
-       '#00FA9A':'MediumSpringGreen','#48D1CC':'MediumTurquoise','#C71585':'MediumVioletRed','#191970':'MidnightBlue','#F5FFFA':'MintCream','#FFE4E1':'MistyRose','#FFE4B5':'Moccasin',\r
-       '#FFDEAD':'NavajoWhite','#000080':'Navy','#FDF5E6':'OldLace','#808000':'Olive','#6B8E23':'OliveDrab','#FFA500':'Orange','#FF4500':'OrangeRed','#DA70D6':'Orchid',\r
-       '#EEE8AA':'PaleGoldenRod','#98FB98':'PaleGreen','#AFEEEE':'PaleTurquoise','#D87093':'PaleVioletRed','#FFEFD5':'PapayaWhip','#FFDAB9':'PeachPuff',\r
-       '#CD853F':'Peru','#FFC0CB':'Pink','#DDA0DD':'Plum','#B0E0E6':'PowderBlue','#800080':'Purple','#FF0000':'Red','#BC8F8F':'RosyBrown','#4169E1':'RoyalBlue',\r
-       '#8B4513':'SaddleBrown','#FA8072':'Salmon','#F4A460':'SandyBrown','#2E8B57':'SeaGreen','#FFF5EE':'SeaShell','#A0522D':'Sienna','#C0C0C0':'Silver',\r
-       '#87CEEB':'SkyBlue','#6A5ACD':'SlateBlue','#708090':'SlateGray','#708090':'SlateGrey','#FFFAFA':'Snow','#00FF7F':'SpringGreen',\r
-       '#4682B4':'SteelBlue','#D2B48C':'Tan','#008080':'Teal','#D8BFD8':'Thistle','#FF6347':'Tomato','#40E0D0':'Turquoise','#EE82EE':'Violet',\r
-       '#F5DEB3':'Wheat','#FFFFFF':'White','#F5F5F5':'WhiteSmoke','#FFFF00':'Yellow','#9ACD32':'YellowGreen'\r
-};\r
-\r
-function init() {\r
-       var inputColor = convertRGBToHex(tinyMCE.getWindowArg('input_color'));\r
-\r
-       if (tinyMCE.isMSIE)\r
-               tinyMCEPopup.resizeToInnerSize();\r
-\r
-       generatePicker();\r
-\r
-       if (inputColor) {\r
-               changeFinalColor(inputColor);\r
-\r
-               col = convertHexToRGB(inputColor);\r
-\r
-               if (col)\r
-                       updateLight(col.r, col.g, col.b);\r
-       }\r
-}\r
-\r
-function insertAction() {\r
-       var color = document.getElementById("color").value;\r
-\r
-       tinyMCEPopup.execCommand(tinyMCE.getWindowArg('command'), false, color);\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function showColor(color, name) {\r
-       if (name)\r
-               document.getElementById("colorname").innerHTML = name;\r
-\r
-       document.getElementById("preview").style.backgroundColor = color;\r
-       document.getElementById("color").value = color;\r
-}\r
-\r
-function convertRGBToHex(col) {\r
-       var re = new RegExp("rgb\\s*\\(\\s*([0-9]+).*,\\s*([0-9]+).*,\\s*([0-9]+).*\\)", "gi");\r
-\r
-       if (!col)\r
-               return col;\r
-\r
-       var rgb = col.replace(re, "$1,$2,$3").split(',');\r
-       if (rgb.length == 3) {\r
-               r = parseInt(rgb[0]).toString(16);\r
-               g = parseInt(rgb[1]).toString(16);\r
-               b = parseInt(rgb[2]).toString(16);\r
-\r
-               r = r.length == 1 ? '0' + r : r;\r
-               g = g.length == 1 ? '0' + g : g;\r
-               b = b.length == 1 ? '0' + b : b;\r
-\r
-               return "#" + r + g + b;\r
-       }\r
-\r
-       return col;\r
-}\r
-\r
-function convertHexToRGB(col) {\r
-       if (col.indexOf('#') != -1) {\r
-               col = col.replace(new RegExp('[^0-9A-F]', 'gi'), '');\r
-\r
-               r = parseInt(col.substring(0, 2), 16);\r
-               g = parseInt(col.substring(2, 4), 16);\r
-               b = parseInt(col.substring(4, 6), 16);\r
-\r
-               return {r : r, g : g, b : b};\r
-       }\r
-\r
-       return null;\r
-}\r
-\r
-function generatePicker() {\r
-       var el = document.getElementById('light'), h = '', i;\r
-\r
-       for (i = 0; i < detail; i++){\r
-               h += '<div id="gs'+i+'" style="background-color:#000000; width:15px; height:3px; border-style:none; border-width:0px;"'\r
-               + ' onclick="changeFinalColor(this.style.backgroundColor)"'\r
-               + ' onmousedown="isMouseDown = true; return false;"'\r
-               + ' onmouseup="isMouseDown = false;"'\r
-               + ' onmousemove="if (isMouseDown && isMouseOver) changeFinalColor(this.style.backgroundColor); return false;"'\r
-               + ' onmouseover="isMouseOver = true;"'\r
-               + ' onmouseout="isMouseOver = false;"'\r
-               + '></div>';\r
-       }\r
-\r
-       el.innerHTML = h;\r
-}\r
-\r
-function generateWebColors() {\r
-       var el = document.getElementById('webcolors'), h = '', i;\r
-\r
-       if (el.className == 'generated')\r
-               return;\r
-\r
-       h += '<table border="0" cellspacing="1" cellpadding="0">'\r
-               + '<tr>';\r
-\r
-       for (i=0; i<colors.length; i++) {\r
-               h += '<td bgcolor="' + colors[i] + '">'\r
-                       + '<a href="javascript:insertAction();" onfocus="showColor(\'' + colors[i] +  '\');" onmouseover="showColor(\'' + colors[i] +  '\');">'\r
-                       + '<img border="0" src="images/spacer.gif" width="10" height="10" title="' + colors[i] +  '" alt="' + colors[i] +  '" /></a></td>';\r
-               if ((i+1) % 18 == 0)\r
-                       h += '</tr><tr>';\r
-       }\r
-\r
-       h += '</table>';\r
-\r
-       el.innerHTML = h;\r
-       el.className = 'generated';\r
-}\r
-\r
-function generateNamedColors() {\r
-       var el = document.getElementById('namedcolors'), h = '', n, v, i = 0;\r
-\r
-       if (el.className == 'generated')\r
-               return;\r
-\r
-       for (n in named) {\r
-               v = named[n];\r
-               h += '<a href="javascript:insertAction();" onmouseover="showColor(\'' + n +  '\',\'' + v + '\');" style="background-color: ' + n + '"><!-- IE --></a>'\r
-       }\r
-\r
-       el.innerHTML = h;\r
-       el.className = 'generated';\r
-}\r
-\r
-function dechex(n) {\r
-       return strhex.charAt(Math.floor(n / 16)) + strhex.charAt(n % 16);\r
-}\r
-\r
-function computeColor(e) {\r
-       var x, y, partWidth, partDetail, imHeight, r, g, b, coef, i, finalCoef, finalR, finalG, finalB;\r
-\r
-       x = e.offsetX ? e.offsetX : (e.target ? e.clientX - e.target.x : 0);\r
-       y = e.offsetY ? e.offsetY : (e.target ? e.clientY - e.target.y : 0);\r
-\r
-       partWidth = document.getElementById('colorpicker').width / 6;\r
-       partDetail = detail / 2;\r
-       imHeight = document.getElementById('colorpicker').height;\r
-\r
-       r = (x >= 0)*(x < partWidth)*255 + (x >= partWidth)*(x < 2*partWidth)*(2*255 - x * 255 / partWidth) + (x >= 4*partWidth)*(x < 5*partWidth)*(-4*255 + x * 255 / partWidth) + (x >= 5*partWidth)*(x < 6*partWidth)*255;\r
-       g = (x >= 0)*(x < partWidth)*(x * 255 / partWidth) + (x >= partWidth)*(x < 3*partWidth)*255     + (x >= 3*partWidth)*(x < 4*partWidth)*(4*255 - x * 255 / partWidth);\r
-       b = (x >= 2*partWidth)*(x < 3*partWidth)*(-2*255 + x * 255 / partWidth) + (x >= 3*partWidth)*(x < 5*partWidth)*255 + (x >= 5*partWidth)*(x < 6*partWidth)*(6*255 - x * 255 / partWidth);\r
-\r
-       coef = (imHeight - y) / imHeight;\r
-       r = 128 + (r - 128) * coef;\r
-       g = 128 + (g - 128) * coef;\r
-       b = 128 + (b - 128) * coef;\r
-\r
-       changeFinalColor('#' + dechex(r) + dechex(g) + dechex(b));\r
-       updateLight(r, g, b);\r
-}\r
-\r
-function updateLight(r, g, b) {\r
-       var i, partDetail = detail / 2, finalCoef, finalR, finalG, finalB, color;\r
-\r
-       for (i=0; i<detail; i++) {\r
-               if ((i>=0) && (i<partDetail)) {\r
-                       finalCoef = i / partDetail;\r
-                       finalR = dechex(255 - (255 - r) * finalCoef);\r
-                       finalG = dechex(255 - (255 - g) * finalCoef);\r
-                       finalB = dechex(255 - (255 - b) * finalCoef);\r
-               } else {\r
-                       finalCoef = 2 - i / partDetail;\r
-                       finalR = dechex(r * finalCoef);\r
-                       finalG = dechex(g * finalCoef);\r
-                       finalB = dechex(b * finalCoef);\r
-               }\r
-\r
-               color = finalR + finalG + finalB;\r
-\r
-               document.getElementById('gs' + i).style.backgroundColor = '#'+color;\r
-       }\r
-}\r
-\r
-function changeFinalColor(color) {\r
-       if (color.indexOf('#') == -1)\r
-               color = convertRGBToHex(color);\r
-\r
-       document.getElementById('preview').style.backgroundColor = color;\r
-       document.getElementById('color').value = color;\r
-}\r
-\r
-window.focus();
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/image.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/image.js
deleted file mode 100644 (file)
index a52bfad..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-var url = tinyMCE.getParam("external_image_list_url");\r
-if (url != null) {\r
-       // Fix relative\r
-       if (url.charAt(0) != '/' && url.indexOf('://') == -1)\r
-               url = tinyMCE.documentBasePath + "/" + url;\r
-\r
-       document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '"></sc'+'ript>');\r
-}\r
-\r
-function insertImage() {\r
-       var src = document.forms[0].src.value;\r
-       var alt = document.forms[0].alt.value;\r
-       var border = document.forms[0].border.value;\r
-       var vspace = document.forms[0].vspace.value;\r
-       var hspace = document.forms[0].hspace.value;\r
-       var width = document.forms[0].width.value;\r
-       var height = document.forms[0].height.value;\r
-       var align = document.forms[0].align.options[document.forms[0].align.selectedIndex].value;\r
-\r
-       tinyMCEPopup.restoreSelection();\r
-       tinyMCE.themes['advanced']._insertImage(src, alt, border, hspace, vspace, width, height, align);\r
-       tinyMCEPopup.close();\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       document.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image');\r
-\r
-       var formObj = document.forms[0];\r
-\r
-       for (var i=0; i<document.forms[0].align.options.length; i++) {\r
-               if (document.forms[0].align.options[i].value == tinyMCE.getWindowArg('align'))\r
-                       document.forms[0].align.options.selectedIndex = i;\r
-       }\r
-\r
-       formObj.src.value = tinyMCE.getWindowArg('src');\r
-       formObj.alt.value = tinyMCE.getWindowArg('alt');\r
-       formObj.border.value = tinyMCE.getWindowArg('border');\r
-       formObj.vspace.value = tinyMCE.getWindowArg('vspace');\r
-       formObj.hspace.value = tinyMCE.getWindowArg('hspace');\r
-       formObj.width.value = tinyMCE.getWindowArg('width');\r
-       formObj.height.value = tinyMCE.getWindowArg('height');\r
-       formObj.insert.value = tinyMCE.getLang('lang_' + tinyMCE.getWindowArg('action'), 'Insert', true); \r
-\r
-       // Handle file browser\r
-       if (isVisible('srcbrowser'))\r
-               document.getElementById('src').style.width = '180px';\r
-\r
-       // Auto select image in list\r
-       if (typeof(tinyMCEImageList) != "undefined" && tinyMCEImageList.length > 0) {\r
-               for (var i=0; i<formObj.image_list.length; i++) {\r
-                       if (formObj.image_list.options[i].value == tinyMCE.getWindowArg('src'))\r
-                               formObj.image_list.options[i].selected = true;\r
-               }\r
-       }\r
-}\r
-\r
-var preloadImg = new Image();\r
-\r
-function resetImageData() {\r
-       var formObj = document.forms[0];\r
-       formObj.width.value = formObj.height.value = "";        \r
-}\r
-\r
-function updateImageData() {\r
-       var formObj = document.forms[0];\r
-\r
-       if (formObj.width.value == "")\r
-               formObj.width.value = preloadImg.width;\r
-\r
-       if (formObj.height.value == "")\r
-               formObj.height.value = preloadImg.height;\r
-}\r
-\r
-function getImageData() {\r
-       preloadImg = new Image();\r
-       tinyMCE.addEvent(preloadImg, "load", updateImageData);\r
-       tinyMCE.addEvent(preloadImg, "error", function () {var formObj = document.forms[0];formObj.width.value = formObj.height.value = "";});\r
-       preloadImg.src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings['base_href'], document.forms[0].src.value);\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/link.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/link.js
deleted file mode 100644 (file)
index e195497..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-var url = tinyMCE.getParam("external_link_list_url");\r
-if (url != null) {\r
-       // Fix relative\r
-       if (url.charAt(0) != '/' && url.indexOf('://') == -1)\r
-               url = tinyMCE.documentBasePath + "/" + url;\r
-\r
-       document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '"></sc'+'ript>');\r
-}\r
-\r
-function init() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       document.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','theme_advanced_link');\r
-\r
-       // Handle file browser\r
-       if (isVisible('hrefbrowser'))\r
-               document.getElementById('href').style.width = '180px';\r
-\r
-       var formObj = document.forms[0];\r
-\r
-       for (var i=0; i<document.forms[0].target.options.length; i++) {\r
-               var option = document.forms[0].target.options[i];\r
-\r
-               if (option.value == tinyMCE.getWindowArg('target'))\r
-                       option.selected = true;\r
-       }\r
-\r
-       document.forms[0].href.value = tinyMCE.getWindowArg('href');\r
-       document.forms[0].linktitle.value = tinyMCE.getWindowArg('title');\r
-       document.forms[0].insert.value = tinyMCE.getLang('lang_' + tinyMCE.getWindowArg('action'), 'Insert', true); \r
-\r
-       addClassesToList('styleSelect', 'theme_advanced_link_styles');\r
-       selectByValue(formObj, 'styleSelect', tinyMCE.getWindowArg('className'), true);\r
-\r
-       // Hide css select row if no CSS classes\r
-       if (formObj.styleSelect && formObj.styleSelect.options.length <= 1) {\r
-               var sr = document.getElementById('styleSelectRow');\r
-               sr.style.display = 'none';\r
-               sr.parentNode.removeChild(sr);\r
-       }\r
-\r
-       // Auto select link in list\r
-       if (typeof(tinyMCELinkList) != "undefined" && tinyMCELinkList.length > 0) {\r
-               var formObj = document.forms[0];\r
-\r
-               for (var i=0; i<formObj.link_list.length; i++) {\r
-                       if (formObj.link_list.options[i].value == tinyMCE.getWindowArg('href'))\r
-                               formObj.link_list.options[i].selected = true;\r
-               }\r
-       }\r
-}\r
-\r
-function checkPrefix(n) {\r
-       if (Validator.isEmail(n) && !/^\s*mailto:/i.test(n.value) && confirm(tinyMCE.getLang('lang_is_email')))\r
-               n.value = 'mailto:' + n.value;\r
-\r
-       if (/^\s*www./i.test(n.value) && confirm(tinyMCE.getLang('lang_is_external')))\r
-               n.value = 'http://' + n.value;\r
-}\r
-\r
-function insertLink() {\r
-       var href = document.forms[0].href.value;\r
-       var target = document.forms[0].target.options[document.forms[0].target.selectedIndex].value;\r
-       var title = document.forms[0].linktitle.value;\r
-       var style_class = document.forms[0].styleSelect ? document.forms[0].styleSelect.value : "";\r
-       var dummy;\r
-\r
-       if (target == '_self')\r
-               target = '';\r
-\r
-       tinyMCEPopup.restoreSelection();\r
-       tinyMCE.themes['advanced']._insertLink(href, target, title, dummy, style_class);\r
-       tinyMCEPopup.close();\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/source_editor.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/jscripts/source_editor.js
deleted file mode 100644 (file)
index d0d517d..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-function saveContent() {\r
-       tinyMCE.setContent(document.getElementById('htmlSource').value);\r
-       tinyMCE.closeWindow(window);\r
-}\r
-\r
-function onLoadInit() {\r
-       tinyMCEPopup.resizeToInnerSize();\r
-\r
-       // Remove Gecko spellchecking\r
-       if (tinyMCE.isGecko)\r
-               document.body.spellcheck = tinyMCE.getParam("gecko_spellcheck");\r
-\r
-       document.getElementById('htmlSource').value = tinyMCE.getContent(tinyMCE.getWindowArg('editor_id'));\r
-\r
-       resizeInputs();\r
-\r
-       if (tinyMCE.getParam("theme_advanced_source_editor_wrap", true)) {\r
-               setWrap('soft');\r
-               document.getElementById('wraped').checked = true;\r
-       }\r
-}\r
-\r
-function setWrap(val) {\r
-       var s = document.getElementById('htmlSource');\r
-\r
-       s.wrap = val;\r
-\r
-       if (tinyMCE.isGecko || tinyMCE.isOpera) {\r
-               var v = s.value;\r
-               var n = s.cloneNode(false);\r
-               n.setAttribute("wrap", val);\r
-               s.parentNode.replaceChild(n, s);\r
-               n.value = v;\r
-       }\r
-}\r
-\r
-function toggleWordWrap(elm) {\r
-       if (elm.checked)\r
-               setWrap('soft');\r
-       else\r
-               setWrap('off');\r
-}\r
-\r
-var wHeight=0, wWidth=0, owHeight=0, owWidth=0;\r
-\r
-function resizeInputs() {\r
-       var el = document.getElementById('htmlSource');\r
-\r
-       if (!tinyMCE.isMSIE) {\r
-                wHeight = self.innerHeight - 60;\r
-                wWidth = self.innerWidth - 16;\r
-       } else {\r
-                wHeight = document.body.clientHeight - 60;\r
-                wWidth = document.body.clientWidth - 16;\r
-       }\r
-\r
-       el.style.height = Math.abs(wHeight) + 'px';\r
-       el.style.width  = Math.abs(wWidth) + 'px';\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js
deleted file mode 100644 (file)
index 8409e58..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-// UK lang variables\r
-\r
-tinyMCE.addToLang('',{\r
-theme_style_select : '-- Styles --',\r
-theme_code_desc : 'Edit HTML Source',\r
-theme_code_title : 'HTML Source Editor',\r
-theme_code_wordwrap : 'Word wrap',\r
-theme_sub_desc : 'Subscript',\r
-theme_sup_desc : 'Superscript',\r
-theme_hr_desc : 'Insert horizontal ruler',\r
-theme_removeformat_desc : 'Remove formatting',\r
-theme_custom1_desc : 'Your custom description here',\r
-insert_image_border : 'Border',\r
-insert_image_dimensions : 'Dimensions',\r
-insert_image_vspace : 'Vertical space',\r
-insert_image_hspace : 'Horizontal space',\r
-insert_image_align : 'Alignment',\r
-insert_image_align_default : '-- Not set --',\r
-insert_image_align_baseline : 'Baseline',\r
-insert_image_align_top : 'Top',\r
-insert_image_align_middle : 'Middle',\r
-insert_image_align_bottom : 'Bottom',\r
-insert_image_align_texttop : 'TextTop',\r
-insert_image_align_absmiddle : 'Absolute Middle',\r
-insert_image_align_absbottom : 'Absolute Bottom',\r
-insert_image_align_left : 'Left',\r
-insert_image_align_right : 'Right',\r
-theme_font_size : '-- Font size --',\r
-theme_fontdefault : '-- Font family --',\r
-theme_block : '-- Format --',\r
-theme_paragraph : 'Paragraph',\r
-theme_div : 'Div',\r
-theme_address : 'Address',\r
-theme_pre : 'Preformatted',\r
-theme_h1 : 'Heading 1',\r
-theme_h2 : 'Heading 2',\r
-theme_h3 : 'Heading 3',\r
-theme_h4 : 'Heading 4',\r
-theme_h5 : 'Heading 5',\r
-theme_h6 : 'Heading 6',\r
-theme_blockquote : 'Blockquote',\r
-theme_code : 'Code',\r
-theme_samp : 'Code sample',\r
-theme_dt : 'Definition term ',\r
-theme_dd : 'Definition description',\r
-theme_colorpicker_title : 'Select a color',\r
-theme_colorpicker_apply : 'Apply',\r
-theme_forecolor_desc : 'Select text color',\r
-theme_backcolor_desc : 'Select background color',\r
-theme_charmap_title : 'Select custom character',\r
-theme_charmap_desc : 'Insert custom character',\r
-theme_visualaid_desc : 'Toggle guidelines/invisible elements',\r
-insert_anchor_title : 'Insert/edit anchor',\r
-insert_anchor_name : 'Anchor name',\r
-theme_anchor_desc : 'Insert/edit anchor',\r
-theme_insert_link_titlefield : 'Title',\r
-theme_clipboard_msg : 'Copy/Cut/Paste is not available in Mozilla and Firefox.\nDo you want more information about this issue?',\r
-theme_path : 'Path',\r
-cut_desc : 'Cut',\r
-copy_desc : 'Copy',\r
-paste_desc : 'Paste',\r
-link_list : 'Link list',\r
-image_list : 'Image list',\r
-browse : 'Browse',\r
-image_props_desc : 'Image properties',\r
-newdocument_desc : 'New document',\r
-class_name : 'Class',\r
-newdocument : 'Are you sure you want clear all contents?',\r
-about_title : 'About TinyMCE',\r
-about : 'About',\r
-license : 'License',\r
-plugins : 'Plugins',\r
-plugin : 'Plugin',\r
-author : 'Author',\r
-version : 'Version',\r
-loaded_plugins : 'Loaded plugins',\r
-help : 'Help',\r
-not_set : '-- Not set --',\r
-close : 'Close',\r
-toolbar_focus : 'Jump to tool buttons - Alt+Q, Jump to editor - Alt-Z, Jump to element path - Alt-X',\r
-invalid_data : 'Error: Invalid values entered, these are marked in red.',\r
-more_colors : 'More colors',\r
-color_picker_tab : 'Picker',\r
-color_picker : 'Color picker',\r
-web_colors_tab : 'Palette',\r
-web_colors : 'Palette colors',\r
-named_colors_tab : 'Named',\r
-named_colors : 'Named colors',\r
-color : 'Color:',\r
-color_name : 'Name:',\r
-is_email : 'The URL you entered seems to be an email address, do you want to add the required mailto: prefix?',\r
-is_external : 'The URL you entered seems to external link, do you want to add the required http:// prefix?'\r
-});\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/link.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/link.htm
deleted file mode 100644 (file)
index b27af9b..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title>{$lang_insert_link_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/mctabs.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/form_utils.js"></script>\r
-       <script language="javascript" type="text/javascript" src="../../utils/validate.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/link.js"></script>\r
-       <base target="_self" />\r
-</head>\r
-<body id="link" onload="tinyMCEPopup.executeOnLoad('init();');" style="display: none">\r
-<form onsubmit="insertLink();return false;" action="#">\r
-       <div class="tabs">\r
-               <ul>\r
-                       <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{$lang_insert_link_title}</a></span></li>\r
-               </ul>\r
-       </div>\r
-\r
-       <div class="panel_wrapper">\r
-               <div id="general_panel" class="panel current">\r
-\r
-               <table border="0" cellpadding="4" cellspacing="0">\r
-          <tr>\r
-            <td nowrap="nowrap"><label for="href">{$lang_insert_link_url}</label></td>\r
-            <td><table border="0" cellspacing="0" cellpadding="0"> \r
-                                 <tr> \r
-                                       <td><input id="href" name="href" type="text" value="" style="width: 200px" onchange="checkPrefix(this);" /></td> \r
-                                       <td id="hrefbrowsercontainer">&nbsp;</td>\r
-                                 </tr> \r
-                               </table></td>\r
-          </tr>\r
-                 <!-- Link list -->\r
-                 <script language="javascript">\r
-                       if (typeof(tinyMCELinkList) != "undefined" && tinyMCELinkList.length > 0) {\r
-                               var html = "";\r
-\r
-                               html += '<tr><td><label for="link_list">{$lang_link_list}</label></td>';\r
-                               html += '<td><select id="link_list" name="link_list" style="width: 200px" onchange="this.form.href.value=this.options[this.selectedIndex].value;">';\r
-                               html += '<option value="">---</option>';\r
-\r
-                               for (var i=0; i<tinyMCELinkList.length; i++)\r
-                                       html += '<option value="' + tinyMCELinkList[i][1] + '">' + tinyMCELinkList[i][0] + '</option>';\r
-\r
-                               html += '</select></td></tr>';\r
-\r
-                               document.write(html);\r
-                       }\r
-                 </script>\r
-                 <!-- /Link list -->\r
-          <tr>\r
-            <td nowrap="nowrap"><label for="target">{$lang_insert_link_target}</label></td>\r
-            <td><select id="target" name="target" style="width: 200px">\r
-                <option value="_self">{$lang_insert_link_target_same}</option>\r
-                <option value="_blank">{$lang_insert_link_target_blank}</option>\r
-                               <script language="javascript">\r
-                                       var html = "";\r
-                                       var targets = tinyMCE.getParam('theme_advanced_link_targets', '').split(';');\r
-\r
-                                       for (var i=0; i<targets.length; i++) {\r
-                                               var key, value;\r
-\r
-                                               if (targets[i] == "")\r
-                                                       continue;\r
-\r
-                                               key = targets[i].split('=')[0];\r
-                                               value = targets[i].split('=')[1];\r
-\r
-                                               html += '<option value="' + value + '">' + key + '</option>';\r
-                                       }\r
-\r
-                                       document.write(html);\r
-                               </script>\r
-            </select></td>\r
-          </tr>\r
-          <tr>\r
-            <td nowrap="nowrap"><label for="linktitle">{$lang_theme_insert_link_titlefield}</label></td>\r
-            <td><input id="linktitle" name="linktitle" type="text" value="" style="width: 200px"></td>\r
-          </tr>\r
-          <tr id="styleSelectRow">\r
-            <td><label for="styleSelect">{$lang_class_name}</label></td>\r
-            <td>\r
-                        <select id="styleSelect" name="styleSelect">\r
-                <option value="" selected>{$lang_theme_style_select}</option>\r
-             </select></td>\r
-          </tr>\r
-        </table>\r
-               </div>\r
-       </div>\r
-\r
-       <div class="mceActionPanel">\r
-               <div style="float: left">\r
-                       <input type="button" id="insert" name="insert" value="{$lang_insert}" onclick="insertLink();" />\r
-               </div>\r
-\r
-               <div style="float: right">\r
-                       <input type="button" id="cancel" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" />\r
-               </div>\r
-       </div>\r
-</form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/source_editor.htm b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/advanced/source_editor.htm
deleted file mode 100644 (file)
index c3f80c4..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />\r
-       <title>{$lang_theme_code_title}</title>\r
-       <script language="javascript" type="text/javascript" src="../../tiny_mce_popup.js"></script>\r
-       <script language="javascript" type="text/javascript" src="jscripts/source_editor.js"></script>\r
-       <base target="_self" />\r
-</head>\r
-<body onload="tinyMCEPopup.executeOnLoad('onLoadInit();');" onresize="resizeInputs();" style="display: none">\r
-       <form name="source" onsubmit="saveContent();" action="#">\r
-               <div style="float: left" class="title">{$lang_theme_code_title}</div>\r
-\r
-               <div id="wrapline" style="float: right">\r
-                       <input type="checkbox" name="wraped" id="wraped" onclick="toggleWordWrap(this);" class="wordWrapCode" /><label for="wraped">{$lang_theme_code_wordwrap}</label>\r
-               </div>\r
-\r
-               <br style="clear: both" />\r
-\r
-               <textarea name="htmlSource" id="htmlSource" rows="15" cols="100" style="width: 100%; height: 100%; font-family: 'Courier New',Courier,monospace; font-size: 12px" dir="ltr" wrap="off"></textarea>\r
-\r
-               <div class="mceActionPanel">\r
-                       <div style="float: left">\r
-                               <input type="button" name="insert" value="{$lang_update}" onclick="saveContent();" id="insert" />\r
-                       </div>\r
-\r
-                       <div style="float: right">\r
-                               <input type="button" name="cancel" value="{$lang_cancel}" onclick="tinyMCEPopup.close();" id="cancel" />\r
-                       </div>\r
-               </div>\r
-       </form>\r
-</body>\r
-</html>\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/css/editor_content.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/css/editor_content.css
deleted file mode 100644 (file)
index 2506c80..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-body, td, pre {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 10px;\r
-}\r
-\r
-body {\r
-       background-color: #FFFFFF;\r
-}\r
-\r
-.mceVisualAid {\r
-       border: 1px dashed #BBBBBB;\r
-}\r
-\r
-/* MSIE specific */\r
-\r
-* html body {\r
-       scrollbar-3dlight-color: #F0F0EE;\r
-       scrollbar-arrow-color: #676662;\r
-       scrollbar-base-color: #F0F0EE;\r
-       scrollbar-darkshadow-color: #DDDDDD;\r
-       scrollbar-face-color: #E0E0DD;\r
-       scrollbar-highlight-color: #F0F0EE;\r
-       scrollbar-shadow-color: #F0F0EE;\r
-       scrollbar-track-color: #F5F5F5; \r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/css/editor_popup.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/css/editor_popup.css
deleted file mode 100644 (file)
index f29b04a..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-body {\r
-       background-color: #F0F0EE;\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 11px;\r
-       scrollbar-3dlight-color: #F0F0EE;\r
-       scrollbar-arrow-color: #676662;\r
-       scrollbar-base-color: #F0F0EE;\r
-       scrollbar-darkshadow-color: #DDDDDD;\r
-       scrollbar-face-color: #E0E0DD;\r
-       scrollbar-highlight-color: #F0F0EE;\r
-       scrollbar-shadow-color: #F0F0EE;\r
-       scrollbar-track-color: #F5F5F5;\r
-}\r
-\r
-td {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 11px;\r
-}\r
-\r
-input {\r
-       background: #FFFFFF;\r
-       border: 1px solid #cccccc;\r
-}\r
-\r
-td, input, select, textarea {\r
-       font-family: Verdana, Arial, Helvetica, sans-serif;\r
-       font-size: 10px;\r
-}\r
-\r
-input, select, textarea {\r
-       border: 1px solid #808080;\r
-}\r
-\r
-.input_noborder {\r
-       border: 0;\r
-}\r
-\r
-.title {\r
-       font-size: 12px;\r
-       font-weight: bold;\r
-}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/css/editor_ui.css b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/css/editor_ui.css
deleted file mode 100644 (file)
index 6f57768..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-.mceSeparatorLine {\r
-       border: 0;\r
-       padding: 0;\r
-       margin-left: 4px;\r
-       margin-right: 2px;\r
-}\r
-\r
-.mceSelectList {\r
-       font-family: "MS Sans Serif";\r
-       font-size: 7pt;\r
-       font-weight: normal;\r
-       margin-top: 2px;\r
-}\r
-\r
-.mceLabel, .mceLabelDisabled {\r
-       font-family: "MS Sans Serif";\r
-       font-size: 9pt;\r
-}\r
-\r
-.mceLabel {\r
-       color: #000000;\r
-}\r
-\r
-.mceLabelDisabled {\r
-       cursor: text;\r
-       color: #999999;\r
-}\r
-\r
-.mceEditor {\r
-       background: #F0F0EE;\r
-       border: 1px solid #cccccc;\r
-}\r
-\r
-.mceEditorArea {\r
-       font-family: "MS Sans Serif";\r
-       background: #FFFFFF;\r
-}\r
-\r
-.mceToolbar {\r
-       background: #F0F0EE;\r
-       border-top: 1px solid #cccccc;\r
-       line-height: 1px;\r
-       font-size: 1px;\r
-       padding-bottom: 1px;\r
-}\r
-\r
-.mceEditorIframe {\r
-       border: 0;\r
-}\r
-\r
-/* Button CSS rules */\r
-\r
-a.mceButtonDisabled img, a.mceButtonNormal img, a.mceButtonSelected img {\r
-       width: 20px;\r
-       height: 20px;\r
-       cursor: default;\r
-       margin-top: 1px;\r
-       margin-left: 1px;\r
-}\r
-\r
-a.mceButtonDisabled img {\r
-       border: 0 !important;\r
-}\r
-\r
-a.mceButtonNormal img, a.mceButtonSelected img {\r
-       border: 1px solid #F0F0EE !important;\r
-}\r
-\r
-a.mceButtonSelected img {\r
-       border: 1px solid #C0C0BB !important;\r
-}\r
-\r
-a.mceButtonNormal img:hover, a.mceButtonSelected img:hover {\r
-       border: 1px solid #0A246A !important;\r
-       cursor: default;\r
-       background-color: #B6BDD2;\r
-}\r
-\r
-a.mceButtonDisabled img {\r
-       -moz-opacity:0.3;\r
-       opacity: 0.3;\r
-       border: 1px solid #F0F0EE !important;\r
-       cursor: default;\r
-}\r
-\r
-a.mceTiledButton img {\r
-       background-image: url('../images/buttons.gif');\r
-       background-repeat: no-repeat;\r
-}\r
-\r
-/* MSIE specific rules */\r
-\r
-* html a.mceButtonNormal img, * html a.mceButtonSelected img, * html a.mceButtonDisabled img {\r
-       border: 0px !important;\r
-       margin-top: 2px;\r
-       margin-bottom: 1px;\r
-}\r
-\r
-* html a.mceButtonDisabled img {\r
-       filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30);\r
-       border: 0px !important;\r
-}\r
-\r
-* html a.mceButtonDisabled {\r
-       border: 1px solid #F0F0EE !important;\r
-}\r
-\r
-* html a.mceButtonNormal, * html a.mceButtonSelected {\r
-       border: 1px solid #F0F0EE;\r
-       cursor: default;\r
-}\r
-\r
-* html a.mceButtonSelected {\r
-       border: 1px solid #C0C0BB;\r
-}\r
-\r
-* html a.mceButtonNormal:hover, * html a.mceButtonSelected:hover {\r
-       border: 1px solid #0A246A;\r
-       cursor: default;\r
-       background-color: #B6BDD2;\r
-}\r
-\r
-* html .mceSelectList {\r
-       margin-top: 2px;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/editor_template.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/editor_template.js
deleted file mode 100644 (file)
index ef99fa2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-var TinyMCE_SimpleTheme={_buttonMap:'bold,bullist,cleanup,italic,numlist,redo,strikethrough,underline,undo',getEditorTemplate:function(){var html='';html+='<table class="mceEditor" border="0" cellpadding="0" cellspacing="0" width="{$width}" height="{$height}">';html+='<tr><td align="center">';html+='<span id="{$editor_id}">IFRAME</span>';html+='</td></tr>';html+='<tr><td class="mceToolbar" align="center" height="1">';html+=tinyMCE.getButtonHTML('bold','lang_bold_desc','{$themeurl}/images/{$lang_bold_img}','Bold');html+=tinyMCE.getButtonHTML('italic','lang_italic_desc','{$themeurl}/images/{$lang_italic_img}','Italic');html+=tinyMCE.getButtonHTML('underline','lang_underline_desc','{$themeurl}/images/{$lang_underline_img}','Underline');html+=tinyMCE.getButtonHTML('strikethrough','lang_striketrough_desc','{$themeurl}/images/strikethrough.gif','Strikethrough');html+='<img src="{$themeurl}/images/separator.gif" width="2" height="20" class="mceSeparatorLine" />';html+=tinyMCE.getButtonHTML('undo','lang_undo_desc','{$themeurl}/images/undo.gif','Undo');html+=tinyMCE.getButtonHTML('redo','lang_redo_desc','{$themeurl}/images/redo.gif','Redo');html+='<img src="{$themeurl}/images/separator.gif" width="2" height="20" class="mceSeparatorLine" />';html+=tinyMCE.getButtonHTML('cleanup','lang_cleanup_desc','{$themeurl}/images/cleanup.gif','mceCleanup');html+='<img src="{$themeurl}/images/separator.gif" width="2" height="20" class="mceSeparatorLine" />';html+=tinyMCE.getButtonHTML('bullist','lang_bullist_desc','{$themeurl}/images/bullist.gif','InsertUnorderedList');html+=tinyMCE.getButtonHTML('numlist','lang_numlist_desc','{$themeurl}/images/numlist.gif','InsertOrderedList');html+='</td></tr></table>';return{delta_width:0,delta_height:20,html:html}},handleNodeChange:function(editor_id,node){tinyMCE.switchClass(editor_id+'_bold','mceButtonNormal');tinyMCE.switchClass(editor_id+'_italic','mceButtonNormal');tinyMCE.switchClass(editor_id+'_underline','mceButtonNormal');tinyMCE.switchClass(editor_id+'_strikethrough','mceButtonNormal');tinyMCE.switchClass(editor_id+'_bullist','mceButtonNormal');tinyMCE.switchClass(editor_id+'_numlist','mceButtonNormal');do{switch(node.nodeName.toLowerCase()){case"b":case"strong":tinyMCE.switchClass(editor_id+'_bold','mceButtonSelected');break;case"i":case"em":tinyMCE.switchClass(editor_id+'_italic','mceButtonSelected');break;case"u":tinyMCE.switchClass(editor_id+'_underline','mceButtonSelected');break;case"strike":tinyMCE.switchClass(editor_id+'_strikethrough','mceButtonSelected');break;case"ul":tinyMCE.switchClass(editor_id+'_bullist','mceButtonSelected');break;case"ol":tinyMCE.switchClass(editor_id+'_numlist','mceButtonSelected');break}}while((node=node.parentNode)!=null)}};tinyMCE.addTheme("simple",TinyMCE_SimpleTheme);tinyMCE.addButtonMap(TinyMCE_SimpleTheme._buttonMap);
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/editor_template_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/editor_template_src.js
deleted file mode 100644 (file)
index 73a0df3..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-/**\r
- * $Id: editor_template_src.js 162 2007-01-03 16:16:52Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-var TinyMCE_SimpleTheme = {\r
-       // List of button ids in tile map\r
-       _buttonMap : 'bold,bullist,cleanup,italic,numlist,redo,strikethrough,underline,undo',\r
-\r
-       getEditorTemplate : function() {\r
-               var html = '';\r
-\r
-               html += '<table class="mceEditor" border="0" cellpadding="0" cellspacing="0" width="{$width}" height="{$height}">';\r
-               html += '<tr><td align="center">';\r
-               html += '<span id="{$editor_id}">IFRAME</span>';\r
-               html += '</td></tr>';\r
-               html += '<tr><td class="mceToolbar" align="center" height="1">';\r
-               html += tinyMCE.getButtonHTML('bold', 'lang_bold_desc', '{$themeurl}/images/{$lang_bold_img}', 'Bold');\r
-               html += tinyMCE.getButtonHTML('italic', 'lang_italic_desc', '{$themeurl}/images/{$lang_italic_img}', 'Italic');\r
-               html += tinyMCE.getButtonHTML('underline', 'lang_underline_desc', '{$themeurl}/images/{$lang_underline_img}', 'Underline');\r
-               html += tinyMCE.getButtonHTML('strikethrough', 'lang_striketrough_desc', '{$themeurl}/images/strikethrough.gif', 'Strikethrough');\r
-               html += '<img src="{$themeurl}/images/separator.gif" width="2" height="20" class="mceSeparatorLine" />';\r
-               html += tinyMCE.getButtonHTML('undo', 'lang_undo_desc', '{$themeurl}/images/undo.gif', 'Undo');\r
-               html += tinyMCE.getButtonHTML('redo', 'lang_redo_desc', '{$themeurl}/images/redo.gif', 'Redo');\r
-               html += '<img src="{$themeurl}/images/separator.gif" width="2" height="20" class="mceSeparatorLine" />';\r
-               html += tinyMCE.getButtonHTML('cleanup', 'lang_cleanup_desc', '{$themeurl}/images/cleanup.gif', 'mceCleanup');\r
-               html += '<img src="{$themeurl}/images/separator.gif" width="2" height="20" class="mceSeparatorLine" />';\r
-               html += tinyMCE.getButtonHTML('bullist', 'lang_bullist_desc', '{$themeurl}/images/bullist.gif', 'InsertUnorderedList');\r
-               html += tinyMCE.getButtonHTML('numlist', 'lang_numlist_desc', '{$themeurl}/images/numlist.gif', 'InsertOrderedList');\r
-               html += '</td></tr></table>';\r
-\r
-               return {\r
-                       delta_width : 0,\r
-                       delta_height : 20,\r
-                       html : html\r
-               };\r
-       },\r
-\r
-       handleNodeChange : function(editor_id, node) {\r
-               // Reset old states\r
-               tinyMCE.switchClass(editor_id + '_bold', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_italic', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_underline', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_strikethrough', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_bullist', 'mceButtonNormal');\r
-               tinyMCE.switchClass(editor_id + '_numlist', 'mceButtonNormal');\r
-\r
-               // Handle elements\r
-               do {\r
-                       switch (node.nodeName.toLowerCase()) {\r
-                               case "b":\r
-                               case "strong":\r
-                                       tinyMCE.switchClass(editor_id + '_bold', 'mceButtonSelected');\r
-                               break;\r
-\r
-                               case "i":\r
-                               case "em":\r
-                                       tinyMCE.switchClass(editor_id + '_italic', 'mceButtonSelected');\r
-                               break;\r
-\r
-                               case "u":\r
-                                       tinyMCE.switchClass(editor_id + '_underline', 'mceButtonSelected');\r
-                               break;\r
-\r
-                               case "strike":\r
-                                       tinyMCE.switchClass(editor_id + '_strikethrough', 'mceButtonSelected');\r
-                               break;\r
-                               \r
-                               case "ul":\r
-                                       tinyMCE.switchClass(editor_id + '_bullist', 'mceButtonSelected');\r
-                               break;\r
-\r
-                               case "ol":\r
-                                       tinyMCE.switchClass(editor_id + '_numlist', 'mceButtonSelected');\r
-                               break;\r
-                       }\r
-               } while ((node = node.parentNode) != null);\r
-       }\r
-};\r
-\r
-tinyMCE.addTheme("simple", TinyMCE_SimpleTheme);\r
-tinyMCE.addButtonMap(TinyMCE_SimpleTheme._buttonMap);\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold.gif
deleted file mode 100644 (file)
index d6a9cc2..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_de_se.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_de_se.gif
deleted file mode 100644 (file)
index 9b129de..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_de_se.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_fr.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_fr.gif
deleted file mode 100644 (file)
index 2816454..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_fr.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_ru.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_ru.gif
deleted file mode 100644 (file)
index e000d46..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_ru.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_tw.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_tw.gif
deleted file mode 100644 (file)
index 8208543..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bold_tw.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bullist.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bullist.gif
deleted file mode 100644 (file)
index 6e19467..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/bullist.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/buttons.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/buttons.gif
deleted file mode 100644 (file)
index 9d86222..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/buttons.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/cleanup.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/cleanup.gif
deleted file mode 100644 (file)
index 16491f6..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/cleanup.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic.gif
deleted file mode 100644 (file)
index 8bb330b..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_de_se.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_de_se.gif
deleted file mode 100644 (file)
index feb0309..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_de_se.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_ru.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_ru.gif
deleted file mode 100644 (file)
index a2bb69a..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_ru.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_tw.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_tw.gif
deleted file mode 100644 (file)
index 4f6eeaa..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/italic_tw.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/numlist.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/numlist.gif
deleted file mode 100644 (file)
index a268352..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/numlist.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/redo.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/redo.gif
deleted file mode 100644 (file)
index 3af9069..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/redo.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/separator.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/separator.gif
deleted file mode 100644 (file)
index 4f39b80..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/separator.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/spacer.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/spacer.gif
deleted file mode 100644 (file)
index 3884865..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/spacer.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/strikethrough.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/strikethrough.gif
deleted file mode 100644 (file)
index 3264635..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/strikethrough.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline.gif
deleted file mode 100644 (file)
index 1dfeb5f..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_fr.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_fr.gif
deleted file mode 100644 (file)
index 551d914..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_fr.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_ru.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_ru.gif
deleted file mode 100644 (file)
index b78e2a4..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_ru.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_tw.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_tw.gif
deleted file mode 100644 (file)
index b715390..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/underline_tw.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/undo.gif b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/undo.gif
deleted file mode 100644 (file)
index 520796d..0000000
Binary files a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/themes/simple/images/undo.gif and /dev/null differ
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/tiny_mce.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/tiny_mce.js
deleted file mode 100644 (file)
index 90bed3a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-function TinyMCE_Engine(){var ua;this.majorVersion="2";this.minorVersion="1.2";this.releaseDate="2007-08-21";this.instances=[];this.switchClassCache=[];this.windowArgs=[];this.loadedFiles=[];this.pendingFiles=[];this.loadingIndex=0;this.configs=[];this.currentConfig=0;this.eventHandlers=[];this.log=[];this.undoLevels=[];this.undoIndex=0;this.typingUndoIndex=-1;this.settings=[];ua=navigator.userAgent;this.isMSIE=(navigator.appName=="Microsoft Internet Explorer");this.isMSIE5=this.isMSIE&&(ua.indexOf('MSIE 5')!=-1);this.isMSIE5_0=this.isMSIE&&(ua.indexOf('MSIE 5.0')!=-1);this.isMSIE7=this.isMSIE&&(ua.indexOf('MSIE 7')!=-1);this.isGecko=ua.indexOf('Gecko')!=-1;this.isSafari=ua.indexOf('Safari')!=-1;this.isOpera=window['opera']&&opera.buildNumber?true:false;this.isMac=ua.indexOf('Mac')!=-1;this.isNS7=ua.indexOf('Netscape/7')!=-1;this.isNS71=ua.indexOf('Netscape/7.1')!=-1;this.dialogCounter=0;this.plugins=[];this.themes=[];this.menus=[];this.loadedPlugins=[];this.buttonMap=[];this.isLoaded=false;if(this.isOpera){this.isMSIE=true;this.isGecko=false;this.isSafari=false}this.isIE=this.isMSIE;this.isRealIE=this.isMSIE&&!this.isOpera;this.idCounter=0};TinyMCE_Engine.prototype={init:function(settings){var theme,nl,baseHREF="",i,cssPath,entities,h,p,src,elements=[],head;if(this.isMSIE5_0)return;this.settings=settings;if(typeof(document.execCommand)=='undefined')return;if(!tinyMCE.baseURL){head=document.getElementsByTagName('head')[0];if(head){for(i=0,nl=head.getElementsByTagName('script');i<nl.length;i++)elements.push(nl[i])}for(i=0,nl=document.getElementsByTagName('script');i<nl.length;i++)elements.push(nl[i]);nl=document.getElementsByTagName('base');for(i=0;i<nl.length;i++){if(nl[i].href)baseHREF=nl[i].href}for(i=0;i<elements.length;i++){if(elements[i].src&&(elements[i].src.indexOf("tiny_mce.js")!=-1||elements[i].src.indexOf("tiny_mce_dev.js")!=-1||elements[i].src.indexOf("tiny_mce_src.js")!=-1||elements[i].src.indexOf("tiny_mce_gzip")!=-1)){src=elements[i].src;tinyMCE.srcMode=(src.indexOf('_src')!=-1||src.indexOf('_dev')!=-1)?'_src':'';tinyMCE.gzipMode=src.indexOf('_gzip')!=-1;src=src.substring(0,src.lastIndexOf('/'));if(settings.exec_mode=="src"||settings.exec_mode=="normal")tinyMCE.srcMode=settings.exec_mode=="src"?'_src':'';if(baseHREF!==''&&src.indexOf('://')==-1)tinyMCE.baseURL=baseHREF+src;else tinyMCE.baseURL=src;break}}}this.documentBasePath=document.location.href;if(this.documentBasePath.indexOf('?')!=-1)this.documentBasePath=this.documentBasePath.substring(0,this.documentBasePath.indexOf('?'));this.documentURL=this.documentBasePath;this.documentBasePath=this.documentBasePath.substring(0,this.documentBasePath.lastIndexOf('/'));if(tinyMCE.baseURL.indexOf('://')==-1&&tinyMCE.baseURL.charAt(0)!='/'){tinyMCE.baseURL=this.documentBasePath+"/"+tinyMCE.baseURL}this._def("mode","none");this._def("theme","advanced");this._def("plugins","",true);this._def("language","en");this._def("docs_language",this.settings.language);this._def("elements","");this._def("textarea_trigger","mce_editable");this._def("editor_selector","");this._def("editor_deselector","mceNoEditor");this._def("valid_elements","+a[id|style|rel|rev|charset|hreflang|dir|lang|tabindex|accesskey|type|name|href|target|title|class|onfocus|onblur|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup],-strong/-b[class|style],-em/-i[class|style],-strike[class|style],-u[class|style],#p[id|style|dir|class|align],-ol[class|style],-ul[class|style],-li[class|style],br,img[id|dir|lang|longdesc|usemap|style|class|src|onmouseover|onmouseout|border|alt=|title|hspace|vspace|width|height|align],-sub[style|class],-sup[style|class],-blockquote[dir|style],-table[border=0|cellspacing|cellpadding|width|height|class|align|summary|style|dir|id|lang|bgcolor|background|bordercolor],-tr[id|lang|dir|class|rowspan|width|height|align|valign|style|bgcolor|background|bordercolor],tbody[id|class],thead[id|class],tfoot[id|class],#td[id|lang|dir|class|colspan|rowspan|width|height|align|valign|style|bgcolor|background|bordercolor|scope],-th[id|lang|dir|class|colspan|rowspan|width|height|align|valign|style|scope],caption[id|lang|dir|class|style],-div[id|dir|class|align|style],-span[style|class|align],-pre[class|align|style],address[class|align|style],-h1[id|style|dir|class|align],-h2[id|style|dir|class|align],-h3[id|style|dir|class|align],-h4[id|style|dir|class|align],-h5[id|style|dir|class|align],-h6[id|style|dir|class|align],hr[class|style],-font[face|size|style|id|class|dir|color],dd[id|class|title|style|dir|lang],dl[id|class|title|style|dir|lang],dt[id|class|title|style|dir|lang],cite[title|id|class|style|dir|lang],abbr[title|id|class|style|dir|lang],acronym[title|id|class|style|dir|lang],del[title|id|class|style|dir|lang|datetime|cite],ins[title|id|class|style|dir|lang|datetime|cite]");this._def("extended_valid_elements","");this._def("invalid_elements","");this._def("encoding","");this._def("urlconverter_callback",tinyMCE.getParam("urlconvertor_callback","TinyMCE_Engine.prototype.convertURL"));this._def("save_callback","");this._def("force_br_newlines",false);this._def("force_p_newlines",true);this._def("add_form_submit_trigger",true);this._def("relative_urls",true);this._def("remove_script_host",true);this._def("focus_alert",true);this._def("document_base_url",this.documentURL);this._def("visual",true);this._def("visual_table_class","mceVisualAid");this._def("setupcontent_callback","");this._def("fix_content_duplication",true);this._def("custom_undo_redo",true);this._def("custom_undo_redo_levels",-1);this._def("custom_undo_redo_keyboard_shortcuts",true);this._def("custom_undo_redo_restore_selection",true);this._def("custom_undo_redo_global",false);this._def("verify_html",true);this._def("apply_source_formatting",false);this._def("directionality","ltr");this._def("cleanup_on_startup",false);this._def("inline_styles",false);this._def("convert_newlines_to_brs",false);this._def("auto_reset_designmode",true);this._def("entities","39,#39,160,nbsp,161,iexcl,162,cent,163,pound,164,curren,165,yen,166,brvbar,167,sect,168,uml,169,copy,170,ordf,171,laquo,172,not,173,shy,174,reg,175,macr,176,deg,177,plusmn,178,sup2,179,sup3,180,acute,181,micro,182,para,183,middot,184,cedil,185,sup1,186,ordm,187,raquo,188,frac14,189,frac12,190,frac34,191,iquest,192,Agrave,193,Aacute,194,Acirc,195,Atilde,196,Auml,197,Aring,198,AElig,199,Ccedil,200,Egrave,201,Eacute,202,Ecirc,203,Euml,204,Igrave,205,Iacute,206,Icirc,207,Iuml,208,ETH,209,Ntilde,210,Ograve,211,Oacute,212,Ocirc,213,Otilde,214,Ouml,215,times,216,Oslash,217,Ugrave,218,Uacute,219,Ucirc,220,Uuml,221,Yacute,222,THORN,223,szlig,224,agrave,225,aacute,226,acirc,227,atilde,228,auml,229,aring,230,aelig,231,ccedil,232,egrave,233,eacute,234,ecirc,235,euml,236,igrave,237,iacute,238,icirc,239,iuml,240,eth,241,ntilde,242,ograve,243,oacute,244,ocirc,245,otilde,246,ouml,247,divide,248,oslash,249,ugrave,250,uacute,251,ucirc,252,uuml,253,yacute,254,thorn,255,yuml,402,fnof,913,Alpha,914,Beta,915,Gamma,916,Delta,917,Epsilon,918,Zeta,919,Eta,920,Theta,921,Iota,922,Kappa,923,Lambda,924,Mu,925,Nu,926,Xi,927,Omicron,928,Pi,929,Rho,931,Sigma,932,Tau,933,Upsilon,934,Phi,935,Chi,936,Psi,937,Omega,945,alpha,946,beta,947,gamma,948,delta,949,epsilon,950,zeta,951,eta,952,theta,953,iota,954,kappa,955,lambda,956,mu,957,nu,958,xi,959,omicron,960,pi,961,rho,962,sigmaf,963,sigma,964,tau,965,upsilon,966,phi,967,chi,968,psi,969,omega,977,thetasym,978,upsih,982,piv,8226,bull,8230,hellip,8242,prime,8243,Prime,8254,oline,8260,frasl,8472,weierp,8465,image,8476,real,8482,trade,8501,alefsym,8592,larr,8593,uarr,8594,rarr,8595,darr,8596,harr,8629,crarr,8656,lArr,8657,uArr,8658,rArr,8659,dArr,8660,hArr,8704,forall,8706,part,8707,exist,8709,empty,8711,nabla,8712,isin,8713,notin,8715,ni,8719,prod,8721,sum,8722,minus,8727,lowast,8730,radic,8733,prop,8734,infin,8736,ang,8743,and,8744,or,8745,cap,8746,cup,8747,int,8756,there4,8764,sim,8773,cong,8776,asymp,8800,ne,8801,equiv,8804,le,8805,ge,8834,sub,8835,sup,8836,nsub,8838,sube,8839,supe,8853,oplus,8855,otimes,8869,perp,8901,sdot,8968,lceil,8969,rceil,8970,lfloor,8971,rfloor,9001,lang,9002,rang,9674,loz,9824,spades,9827,clubs,9829,hearts,9830,diams,34,quot,38,amp,60,lt,62,gt,338,OElig,339,oelig,352,Scaron,353,scaron,376,Yuml,710,circ,732,tilde,8194,ensp,8195,emsp,8201,thinsp,8204,zwnj,8205,zwj,8206,lrm,8207,rlm,8211,ndash,8212,mdash,8216,lsquo,8217,rsquo,8218,sbquo,8220,ldquo,8221,rdquo,8222,bdquo,8224,dagger,8225,Dagger,8240,permil,8249,lsaquo,8250,rsaquo,8364,euro",true);this._def("entity_encoding","named");this._def("cleanup_callback","");this._def("add_unload_trigger",true);this._def("ask",false);this._def("nowrap",false);this._def("auto_resize",false);this._def("auto_focus",false);this._def("cleanup",true);this._def("remove_linebreaks",true);this._def("button_tile_map",false);this._def("submit_patch",true);this._def("browsers","msie,safari,gecko,opera",true);this._def("dialog_type","window");this._def("accessibility_warnings",true);this._def("accessibility_focus",true);this._def("merge_styles_invalid_parents","");this._def("force_hex_style_colors",true);this._def("trim_span_elements",true);this._def("convert_fonts_to_spans",false);this._def("doctype",'<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">');this._def("font_size_classes",'');this._def("font_size_style_values",'xx-small,x-small,small,medium,large,x-large,xx-large',true);this._def("event_elements",'a,img',true);this._def("convert_urls",true);this._def("table_inline_editing",false);this._def("object_resizing",true);this._def("custom_shortcuts",true);this._def("convert_on_click",false);this._def("content_css",'');this._def("fix_list_elements",true);this._def("fix_table_elements",false);this._def("strict_loading_mode",document.contentType=='application/xhtml+xml');this._def("hidden_tab_class",'');this._def("display_tab_class",'');this._def("gecko_spellcheck",false);this._def("hide_selects_on_submit",true);this._def("forced_root_block",false);this._def("remove_trailing_nbsp",false);this._def("save_on_tinymce_forms",false);if(this.isMSIE&&!this.isOpera)this.settings.strict_loading_mode=false;if(this.isMSIE&&this.settings.browsers.indexOf('msie')==-1)return;if(this.isGecko&&this.settings.browsers.indexOf('gecko')==-1)return;if(this.isSafari&&this.settings.browsers.indexOf('safari')==-1)return;if(this.isOpera&&this.settings.browsers.indexOf('opera')==-1)return;baseHREF=tinyMCE.settings.document_base_url;h=document.location.href;p=h.indexOf('://');if(p>0&&document.location.protocol!="file:"){p=h.indexOf('/',p+3);h=h.substring(0,p);if(baseHREF.indexOf('://')==-1)baseHREF=h+baseHREF;tinyMCE.settings.document_base_url=baseHREF;tinyMCE.settings.document_base_prefix=h}if(baseHREF.indexOf('?')!=-1)baseHREF=baseHREF.substring(0,baseHREF.indexOf('?'));this.settings.base_href=baseHREF.substring(0,baseHREF.lastIndexOf('/'))+"/";theme=this.settings.theme;this.inlineStrict='A|BR|SPAN|BDO|MAP|OBJECT|IMG|TT|I|B|BIG|SMALL|EM|STRONG|DFN|CODE|Q|SAMP|KBD|VAR|CITE|ABBR|ACRONYM|SUB|SUP|#text|#comment';this.inlineTransitional='A|BR|SPAN|BDO|OBJECT|APPLET|IMG|MAP|IFRAME|TT|I|B|U|S|STRIKE|BIG|SMALL|FONT|BASEFONT|EM|STRONG|DFN|CODE|Q|SAMP|KBD|VAR|CITE|ABBR|ACRONYM|SUB|SUP|INPUT|SELECT|TEXTAREA|LABEL|BUTTON|#text|#comment';this.blockElms='H[1-6]|P|DIV|ADDRESS|PRE|FORM|TABLE|LI|OL|UL|TD|CAPTION|BLOCKQUOTE|CENTER|DL|DT|DD|DIR|FIELDSET|FORM|NOSCRIPT|NOFRAMES|MENU|ISINDEX|SAMP';this.blockRegExp=new RegExp("^("+this.blockElms+")$","i");this.posKeyCodes=[13,45,36,35,33,34,37,38,39,40];this.uniqueURL='javascript:void(091039730);';this.uniqueTag='<div id="mceTMPElement" style="display: none">TMP</div>';this.callbacks=['onInit','getInfo','getEditorTemplate','setupContent','onChange','onPageLoad','handleNodeChange','initInstance','execCommand','getControlHTML','handleEvent','cleanup','removeInstance'];this.settings.theme_href=tinyMCE.baseURL+"/themes/"+theme;if(!tinyMCE.isIE||tinyMCE.isOpera)this.settings.force_br_newlines=false;if(tinyMCE.getParam("popups_css",false)){cssPath=tinyMCE.getParam("popups_css","");if(cssPath.indexOf('://')==-1&&cssPath.charAt(0)!='/')this.settings.popups_css=this.documentBasePath+"/"+cssPath;else this.settings.popups_css=cssPath}else this.settings.popups_css=tinyMCE.baseURL+"/themes/"+theme+"/css/editor_popup.css";if(tinyMCE.getParam("editor_css",false)){cssPath=tinyMCE.getParam("editor_css","");if(cssPath.indexOf('://')==-1&&cssPath.charAt(0)!='/')this.settings.editor_css=this.documentBasePath+"/"+cssPath;else this.settings.editor_css=cssPath}else{if(this.settings.editor_css!=='')this.settings.editor_css=tinyMCE.baseURL+"/themes/"+theme+"/css/editor_ui.css"}if(this.configs.length==0){if(typeof(TinyMCECompressed)=="undefined"){tinyMCE.addEvent(window,"DOMContentLoaded",TinyMCE_Engine.prototype.onLoad);if(tinyMCE.isRealIE){if(document.body)tinyMCE.addEvent(document.body,"readystatechange",TinyMCE_Engine.prototype.onLoad);else tinyMCE.addEvent(document,"readystatechange",TinyMCE_Engine.prototype.onLoad)}tinyMCE.addEvent(window,"load",TinyMCE_Engine.prototype.onLoad);tinyMCE._addUnloadEvents()}}this.loadScript(tinyMCE.baseURL+'/themes/'+this.settings.theme+'/editor_template'+tinyMCE.srcMode+'.js');this.loadScript(tinyMCE.baseURL+'/langs/'+this.settings.language+'.js');this.loadCSS(this.settings.editor_css);p=tinyMCE.getParam('plugins','',true,',');if(p.length>0){for(i=0;i<p.length;i++){if(p[i].charAt(0)!='-')this.loadScript(tinyMCE.baseURL+'/plugins/'+p[i]+'/editor_plugin'+tinyMCE.srcMode+'.js')}}if(tinyMCE.getParam('entity_encoding')=='named'){settings.cleanup_entities=[];entities=tinyMCE.getParam('entities','',true,',');for(i=0;i<entities.length;i+=2)settings.cleanup_entities['c'+entities[i]]=entities[i+1]}settings.index=this.configs.length;this.configs[this.configs.length]=settings;this.loadNextScript();if(this.isIE&&!this.isOpera){try{document.execCommand('BackgroundImageCache',false,true)}catch(e){}}this.xmlEncodeRe=new RegExp('[<>&"]','g')},_addUnloadEvents:function(){var st=tinyMCE.settings.add_unload_trigger;if(tinyMCE.isIE){if(st){tinyMCE.addEvent(window,"unload",TinyMCE_Engine.prototype.unloadHandler);tinyMCE.addEvent(window.document,"beforeunload",TinyMCE_Engine.prototype.unloadHandler)}}else{if(st)tinyMCE.addEvent(window,"unload",function(){tinyMCE.triggerSave(true,true)})}},_def:function(key,def_val,t){var v=tinyMCE.getParam(key,def_val);v=t?v.replace(/\s+/g,""):v;this.settings[key]=v},hasPlugin:function(n){return typeof(this.plugins[n])!="undefined"&&this.plugins[n]!=null},addPlugin:function(n,p){var op=this.plugins[n];p.baseURL=op?op.baseURL:tinyMCE.baseURL+"/plugins/"+n;this.plugins[n]=p;this.loadNextScript()},setPluginBaseURL:function(n,u){var op=this.plugins[n];if(op)op.baseURL=u;else this.plugins[n]={baseURL:u}},loadPlugin:function(n,u){u=u.indexOf('.js')!=-1?u.substring(0,u.lastIndexOf('/')):u;u=u.charAt(u.length-1)=='/'?u.substring(0,u.length-1):u;this.plugins[n]={baseURL:u};this.loadScript(u+"/editor_plugin"+(tinyMCE.srcMode?'_src':'')+".js")},hasTheme:function(n){return typeof(this.themes[n])!="undefined"&&this.themes[n]!=null},addTheme:function(n,t){this.themes[n]=t;this.loadNextScript()},addMenu:function(n,m){this.menus[n]=m},hasMenu:function(n){return typeof(this.plugins[n])!="undefined"&&this.plugins[n]!=null},loadScript:function(url){var i;for(i=0;i<this.loadedFiles.length;i++){if(this.loadedFiles[i]==url)return}if(tinyMCE.settings.strict_loading_mode)this.pendingFiles[this.pendingFiles.length]=url;else document.write('<sc'+'ript language="javascript" type="text/javascript" src="'+url+'"></script>');this.loadedFiles[this.loadedFiles.length]=url},loadNextScript:function(){var d=document,se;if(!tinyMCE.settings.strict_loading_mode)return;if(this.loadingIndex<this.pendingFiles.length){se=d.createElementNS('http://www.w3.org/1999/xhtml','script');se.setAttribute('language','javascript');se.setAttribute('type','text/javascript');se.setAttribute('src',this.pendingFiles[this.loadingIndex++]);d.getElementsByTagName("head")[0].appendChild(se)}else this.loadingIndex=-1;},loadCSS:function(url){var ar=url.replace(/\s+/,'').split(',');var lflen=0,csslen=0,skip=false;var x=0,i=0,nl,le;for(x=0,csslen=ar.length;x<csslen;x++){if(ar[x]!=null&&ar[x]!='null'&&ar[x].length>0){for(i=0,lflen=this.loadedFiles.length;i<lflen;i++){if(this.loadedFiles[i]==ar[x]){skip=true;break}}if(!skip){if(tinyMCE.settings.strict_loading_mode){nl=document.getElementsByTagName("head");le=document.createElement('link');le.setAttribute('href',ar[x]);le.setAttribute('rel','stylesheet');le.setAttribute('type','text/css');nl[0].appendChild(le)}else document.write('<link href="'+ar[x]+'" rel="stylesheet" type="text/css" />');this.loadedFiles[this.loadedFiles.length]=ar[x]}}}},importCSS:function(doc,css){var css_ary=css.replace(/\s+/,'').split(',');var csslen,elm,headArr,x,css_file;for(x=0,csslen=css_ary.length;x<csslen;x++){css_file=css_ary[x];if(css_file!=null&&css_file!='null'&&css_file.length>0){if(css_file.indexOf('://')==-1&&css_file.charAt(0)!='/')css_file=this.documentBasePath+"/"+css_file;if(typeof(doc.createStyleSheet)=="undefined"){elm=doc.createElement("link");elm.rel="stylesheet";elm.href=css_file;if((headArr=doc.getElementsByTagName("head"))!=null&&headArr.length>0)headArr[0].appendChild(elm)}else doc.createStyleSheet(css_file)}}},confirmAdd:function(e,settings){var elm=tinyMCE.isIE?event.srcElement:e.target;var elementId=elm.name?elm.name:elm.id;tinyMCE.settings=settings;if(tinyMCE.settings.convert_on_click||(!elm.getAttribute('mce_noask')&&confirm(tinyMCELang.lang_edit_confirm)))tinyMCE.addMCEControl(elm,elementId);elm.setAttribute('mce_noask','true')},updateContent:function(form_element_name){var formElement,n,inst,doc;formElement=document.getElementById(form_element_name);for(n in tinyMCE.instances){inst=tinyMCE.instances[n];if(!tinyMCE.isInstance(inst))continue;inst.switchSettings();if(inst.formElement==formElement){doc=inst.getDoc();tinyMCE._setHTML(doc,inst.formElement.value);if(!tinyMCE.isIE)doc.body.innerHTML=tinyMCE._cleanupHTML(inst,doc,this.settings,doc.body,inst.visualAid)}}},addMCEControl:function(replace_element,form_element_name,target_document){var id="mce_editor_"+tinyMCE.idCounter++;var inst=new TinyMCE_Control(tinyMCE.settings);inst.editorId=id;this.instances[id]=inst;inst._onAdd(replace_element,form_element_name,target_document)},removeInstance:function(ti){var t=[],n,i;for(n in tinyMCE.instances){i=tinyMCE.instances[n];if(tinyMCE.isInstance(i)&&ti!=i)t[n]=i}tinyMCE.instances=t;n=[];t=tinyMCE.undoLevels;for(i=0;i<t.length;i++){if(t[i]!=ti)n.push(t[i])}tinyMCE.undoLevels=n;tinyMCE.undoIndex=n.length;tinyMCE.dispatchCallback(ti,'remove_instance_callback','removeInstance',ti);return ti},removeMCEControl:function(editor_id){var inst=tinyMCE.getInstanceById(editor_id),h,re,ot,tn,n;if(inst){inst.switchSettings();editor_id=inst.editorId;h=tinyMCE.getContent(editor_id);this.removeInstance(inst);tinyMCE.selectedElement=null;tinyMCE.selectedInstance=null;tinyMCE.selectedElement=null;tinyMCE.selectedInstance=null;for(n in tinyMCE.instances){if(!tinyMCE.isInstance(tinyMCE.instances[n]))continue;tinyMCE.selectedInstance=tinyMCE.instances[n];break}re=document.getElementById(editor_id+"_parent");ot=inst.oldTargetElement;tn=ot.nodeName.toLowerCase();if(tn=="textarea"||tn=="input"){re.parentNode.removeChild(re);ot.style.display="inline";ot.value=h}else{ot.innerHTML=h;ot.style.display='block';re.parentNode.insertBefore(ot,re);re.parentNode.removeChild(re)}}},triggerSave:function(skip_cleanup,skip_callback){var inst,n;if(typeof(skip_cleanup)=="undefined")skip_cleanup=false;if(typeof(skip_callback)=="undefined")skip_callback=false;for(n in tinyMCE.instances){inst=tinyMCE.instances[n];if(!tinyMCE.isInstance(inst))continue;inst.triggerSave(skip_cleanup,skip_callback)}},resetForm:function(form_index){var i,inst,n,formObj=document.forms[form_index];for(n in tinyMCE.instances){inst=tinyMCE.instances[n];if(!tinyMCE.isInstance(inst))continue;inst.switchSettings();for(i=0;i<formObj.elements.length;i++){if(inst.formTargetElementId==formObj.elements[i].name)inst.getBody().innerHTML=inst.startContent}}},execInstanceCommand:function(editor_id,command,user_interface,value,focus){var inst=tinyMCE.getInstanceById(editor_id),r;if(inst){r=inst.selection.getRng();if(typeof(focus)=="undefined")focus=true;if(focus&&(!r||!r.item))inst.contentWindow.focus();inst.autoResetDesignMode();this.selectedElement=inst.getFocusElement();inst.select();tinyMCE.execCommand(command,user_interface,value);if(tinyMCE.isIE&&window.event!=null)tinyMCE.cancelEvent(window.event)}},execCommand:function(command,user_interface,value){var inst=tinyMCE.selectedInstance,n,pe,te;user_interface=user_interface?user_interface:false;value=value?value:null;if(inst)inst.switchSettings();switch(command){case"Undo":if(this.getParam('custom_undo_redo_global')){if(this.undoIndex>0){tinyMCE.nextUndoRedoAction='Undo';inst=this.undoLevels[--this.undoIndex];inst.select();if(!tinyMCE.nextUndoRedoInstanceId)inst.execCommand('Undo')}}else inst.execCommand('Undo');return true;case"Redo":if(this.getParam('custom_undo_redo_global')){if(this.undoIndex<=this.undoLevels.length-1){tinyMCE.nextUndoRedoAction='Redo';inst=this.undoLevels[this.undoIndex++];inst.select();if(!tinyMCE.nextUndoRedoInstanceId)inst.execCommand('Redo')}}else inst.execCommand('Redo');return true;case'mceFocus':inst=tinyMCE.getInstanceById(value);if(inst)inst.getWin().focus();return;case"mceAddControl":case"mceAddEditor":tinyMCE.addMCEControl(tinyMCE._getElementById(value),value);return;case"mceAddFrameControl":tinyMCE.addMCEControl(tinyMCE._getElementById(value.element,value.document),value.element,value.document);return;case"mceRemoveControl":case"mceRemoveEditor":tinyMCE.removeMCEControl(value);return;case"mceToggleEditor":inst=tinyMCE.getInstanceById(value);if(inst){pe=document.getElementById(inst.editorId+'_parent');te=inst.oldTargetElement;if(typeof(inst.enabled)=='undefined')inst.enabled=true;inst.enabled=!inst.enabled;if(!inst.enabled){pe.style.display='none';if(te.nodeName=='TEXTAREA'||te.nodeName=='INPUT')te.value=inst.getHTML();else te.innerHTML=inst.getHTML();te.style.display=inst.oldTargetDisplay;tinyMCE.dispatchCallback(inst,'hide_instance_callback','hideInstance',inst)}else{pe.style.display='block';te.style.display='none';if(te.nodeName=='TEXTAREA'||te.nodeName=='INPUT')inst.setHTML(te.value);else inst.setHTML(te.innerHTML);inst.useCSS=false;tinyMCE.dispatchCallback(inst,'show_instance_callback','showInstance',inst)}}else tinyMCE.addMCEControl(tinyMCE._getElementById(value),value);return;case"mceResetDesignMode":if(tinyMCE.isGecko){for(n in tinyMCE.instances){if(!tinyMCE.isInstance(tinyMCE.instances[n]))continue;try{tinyMCE.instances[n].getDoc().designMode="off";tinyMCE.instances[n].getDoc().designMode="on";tinyMCE.instances[n].useCSS=false}catch(e){}}}return}if(inst){inst.execCommand(command,user_interface,value)}else if(tinyMCE.settings.focus_alert)alert(tinyMCELang.lang_focus_alert)},_createIFrame:function(replace_element,doc,win){var iframe,id=replace_element.getAttribute("id");var aw,ah;if(typeof(doc)=="undefined")doc=document;if(typeof(win)=="undefined")win=window;iframe=doc.createElement("iframe");aw=""+tinyMCE.settings.area_width;ah=""+tinyMCE.settings.area_height;if(aw.indexOf('%')==-1){aw=parseInt(aw);aw=(isNaN(aw)||aw<0)?300:aw;aw=aw+"px"}if(ah.indexOf('%')==-1){ah=parseInt(ah);ah=(isNaN(ah)||ah<0)?240:ah;ah=ah+"px"}iframe.setAttribute("id",id);iframe.setAttribute("name",id);iframe.setAttribute("class","mceEditorIframe");iframe.setAttribute("border","0");iframe.setAttribute("frameBorder","0");iframe.setAttribute("marginWidth","0");iframe.setAttribute("marginHeight","0");iframe.setAttribute("leftMargin","0");iframe.setAttribute("topMargin","0");iframe.setAttribute("width",aw);iframe.setAttribute("height",ah);iframe.setAttribute("allowtransparency","true");iframe.className='mceEditorIframe';if(tinyMCE.settings.auto_resize)iframe.setAttribute("scrolling","no");if(tinyMCE.isRealIE)iframe.setAttribute("src",this.settings.default_document);iframe.style.width=aw;iframe.style.height=ah;if(tinyMCE.settings.strict_loading_mode)iframe.style.marginBottom='-5px';if(tinyMCE.isRealIE)replace_element.outerHTML=iframe.outerHTML;else replace_element.parentNode.replaceChild(iframe,replace_element);if(tinyMCE.isRealIE)return win.frames[id];else return iframe},setupContent:function(editor_id){var inst=tinyMCE.instances[editor_id],i,doc=inst.getDoc(),head=doc.getElementsByTagName('head').item(0);var content=inst.startContent,contentElement,body;if(tinyMCE.settings.strict_loading_mode){content=content.replace(/&lt;/g,'<');content=content.replace(/&gt;/g,'>');content=content.replace(/&quot;/g,'"');content=content.replace(/&amp;/g,'&')}tinyMCE.selectedInstance=inst;inst.switchSettings();if(!tinyMCE.isIE&&tinyMCE.getParam("setupcontent_reload",false)&&doc.title!="blank_page"){try{doc.location.href=tinyMCE.baseURL+"/blank.htm"}catch(ex){}window.setTimeout("tinyMCE.setupContent('"+editor_id+"');",1000);return}if(!head||!doc.body){window.setTimeout("tinyMCE.setupContent('"+editor_id+"');",10);return}tinyMCE.importCSS(inst.getDoc(),tinyMCE.baseURL+"/themes/"+inst.settings.theme+"/css/editor_content.css");tinyMCE.importCSS(inst.getDoc(),inst.settings.content_css);tinyMCE.dispatchCallback(inst,'init_instance_callback','initInstance',inst);if(tinyMCE.getParam('custom_undo_redo_keyboard_shortcuts')){inst.addShortcut('ctrl','z','lang_undo_desc','Undo');inst.addShortcut('ctrl','y','lang_redo_desc','Redo')}for(i=1;i<=6;i++)inst.addShortcut('ctrl',''+i,'','FormatBlock',false,'<h'+i+'>');inst.addShortcut('ctrl','7','','FormatBlock',false,'<p>');inst.addShortcut('ctrl','8','','FormatBlock',false,'<div>');inst.addShortcut('ctrl','9','','FormatBlock',false,'<address>');if(tinyMCE.isGecko){inst.addShortcut('ctrl','b','lang_bold_desc','Bold');inst.addShortcut('ctrl','i','lang_italic_desc','Italic');inst.addShortcut('ctrl','u','lang_underline_desc','Underline')}if(tinyMCE.getParam("convert_fonts_to_spans"))inst.getBody().setAttribute('id','mceSpanFonts');if(tinyMCE.settings.nowrap)doc.body.style.whiteSpace="nowrap";doc.body.dir=this.settings.directionality;doc.editorId=editor_id;if(!tinyMCE.isIE)doc.documentElement.editorId=editor_id;inst.setBaseHREF(tinyMCE.settings.base_href);if(tinyMCE.settings.convert_newlines_to_brs){content=tinyMCE.regexpReplace(content,"\r\n","<br />","gi");content=tinyMCE.regexpReplace(content,"\r","<br />","gi");content=tinyMCE.regexpReplace(content,"\n","<br />","gi")}content=tinyMCE.storeAwayURLs(content);content=tinyMCE._customCleanup(inst,"insert_to_editor",content);if(tinyMCE.isIE){window.setInterval('try{tinyMCE.getCSSClasses(tinyMCE.instances["'+editor_id+'"].getDoc(), "'+editor_id+'");}catch(e){}',500);if(tinyMCE.settings.force_br_newlines)doc.styleSheets[0].addRule("p","margin: 0;");body=inst.getBody();body.editorId=editor_id}content=tinyMCE.cleanupHTMLCode(content);if(!tinyMCE.isIE){contentElement=inst.getDoc().createElement("body");doc=inst.getDoc();contentElement.innerHTML=content;if(tinyMCE.settings.cleanup_on_startup)tinyMCE.setInnerHTML(inst.getBody(),tinyMCE._cleanupHTML(inst,doc,this.settings,contentElement));else tinyMCE.setInnerHTML(inst.getBody(),content);tinyMCE.convertAllRelativeURLs(inst.getBody())}else{if(tinyMCE.settings.cleanup_on_startup){tinyMCE._setHTML(inst.getDoc(),content);try{tinyMCE.setInnerHTML(inst.getBody(),tinyMCE._cleanupHTML(inst,inst.contentDocument,this.settings,inst.getBody()))}catch(e){}}else tinyMCE._setHTML(inst.getDoc(),content)}tinyMCE.handleVisualAid(inst.getBody(),true,tinyMCE.settings.visual,inst);tinyMCE.dispatchCallback(inst,'setupcontent_callback','setupContent',editor_id,inst.getBody(),inst.getDoc());if(!tinyMCE.isIE)tinyMCE.addEventHandlers(inst);if(tinyMCE.isIE){tinyMCE.addEvent(inst.getBody(),"blur",TinyMCE_Engine.prototype._eventPatch);tinyMCE.addEvent(inst.getBody(),"beforedeactivate",TinyMCE_Engine.prototype._eventPatch);if(!tinyMCE.isOpera){tinyMCE.addEvent(doc.body,"mousemove",TinyMCE_Engine.prototype.onMouseMove);tinyMCE.addEvent(doc.body,"beforepaste",TinyMCE_Engine.prototype._eventPatch);tinyMCE.addEvent(doc.body,"drop",TinyMCE_Engine.prototype._eventPatch)}}inst.select();tinyMCE.selectedElement=inst.contentWindow.document.body;tinyMCE._customCleanup(inst,"insert_to_editor_dom",inst.getBody());tinyMCE._customCleanup(inst,"setup_content_dom",inst.getBody());tinyMCE._setEventsEnabled(inst.getBody(),false);tinyMCE.cleanupAnchors(inst.getDoc());if(tinyMCE.getParam("convert_fonts_to_spans"))tinyMCE.convertSpansToFonts(inst.getDoc());inst.startContent=tinyMCE.trim(inst.getBody().innerHTML);inst.undoRedo.add({content:inst.startContent});if(tinyMCE.isGecko){tinyMCE.selectNodes(inst.getBody(),function(n){if(n.nodeType==3||n.nodeType==8)n.nodeValue=n.nodeValue.replace(new RegExp('\\s(mce_src|mce_href)=\"[^\"]*\"','gi'),"");return false})}if(tinyMCE.isGecko)inst.getBody().spellcheck=tinyMCE.getParam("gecko_spellcheck");tinyMCE._removeInternal(inst.getBody());inst.select();tinyMCE.triggerNodeChange(false,true)},storeAwayURLs:function(s){if(!s.match(/(mce_src|mce_href)/gi,s)){s=s.replace(new RegExp('src\\s*=\\s*\"([^ >\"]*)\"','gi'),'src="$1" mce_src="$1"');s=s.replace(new RegExp('href\\s*=\\s*\"([^ >\"]*)\"','gi'),'href="$1" mce_href="$1"')}return s},_removeInternal:function(n){if(tinyMCE.isGecko){tinyMCE.selectNodes(n,function(n){if(n.nodeType==3||n.nodeType==8)n.nodeValue=n.nodeValue.replace(new RegExp('\\s(mce_src|mce_href)=\"[^\"]*\"','gi'),"");return false})}},removeTinyMCEFormElements:function(form_obj){var i,elementId;if(!tinyMCE.getParam('hide_selects_on_submit'))return;if(typeof(form_obj)=="undefined"||form_obj==null)return;if(form_obj.nodeName!="FORM"){if(form_obj.form)form_obj=form_obj.form;else form_obj=tinyMCE.getParentElement(form_obj,"form")}if(form_obj==null)return;for(i=0;i<form_obj.elements.length;i++){elementId=form_obj.elements[i].name?form_obj.elements[i].name:form_obj.elements[i].id;if(elementId.indexOf('mce_editor_')==0)form_obj.elements[i].disabled=true}},handleEvent:function(e){var inst=tinyMCE.selectedInstance,i,elm,keys;if(typeof(tinyMCE)=="undefined")return true;if(tinyMCE.executeCallback(tinyMCE.selectedInstance,'handle_event_callback','handleEvent',e))return false;switch(e.type){case"beforedeactivate":case"blur":if(tinyMCE.selectedInstance)tinyMCE.selectedInstance.execCommand('mceEndTyping');tinyMCE.hideMenus();return;case"drop":case"beforepaste":if(tinyMCE.selectedInstance)tinyMCE.selectedInstance.setBaseHREF(null);if(tinyMCE.isRealIE){var ife=tinyMCE.selectedInstance.iframeElement;if(ife.style.height.indexOf('%')!=-1){ife._oldHeight=ife.style.height;ife.style.height=ife.clientHeight}}window.setTimeout("tinyMCE.selectedInstance.setBaseHREF(tinyMCE.settings.base_href);tinyMCE._resetIframeHeight();",1);return;case"submit":tinyMCE.formSubmit(tinyMCE.isMSIE?window.event.srcElement:e.target);return;case"reset":var formObj=tinyMCE.isIE?window.event.srcElement:e.target;for(i=0;i<document.forms.length;i++){if(document.forms[i]==formObj)window.setTimeout('tinyMCE.resetForm('+i+');',10)}return;case"keypress":if(inst&&inst.handleShortcut(e))return false;if(e.target.editorId){tinyMCE.instances[e.target.editorId].select()}else{if(e.target.ownerDocument.editorId)tinyMCE.instances[e.target.ownerDocument.editorId].select()}if(tinyMCE.selectedInstance)tinyMCE.selectedInstance.switchSettings();if((tinyMCE.isGecko||tinyMCE.isOpera||tinyMCE.isSafari)&&tinyMCE.settings.force_p_newlines&&e.keyCode==13&&!e.shiftKey){if(TinyMCE_ForceParagraphs._insertPara(tinyMCE.selectedInstance,e)){tinyMCE.execCommand("mceAddUndoLevel");return tinyMCE.cancelEvent(e)}}if((tinyMCE.isGecko&&!tinyMCE.isSafari)&&tinyMCE.settings.force_p_newlines&&(e.keyCode==8||e.keyCode==46)&&!e.shiftKey){if(TinyMCE_ForceParagraphs._handleBackSpace(tinyMCE.selectedInstance,e.type)){tinyMCE.execCommand("mceAddUndoLevel");return tinyMCE.cancelEvent(e)}}if(tinyMCE.isIE&&tinyMCE.settings.force_br_newlines&&e.keyCode==13){if(e.target.editorId)tinyMCE.instances[e.target.editorId].select();if(tinyMCE.selectedInstance){var sel=tinyMCE.selectedInstance.getDoc().selection;var rng=sel.createRange();if(tinyMCE.getParentElement(rng.parentElement(),"li")!=null)return false;e.returnValue=false;e.cancelBubble=true;rng.pasteHTML("<br />");rng.collapse(false);rng.select();tinyMCE.execCommand("mceAddUndoLevel");tinyMCE.triggerNodeChange(false);return false}}if(e.keyCode==8||e.keyCode==46){tinyMCE.selectedElement=e.target;tinyMCE.linkElement=tinyMCE.getParentElement(e.target,"a");tinyMCE.imgElement=tinyMCE.getParentElement(e.target,"img");tinyMCE.triggerNodeChange(false)}return false;case"keyup":case"keydown":tinyMCE.hideMenus();tinyMCE.hasMouseMoved=false;if(inst&&inst.handleShortcut(e))return false;inst._fixRootBlocks();if(inst.settings.remove_trailing_nbsp)inst._fixTrailingNbsp();if(e.target.editorId)tinyMCE.instances[e.target.editorId].select();if(tinyMCE.selectedInstance)tinyMCE.selectedInstance.switchSettings();inst=tinyMCE.selectedInstance;if(tinyMCE.isGecko&&tinyMCE.settings.force_p_newlines&&(e.keyCode==8||e.keyCode==46)&&!e.shiftKey){if(TinyMCE_ForceParagraphs._handleBackSpace(tinyMCE.selectedInstance,e.type)){tinyMCE.execCommand("mceAddUndoLevel");e.preventDefault();return false}}tinyMCE.selectedElement=null;tinyMCE.selectedNode=null;elm=tinyMCE.selectedInstance.getFocusElement();tinyMCE.linkElement=tinyMCE.getParentElement(elm,"a");tinyMCE.imgElement=tinyMCE.getParentElement(elm,"img");tinyMCE.selectedElement=elm;if(tinyMCE.isGecko&&e.type=="keyup"&&e.keyCode==9)tinyMCE.handleVisualAid(tinyMCE.selectedInstance.getBody(),true,tinyMCE.settings.visual,tinyMCE.selectedInstance);if(tinyMCE.isIE&&e.type=="keydown"&&e.keyCode==13)tinyMCE.enterKeyElement=tinyMCE.selectedInstance.getFocusElement();if(tinyMCE.isIE&&e.type=="keyup"&&e.keyCode==13){elm=tinyMCE.enterKeyElement;if(elm){var re=new RegExp('^HR|IMG|BR$','g');var dre=new RegExp('^H[1-6]$','g');if(!elm.hasChildNodes()&&!re.test(elm.nodeName)){if(dre.test(elm.nodeName))elm.innerHTML="&nbsp;&nbsp;";else elm.innerHTML="&nbsp;"}}}keys=tinyMCE.posKeyCodes;var posKey=false;for(i=0;i<keys.length;i++){if(keys[i]==e.keyCode){posKey=true;break}}if(tinyMCE.isIE&&tinyMCE.settings.custom_undo_redo){keys=[8,46];for(i=0;i<keys.length;i++){if(keys[i]==e.keyCode){if(e.type=="keyup")tinyMCE.triggerNodeChange(false)}}}if(e.keyCode==17)return true;if(tinyMCE.isGecko){if(!posKey&&e.type=="keyup"&&!e.ctrlKey||(e.ctrlKey&&(e.keyCode==86||e.keyCode==88)))tinyMCE.execCommand("mceStartTyping")}else{if(!posKey&&e.type=="keyup")tinyMCE.execCommand("mceStartTyping")}if(e.type=="keydown"&&(posKey||e.ctrlKey)&&inst)inst.undoBookmark=inst.selection.getBookmark();if(e.type=="keyup"&&(posKey||e.ctrlKey))tinyMCE.execCommand("mceEndTyping");if(posKey&&e.type=="keyup")tinyMCE.triggerNodeChange(false);if(tinyMCE.isIE&&e.ctrlKey)window.setTimeout('tinyMCE.triggerNodeChange(false);',1);break;case"mousedown":case"mouseup":case"click":case"dblclick":case"focus":tinyMCE.hideMenus();if(tinyMCE.selectedInstance){tinyMCE.selectedInstance.switchSettings();tinyMCE.selectedInstance.isFocused=true}var targetBody=tinyMCE.getParentElement(e.target,"html");for(var instanceName in tinyMCE.instances){if(!tinyMCE.isInstance(tinyMCE.instances[instanceName]))continue;inst=tinyMCE.instances[instanceName];inst.autoResetDesignMode();if(inst.getBody().parentNode==targetBody){inst.select();tinyMCE.selectedElement=e.target;tinyMCE.linkElement=tinyMCE.getParentElement(tinyMCE.selectedElement,"a");tinyMCE.imgElement=tinyMCE.getParentElement(tinyMCE.selectedElement,"img");break}}if(!tinyMCE.selectedInstance.undoRedo.undoLevels[0].bookmark&&(e.type=="mouseup"||e.type=="dblclick"))tinyMCE.selectedInstance.undoRedo.undoLevels[0].bookmark=tinyMCE.selectedInstance.selection.getBookmark();if(e.type!="focus")tinyMCE.selectedNode=null;tinyMCE.triggerNodeChange(false);tinyMCE.execCommand("mceEndTyping");if(e.type=="mouseup")tinyMCE.execCommand("mceAddUndoLevel");if(!tinyMCE.selectedInstance&&e.target.editorId)tinyMCE.instances[e.target.editorId].select();return false}},getButtonHTML:function(id,lang,img,cmd,ui,val){var h='',m,x,io='';cmd='tinyMCE.execInstanceCommand(\'{$editor_id}\',\''+cmd+'\'';if(typeof(ui)!="undefined"&&ui!=null)cmd+=','+ui;if(typeof(val)!="undefined"&&val!=null)cmd+=",'"+val+"'";cmd+=');';if(tinyMCE.isRealIE)io='onmouseover="tinyMCE.lastHover = this;"';if(tinyMCE.getParam('button_tile_map')&&(!tinyMCE.isIE||tinyMCE.isOpera)&&(m=this.buttonMap[id])!=null&&(tinyMCE.getParam("language")=="en"||img.indexOf('$lang')==-1)){x=0-(m*20)==0?'0':0-(m*20);h+='<a id="{$editor_id}_'+id+'" href="javascript:'+cmd+'" onclick="'+cmd+'return false;" onmousedown="return false;" '+io+' class="mceTiledButton mceButtonNormal" target="_self">';h+='<img src="{$themeurl}/images/spacer.gif" style="background-position: '+x+'px 0" alt="{$'+lang+'}" title="{$'+lang+'}" />';h+='</a>'}else{h+='<a id="{$editor_id}_'+id+'" href="javascript:'+cmd+'" onclick="'+cmd+'return false;" onmousedown="return false;" '+io+' class="mceButtonNormal" target="_self">';h+='<img src="'+img+'" alt="{$'+lang+'}" title="{$'+lang+'}" />';h+='</a>'}return h},getMenuButtonHTML:function(id,lang,img,mcmd,cmd,ui,val){var h='',m,x;mcmd='tinyMCE.execInstanceCommand(\'{$editor_id}\',\''+mcmd+'\');';cmd='tinyMCE.execInstanceCommand(\'{$editor_id}\',\''+cmd+'\'';if(typeof(ui)!="undefined"&&ui!=null)cmd+=','+ui;if(typeof(val)!="undefined"&&val!=null)cmd+=",'"+val+"'";cmd+=');';if(tinyMCE.getParam('button_tile_map')&&(!tinyMCE.isIE||tinyMCE.isOpera)&&(m=tinyMCE.buttonMap[id])!=null&&(tinyMCE.getParam("language")=="en"||img.indexOf('$lang')==-1)){x=0-(m*20)==0?'0':0-(m*20);if(tinyMCE.isRealIE)h+='<span id="{$editor_id}_'+id+'" class="mceMenuButton" onmouseover="tinyMCE._menuButtonEvent(\'over\',this);tinyMCE.lastHover = this;" onmouseout="tinyMCE._menuButtonEvent(\'out\',this);">';else h+='<span id="{$editor_id}_'+id+'" class="mceMenuButton">';h+='<a href="javascript:'+cmd+'" onclick="'+cmd+'return false;" onmousedown="return false;" class="mceTiledButton mceMenuButtonNormal" target="_self">';h+='<img src="{$themeurl}/images/spacer.gif" style="width: 20px; height: 20px; background-position: '+x+'px 0" title="{$'+lang+'}" /></a>';h+='<a href="javascript:'+mcmd+'" onclick="'+mcmd+'return false;" onmousedown="return false;"><img src="{$themeurl}/images/button_menu.gif" title="{$'+lang+'}" class="mceMenuButton" />';h+='</a></span>'}else{if(tinyMCE.isRealIE)h+='<span id="{$editor_id}_'+id+'" dir="ltr" class="mceMenuButton" onmouseover="tinyMCE._menuButtonEvent(\'over\',this);tinyMCE.lastHover = this;" onmouseout="tinyMCE._menuButtonEvent(\'out\',this);">';else h+='<span id="{$editor_id}_'+id+'" dir="ltr" class="mceMenuButton">';h+='<a href="javascript:'+cmd+'" onclick="'+cmd+'return false;" onmousedown="return false;" class="mceMenuButtonNormal" target="_self">';h+='<img src="'+img+'" title="{$'+lang+'}" /></a>';h+='<a href="javascript:'+mcmd+'" onclick="'+mcmd+'return false;" onmousedown="return false;"><img src="{$themeurl}/images/button_menu.gif" title="{$'+lang+'}" class="mceMenuButton" />';h+='</a></span>'}return h},_menuButtonEvent:function(e,o){if(o.className=='mceMenuButtonFocus')return;if(e=='over')o.className=o.className+' mceMenuHover';else o.className=o.className.replace(/\s.*$/,'')},addButtonMap:function(m){var i,a=m.replace(/\s+/,'').split(',');for(i=0;i<a.length;i++)this.buttonMap[a[i]]=i},formSubmit:function(f,p){var n,inst,found=false;if(f.form)f=f.form;if(tinyMCE.getParam('save_on_tinymce_forms')){for(n in tinyMCE.instances){inst=tinyMCE.instances[n];if(!tinyMCE.isInstance(inst))continue;if(inst.formElement){if(f==inst.formElement.form){found=true;inst.isNotDirty=true}}}}else found=true;if(found){tinyMCE.removeTinyMCEFormElements(f);tinyMCE.triggerSave()}if(f.mceOldSubmit&&p)f.mceOldSubmit()},submitPatch:function(){tinyMCE.formSubmit(this,true)},onLoad:function(){var r,i,c,mode,trigger,elements,element,settings,elementId,elm;var selector,deselector,elementRefAr,form;if(tinyMCE.settings.strict_loading_mode&&this.loadingIndex!=-1){window.setTimeout('tinyMCE.onLoad();',1);return}if(tinyMCE.isRealIE&&window.event.type=="readystatechange"&&document.readyState!="complete")return true;if(tinyMCE.isLoaded)return true;tinyMCE.isLoaded=true;if(tinyMCE.isRealIE&&document.body&&window.location.href!=window.top.location.href){r=document.body.createTextRange();r.collapse(true);r.select()}tinyMCE.dispatchCallback(null,'onpageload','onPageLoad');for(c=0;c<tinyMCE.configs.length;c++){tinyMCE.settings=tinyMCE.configs[c];selector=tinyMCE.getParam("editor_selector");deselector=tinyMCE.getParam("editor_deselector");elementRefAr=[];if(document.forms&&tinyMCE.settings.add_form_submit_trigger&&!tinyMCE.submitTriggers){for(i=0;i<document.forms.length;i++){form=document.forms[i];tinyMCE.addEvent(form,"submit",TinyMCE_Engine.prototype.handleEvent);tinyMCE.addEvent(form,"reset",TinyMCE_Engine.prototype.handleEvent);tinyMCE.submitTriggers=true;if(tinyMCE.settings.submit_patch){try{form.mceOldSubmit=form.submit;form.submit=TinyMCE_Engine.prototype.submitPatch}catch(e){}}}}mode=tinyMCE.settings.mode;switch(mode){case"exact":elements=tinyMCE.getParam('elements','',true,',');for(i=0;i<elements.length;i++){element=tinyMCE._getElementById(elements[i]);trigger=element?element.getAttribute(tinyMCE.settings.textarea_trigger):"";if(new RegExp('\\b'+deselector+'\\b').test(tinyMCE.getAttrib(element,"class")))continue;if(trigger=="false")continue;if((tinyMCE.settings.ask||tinyMCE.settings.convert_on_click)&&element){elementRefAr[elementRefAr.length]=element;continue}if(element)tinyMCE.addMCEControl(element,elements[i])}break;case"specific_textareas":case"textareas":elements=document.getElementsByTagName("textarea");for(i=0;i<elements.length;i++){elm=elements.item(i);trigger=elm.getAttribute(tinyMCE.settings.textarea_trigger);if(selector!==''&&!new RegExp('\\b'+selector+'\\b').test(tinyMCE.getAttrib(elm,"class")))continue;if(selector!=='')trigger=selector!==''?"true":"";if(new RegExp('\\b'+deselector+'\\b').test(tinyMCE.getAttrib(elm,"class")))continue;if((mode=="specific_textareas"&&trigger=="true")||(mode=="textareas"&&trigger!="false"))elementRefAr[elementRefAr.length]=elm}break}for(i=0;i<elementRefAr.length;i++){element=elementRefAr[i];elementId=element.name?element.name:element.id;if(tinyMCE.settings.ask||tinyMCE.settings.convert_on_click){if(tinyMCE.isGecko){settings=tinyMCE.settings;tinyMCE.addEvent(element,"focus",function(e){window.setTimeout(function(){TinyMCE_Engine.prototype.confirmAdd(e,settings)},10)});if(element.nodeName!="TEXTAREA"&&element.nodeName!="INPUT")tinyMCE.addEvent(element,"click",function(e){window.setTimeout(function(){TinyMCE_Engine.prototype.confirmAdd(e,settings)},10)});}else{settings=tinyMCE.settings;tinyMCE.addEvent(element,"focus",function(){TinyMCE_Engine.prototype.confirmAdd(null,settings)});tinyMCE.addEvent(element,"click",function(){TinyMCE_Engine.prototype.confirmAdd(null,settings)});}}else tinyMCE.addMCEControl(element,elementId)}if(tinyMCE.settings.auto_focus){window.setTimeout(function(){var inst=tinyMCE.getInstanceById(tinyMCE.settings.auto_focus);inst.selection.selectNode(inst.getBody(),true,true);inst.contentWindow.focus()},100)}tinyMCE.dispatchCallback(null,'oninit','onInit')}},isInstance:function(o){return o!=null&&typeof(o)=="object"&&o.isTinyMCE_Control},getParam:function(name,default_value,strip_whitespace,split_chr){var i,outArray,value=(typeof(this.settings[name])=="undefined")?default_value:this.settings[name];if(value=="true"||value=="false")return(value=="true");if(strip_whitespace)value=tinyMCE.regexpReplace(value,"[ \t\r\n]","");if(typeof(split_chr)!="undefined"&&split_chr!=null){value=value.split(split_chr);outArray=[];for(i=0;i<value.length;i++){if(value[i]&&value[i]!=='')outArray[outArray.length]=value[i]}value=outArray}return value},getLang:function(name,default_value,parse_entities,va){var v=(typeof(tinyMCELang[name])=="undefined")?default_value:tinyMCELang[name],n;if(parse_entities)v=tinyMCE.entityDecode(v);if(va){for(n in va)v=this.replaceVar(v,n,va[n])}return v},entityDecode:function(s){var e=document.createElement("div");e.innerHTML=s;return!e.firstChild?s:e.firstChild.nodeValue},addToLang:function(prefix,ar){var k;for(k in ar){if(typeof(ar[k])=='function')continue;tinyMCELang[(k.indexOf('lang_')==-1?'lang_':'')+(prefix!==''?(prefix+"_"):'')+k]=ar[k]}this.loadNextScript()},triggerNodeChange:function(focus,setup_content){var elm,inst,editorId,undoIndex=-1,undoLevels=-1,doc,anySelection=false,st;if(tinyMCE.selectedInstance){inst=tinyMCE.selectedInstance;elm=(typeof(setup_content)!="undefined"&&setup_content)?tinyMCE.selectedElement:inst.getFocusElement();editorId=inst.editorId;st=inst.selection.getSelectedText();if(tinyMCE.settings.auto_resize)inst.resizeToContent();if(setup_content&&tinyMCE.isGecko&&inst.isHidden())elm=inst.getBody();inst.switchSettings();if(tinyMCE.selectedElement)anySelection=(tinyMCE.selectedElement.nodeName.toLowerCase()=="img")||(st&&st.length>0);if(tinyMCE.settings.custom_undo_redo){undoIndex=inst.undoRedo.undoIndex;undoLevels=inst.undoRedo.undoLevels.length}tinyMCE.dispatchCallback(inst,'handle_node_change_callback','handleNodeChange',editorId,elm,undoIndex,undoLevels,inst.visualAid,anySelection,setup_content)}if(this.selectedInstance&&(typeof(focus)=="undefined"||focus))this.selectedInstance.contentWindow.focus()},_customCleanup:function(inst,type,content){var pl,po,i,customCleanup;customCleanup=tinyMCE.settings.cleanup_callback;if(customCleanup!='')content=tinyMCE.resolveDots(tinyMCE.settings.cleanup_callback,window)(type,content,inst);po=tinyMCE.themes[tinyMCE.settings.theme];if(po&&po.cleanup)content=po.cleanup(type,content,inst);pl=inst.plugins;for(i=0;i<pl.length;i++){po=tinyMCE.plugins[pl[i]];if(po&&po.cleanup)content=po.cleanup(type,content,inst)}return content},setContent:function(h){if(tinyMCE.selectedInstance){tinyMCE.selectedInstance.execCommand('mceSetContent',false,h);tinyMCE.selectedInstance.repaint()}},importThemeLanguagePack:function(name){if(typeof(name)=="undefined")name=tinyMCE.settings.theme;tinyMCE.loadScript(tinyMCE.baseURL+'/themes/'+name+'/langs/'+tinyMCE.settings.language+'.js')},importPluginLanguagePack:function(name){var b=tinyMCE.baseURL+'/plugins/'+name;if(this.plugins[name])b=this.plugins[name].baseURL;tinyMCE.loadScript(b+'/langs/'+tinyMCE.settings.language+'.js')},applyTemplate:function(h,ag){return h.replace(new RegExp('\\{\\$([a-z0-9_]+)\\}','gi'),function(m,s){if(s.indexOf('lang_')==0&&tinyMCELang[s])return tinyMCELang[s];if(ag&&ag[s])return ag[s];if(tinyMCE.settings[s])return tinyMCE.settings[s];if(m=='themeurl')return tinyMCE.themeURL;return m})},replaceVar:function(h,r,v){return h.replace(new RegExp('{\\\$'+r+'}','g'),v)},openWindow:function(template,args){var html,width,height,x,y,resizable,scrollbars,url,name,win,modal,features;args=!args?{}:args;args.mce_template_file=template.file;args.mce_width=template.width;args.mce_height=template.height;tinyMCE.windowArgs=args;html=template.html;if(!(width=parseInt(template.width)))width=320;if(!(height=parseInt(template.height)))height=200;if(tinyMCE.isIE)height+=40;else height+=20;x=parseInt(screen.width/ 2.0) - (width /2.0);y=parseInt(screen.height/ 2.0) - (height /2.0);resizable=(args&&args.resizable)?args.resizable:"no";scrollbars=(args&&args.scrollbars)?args.scrollbars:"no";if(template.file.charAt(0)!='/'&&template.file.indexOf('://')==-1)url=tinyMCE.baseURL+"/themes/"+tinyMCE.getParam("theme")+"/"+template.file;else url=template.file;for(name in args){if(typeof(args[name])=='function')continue;url=tinyMCE.replaceVar(url,name,escape(args[name]))}if(html){html=tinyMCE.replaceVar(html,"css",this.settings.popups_css);html=tinyMCE.applyTemplate(html,args);win=window.open("","mcePopup"+new Date().getTime(),"top="+y+",left="+x+",scrollbars="+scrollbars+",dialog=yes,minimizable="+resizable+",modal=yes,width="+width+",height="+height+",resizable="+resizable);if(win==null){alert(tinyMCELang.lang_popup_blocked);return}win.document.write(html);win.document.close();win.resizeTo(width,height);win.focus()}else{if((tinyMCE.isRealIE)&&resizable!='yes'&&tinyMCE.settings.dialog_type=="modal"){height+=10;features="resizable:"+resizable+";scroll:"+scrollbars+";status:yes;center:yes;help:no;dialogWidth:"+width+"px;dialogHeight:"+height+"px;";window.showModalDialog(url,window,features)}else{modal=(resizable=="yes")?"no":"yes";if(tinyMCE.isGecko&&tinyMCE.isMac)modal="no";if(template.close_previous!="no")try{tinyMCE.lastWindow.close()}catch(ex){}win=window.open(url,"mcePopup"+new Date().getTime(),"top="+y+",left="+x+",scrollbars="+scrollbars+",dialog="+modal+",minimizable="+resizable+",modal="+modal+",width="+width+",height="+height+",resizable="+resizable);if(win==null){alert(tinyMCELang.lang_popup_blocked);return}if(template.close_previous!="no")tinyMCE.lastWindow=win;try{win.resizeTo(width,height)}catch(e){}if(tinyMCE.isGecko){if(win.document.defaultView.statusbar.visible)win.resizeBy(0,tinyMCE.isMac?10:24)}win.focus()}}},closeWindow:function(win){win.close()},getVisualAidClass:function(class_name,state){var i,classNames,ar,className,aidClass=tinyMCE.settings.visual_table_class;if(typeof(state)=="undefined")state=tinyMCE.settings.visual;classNames=[];ar=class_name.split(' ');for(i=0;i<ar.length;i++){if(ar[i]==aidClass)ar[i]="";if(ar[i]!=='')classNames[classNames.length]=ar[i]}if(state)classNames[classNames.length]=aidClass;className="";for(i=0;i<classNames.length;i++){if(i>0)className+=" ";className+=classNames[i]}return className},handleVisualAid:function(el,deep,state,inst,skip_dispatch){var i,x,y,tableElement,anchorName,oldW,oldH,bo,cn;if(!el)return;if(!skip_dispatch)tinyMCE.dispatchCallback(inst,'handle_visual_aid_callback','handleVisualAid',el,deep,state,inst);tableElement=null;switch(el.nodeName){case"TABLE":oldW=el.style.width;oldH=el.style.height;bo=tinyMCE.getAttrib(el,"border");bo=bo==''||bo=="0"?true:false;tinyMCE.setAttrib(el,"class",tinyMCE.getVisualAidClass(tinyMCE.getAttrib(el,"class"),state&&bo));el.style.width=oldW;el.style.height=oldH;for(y=0;y<el.rows.length;y++){for(x=0;x<el.rows[y].cells.length;x++){cn=tinyMCE.getVisualAidClass(tinyMCE.getAttrib(el.rows[y].cells[x],"class"),state&&bo);tinyMCE.setAttrib(el.rows[y].cells[x],"class",cn)}}break;case"A":anchorName=tinyMCE.getAttrib(el,"name");if(anchorName!==''&&state){el.title=anchorName;tinyMCE.addCSSClass(el,'mceItemAnchor')}else if(anchorName!==''&&!state)el.className='';break}if(deep&&el.hasChildNodes()){for(i=0;i<el.childNodes.length;i++)tinyMCE.handleVisualAid(el.childNodes[i],deep,state,inst,true)}},fixGeckoBaseHREFBug:function(m,e,h){var xsrc,xhref;if(tinyMCE.isGecko){if(m==1){h=h.replace(/\ssrc=/gi," mce_tsrc=");h=h.replace(/\shref=/gi," mce_thref=");return h}else{if(!new RegExp('(src|href)=','g').test(h))return h;tinyMCE.selectElements(e,'A,IMG,SELECT,AREA,IFRAME,BASE,INPUT,SCRIPT,EMBED,OBJECT,LINK',function(n){xsrc=tinyMCE.getAttrib(n,"mce_tsrc");xhref=tinyMCE.getAttrib(n,"mce_thref");if(xsrc!==''){try{n.src=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href,xsrc)}catch(e){}n.removeAttribute("mce_tsrc")}if(xhref!==''){try{n.href=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href,xhref)}catch(e){}n.removeAttribute("mce_thref")}return false});tinyMCE.selectNodes(e,function(n){if(n.nodeType==3||n.nodeType==8){n.nodeValue=n.nodeValue.replace(/\smce_tsrc=/gi," src=");n.nodeValue=n.nodeValue.replace(/\smce_thref=/gi," href=")}return false})}}return h},_setHTML:function(doc,html_content){var i,html,paras,node;html_content=tinyMCE.cleanupHTMLCode(html_content);try{tinyMCE.setInnerHTML(doc.body,html_content)}catch(e){if(this.isMSIE)doc.body.createTextRange().pasteHTML(html_content)}if(tinyMCE.isIE&&tinyMCE.settings.fix_content_duplication){paras=doc.getElementsByTagName("P");for(i=0;i<paras.length;i++){node=paras[i];while((node=node.parentNode)!=null){if(node.nodeName=="P")node.outerHTML=node.innerHTML}}html=doc.body.innerHTML;tinyMCE.setInnerHTML(doc.body,html)}tinyMCE.cleanupAnchors(doc);if(tinyMCE.getParam("convert_fonts_to_spans"))tinyMCE.convertSpansToFonts(doc)},getEditorId:function(form_element){var inst=this.getInstanceById(form_element);if(!inst)return null;return inst.editorId},getInstanceById:function(editor_id){var inst=this.instances[editor_id],n;if(!inst){for(n in tinyMCE.instances){inst=tinyMCE.instances[n];if(!tinyMCE.isInstance(inst))continue;if(inst.formTargetElementId==editor_id)return inst}}else return inst;return null},queryInstanceCommandValue:function(editor_id,command){var inst=tinyMCE.getInstanceById(editor_id);if(inst)return inst.queryCommandValue(command);return false},queryInstanceCommandState:function(editor_id,command){var inst=tinyMCE.getInstanceById(editor_id);if(inst)return inst.queryCommandState(command);return null},setWindowArg:function(n,v){this.windowArgs[n]=v},getWindowArg:function(n,d){return(typeof(this.windowArgs[n])=="undefined")?d:this.windowArgs[n]},getCSSClasses:function(editor_id,doc){var i,c,x,rule,styles,rules,csses,selectorText,inst=tinyMCE.getInstanceById(editor_id);var cssClass,addClass,p;if(!inst)inst=tinyMCE.selectedInstance;if(!inst)return[];if(!doc)doc=inst.getDoc();if(inst&&inst.cssClasses.length>0)return inst.cssClasses;if(!doc)return;styles=doc.styleSheets;if(styles&&styles.length>0){for(x=0;x<styles.length;x++){csses=null;try{csses=tinyMCE.isIE?doc.styleSheets(x).rules:styles[x].cssRules}catch(e){}if(!csses)return[];for(i=0;i<csses.length;i++){selectorText=csses[i].selectorText;if(selectorText){rules=selectorText.split(',');for(c=0;c<rules.length;c++){rule=rules[c];while(rule.indexOf(' ')==0)rule=rule.substring(1);if(rule.indexOf(' ')!=-1||rule.indexOf(':')!=-1||rule.indexOf('mceItem')!=-1)continue;if(rule.indexOf(tinyMCE.settings.visual_table_class)!=-1||rule.indexOf('mceEditable')!=-1||rule.indexOf('mceNonEditable')!=-1)continue;if(rule.indexOf('.')!=-1){cssClass=rule.substring(rule.indexOf('.')+1);addClass=true;for(p=0;p<inst.cssClasses.length&&addClass;p++){if(inst.cssClasses[p]==cssClass)addClass=false}if(addClass)inst.cssClasses[inst.cssClasses.length]=cssClass}}}}}}return inst.cssClasses},regexpReplace:function(in_str,reg_exp,replace_str,opts){var re;if(in_str==null)return in_str;if(typeof(opts)=="undefined")opts='g';re=new RegExp(reg_exp,opts);return in_str.replace(re,replace_str)},trim:function(s){return s.replace(/^\s*|\s*$/g,"")},cleanupEventStr:function(s){s=""+s;s=s.replace('function anonymous()\n{\n','');s=s.replace('\n}','');s=s.replace(/^return true;/gi,'');return s},getControlHTML:function(c){var i,l,n,o,v,rtl=tinyMCE.getLang('lang_dir')=='rtl';l=tinyMCE.plugins;for(n in l){o=l[n];if(o.getControlHTML&&(v=o.getControlHTML(c))!==''){if(rtl)return'<span dir="rtl">'+tinyMCE.replaceVar(v,"pluginurl",o.baseURL)+'</span>';return tinyMCE.replaceVar(v,"pluginurl",o.baseURL)}}o=tinyMCE.themes[tinyMCE.settings.theme];if(o.getControlHTML&&(v=o.getControlHTML(c))!==''){if(rtl)return'<span dir="rtl">'+v+'</span>';return v}return''},evalFunc:function(f,idx,a,o){o=!o?window:o;f=typeof(f)=='function'?f:o[f];return f.apply(o,Array.prototype.slice.call(a,idx))},dispatchCallback:function(i,p,n){return this.callFunc(i,p,n,0,this.dispatchCallback.arguments)},executeCallback:function(i,p,n){return this.callFunc(i,p,n,1,this.executeCallback.arguments)},execCommandCallback:function(i,p,n){return this.callFunc(i,p,n,2,this.execCommandCallback.arguments)},callFunc:function(ins,p,n,m,a){var l,i,on,o,s,v;s=m==2;l=tinyMCE.getParam(p,'');if(l!==''&&(v=tinyMCE.evalFunc(l,3,a))==s&&m>0)return true;if(ins!=null){for(i=0,l=ins.plugins;i<l.length;i++){o=tinyMCE.plugins[l[i]];if(o[n]&&(v=tinyMCE.evalFunc(n,3,a,o))==s&&m>0)return true}}l=tinyMCE.themes;for(on in l){o=l[on];if(o[n]&&(v=tinyMCE.evalFunc(n,3,a,o))==s&&m>0)return true}return false},resolveDots:function(s,o){var i;if(typeof(s)=='string'){for(i=0,s=s.split('.');i<s.length;i++)o=o[s[i]]}else o=s;return o},xmlEncode:function(s){return s?(''+s).replace(this.xmlEncodeRe,function(c,b){switch(c){case'&':return'&amp;';case'"':return'&quot;';case'<':return'&lt;';case'>':return'&gt;'}return c}):s},add:function(c,m){var n;for(n in m){if(m.hasOwnProperty(n))c.prototype[n]=m[n]}},extend:function(p,np){var o={},n;o.parent=p;for(n in p){if(p.hasOwnProperty(n))o[n]=p[n]}for(n in np){if(np.hasOwnProperty(n))o[n]=np[n]}return o},hideMenus:function(){var e=tinyMCE.lastSelectedMenuBtn;if(tinyMCE.lastMenu){tinyMCE.lastMenu.hide();tinyMCE.lastMenu=null}if(e){tinyMCE.switchClass(e,tinyMCE.lastMenuBtnClass);tinyMCE.lastSelectedMenuBtn=null}}};var TinyMCE=TinyMCE_Engine;var tinyMCE=new TinyMCE_Engine();var tinyMCELang={};function TinyMCE_Control(settings){var t,i,tos,fu,p,x,fn,fu,pn,s=settings;this.undoRedoLevel=true;this.isTinyMCE_Control=true;this.enabled=true;this.settings=s;this.settings.theme=tinyMCE.getParam("theme","default");this.settings.width=tinyMCE.getParam("width",-1);this.settings.height=tinyMCE.getParam("height",-1);this.selection=new TinyMCE_Selection(this);this.undoRedo=new TinyMCE_UndoRedo(this);this.cleanup=new TinyMCE_Cleanup();this.shortcuts=[];this.hasMouseMoved=false;this.foreColor=this.backColor="#999999";this.data={};this.cssClasses=[];this.cleanup.init({valid_elements:s.valid_elements,extended_valid_elements:s.extended_valid_elements,valid_child_elements:s.valid_child_elements,entities:s.entities,entity_encoding:s.entity_encoding,debug:s.cleanup_debug,indent:s.apply_source_formatting,invalid_elements:s.invalid_elements,verify_html:s.verify_html,fix_content_duplication:s.fix_content_duplication,convert_fonts_to_spans:s.convert_fonts_to_spans});t=this.settings.theme;if(!tinyMCE.hasTheme(t)){fn=tinyMCE.callbacks;tos={};for(i=0;i<fn.length;i++){if((fu=window['TinyMCE_'+t+"_"+fn[i]]))tos[fn[i]]=fu}tinyMCE.addTheme(t,tos)}this.plugins=[];p=tinyMCE.getParam('plugins','',true,',');if(p.length>0){for(i=0;i<p.length;i++){pn=p[i];if(pn.charAt(0)=='-')pn=pn.substring(1);if(!tinyMCE.hasPlugin(pn)){fn=tinyMCE.callbacks;tos={};for(x=0;x<fn.length;x++){if((fu=window['TinyMCE_'+pn+"_"+fn[x]]))tos[fn[x]]=fu}tinyMCE.addPlugin(pn,tos)}this.plugins[this.plugins.length]=pn}}};TinyMCE_Control.prototype={selection:null,settings:null,cleanup:null,getData:function(na){var o=this.data[na];if(!o)o=this.data[na]={};return o},hasPlugin:function(n){var i;for(i=0;i<this.plugins.length;i++){if(this.plugins[i]==n)return true}return false},addPlugin:function(n,p){if(!this.hasPlugin(n)){tinyMCE.addPlugin(n,p);this.plugins[this.plugins.length]=n}},repaint:function(){var s,b,ex;if(tinyMCE.isRealIE)return;try{s=this.selection;b=s.getBookmark(true);this.getBody().style.display='none';this.getDoc().execCommand('selectall',false,null);this.getSel().collapseToStart();this.getBody().style.display='block';s.moveToBookmark(b)}catch(ex){}},switchSettings:function(){if(tinyMCE.configs.length>1&&tinyMCE.currentConfig!=this.settings.index){tinyMCE.settings=this.settings;tinyMCE.currentConfig=this.settings.index}},select:function(){var oldInst=tinyMCE.selectedInstance;if(oldInst!=this){if(oldInst)oldInst.execCommand('mceEndTyping');tinyMCE.dispatchCallback(this,'select_instance_callback','selectInstance',this,oldInst);tinyMCE.selectedInstance=this}},getBody:function(){return this.contentBody?this.contentBody:this.getDoc().body},getDoc:function(){return this.contentWindow.document},getWin:function(){return this.contentWindow},getContainerWin:function(){return this.containerWindow?this.containerWindow:window},getViewPort:function(){return tinyMCE.getViewPort(this.getWin())},getParentNode:function(n,f){return tinyMCE.getParentNode(n,f,this.getBody())},getParentElement:function(n,na,f){return tinyMCE.getParentElement(n,na,f,this.getBody())},getParentBlockElement:function(n){return tinyMCE.getParentBlockElement(n,this.getBody())},resizeToContent:function(){var d=this.getDoc(),b=d.body,de=d.documentElement;this.iframeElement.style.height=(tinyMCE.isRealIE)?b.scrollHeight:de.offsetHeight+'px'},addShortcut:function(m,k,d,cmd,ui,va){var n=typeof(k)=="number",ie=tinyMCE.isIE,c,sc,i,scl=this.shortcuts;if(!tinyMCE.getParam('custom_shortcuts'))return false;m=m.toLowerCase();k=ie&&!n?k.toUpperCase():k;c=n?null:k.charCodeAt(0);d=d&&d.indexOf('lang_')==0?tinyMCE.getLang(d):d;sc={alt:m.indexOf('alt')!=-1,ctrl:m.indexOf('ctrl')!=-1,shift:m.indexOf('shift')!=-1,charCode:c,keyCode:n?k:(ie?c:null),desc:d,cmd:cmd,ui:ui,val:va};for(i=0;i<scl.length;i++){if(sc.alt==scl[i].alt&&sc.ctrl==scl[i].ctrl&&sc.shift==scl[i].shift&&sc.charCode==scl[i].charCode&&sc.keyCode==scl[i].keyCode){return false}}scl[scl.length]=sc;return true},handleShortcut:function(e){var i,s,o;if(!e.altKey&&!e.ctrlKey)return false;s=this.shortcuts;for(i=0;i<s.length;i++){o=s[i];if(o.alt==e.altKey&&o.ctrl==e.ctrlKey&&(o.keyCode==e.keyCode||o.charCode==e.charCode)){if(o.cmd&&(e.type=="keydown"||(e.type=="keypress"&&!tinyMCE.isOpera)))tinyMCE.execCommand(o.cmd,o.ui,o.val);tinyMCE.cancelEvent(e);return true}}return false},autoResetDesignMode:function(){if(!tinyMCE.isIE&&this.isHidden()&&tinyMCE.getParam('auto_reset_designmode'))eval('try { this.getDoc().designMode = "On"; this.useCSS = false; } catch(e) {}')},isHidden:function(){var s;if(tinyMCE.isIE)return false;s=this.getSel();return(!s||!s.rangeCount||s.rangeCount==0)},isDirty:function(){return tinyMCE.trim(this.startContent)!=tinyMCE.trim(this.getBody().innerHTML)&&!this.isNotDirty},_mergeElements:function(scmd,pa,ch,override){var st,stc,className,n;if(scmd=="removeformat"){pa.className="";pa.style.cssText="";ch.className="";ch.style.cssText="";return}st=tinyMCE.parseStyle(tinyMCE.getAttrib(pa,"style"));stc=tinyMCE.parseStyle(tinyMCE.getAttrib(ch,"style"));className=tinyMCE.getAttrib(pa,"class");className=tinyMCE.getAttrib(ch,"class");if(override){for(n in st){if(typeof(st[n])=='function')continue;stc[n]=st[n]}}else{for(n in stc){if(typeof(stc[n])=='function')continue;st[n]=stc[n]}}tinyMCE.setAttrib(pa,"style",tinyMCE.serializeStyle(st));tinyMCE.setAttrib(pa,"class",tinyMCE.trim(className));ch.className="";ch.style.cssText="";ch.removeAttribute("class");ch.removeAttribute("style")},_fixRootBlocks:function(){var rb,b,ne,be,nx,bm;rb=tinyMCE.getParam('forced_root_block');if(!rb)return;b=this.getBody();ne=b.firstChild;while(ne){nx=ne.nextSibling;if((ne.nodeType==3&&ne.nodeValue.replace(/\s+/g,'')!='')||(ne.nodeType==1&&!tinyMCE.blockRegExp.test(ne.nodeName))){if(!bm)bm=this.selection.getBookmark();if(!be){be=this.getDoc().createElement(rb);be.appendChild(ne.cloneNode(true));b.replaceChild(be,ne)}else{be.appendChild(ne.cloneNode(true));b.removeChild(ne)}}else be=null;ne=nx}if(bm)this.selection.moveToBookmark(bm)},_fixTrailingNbsp:function(){var s=this.selection,e=s.getFocusElement(),bm,v;if(e&&tinyMCE.blockRegExp.test(e.nodeName)&&e.firstChild){v=e.firstChild.nodeValue;if(v&&v.length>1&&/(^\u00a0|\u00a0$)/.test(v)){e.firstChild.nodeValue=v.replace(/(^\u00a0|\u00a0$)/,'');s.selectNode(e.firstChild,true,false,false);}}},_setUseCSS:function(b){var d=this.getDoc();try{d.execCommand("useCSS",false,!b)}catch(ex){}try{d.execCommand("styleWithCSS",false,b)}catch(ex){}if(!tinyMCE.getParam("table_inline_editing"))try{d.execCommand('enableInlineTableEditing',false,"false")}catch(ex){}if(!tinyMCE.getParam("object_resizing"))try{d.execCommand('enableObjectResizing',false,"false")}catch(ex){}},execCommand:function(command,user_interface,value){var i,x,z,align,img,div,doc=this.getDoc(),win=this.getWin(),focusElm=this.getFocusElement();if(!new RegExp('mceStartTyping|mceEndTyping|mceBeginUndoLevel|mceEndUndoLevel|mceAddUndoLevel','gi').test(command))this.undoBookmark=null;if(!tinyMCE.isIE&&!this.useCSS){this._setUseCSS(false);this.useCSS=true}this.contentDocument=doc;if(!/mceStartTyping|mceEndTyping/.test(command)){if(tinyMCE.execCommandCallback(this,'execcommand_callback','execCommand',this.editorId,this.getBody(),command,user_interface,value))return}if(focusElm&&focusElm.nodeName=="IMG"){align=focusElm.getAttribute('align');img=command=="JustifyCenter"?focusElm.cloneNode(false):focusElm;switch(command){case"JustifyLeft":if(align=='left'){img.setAttribute('align','');img.removeAttribute('align')}else img.setAttribute('align','left');div=focusElm.parentNode;if(div&&div.nodeName=="DIV"&&div.childNodes.length==1&&div.parentNode)div.parentNode.replaceChild(img,div);this.selection.selectNode(img);this.repaint();tinyMCE.triggerNodeChange();return;case"JustifyCenter":img.setAttribute('align','');img.removeAttribute('align');div=tinyMCE.getParentElement(focusElm,"div");if(div&&div.style.textAlign=="center"){if(div.nodeName=="DIV"&&div.childNodes.length==1&&div.parentNode)div.parentNode.replaceChild(img,div)}else{div=this.getDoc().createElement("div");div.style.textAlign='center';div.appendChild(img);focusElm.parentNode.replaceChild(div,focusElm)}this.selection.selectNode(img);this.repaint();tinyMCE.triggerNodeChange();return;case"JustifyRight":if(align=='right'){img.setAttribute('align','');img.removeAttribute('align')}else img.setAttribute('align','right');div=focusElm.parentNode;if(div&&div.nodeName=="DIV"&&div.childNodes.length==1&&div.parentNode)div.parentNode.replaceChild(img,div);this.selection.selectNode(img);this.repaint();tinyMCE.triggerNodeChange();return}}if(tinyMCE.settings.force_br_newlines){var alignValue="";if(doc.selection.type!="Control"){switch(command){case"JustifyLeft":alignValue="left";break;case"JustifyCenter":alignValue="center";break;case"JustifyFull":alignValue="justify";break;case"JustifyRight":alignValue="right";break}if(alignValue!==''){var rng=doc.selection.createRange();if((divElm=tinyMCE.getParentElement(rng.parentElement(),"div"))!=null)divElm.setAttribute("align",alignValue);else if(rng.pasteHTML&&rng.htmlText.length>0)rng.pasteHTML('<div align="'+alignValue+'">'+rng.htmlText+"</div>");tinyMCE.triggerNodeChange();return}}}switch(command){case"mceRepaint":this.repaint();return true;case"JustifyLeft":case"JustifyCenter":case"JustifyFull":case"JustifyRight":var el=tinyMCE.getParentNode(focusElm,function(n){return tinyMCE.getAttrib(n,'align')});if(el){el.setAttribute('align','');el.removeAttribute('align')}else this.getDoc().execCommand(command,user_interface,value);tinyMCE.triggerNodeChange();return true;case"unlink":if(tinyMCE.isGecko&&this.getSel().isCollapsed){focusElm=tinyMCE.getParentElement(focusElm,'A');if(focusElm)this.selection.selectNode(focusElm,false)}this.getDoc().execCommand(command,user_interface,value);tinyMCE.isGecko&&this.getSel().collapseToEnd();tinyMCE.triggerNodeChange();return true;case"InsertUnorderedList":case"InsertOrderedList":this.getDoc().execCommand(command,user_interface,value);tinyMCE.triggerNodeChange();break;case"Strikethrough":this.getDoc().execCommand(command,user_interface,value);tinyMCE.triggerNodeChange();break;case"mceSelectNode":this.selection.selectNode(value);tinyMCE.triggerNodeChange();tinyMCE.selectedNode=value;break;case"FormatBlock":if(value==null||value==''){var elm=tinyMCE.getParentElement(this.getFocusElement(),"p,div,h1,h2,h3,h4,h5,h6,pre,address,blockquote,dt,dl,dd,samp");if(elm)this.execCommand("mceRemoveNode",false,elm)}else{if(!this.cleanup.isValid(value))return true;if(tinyMCE.isGecko&&new RegExp('<(div|blockquote|code|dt|dd|dl|samp)>','gi').test(value))value=value.replace(/[^a-z]/gi,'');if(tinyMCE.isIE&&new RegExp('blockquote|code|samp','gi').test(value)){var b=this.selection.getBookmark();this.getDoc().execCommand("FormatBlock",false,'<p>');tinyMCE.renameElement(tinyMCE.getParentBlockElement(this.getFocusElement()),value);this.selection.moveToBookmark(b)}else this.getDoc().execCommand("FormatBlock",false,value)}tinyMCE.triggerNodeChange();break;case"mceRemoveNode":if(!value)value=tinyMCE.getParentElement(this.getFocusElement());if(tinyMCE.isIE){value.outerHTML=value.innerHTML}else{var rng=value.ownerDocument.createRange();rng.setStartBefore(value);rng.setEndAfter(value);rng.deleteContents();rng.insertNode(rng.createContextualFragment(value.innerHTML))}tinyMCE.triggerNodeChange();break;case"mceSelectNodeDepth":var parentNode=this.getFocusElement();for(i=0;parentNode;i++){if(parentNode.nodeName.toLowerCase()=="body")break;if(parentNode.nodeName.toLowerCase()=="#text"){i--;parentNode=parentNode.parentNode;continue}if(i==value){this.selection.selectNode(parentNode,false);tinyMCE.triggerNodeChange();tinyMCE.selectedNode=parentNode;return}parentNode=parentNode.parentNode}break;case"mceSetStyleInfo":case"SetStyleInfo":var rng=this.getRng();var sel=this.getSel();var scmd=value.command;var sname=value.name;var svalue=value.value==null?'':value.value;var wrapper=value.wrapper?value.wrapper:"span";var parentElm=null;var invalidRe=new RegExp("^BODY|HTML$","g");var invalidParentsRe=tinyMCE.settings.merge_styles_invalid_parents!==''?new RegExp(tinyMCE.settings.merge_styles_invalid_parents,"gi"):null;if(tinyMCE.isIE){if(rng.item)parentElm=rng.item(0);else{var pelm=rng.parentElement();var prng=doc.selection.createRange();prng.moveToElementText(pelm);if(rng.htmlText==prng.htmlText||rng.boundingWidth==0){if(invalidParentsRe==null||!invalidParentsRe.test(pelm.nodeName))parentElm=pelm}}}else{var felm=this.getFocusElement();if(sel.isCollapsed||(new RegExp('td|tr|tbody|table|img','gi').test(felm.nodeName)&&sel.anchorNode==felm.parentNode))parentElm=felm}if(parentElm&&!invalidRe.test(parentElm.nodeName)){if(scmd=="setstyle")tinyMCE.setStyleAttrib(parentElm,sname,svalue);if(scmd=="setattrib")tinyMCE.setAttrib(parentElm,sname,svalue);if(scmd=="removeformat"){parentElm.style.cssText='';tinyMCE.setAttrib(parentElm,'class','')}var ch=tinyMCE.getNodeTree(parentElm,[],1);for(z=0;z<ch.length;z++){if(ch[z]==parentElm)continue;if(scmd=="setstyle")tinyMCE.setStyleAttrib(ch[z],sname,'');if(scmd=="setattrib")tinyMCE.setAttrib(ch[z],sname,'');if(scmd=="removeformat"){ch[z].style.cssText='';tinyMCE.setAttrib(ch[z],'class','')}}}else{this._setUseCSS(false);doc.execCommand("FontName",false,"#mce_temp_font#");var elementArray=tinyMCE.getElementsByAttributeValue(this.getBody(),"font","face","#mce_temp_font#");for(x=0;x<elementArray.length;x++){elm=elementArray[x];if(elm){var spanElm=doc.createElement(wrapper);if(scmd=="setstyle")tinyMCE.setStyleAttrib(spanElm,sname,svalue);if(scmd=="setattrib")tinyMCE.setAttrib(spanElm,sname,svalue);if(scmd=="removeformat"){spanElm.style.cssText='';tinyMCE.setAttrib(spanElm,'class','')}if(elm.hasChildNodes()){for(i=0;i<elm.childNodes.length;i++)spanElm.appendChild(elm.childNodes[i].cloneNode(true))}spanElm.setAttribute("mce_new","true");elm.parentNode.replaceChild(spanElm,elm);var ch=tinyMCE.getNodeTree(spanElm,[],1);for(z=0;z<ch.length;z++){if(ch[z]==spanElm)continue;if(scmd=="setstyle")tinyMCE.setStyleAttrib(ch[z],sname,'');if(scmd=="setattrib")tinyMCE.setAttrib(ch[z],sname,'');if(scmd=="removeformat"){ch[z].style.cssText='';tinyMCE.setAttrib(ch[z],'class','')}}}}}var nodes=doc.getElementsByTagName(wrapper);for(i=nodes.length-1;i>=0;i--){var elm=nodes[i];var isNew=tinyMCE.getAttrib(elm,"mce_new")=="true";elm.removeAttribute("mce_new");if(elm.childNodes&&elm.childNodes.length==1&&elm.childNodes[0].nodeType==1){this._mergeElements(scmd,elm,elm.childNodes[0],isNew);continue}if(elm.parentNode.childNodes.length==1&&!invalidRe.test(elm.nodeName)&&!invalidRe.test(elm.parentNode.nodeName)){if(invalidParentsRe==null||!invalidParentsRe.test(elm.parentNode.nodeName))this._mergeElements(scmd,elm.parentNode,elm,false)}}var nodes=doc.getElementsByTagName(wrapper);for(i=nodes.length-1;i>=0;i--){var elm=nodes[i],isEmpty=true;var tmp=doc.createElement("body");tmp.appendChild(elm.cloneNode(false));tmp.innerHTML=tmp.innerHTML.replace(new RegExp('style=""|class=""','gi'),'');if(new RegExp('<span>','gi').test(tmp.innerHTML)){for(x=0;x<elm.childNodes.length;x++){if(elm.parentNode!=null)elm.parentNode.insertBefore(elm.childNodes[x].cloneNode(true),elm)}elm.parentNode.removeChild(elm)}}if(scmd=="removeformat")tinyMCE.handleVisualAid(this.getBody(),true,this.visualAid,this);tinyMCE.triggerNodeChange();break;case"FontName":if(value==null){var s=this.getSel();if(tinyMCE.isGecko&&s.isCollapsed){var f=tinyMCE.getParentElement(this.getFocusElement(),"font");if(f!=null)this.selection.selectNode(f,false)}this.getDoc().execCommand("RemoveFormat",false,null);if(f!=null&&tinyMCE.isGecko){var r=this.getRng().cloneRange();r.collapse(true);s.removeAllRanges();s.addRange(r)}}else this.getDoc().execCommand('FontName',false,value);if(tinyMCE.isGecko)window.setTimeout('tinyMCE.triggerNodeChange(false);',1);return;case"FontSize":this.getDoc().execCommand('FontSize',false,value);if(tinyMCE.isGecko)window.setTimeout('tinyMCE.triggerNodeChange(false);',1);return;case"forecolor":value=value==null?this.foreColor:value;value=tinyMCE.trim(value);value=value.charAt(0)!='#'?(isNaN('0x'+value)?value:'#'+value):value;this.foreColor=value;this.getDoc().execCommand('forecolor',false,value);break;case"HiliteColor":value=value==null?this.backColor:value;value=tinyMCE.trim(value);value=value.charAt(0)!='#'?(isNaN('0x'+value)?value:'#'+value):value;this.backColor=value;if(tinyMCE.isGecko||tinyMCE.isOpera){this._setUseCSS(true);this.getDoc().execCommand('hilitecolor',false,value);this._setUseCSS(false)}else this.getDoc().execCommand('BackColor',false,value);break;case"Cut":case"Copy":case"Paste":var cmdFailed=false;eval('try {this.getDoc().execCommand(command, user_interface, value);} catch (e) {cmdFailed = true;}');if(tinyMCE.isOpera&&cmdFailed)alert('Currently not supported by your browser, use keyboard shortcuts instead.');if(tinyMCE.isGecko&&cmdFailed){if(confirm(tinyMCE.entityDecode(tinyMCE.getLang('lang_clipboard_msg'))))window.open('http://www.mozilla.org/editor/midasdemo/securityprefs.html','mceExternal');return}else tinyMCE.triggerNodeChange();break;case"mceSetContent":if(!value)value="";value=tinyMCE.storeAwayURLs(value);value=tinyMCE._customCleanup(this,"insert_to_editor",value);if(this.getBody().nodeName=='BODY')tinyMCE._setHTML(doc,value);else this.getBody().innerHTML=value;tinyMCE.setInnerHTML(this.getBody(),tinyMCE._cleanupHTML(this,doc,this.settings,this.getBody(),false,false,false,true));tinyMCE.convertAllRelativeURLs(this.getBody());tinyMCE._removeInternal(this.getBody());if(tinyMCE.getParam("convert_fonts_to_spans"))tinyMCE.convertSpansToFonts(doc);tinyMCE.handleVisualAid(this.getBody(),true,this.visualAid,this);tinyMCE._setEventsEnabled(this.getBody(),false);this._addBogusBR();return true;case"mceCleanup":var b=this.selection.getBookmark();tinyMCE._setHTML(this.contentDocument,this.getBody().innerHTML);tinyMCE.setInnerHTML(this.getBody(),tinyMCE._cleanupHTML(this,this.contentDocument,this.settings,this.getBody(),this.visualAid));tinyMCE.convertAllRelativeURLs(doc.body);if(tinyMCE.getParam("convert_fonts_to_spans"))tinyMCE.convertSpansToFonts(doc);tinyMCE.handleVisualAid(this.getBody(),true,this.visualAid,this);tinyMCE._setEventsEnabled(this.getBody(),false);this._addBogusBR();this.repaint();this.selection.moveToBookmark(b);tinyMCE.triggerNodeChange();break;case"mceReplaceContent":if(!value)value='';this.getWin().focus();var selectedText="";if(tinyMCE.isIE){var rng=doc.selection.createRange();selectedText=rng.text}else selectedText=this.getSel().toString();if(selectedText.length>0){value=tinyMCE.replaceVar(value,"selection",selectedText);tinyMCE.execCommand('mceInsertContent',false,value)}this._addBogusBR();tinyMCE.triggerNodeChange();break;case"mceSetAttribute":if(typeof(value)=='object'){var targetElms=(typeof(value.targets)=="undefined")?"p,img,span,div,td,h1,h2,h3,h4,h5,h6,pre,address":value.targets;var targetNode=tinyMCE.getParentElement(this.getFocusElement(),targetElms);if(targetNode){targetNode.setAttribute(value.name,value.value);tinyMCE.triggerNodeChange()}}break;case"mceSetCSSClass":this.execCommand("mceSetStyleInfo",false,{command:"setattrib",name:"class",value:value});break;case"mceInsertRawHTML":var key='tiny_mce_marker';this.execCommand('mceBeginUndoLevel');this.execCommand('mceInsertContent',false,key);var scrollX=this.getBody().scrollLeft+this.getDoc().documentElement.scrollLeft;var scrollY=this.getBody().scrollTop+this.getDoc().documentElement.scrollTop;var html=this.getBody().innerHTML;if((pos=html.indexOf(key))!=-1)tinyMCE.setInnerHTML(this.getBody(),html.substring(0,pos)+value+html.substring(pos+key.length));this.contentWindow.scrollTo(scrollX,scrollY);this.execCommand('mceEndUndoLevel');break;case"mceInsertContent":if(!value)value='';var insertHTMLFailed=false;if(tinyMCE.isGecko||tinyMCE.isOpera){try{if(value.indexOf('<')==-1&&!value.match(/(&#38;|&#160;|&#60;|&#62;)/g)){var r=this.getRng();var n=this.getDoc().createTextNode(tinyMCE.entityDecode(value));var s=this.getSel();var r2=r.cloneRange();s.removeAllRanges();r.deleteContents();r.insertNode(n);r2.selectNode(n);r2.collapse(false);s.removeAllRanges();s.addRange(r2)}else{value=tinyMCE.fixGeckoBaseHREFBug(1,this.getDoc(),value);this.getDoc().execCommand('inserthtml',false,value);tinyMCE.fixGeckoBaseHREFBug(2,this.getDoc(),value)}}catch(ex){insertHTMLFailed=true}if(!insertHTMLFailed){tinyMCE.triggerNodeChange();return}}if(!tinyMCE.isIE){var isHTML=value.indexOf('<')!=-1;var sel=this.getSel();var rng=this.getRng();if(isHTML){if(tinyMCE.isSafari){var tmpRng=this.getDoc().createRange();tmpRng.setStart(this.getBody(),0);tmpRng.setEnd(this.getBody(),0);value=tmpRng.createContextualFragment(value)}else value=rng.createContextualFragment(value)}else{value=doc.createTextNode(tinyMCE.entityDecode(value))}if(tinyMCE.isSafari&&!isHTML){this.execCommand('InsertText',false,value.nodeValue);tinyMCE.triggerNodeChange();return true}else if(tinyMCE.isSafari&&isHTML){rng.deleteContents();rng.insertNode(value);tinyMCE.triggerNodeChange();return true}rng.deleteContents();if(rng.startContainer.nodeType==3){var node=rng.startContainer.splitText(rng.startOffset);node.parentNode.insertBefore(value,node)}else rng.insertNode(value);if(!isHTML){sel.selectAllChildren(doc.body);sel.removeAllRanges();var rng=doc.createRange();rng.selectNode(value);rng.collapse(false);sel.addRange(rng)}else rng.collapse(false);tinyMCE.fixGeckoBaseHREFBug(2,this.getDoc(),value)}else{var rng=doc.selection.createRange(),tmpRng=null;var c=value.indexOf('<!--')!=-1;if(c)value=tinyMCE.uniqueTag+value;if(rng.item)rng.item(0).outerHTML=value;else rng.pasteHTML(value);if(c){var e=this.getDoc().getElementById('mceTMPElement');e.parentNode.removeChild(e)}}tinyMCE.execCommand("mceAddUndoLevel");tinyMCE.triggerNodeChange();break;case"mceStartTyping":if(tinyMCE.settings.custom_undo_redo&&this.undoRedo.typingUndoIndex==-1){this.undoRedo.typingUndoIndex=this.undoRedo.undoIndex;tinyMCE.typingUndoIndex=tinyMCE.undoIndex;this.execCommand('mceAddUndoLevel')}break;case"mceEndTyping":if(tinyMCE.settings.custom_undo_redo&&this.undoRedo.typingUndoIndex!=-1){this.execCommand('mceAddUndoLevel');this.undoRedo.typingUndoIndex=-1}tinyMCE.typingUndoIndex=-1;break;case"mceBeginUndoLevel":this.undoRedoLevel=false;break;case"mceEndUndoLevel":this.undoRedoLevel=true;this.execCommand('mceAddUndoLevel');break;case"mceAddUndoLevel":if(tinyMCE.settings.custom_undo_redo&&this.undoRedoLevel){if(this.undoRedo.add())tinyMCE.triggerNodeChange(false)}break;case"Undo":if(tinyMCE.settings.custom_undo_redo){tinyMCE.execCommand("mceEndTyping");this.undoRedo.undo();tinyMCE.triggerNodeChange()}else this.getDoc().execCommand(command,user_interface,value);break;case"Redo":if(tinyMCE.settings.custom_undo_redo){tinyMCE.execCommand("mceEndTyping");this.undoRedo.redo();tinyMCE.triggerNodeChange()}else this.getDoc().execCommand(command,user_interface,value);break;case"mceToggleVisualAid":this.visualAid=!this.visualAid;tinyMCE.handleVisualAid(this.getBody(),true,this.visualAid,this);tinyMCE.triggerNodeChange();break;case"Indent":this.getDoc().execCommand(command,user_interface,value);tinyMCE.triggerNodeChange();if(tinyMCE.isIE){var n=tinyMCE.getParentElement(this.getFocusElement(),"blockquote");do{if(n&&n.nodeName=="BLOCKQUOTE"){n.removeAttribute("dir");n.removeAttribute("style")}}while(n!=null&&(n=n.parentNode)!=null)}break;case"RemoveFormat":case"removeformat":var text=this.selection.getSelectedText();if(tinyMCE.isOpera){this.getDoc().execCommand("RemoveFormat",false,null);return}if(tinyMCE.isIE){try{var rng=doc.selection.createRange();rng.execCommand("RemoveFormat",false,null)}catch(e){}this.execCommand("mceSetStyleInfo",false,{command:"removeformat"})}else{this.getDoc().execCommand(command,user_interface,value);this.execCommand("mceSetStyleInfo",false,{command:"removeformat"})}if(text.length==0)this.execCommand("mceSetCSSClass",false,"");tinyMCE.triggerNodeChange();break;default:this.getDoc().execCommand(command,user_interface,value);if(tinyMCE.isGecko)window.setTimeout('tinyMCE.triggerNodeChange(false);',1);else tinyMCE.triggerNodeChange()}if(command!="mceAddUndoLevel"&&command!="Undo"&&command!="Redo"&&command!="mceStartTyping"&&command!="mceEndTyping")tinyMCE.execCommand("mceAddUndoLevel")},queryCommandValue:function(c){try{return this.getDoc().queryCommandValue(c)}catch(e){return null}},queryCommandState:function(c){return this.getDoc().queryCommandState(c)},_addBogusBR:function(){var b=this.getBody();if(tinyMCE.isGecko&&!b.hasChildNodes())b.innerHTML='<br _moz_editor_bogus_node="TRUE" />'},_onAdd:function(replace_element,form_element_name,target_document){var hc,th,tos,editorTemplate,targetDoc,deltaWidth,deltaHeight,html,rng,fragment;var dynamicIFrame,tElm,doc,parentElm;th=this.settings.theme;tos=tinyMCE.themes[th];targetDoc=target_document?target_document:document;this.targetDoc=targetDoc;tinyMCE.themeURL=tinyMCE.baseURL+"/themes/"+this.settings.theme;this.settings.themeurl=tinyMCE.themeURL;if(!replace_element){alert("Error: Could not find the target element.");return false}if(tos.getEditorTemplate)editorTemplate=tos.getEditorTemplate(this.settings,this.editorId);deltaWidth=editorTemplate.delta_width?editorTemplate.delta_width:0;deltaHeight=editorTemplate.delta_height?editorTemplate.delta_height:0;html='<span id="'+this.editorId+'_parent" class="mceEditorContainer">'+editorTemplate.html;html=tinyMCE.replaceVar(html,"editor_id",this.editorId);if(!this.settings.default_document)this.settings.default_document=tinyMCE.baseURL+"/blank.htm";this.settings.old_width=this.settings.width;this.settings.old_height=this.settings.height;if(this.settings.width==-1)this.settings.width=replace_element.offsetWidth;if(this.settings.height==-1)this.settings.height=replace_element.offsetHeight;if(this.settings.width==0)this.settings.width=replace_element.style.width;if(this.settings.height==0)this.settings.height=replace_element.style.height;if(this.settings.width==0)this.settings.width=320;if(this.settings.height==0)this.settings.height=240;this.settings.area_width=parseInt(this.settings.width);this.settings.area_height=parseInt(this.settings.height);this.settings.area_width+=deltaWidth;this.settings.area_height+=deltaHeight;this.settings.width_style=""+this.settings.width;this.settings.height_style=""+this.settings.height;if((""+this.settings.width).indexOf('%')!=-1)this.settings.area_width="100%";else this.settings.width_style+='px';if((""+this.settings.height).indexOf('%')!=-1)this.settings.area_height="100%";else this.settings.height_style+='px';if((""+replace_element.style.width).indexOf('%')!=-1){this.settings.width=replace_element.style.width;this.settings.area_width="100%";this.settings.width_style="100%"}if((""+replace_element.style.height).indexOf('%')!=-1){this.settings.height=replace_element.style.height;this.settings.area_height="100%";this.settings.height_style="100%"}html=tinyMCE.applyTemplate(html);this.settings.width=this.settings.old_width;this.settings.height=this.settings.old_height;this.visualAid=this.settings.visual;this.formTargetElementId=form_element_name;if(replace_element.nodeName=="TEXTAREA"||replace_element.nodeName=="INPUT")this.startContent=replace_element.value;else this.startContent=replace_element.innerHTML;if(replace_element.nodeName!="TEXTAREA"&&replace_element.nodeName!="INPUT"){this.oldTargetElement=replace_element;hc='<input type="hidden" id="'+form_element_name+'" name="'+form_element_name+'" />';this.oldTargetDisplay=tinyMCE.getStyle(this.oldTargetElement,'display','inline');this.oldTargetElement.style.display="none";html+='</span>';if(tinyMCE.isGecko)html=hc+html;else html+=hc;if(tinyMCE.isGecko){rng=replace_element.ownerDocument.createRange();rng.setStartBefore(replace_element);fragment=rng.createContextualFragment(html);tinyMCE.insertAfter(fragment,replace_element)}else replace_element.insertAdjacentHTML("beforeBegin",html)}else{html+='</span>';this.oldTargetElement=replace_element;this.oldTargetDisplay=tinyMCE.getStyle(this.oldTargetElement,'display','inline');this.oldTargetElement.style.display="none";if(tinyMCE.isGecko){rng=replace_element.ownerDocument.createRange();rng.setStartBefore(replace_element);fragment=rng.createContextualFragment(html);tinyMCE.insertAfter(fragment,replace_element)}else replace_element.insertAdjacentHTML("beforeBegin",html)}dynamicIFrame=false;tElm=targetDoc.getElementById(this.editorId);if(!tinyMCE.isIE){if(tElm&&(tElm.nodeName=="SPAN"||tElm.nodeName=="span")){tElm=tinyMCE._createIFrame(tElm,targetDoc);dynamicIFrame=true}this.targetElement=tElm;this.iframeElement=tElm;this.contentDocument=tElm.contentDocument;this.contentWindow=tElm.contentWindow;}else{if(tElm&&tElm.nodeName=="SPAN")tElm=tinyMCE._createIFrame(tElm,targetDoc,targetDoc.parentWindow);else tElm=targetDoc.frames[this.editorId];this.targetElement=tElm;this.iframeElement=targetDoc.getElementById(this.editorId);if(tinyMCE.isOpera){this.contentDocument=this.iframeElement.contentDocument;this.contentWindow=this.iframeElement.contentWindow;dynamicIFrame=true}else{this.contentDocument=tElm.window.document;this.contentWindow=tElm.window}this.getDoc().designMode="on"}doc=this.contentDocument;if(dynamicIFrame){html=tinyMCE.getParam('doctype')+'<html><head xmlns="http://www.w3.org/1999/xhtml"><base href="'+tinyMCE.settings.base_href+'" /><title>blank_page</title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body class="mceContentBody"></body></html>';try{if(!this.isHidden())this.getDoc().designMode="on";doc.open();doc.write(html);doc.close()}catch(e){this.getDoc().location.href=tinyMCE.baseURL+"/blank.htm"}}if(tinyMCE.isIE)window.setTimeout("tinyMCE.addEventHandlers(tinyMCE.instances[\""+this.editorId+"\"]);",1);parentElm=this.targetDoc.getElementById(this.editorId+'_parent');this.formElement=tinyMCE.isGecko?parentElm.previousSibling:parentElm.nextSibling;tinyMCE.setupContent(this.editorId,true);return true},setBaseHREF:function(u){var h,b,d,nl;d=this.getDoc();nl=d.getElementsByTagName("base");b=nl.length>0?nl[0]:null;if(!b){nl=d.getElementsByTagName("head");h=nl.length>0?nl[0]:null;b=d.createElement("base");b.setAttribute('href',u);h.appendChild(b)}else{if(u==''||u==null)b.parentNode.removeChild(b);else b.setAttribute('href',u)}},getHTML:function(r){var h,d=this.getDoc(),b=this.getBody();if(r)return b.innerHTML;h=tinyMCE._cleanupHTML(this,d,this.settings,b,false,true,false,true);if(tinyMCE.getParam("convert_fonts_to_spans"))tinyMCE.convertSpansToFonts(d);return h},setHTML:function(h){this.execCommand('mceSetContent',false,h);this.repaint()},getFocusElement:function(){return this.selection.getFocusElement()},getSel:function(){return this.selection.getSel()},getRng:function(){return this.selection.getRng()},triggerSave:function(skip_cleanup,skip_callback){var e,nl=[],i,s,content,htm;if(!this.enabled)return;this.switchSettings();s=tinyMCE.settings;if(tinyMCE.isRealIE){e=this.iframeElement;do{if(e.style&&e.style.display=='none'){e.style.display='block';nl[nl.length]={elm:e,type:'style'}}if(e.style&&s.hidden_tab_class.length>0&&e.className.indexOf(s.hidden_tab_class)!=-1){e.className=s.display_tab_class;nl[nl.length]={elm:e,type:'class'}}}while((e=e.parentNode)!=null)}tinyMCE.settings.preformatted=false;if(typeof(skip_cleanup)=="undefined")skip_cleanup=false;if(typeof(skip_callback)=="undefined")skip_callback=false;tinyMCE._setHTML(this.getDoc(),this.getBody().innerHTML);if(this.settings.cleanup==false){tinyMCE.handleVisualAid(this.getBody(),true,false,this);tinyMCE._setEventsEnabled(this.getBody(),true)}tinyMCE._customCleanup(this,"submit_content_dom",this.contentWindow.document.body);htm=skip_cleanup?this.getBody().innerHTML:tinyMCE._cleanupHTML(this,this.getDoc(),this.settings,this.getBody(),tinyMCE.visualAid,true,true);htm=tinyMCE._customCleanup(this,"submit_content",htm);if(!skip_callback&&tinyMCE.settings.save_callback!=='')content=tinyMCE.resolveDots(tinyMCE.settings.save_callback,window)(this.formTargetElementId,htm,this.getBody());if((typeof(content)!="undefined")&&content!=null)htm=content;htm=tinyMCE.regexpReplace(htm,"&#40;","(","gi");htm=tinyMCE.regexpReplace(htm,"&#41;",")","gi");htm=tinyMCE.regexpReplace(htm,"&#59;",";","gi");htm=tinyMCE.regexpReplace(htm,"&#34;","&quot;","gi");htm=tinyMCE.regexpReplace(htm,"&#94;","^","gi");if(this.formElement)this.formElement.value=htm;if(tinyMCE.isSafari&&this.formElement)this.formElement.innerText=htm;for(i=0;i<nl.length;i++){if(nl[i].type=='style')nl[i].elm.style.display='none';else nl[i].elm.className=s.hidden_tab_class}}};tinyMCE.add(TinyMCE_Engine,{cleanupHTMLCode:function(s){s=s.replace(new RegExp('<p \\/>','gi'),'<p>&nbsp;</p>');s=s.replace(new RegExp('<p>\\s*<\\/p>','gi'),'<p>&nbsp;</p>');s=s.replace(new RegExp('<br>\\s*<\\/br>','gi'),'<br />');s=s.replace(new RegExp('<(h[1-6]|p|div|address|pre|form|table|li|ol|ul|td|b|font|em|strong|i|strike|u|span|a|ul|ol|li|blockquote)([a-z]*)([^\\\\|>]*)\\/>','gi'),'<$1$2$3></$1$2>');s=s.replace(new RegExp('\\s+></','gi'),'></');s=s.replace(new RegExp('<(img|br|hr)([^>]*)><\\/(img|br|hr)>','gi'),'<$1$2 />');if(tinyMCE.isIE)s=s.replace(new RegExp('<p><hr \\/><\\/p>','gi'),"<hr>");if(tinyMCE.isIE)s=s.replace(/<!(\s*)\/>/g,'');return s},parseStyle:function(str){var ar=[],st,i,re,pa;if(str==null)return ar;st=str.split(';');tinyMCE.clearArray(ar);for(i=0;i<st.length;i++){if(st[i]=='')continue;re=new RegExp('^\\s*([^:]*):\\s*(.*)\\s*$');pa=st[i].replace(re,'$1||$2').split('||');if(pa.length==2)ar[pa[0].toLowerCase()]=pa[1]}return ar},compressStyle:function(ar,pr,sf,res){var box=[],i,a;box[0]=ar[pr+'-top'+sf];box[1]=ar[pr+'-left'+sf];box[2]=ar[pr+'-right'+sf];box[3]=ar[pr+'-bottom'+sf];for(i=0;i<box.length;i++){if(box[i]==null)return;if(i&&box[i]!=box[i-1])return}ar[res]=box[0];ar[pr+'-top'+sf]=null;ar[pr+'-left'+sf]=null;ar[pr+'-right'+sf]=null;ar[pr+'-bottom'+sf]=null},serializeStyle:function(ar){var str="",key,val,m;tinyMCE.compressStyle(ar,"border","","border");tinyMCE.compressStyle(ar,"border","-width","border-width");tinyMCE.compressStyle(ar,"border","-color","border-color");tinyMCE.compressStyle(ar,"border","-style","border-style");tinyMCE.compressStyle(ar,"padding","","padding");tinyMCE.compressStyle(ar,"margin","","margin");for(key in ar){val=ar[key];if(typeof(val)=='function')continue;if(key.indexOf('mso-')==0)continue;if(val!=null&&val!==''){val=''+val;val=val.replace(new RegExp("url\\(\\'?([^\\']*)\\'?\\)",'gi'),"url('$1')");if(val.indexOf('url(')!=-1&&tinyMCE.getParam('convert_urls')){m=new RegExp("url\\('(.*?)'\\)").exec(val);if(m.length>1)val="url('"+eval(tinyMCE.getParam('urlconverter_callback')+"(m[1], null, true);")+"')"}if(tinyMCE.getParam("force_hex_style_colors"))val=tinyMCE.convertRGBToHex(val,true);val=val.replace(/\"/g,'\'');if(val!="url('')")str+=key.toLowerCase()+": "+val+"; "}}if(new RegExp('; $').test(str))str=str.substring(0,str.length-2);return str},convertRGBToHex:function(s,k){var re,rgb;if(s.toLowerCase().indexOf('rgb')!=-1){re=new RegExp("(.*?)rgb\\s*?\\(\\s*?([0-9]+).*?,\\s*?([0-9]+).*?,\\s*?([0-9]+).*?\\)(.*?)","gi");rgb=s.replace(re,"$1,$2,$3,$4,$5").split(',');if(rgb.length==5){r=parseInt(rgb[1]).toString(16);g=parseInt(rgb[2]).toString(16);b=parseInt(rgb[3]).toString(16);r=r.length==1?'0'+r:r;g=g.length==1?'0'+g:g;b=b.length==1?'0'+b:b;s="#"+r+g+b;if(k)s=rgb[0]+s+rgb[4]}}return s},convertHexToRGB:function(s){if(s.indexOf('#')!=-1){s=s.replace(new RegExp('[^0-9A-F]','gi'),'');return"rgb("+parseInt(s.substring(0,2),16)+","+parseInt(s.substring(2,4),16)+","+parseInt(s.substring(4,6),16)+")"}return s},convertSpansToFonts:function(doc){var s,i,size,fSize,x,fFace,fColor,sizes=tinyMCE.getParam('font_size_style_values').replace(/\s+/,'').split(',');s=tinyMCE.selectElements(doc,'span,font');for(i=0;i<s.length;i++){size=tinyMCE.trim(s[i].style.fontSize).toLowerCase();fSize=0;for(x=0;x<sizes.length;x++){if(sizes[x]==size){fSize=x+1;break}}if(fSize>0){tinyMCE.setAttrib(s[i],'size',fSize);s[i].style.fontSize=''}fFace=s[i].style.fontFamily;if(fFace!=null&&fFace!==''){tinyMCE.setAttrib(s[i],'face',fFace);s[i].style.fontFamily=''}fColor=s[i].style.color;if(fColor!=null&&fColor!==''){tinyMCE.setAttrib(s[i],'color',tinyMCE.convertRGBToHex(fColor));s[i].style.color=''}}},convertFontsToSpans:function(doc){var fsClasses,s,i,fSize,fFace,fColor,sizes=tinyMCE.getParam('font_size_style_values').replace(/\s+/,'').split(',');fsClasses=tinyMCE.getParam('font_size_classes');if(fsClasses!=='')fsClasses=fsClasses.replace(/\s+/,'').split(',');else fsClasses=null;s=tinyMCE.selectElements(doc,'span,font');for(i=0;i<s.length;i++){fSize=tinyMCE.getAttrib(s[i],'size');fFace=tinyMCE.getAttrib(s[i],'face');fColor=tinyMCE.getAttrib(s[i],'color');if(fSize!==''){fSize=parseInt(fSize);if(fSize>0&&fSize<8){if(fsClasses!=null)tinyMCE.setAttrib(s[i],'class',fsClasses[fSize-1]);else s[i].style.fontSize=sizes[fSize-1]}s[i].removeAttribute('size')}if(fFace!==''){s[i].style.fontFamily=fFace;s[i].removeAttribute('face')}if(fColor!==''){s[i].style.color=fColor;s[i].removeAttribute('color')}}},cleanupAnchors:function(doc){var i,cn,x,an=doc.getElementsByTagName("a");for(i=an.length-1;i>=0;i--){if(tinyMCE.getAttrib(an[i],"name")!==''&&tinyMCE.getAttrib(an[i],"href")==''){cn=an[i].childNodes;for(x=cn.length-1;x>=0;x--)tinyMCE.insertAfter(cn[x],an[i])}}},getContent:function(editor_id){if(typeof(editor_id)!="undefined")tinyMCE.getInstanceById(editor_id).select();if(tinyMCE.selectedInstance)return tinyMCE.selectedInstance.getHTML();return null},_fixListElements:function(d){var nl,x,a=['ol','ul'],i,n,p,r=new RegExp('^(OL|UL)$'),np;for(x=0;x<a.length;x++){nl=d.getElementsByTagName(a[x]);for(i=0;i<nl.length;i++){n=nl[i];p=n.parentNode;if(r.test(p.nodeName)){np=tinyMCE.prevNode(n,'LI');if(!np){np=d.createElement('li');np.innerHTML='&nbsp;';np.appendChild(n);p.insertBefore(np,p.firstChild)}else np.appendChild(n)}}}},_fixTables:function(d){var nl,i,n,p,np,x,t;nl=d.getElementsByTagName('table');for(i=0;i<nl.length;i++){n=nl[i];if((p=tinyMCE.getParentElement(n,'p,h1,h2,h3,h4,h5,h6'))!=null){np=p.cloneNode(false);np.removeAttribute('id');t=n;while((n=n.nextSibling))np.appendChild(n);tinyMCE.insertAfter(np,p);tinyMCE.insertAfter(t,p)}}},_cleanupHTML:function(inst,doc,config,elm,visual,on_save,on_submit,inn){var h,d,t1,t2,t3,t4,t5,c,s,nb;if(!tinyMCE.getParam('cleanup'))return elm.innerHTML;on_save=typeof(on_save)=='undefined'?false:on_save;c=inst.cleanup;s=inst.settings;d=c.settings.debug;if(d)t1=new Date().getTime();inst._fixRootBlocks();if(tinyMCE.getParam("convert_fonts_to_spans"))tinyMCE.convertFontsToSpans(doc);if(tinyMCE.getParam("fix_list_elements"))tinyMCE._fixListElements(doc);if(tinyMCE.getParam("fix_table_elements"))tinyMCE._fixTables(doc);tinyMCE._customCleanup(inst,on_save?"get_from_editor_dom":"insert_to_editor_dom",doc.body);if(d)t2=new Date().getTime();c.settings.on_save=on_save;c.idCount=0;c.serializationId++;c.serializedNodes=[];c.sourceIndex=-1;if(s.cleanup_serializer=="xml")h=c.serializeNodeAsXML(elm,inn);else h=c.serializeNodeAsHTML(elm,inn);if(d)t3=new Date().getTime();nb=tinyMCE.getParam('entity_encoding')=='numeric'?'&#160;':'&nbsp;';h=h.replace(/<\/?(body|head|html)[^>]*>/gi,'');h=h.replace(new RegExp(' (rowspan="1"|colspan="1")','g'),'');h=h.replace(/<p><hr \/><\/p>/g,'<hr />');h=h.replace(/<p>(&nbsp;|&#160;)<\/p><hr \/><p>(&nbsp;|&#160;)<\/p>/g,'<hr />');h=h.replace(/<td>\s*<br \/>\s*<\/td>/g,'<td>'+nb+'</td>');h=h.replace(/<p>\s*<br \/>\s*<\/p>/g,'<p>'+nb+'</p>');h=h.replace(/<br \/>$/,'');h=h.replace(/<br \/><\/p>/g,'</p>');h=h.replace(/<p>\s*(&nbsp;|&#160;)\s*<br \/>\s*(&nbsp;|&#160;)\s*<\/p>/g,'<p>'+nb+'</p>');h=h.replace(/<p>\s*(&nbsp;|&#160;)\s*<br \/>\s*<\/p>/g,'<p>'+nb+'</p>');h=h.replace(/<p>\s*<br \/>\s*&nbsp;\s*<\/p>/g,'<p>'+nb+'</p>');h=h.replace(new RegExp('<a>(.*?)<\\/a>','g'),'$1');h=h.replace(/<p([^>]*)>\s*<\/p>/g,'<p$1>'+nb+'</p>');if(/^\s*(<br \/>|<p>&nbsp;<\/p>|<p>&#160;<\/p>|<p><\/p>)\s*$/.test(h))h='';if(s.preformatted){h=h.replace(/^<pre>/,'');h=h.replace(/<\/pre>$/,'');h='<pre>'+h+'</pre>'}if(tinyMCE.isGecko){h=h.replace(/<br \/>\s*<\/li>/g,'</li>');h=h.replace(/&nbsp;\s*<\/(dd|dt)>/g,'</$1>');h=h.replace(/<o:p _moz-userdefined="" \/>/g,'');h=h.replace(/<td([^>]*)>\s*<br \/>\s*<\/td>/g,'<td$1>'+nb+'</td>')}if(s.force_br_newlines)h=h.replace(/<p>(&nbsp;|&#160;)<\/p>/g,'<br />');h=tinyMCE._customCleanup(inst,on_save?"get_from_editor":"insert_to_editor",h);if(on_save){h=h.replace(new RegExp(' ?(mceItem[a-zA-Z0-9]*|'+s.visual_table_class+')','g'),'');h=h.replace(new RegExp(' ?class=""','g'),'')}if(s.remove_linebreaks&&!c.settings.indent)h=h.replace(/\n|\r/g,' ');if(d)t4=new Date().getTime();if(on_save&&c.settings.indent)h=c.formatHTML(h);if(on_submit&&(s.encoding=="xml"||s.encoding=="html"))h=c.xmlEncode(h);if(d)t5=new Date().getTime();if(c.settings.debug)tinyMCE.debug("Cleanup in ms: Pre="+(t2-t1)+", Serialize: "+(t3-t2)+", Post: "+(t4-t3)+", Format: "+(t5-t4)+", Sum: "+(t5-t1)+".");return h}});function TinyMCE_Cleanup(){this.isIE=(navigator.appName=="Microsoft Internet Explorer");this.rules=tinyMCE.clearArray([]);this.settings={indent_elements:'head,table,tbody,thead,tfoot,form,tr,ul,ol,blockquote,object',newline_before_elements:'h1,h2,h3,h4,h5,h6,pre,address,div,ul,ol,li,meta,option,area,title,link,base,script,td',newline_after_elements:'br,hr,p,pre,address,div,ul,ol,meta,option,area,link,base,script',newline_before_after_elements:'html,head,body,table,thead,tbody,tfoot,tr,form,ul,ol,blockquote,p,object,param,hr,div',indent_char:'\t',indent_levels:1,entity_encoding:'raw',valid_elements:'*[*]',entities:'',url_converter:'',invalid_elements:'',verify_html:false};this.vElements=tinyMCE.clearArray([]);this.vElementsRe='';this.closeElementsRe=/^(IMG|BR|HR|LINK|META|BASE|INPUT|AREA)$/;this.codeElementsRe=/^(SCRIPT|STYLE)$/;this.serializationId=0;this.mceAttribs={href:'mce_href',src:'mce_src',type:'mce_type'}}TinyMCE_Cleanup.prototype={init:function(s){var n,a,i,ir,or,st;for(n in s)this.settings[n]=s[n];s=this.settings;this.inRe=this._arrayToRe(s.indent_elements.split(','),'','^<(',')[^>]*');this.ouRe=this._arrayToRe(s.indent_elements.split(','),'','^<\\/(',')[^>]*');this.nlBeforeRe=this._arrayToRe(s.newline_before_elements.split(','),'gi','<(',')([^>]*)>');this.nlAfterRe=this._arrayToRe(s.newline_after_elements.split(','),'gi','<(',')([^>]*)>');this.nlBeforeAfterRe=this._arrayToRe(s.newline_before_after_elements.split(','),'gi','<(\\/?)(',')([^>]*)>');this.serializedNodes=[];this.serializationId=0;if(s.invalid_elements!=='')this.iveRe=this._arrayToRe(s.invalid_elements.toUpperCase().split(','),'g','^(',')$');else this.iveRe=null;st='';for(i=0;i<s.indent_levels;i++)st+=s.indent_char;this.inStr=st;if(!s.verify_html){s.valid_elements='*[*]';s.extended_valid_elements=''}this.fillStr=s.entity_encoding=="named"?"&nbsp;":"&#160;";this.idCount=0;this.xmlEncodeRe=new RegExp('[\u007F-\uFFFF<>&"]','g')},addRuleStr:function(s){var r=this.parseRuleStr(s),n;for(n in r){if(r[n])this.rules[n]=r[n]}this.vElements=tinyMCE.clearArray([]);for(n in this.rules){if(this.rules[n])this.vElements[this.vElements.length]=this.rules[n].tag}this.vElementsRe=this._arrayToRe(this.vElements,'')},isValid:function(n){if(!this.rulesDone)this._setupRules();if(!n)return true;n=n.replace(/[^a-z0-9]+/gi,'').toUpperCase();return!tinyMCE.getParam('cleanup')||this.vElementsRe.test(n)},addChildRemoveRuleStr:function(s){var x,y,p,i,t,tn,ta,cl,r;if(!s)return;ta=s.split(',');for(x=0;x<ta.length;x++){s=ta[x];p=this.split(/\[|\]/,s);if(p==null||p.length<1)t=s.toUpperCase();else t=p[0].toUpperCase();tn=this.split('/',t);for(y=0;y<tn.length;y++){r="^(";cl=this.split(/\|/,p[1]);for(i=0;i<cl.length;i++){if(cl[i]=='%istrict')r+=tinyMCE.inlineStrict;else if(cl[i]=='%itrans')r+=tinyMCE.inlineTransitional;else if(cl[i]=='%istrict_na')r+=tinyMCE.inlineStrict.substring(2);else if(cl[i]=='%itrans_na')r+=tinyMCE.inlineTransitional.substring(2);else if(cl[i]=='%btrans')r+=tinyMCE.blockElms;else if(cl[i]=='%strict')r+=tinyMCE.blockStrict;else r+=(cl[i].charAt(0)!='#'?cl[i].toUpperCase():cl[i]);r+=(i!=cl.length-1?'|':'')}r+=')$';if(this.childRules==null)this.childRules=tinyMCE.clearArray([]);this.childRules[tn[y]]=new RegExp(r);if(p.length>1)this.childRules[tn[y]].wrapTag=p[2]}}},parseRuleStr:function(s){var ta,p,r,a,i,x,px,t,tn,y,av,or=tinyMCE.clearArray([]),dv;if(s==null||s.length==0)return or;ta=s.split(',');for(x=0;x<ta.length;x++){s=ta[x];if(s.length==0)continue;p=this.split(/\[|\]/,s);if(p==null||p.length<1)t=s.toUpperCase();else t=p[0].toUpperCase();tn=this.split('/',t);for(y=0;y<tn.length;y++){r={};r.tag=tn[y];r.forceAttribs=null;r.defaultAttribs=null;r.validAttribValues=null;px=r.tag.charAt(0);r.forceOpen=px=='+';r.removeEmpty=px=='-';r.fill=px=='#';r.tag=r.tag.replace(/\+|-|#/g,'');r.oTagName=tn[0].replace(/\+|-|#/g,'').toLowerCase();r.isWild=new RegExp('\\*|\\?|\\+','g').test(r.tag);r.validRe=new RegExp(this._wildcardToRe('^'+r.tag+'$'));if(p.length>1){r.vAttribsRe='^(';a=this.split(/\|/,p[1]);for(i=0;i<a.length;i++){t=a[i];if(t.charAt(0)=='!'){a[i]=t=t.substring(1);if(!r.reqAttribsRe)r.reqAttribsRe='\\s+('+t;else r.reqAttribsRe+='|'+t}av=new RegExp('(=|:|<)(.*?)$').exec(t);t=t.replace(new RegExp('(=|:|<).*?$'),'');if(av&&av.length>0){if(av[0].charAt(0)==':'){if(!r.forceAttribs)r.forceAttribs=tinyMCE.clearArray([]);r.forceAttribs[t.toLowerCase()]=av[0].substring(1)}else if(av[0].charAt(0)=='='){if(!r.defaultAttribs)r.defaultAttribs=tinyMCE.clearArray([]);dv=av[0].substring(1);r.defaultAttribs[t.toLowerCase()]=dv==''?"mce_empty":dv}else if(av[0].charAt(0)=='<'){if(!r.validAttribValues)r.validAttribValues=tinyMCE.clearArray([]);r.validAttribValues[t.toLowerCase()]=this._arrayToRe(this.split('?',av[0].substring(1)),'i')}}r.vAttribsRe+=''+t.toLowerCase()+(i!=a.length-1?'|':'');a[i]=t.toLowerCase()}if(r.reqAttribsRe)r.reqAttribsRe=new RegExp(r.reqAttribsRe+')=\"','g');r.vAttribsRe+=')$';r.vAttribsRe=this._wildcardToRe(r.vAttribsRe);r.vAttribsReIsWild=new RegExp('\\*|\\?|\\+','g').test(r.vAttribsRe);r.vAttribsRe=new RegExp(r.vAttribsRe);r.vAttribs=a.reverse();}else{r.vAttribsRe='';r.vAttribs=tinyMCE.clearArray([]);r.vAttribsReIsWild=false}or[r.tag]=r}}return or},serializeNodeAsXML:function(n){var s,b;if(!this.xmlDoc){if(this.isIE){try{this.xmlDoc=new ActiveXObject('MSXML2.DOMDocument')}catch(e){}if(!this.xmlDoc)try{this.xmlDoc=new ActiveXObject('Microsoft.XmlDom')}catch(e){}}else this.xmlDoc=document.implementation.createDocument('','',null);if(!this.xmlDoc)alert("Error XML Parser could not be found.")}if(this.xmlDoc.firstChild)this.xmlDoc.removeChild(this.xmlDoc.firstChild);b=this.xmlDoc.createElement("html");b=this.xmlDoc.appendChild(b);this._convertToXML(n,b);if(this.isIE)return this.xmlDoc.xml;else return new XMLSerializer().serializeToString(this.xmlDoc)},_convertToXML:function(n,xn){var xd,el,i,l,cn,at,no,hc=false;if(tinyMCE.isRealIE&&this._isDuplicate(n))return;xd=this.xmlDoc;switch(n.nodeType){case 1:hc=n.hasChildNodes();el=xd.createElement(n.nodeName.toLowerCase());at=n.attributes;for(i=at.length-1;i>-1;i--){no=at[i];if(no.specified&&no.nodeValue)el.setAttribute(no.nodeName.toLowerCase(),no.nodeValue)}if(!hc&&!this.closeElementsRe.test(n.nodeName))el.appendChild(xd.createTextNode(""));xn=xn.appendChild(el);break;case 3:xn.appendChild(xd.createTextNode(n.nodeValue));return;case 8:xn.appendChild(xd.createComment(n.nodeValue));return}if(hc){cn=n.childNodes;for(i=0,l=cn.length;i<l;i++)this._convertToXML(cn[i],xn)}},serializeNodeAsHTML:function(n,inn){var en,no,h='',i,l,t,st,r,cn,va=false,f=false,at,hc,cr,nn;if(!this.rulesDone)this._setupRules();if(tinyMCE.isRealIE&&this._isDuplicate(n))return'';if(n.parentNode&&this.childRules!=null){cr=this.childRules[n.parentNode.nodeName];if(typeof(cr)!="undefined"&&!cr.test(n.nodeName)){st=true;t=null}}switch(n.nodeType){case 1:hc=n.hasChildNodes();if(st)break;nn=n.nodeName;if(tinyMCE.isRealIE){if(n.nodeName.indexOf('/')!=-1)break;if(n.scopeName&&n.scopeName!='HTML')nn=n.scopeName.toUpperCase()+':'+nn.toUpperCase()}else if(tinyMCE.isOpera&&nn.indexOf(':')>0)nn=nn.toUpperCase();if(this.settings.convert_fonts_to_spans){if(this.settings.on_save&&nn=='FONT')nn='SPAN';if(!this.settings.on_save&&nn=='SPAN')nn='FONT'}if(this.vElementsRe.test(nn)&&(!this.iveRe||!this.iveRe.test(nn))&&!inn){va=true;r=this.rules[nn];if(!r){at=this.rules;for(no in at){if(at[no]&&at[no].validRe.test(nn)){r=at[no];break}}}en=r.isWild?nn.toLowerCase():r.oTagName;f=r.fill;if(r.removeEmpty&&!hc)return"";t='<'+en;if(r.vAttribsReIsWild){at=n.attributes;for(i=at.length-1;i>-1;i--){no=at[i];if(no.specified&&r.vAttribsRe.test(no.nodeName))t+=this._serializeAttribute(n,r,no.nodeName)}}else{for(i=r.vAttribs.length-1;i>-1;i--)t+=this._serializeAttribute(n,r,r.vAttribs[i])}if(!this.settings.on_save){at=this.mceAttribs;for(no in at){if(at[no])t+=this._serializeAttribute(n,r,at[no])}}if(r.reqAttribsRe&&!t.match(r.reqAttribsRe))t=null;if(t!=null&&this.closeElementsRe.test(nn))return t+' />';if(t!=null)h+=t+'>';if(this.isIE&&this.codeElementsRe.test(nn))h+=n.innerHTML}break;case 3:if(st)break;if(n.parentNode&&this.codeElementsRe.test(n.parentNode.nodeName))return this.isIE?'':n.nodeValue;return this.xmlEncode(n.nodeValue);case 8:if(st)break;return"<!--"+this._trimComment(n.nodeValue)+"-->"}if(hc){cn=n.childNodes;for(i=0,l=cn.length;i<l;i++)h+=this.serializeNodeAsHTML(cn[i])}if(f&&!hc)h+=this.fillStr;if(t!=null&&va)h+='</'+en+'>';return h},_serializeAttribute:function(n,r,an){var av='',t,os=this.settings.on_save;if(os&&(an.indexOf('mce_')==0||an.indexOf('_moz')==0))return'';if(os&&this.mceAttribs[an])av=this._getAttrib(n,this.mceAttribs[an]);if(av.length==0)av=this._getAttrib(n,an);if(av.length==0&&r.defaultAttribs&&(t=r.defaultAttribs[an])){av=t;if(av=="mce_empty")return" "+an+'=""'}if(r.forceAttribs&&(t=r.forceAttribs[an]))av=t;if(os&&av.length!=0&&/^(src|href|longdesc)$/.test(an))av=this._urlConverter(this,n,av);if(av.length!=0&&r.validAttribValues&&r.validAttribValues[an]&&!r.validAttribValues[an].test(av))return"";if(av.length!=0&&av=="{$uid}")av="uid_"+(this.idCount++);if(av.length!=0){if(an.indexOf('on')!=0)av=this.xmlEncode(av,1);return" "+an+"="+'"'+av+'"'}return""},formatHTML:function(h){var s=this.settings,p='',i=0,li=0,o='',l;h=h.replace(/<pre([^>]*)>(.*?)<\/pre>/gi,function(a,b,c){c=c.replace(/<br\s*\/>/gi,'\n');return'<pre'+b+'>'+c+'</pre>'});h=h.replace(/\r/g,'');h='\n'+h;h=h.replace(new RegExp('\\n\\s+','gi'),'\n');h=h.replace(this.nlBeforeRe,'\n<$1$2>');h=h.replace(this.nlAfterRe,'<$1$2>\n');h=h.replace(this.nlBeforeAfterRe,'\n<$1$2$3>\n');h+='\n';while((i=h.indexOf('\n',i+1))!=-1){if((l=h.substring(li+1,i)).length!=0){if(this.ouRe.test(l)&&p.length>=s.indent_levels)p=p.substring(s.indent_levels);o+=p+l+'\n';if(this.inRe.test(l))p+=this.inStr}li=i}return o},xmlEncode:function(s){var cl=this,re=this.xmlEncodeRe;if(!this.entitiesDone)this._setupEntities();switch(this.settings.entity_encoding){case"raw":return tinyMCE.xmlEncode(s);case"named":return s.replace(re,function(c){var b=cl.entities[c.charCodeAt(0)];return b?'&'+b+';':c});case"numeric":return s.replace(re,function(c){return'&#'+c.charCodeAt(0)+';'})}return s},split:function(re,s){var i,l,o=[],c=s.split(re);for(i=0,l=c.length;i<l;i++){if(c[i]!=='')o[i]=c[i]}return o},_trimComment:function(s){s=s.replace(new RegExp('\\smce_src=\"[^\"]*\"','gi'),"");s=s.replace(new RegExp('\\smce_href=\"[^\"]*\"','gi'),"");return s},_getAttrib:function(e,n,d){var v,ex,nn;if(typeof(d)=="undefined")d="";if(!e||e.nodeType!=1)return d;try{v=e.getAttribute(n,0)}catch(ex){v=e.getAttribute(n,2)}if(n=="class"&&!v)v=e.className;if(this.isIE){if(n=="http-equiv")v=e.httpEquiv;nn=e.nodeName;if(nn=="FORM"&&n=="enctype"&&v=="application/x-www-form-urlencoded")v="";if(nn=="INPUT"&&n=="size"&&v=="20")v="";if(nn=="INPUT"&&n=="maxlength"&&v=="2147483647")v="";if(n=="width"||n=="height")v=e.getAttribute(n,2)}if(n=='style'&&v){if(!tinyMCE.isOpera)v=e.style.cssText;v=tinyMCE.serializeStyle(tinyMCE.parseStyle(v))}if(this.settings.on_save&&n.indexOf('on')!=-1&&this.settings.on_save&&v&&v!=='')v=tinyMCE.cleanupEventStr(v);return(v&&v!=='')?''+v:d},_urlConverter:function(c,n,v){if(!c.settings.on_save)return tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href,v);else if(tinyMCE.getParam('convert_urls')){if(!this.urlConverter)this.urlConverter=eval(tinyMCE.settings.urlconverter_callback);return this.urlConverter(v,n,true)}return v},_arrayToRe:function(a,op,be,af){var i,r;op=typeof(op)=="undefined"?"gi":op;be=typeof(be)=="undefined"?"^(":be;af=typeof(af)=="undefined"?")$":af;r=be;for(i=0;i<a.length;i++)r+=this._wildcardToRe(a[i])+(i!=a.length-1?"|":"");r+=af;return new RegExp(r,op)},_wildcardToRe:function(s){s=s.replace(/\?/g,'(\\S?)');s=s.replace(/\+/g,'(\\S+)');s=s.replace(/\*/g,'(\\S*)');return s},_setupEntities:function(){var n,a,i,s=this.settings;if(s.entity_encoding=="named"){n=tinyMCE.clearArray([]);a=this.split(',',s.entities);for(i=0;i<a.length;i+=2)n[a[i]]=a[i+1];this.entities=n}this.entitiesDone=true},_setupRules:function(){var s=this.settings;this.addRuleStr(s.valid_elements);this.addRuleStr(s.extended_valid_elements);this.addChildRemoveRuleStr(s.valid_child_elements);this.rulesDone=true},_isDuplicate:function(n){var i,l,sn;if(!this.settings.fix_content_duplication)return false;if(tinyMCE.isRealIE&&n.nodeType==1){if(n.mce_serialized==this.serializationId)return true;n.setAttribute('mce_serialized',this.serializationId)}else{sn=this.serializedNodes;for(i=0,l=sn.length;i<l;i++){if(sn[i]==n)return true}sn.push(n)}return false}};tinyMCE.add(TinyMCE_Engine,{createTagHTML:function(tn,a,h){var o='',f=tinyMCE.xmlEncode,n;o='<'+tn;if(a){for(n in a){if(typeof(a[n])!='function'&&a[n]!=null)o+=' '+f(n)+'="'+f(''+a[n])+'"'}}o+=!h?' />':'>'+h+'</'+tn+'>';return o},createTag:function(d,tn,a,h){var o=d.createElement(tn),n;if(a){for(n in a){if(typeof(a[n])!='function'&&a[n]!=null)tinyMCE.setAttrib(o,n,a[n])}}if(h)o.innerHTML=h;return o},getElementByAttributeValue:function(n,e,a,v){return(n=this.getElementsByAttributeValue(n,e,a,v)).length==0?null:n[0]},getElementsByAttributeValue:function(n,e,a,v){var i,nl=n.getElementsByTagName(e),o=[];for(i=0;i<nl.length;i++){if(tinyMCE.getAttrib(nl[i],a).indexOf(v)!=-1)o[o.length]=nl[i]}return o},isBlockElement:function(n){return n!=null&&n.nodeType==1&&this.blockRegExp.test(n.nodeName)},getParentBlockElement:function(n,r){return this.getParentNode(n,function(n){return tinyMCE.isBlockElement(n)},r);return null},insertAfter:function(n,r){if(r.nextSibling)r.parentNode.insertBefore(n,r.nextSibling);else r.parentNode.appendChild(n)},setInnerHTML:function(e,h){var i,nl,n;if(tinyMCE.isGecko){h=h.replace(/<embed([^>]*)>/gi,'<tmpembed$1>');h=h.replace(/<em([^>]*)>/gi,'<i$1>');h=h.replace(/<tmpembed([^>]*)>/gi,'<embed$1>');h=h.replace(/<strong([^>]*)>/gi,'<b$1>');h=h.replace(/<\/strong>/gi,'</b>');h=h.replace(/<\/em>/gi,'</i>')}if(tinyMCE.isRealIE){h=h.replace(/\s\/>/g,'>');h=h.replace(/<p([^>]*)>\u00A0?<\/p>/gi,'<p$1 mce_keep="true">&nbsp;</p>');h=h.replace(/<p([^>]*)>\s*&nbsp;\s*<\/p>/gi,'<p$1 mce_keep="true">&nbsp;</p>');h=h.replace(/<p([^>]*)>\s+<\/p>/gi,'<p$1 mce_keep="true">&nbsp;</p>');e.innerHTML=tinyMCE.uniqueTag+h;e.firstChild.removeNode(true);nl=e.getElementsByTagName("p");for(i=nl.length-1;i>=0;i--){n=nl[i];if(n.nodeName=='P'&&!n.hasChildNodes()&&!n.mce_keep)n.parentNode.removeChild(n)}}else{h=this.fixGeckoBaseHREFBug(1,e,h);e.innerHTML=h;this.fixGeckoBaseHREFBug(2,e,h)}},getOuterHTML:function(e){var d;if(tinyMCE.isIE)return e.outerHTML;d=e.ownerDocument.createElement("body");d.appendChild(e.cloneNode(true));return d.innerHTML},setOuterHTML:function(e,h,d){var d=typeof(d)=="undefined"?e.ownerDocument:d,i,nl,t;if(tinyMCE.isIE&&e.nodeType==1)e.outerHTML=h;else{t=d.createElement("body");t.innerHTML=h;for(i=0,nl=t.childNodes;i<nl.length;i++)e.parentNode.insertBefore(nl[i].cloneNode(true),e);e.parentNode.removeChild(e)}},_getElementById:function(id,d){var e,i,j,f;if(typeof(d)=="undefined")d=document;e=d.getElementById(id);if(!e){f=d.forms;for(i=0;i<f.length;i++){for(j=0;j<f[i].elements.length;j++){if(f[i].elements[j].name==id){e=f[i].elements[j];break}}}}return e},getNodeTree:function(n,na,t,nn){return this.selectNodes(n,function(n){return(!t||n.nodeType==t)&&(!nn||n.nodeName==nn)},na?na:[])},getParentElement:function(n,na,f,r){var re=na?new RegExp('^('+na.toUpperCase().replace(/,/g,'|')+')$'):0,v;if(f&&typeof(f)=='string')return this.getParentElement(n,na,function(no){return tinyMCE.getAttrib(no,f)!==''});return this.getParentNode(n,function(n){return((n.nodeType==1&&!re)||(re&&re.test(n.nodeName)))&&(!f||f(n))},r)},getParentNode:function(n,f,r){while(n){if(n==r)return null;if(f(n))return n;n=n.parentNode}return null},getAttrib:function(elm,name,dv){var v;if(typeof(dv)=="undefined")dv="";if(!elm||elm.nodeType!=1)return dv;try{v=elm.getAttribute(name,0)}catch(ex){v=elm.getAttribute(name,2)}if(name=="class"&&!v)v=elm.className;if(tinyMCE.isGecko){if(name=="src"&&elm.src!=null&&elm.src!=='')v=elm.src;if(name=="href"&&elm.href!=null&&elm.href!=='')v=elm.href}else if(tinyMCE.isIE){switch(name){case"http-equiv":v=elm.httpEquiv;break;case"width":case"height":v=elm.getAttribute(name,2);break}}if(name=="style"&&!tinyMCE.isOpera)v=elm.style.cssText;return(v&&v!=='')?v:dv},setAttrib:function(el,name,va,fix){if(typeof(va)=="number"&&va!=null)va=""+va;if(fix){if(va==null)va="";va=va.replace(/[^0-9%]/g,'')}if(name=="style")el.style.cssText=va;if(name=="class")el.className=va;if(va!=null&&va!==''&&va!=-1)el.setAttribute(name,va);else el.removeAttribute(name)},setStyleAttrib:function(e,n,v){e.style[n]=v;if(tinyMCE.isIE&&v==null||v==''){v=tinyMCE.serializeStyle(tinyMCE.parseStyle(e.style.cssText));e.style.cssText=v;e.setAttribute("style",v)}},switchClass:function(ei,c){var e;if(tinyMCE.switchClassCache[ei])e=tinyMCE.switchClassCache[ei];else e=tinyMCE.switchClassCache[ei]=document.getElementById(ei);if(e){if(tinyMCE.settings.button_tile_map&&e.className&&e.className.indexOf('mceTiledButton')==0)c='mceTiledButton '+c;e.className=c}},getAbsPosition:function(n,cn){var l=0,t=0;while(n&&n!=cn){l+=n.offsetLeft;t+=n.offsetTop;n=n.offsetParent}return{absLeft:l,absTop:t}},prevNode:function(e,n){var a=n.split(','),i;while((e=e.previousSibling)!=null){for(i=0;i<a.length;i++){if(e.nodeName==a[i])return e}}return null},nextNode:function(e,n){var a=n.split(','),i;while((e=e.nextSibling)!=null){for(i=0;i<a.length;i++){if(e.nodeName==a[i])return e}}return null},selectElements:function(n,na,f){var i,a=[],nl,x;for(x=0,na=na.split(',');x<na.length;x++)for(i=0,nl=n.getElementsByTagName(na[x]);i<nl.length;i++)(!f||f(nl[i]))&&a.push(nl[i]);return a},selectNodes:function(n,f,a){var i;if(!a)a=[];if(f(n))a[a.length]=n;if(n.hasChildNodes()){for(i=0;i<n.childNodes.length;i++)tinyMCE.selectNodes(n.childNodes[i],f,a)}return a},addCSSClass:function(e,c,b){var o=this.removeCSSClass(e,c);return e.className=b?c+(o!==''?(' '+o):''):(o!==''?(o+' '):'')+c},removeCSSClass:function(e,c){c=e.className.replace(new RegExp("(^|\\s+)"+c+"(\\s+|$)"),' ');return e.className=c!=' '?c:''},hasCSSClass:function(n,c){return new RegExp('\\b'+c+'\\b','g').test(n.className)},renameElement:function(e,n,d){var ne,i,ar;d=typeof(d)=="undefined"?tinyMCE.selectedInstance.getDoc():d;if(e){ne=d.createElement(n);ar=e.attributes;for(i=ar.length-1;i>-1;i--){if(ar[i].specified&&ar[i].nodeValue)ne.setAttribute(ar[i].nodeName.toLowerCase(),ar[i].nodeValue)}ar=e.childNodes;for(i=0;i<ar.length;i++)ne.appendChild(ar[i].cloneNode(true));e.parentNode.replaceChild(ne,e)}},getViewPort:function(w){var d=w.document,m=d.compatMode=='CSS1Compat',b=d.body,de=d.documentElement;return{left:w.pageXOffset||(m?de.scrollLeft:b.scrollLeft),top:w.pageYOffset||(m?de.scrollTop:b.scrollTop),width:w.innerWidth||(m?de.clientWidth:b.clientWidth),height:w.innerHeight||(m?de.clientHeight:b.clientHeight)}},getStyle:function(n,na,d){if(!n)return false;if(tinyMCE.isGecko&&n.ownerDocument.defaultView){try{return n.ownerDocument.defaultView.getComputedStyle(n,null).getPropertyValue(na)}catch(n){return null}}na=na.replace(/-(\D)/g,function(a,b){return b.toUpperCase()});if(n.currentStyle)return n.currentStyle[na];return false}});tinyMCE.add(TinyMCE_Engine,{parseURL:function(url_str){var urlParts=[],i,pos,lastPos,chr;if(url_str){pos=url_str.indexOf('://');if(pos!=-1){urlParts.protocol=url_str.substring(0,pos);lastPos=pos+3}for(i=lastPos;i<url_str.length;i++){chr=url_str.charAt(i);if(chr==':')break;if(chr=='/')break}pos=i;urlParts.host=url_str.substring(lastPos,pos);urlParts.port="";lastPos=pos;if(url_str.charAt(pos)==':'){pos=url_str.indexOf('/',lastPos);urlParts.port=url_str.substring(lastPos+1,pos)}lastPos=pos;pos=url_str.indexOf('?',lastPos);if(pos==-1)pos=url_str.indexOf('#',lastPos);if(pos==-1)pos=url_str.length;urlParts.path=url_str.substring(lastPos,pos);lastPos=pos;if(url_str.charAt(pos)=='?'){pos=url_str.indexOf('#');pos=(pos==-1)?url_str.length:pos;urlParts.query=url_str.substring(lastPos+1,pos)}lastPos=pos;if(url_str.charAt(pos)=='#'){pos=url_str.length;urlParts.anchor=url_str.substring(lastPos+1,pos)}}return urlParts},serializeURL:function(up){var o="";if(up.protocol)o+=up.protocol+"://";if(up.host)o+=up.host;if(up.port)o+=":"+up.port;if(up.path)o+=up.path;if(up.query)o+="?"+up.query;if(up.anchor)o+="#"+up.anchor;return o},convertAbsoluteURLToRelativeURL:function(base_url,url_to_relative){var baseURL=this.parseURL(base_url),targetURL=this.parseURL(url_to_relative);var i,strTok1,strTok2,breakPoint=0,outPath="",forceSlash=false;var fileName,pos;if(targetURL.path=='')targetURL.path="/";else forceSlash=true;base_url=baseURL.path.substring(0,baseURL.path.lastIndexOf('/'));strTok1=base_url.split('/');strTok2=targetURL.path.split('/');if(strTok1.length>=strTok2.length){for(i=0;i<strTok1.length;i++){if(i>=strTok2.length||strTok1[i]!=strTok2[i]){breakPoint=i+1;break}}}if(strTok1.length<strTok2.length){for(i=0;i<strTok2.length;i++){if(i>=strTok1.length||strTok1[i]!=strTok2[i]){breakPoint=i+1;break}}}if(breakPoint==1)return targetURL.path;for(i=0;i<(strTok1.length-(breakPoint-1));i++)outPath+="../";for(i=breakPoint-1;i<strTok2.length;i++){if(i!=(breakPoint-1))outPath+="/"+strTok2[i];else outPath+=strTok2[i]}targetURL.protocol=null;targetURL.host=null;targetURL.port=null;targetURL.path=outPath==''&&forceSlash?"/":outPath;fileName=baseURL.path;if((pos=fileName.lastIndexOf('/'))!=-1)fileName=fileName.substring(pos+1);if(fileName==targetURL.path&&targetURL.anchor!=='')targetURL.path="";if(targetURL.path==''&&!targetURL.anchor)targetURL.path=fileName!==''?fileName:"/";return this.serializeURL(targetURL)},convertRelativeToAbsoluteURL:function(base_url,relative_url){var baseURL=this.parseURL(base_url),baseURLParts,relURLParts,newRelURLParts,numBack,relURL=this.parseURL(relative_url),i;var len,absPath,start,end,newBaseURLParts;if(relative_url==''||relative_url.indexOf('://')!=-1||/^(mailto:|javascript:|#|\/)/.test(relative_url))return relative_url;baseURLParts=baseURL.path.split('/');relURLParts=relURL.path.split('/');newBaseURLParts=[];for(i=baseURLParts.length-1;i>=0;i--){if(baseURLParts[i].length==0)continue;newBaseURLParts[newBaseURLParts.length]=baseURLParts[i]}baseURLParts=newBaseURLParts.reverse();newRelURLParts=[];numBack=0;for(i=relURLParts.length-1;i>=0;i--){if(relURLParts[i].length==0||relURLParts[i]==".")continue;if(relURLParts[i]=='..'){numBack++;continue}if(numBack>0){numBack--;continue}newRelURLParts[newRelURLParts.length]=relURLParts[i]}relURLParts=newRelURLParts.reverse();len=baseURLParts.length-numBack;absPath=(len<=0?"":"/")+baseURLParts.slice(0,len).join('/')+"/"+relURLParts.join('/');start="";end="";relURL.protocol=baseURL.protocol;relURL.host=baseURL.host;relURL.port=baseURL.port;if(relURL.path.charAt(relURL.path.length-1)=="/")absPath+="/";relURL.path=absPath;return this.serializeURL(relURL)},convertURL:function(url,node,on_save){var dl=document.location,start,portPart,urlParts,baseUrlParts,tmpUrlParts,curl;var prot=dl.protocol,host=dl.hostname,port=dl.port;if(prot=="file:")return url;url=tinyMCE.regexpReplace(url,'(http|https):///','/');if(url.indexOf('mailto:')!=-1||url.indexOf('javascript:')!=-1||/^[ \t\r\n\+]*[#\?]/.test(url))return url;if(!tinyMCE.isIE&&!on_save&&url.indexOf("://")==-1&&url.charAt(0)!='/')return tinyMCE.settings.base_href+url;if(on_save&&tinyMCE.getParam('relative_urls')){curl=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href,url);if(curl.charAt(0)=='/')curl=tinyMCE.settings.document_base_prefix+curl;urlParts=tinyMCE.parseURL(curl);tmpUrlParts=tinyMCE.parseURL(tinyMCE.settings.document_base_url);if(urlParts.host==tmpUrlParts.host&&(urlParts.port==tmpUrlParts.port))return tinyMCE.convertAbsoluteURLToRelativeURL(tinyMCE.settings.document_base_url,curl)}if(!tinyMCE.getParam('relative_urls')){urlParts=tinyMCE.parseURL(url);baseUrlParts=tinyMCE.parseURL(tinyMCE.settings.base_href);url=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href,url);if(urlParts.anchor&&urlParts.path==baseUrlParts.path)return"#"+urlParts.anchor}if(tinyMCE.getParam('remove_script_host')){start="";portPart="";if(port!=='')portPart=":"+port;start=prot+"//"+host+portPart+"/";if(url.indexOf(start)==0)url=url.substring(start.length-1)}return url},convertAllRelativeURLs:function(body){var i,elms,src,href,mhref,msrc;elms=body.getElementsByTagName("img");for(i=0;i<elms.length;i++){src=tinyMCE.getAttrib(elms[i],'src');msrc=tinyMCE.getAttrib(elms[i],'mce_src');if(msrc!=='')src=msrc;if(src!==''){src=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href,src);elms[i].setAttribute("src",src)}}elms=body.getElementsByTagName("a");for(i=0;i<elms.length;i++){href=tinyMCE.getAttrib(elms[i],'href');mhref=tinyMCE.getAttrib(elms[i],'mce_href');if(mhref!=='')href=mhref;if(href&&href!==''){href=tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href,href);elms[i].setAttribute("href",href)}}}});tinyMCE.add(TinyMCE_Engine,{clearArray:function(a){var n;for(n in a)a[n]=null;return a},explode:function(d,s){var ar=s.split(d),oar=[],i;for(i=0;i<ar.length;i++){if(ar[i]!=='')oar[oar.length]=ar[i]}return oar}});tinyMCE.add(TinyMCE_Engine,{_setEventsEnabled:function(node,state){var evs,x,y,elms,i,event;var events=['onfocus','onblur','onclick','ondblclick','onmousedown','onmouseup','onmouseover','onmousemove','onmouseout','onkeypress','onkeydown','onkeydown','onkeyup'];evs=tinyMCE.settings.event_elements.split(',');for(y=0;y<evs.length;y++){elms=node.getElementsByTagName(evs[y]);for(i=0;i<elms.length;i++){event="";for(x=0;x<events.length;x++){if((event=tinyMCE.getAttrib(elms[i],events[x]))!==''){event=tinyMCE.cleanupEventStr(""+event);if(!state)event="return true;"+event;else event=event.replace(/^return true;/gi,'');elms[i].removeAttribute(events[x]);elms[i].setAttribute(events[x],event)}}}}},_eventPatch:function(editor_id){var n,inst,win,e;if(typeof(tinyMCE)=="undefined")return true;try{if(tinyMCE.selectedInstance){win=tinyMCE.selectedInstance.getWin();if(win&&win.event){e=win.event;if(!e.target)e.target=e.srcElement;TinyMCE_Engine.prototype.handleEvent(e);return}}for(n in tinyMCE.instances){inst=tinyMCE.instances[n];if(!tinyMCE.isInstance(inst))continue;inst.select();win=inst.getWin();if(win&&win.event){e=win.event;if(!e.target)e.target=e.srcElement;TinyMCE_Engine.prototype.handleEvent(e);return}}}catch(ex){}},findEvent:function(e){var n,inst;if(e)return e;for(n in tinyMCE.instances){inst=tinyMCE.instances[n];if(tinyMCE.isInstance(inst)&&inst.getWin().event)return inst.getWin().event}return null},unloadHandler:function(){tinyMCE.triggerSave(true,true)},addEventHandlers:function(inst){this.setEventHandlers(inst,1)},setEventHandlers:function(inst,s){var doc=inst.getDoc(),ie,ot,i,f=s?tinyMCE.addEvent:tinyMCE.removeEvent;ie=['keypress','keyup','keydown','click','mouseup','mousedown','controlselect','dblclick'];ot=['keypress','keyup','keydown','click','mouseup','mousedown','focus','blur','dragdrop'];inst.switchSettings();if(tinyMCE.isIE){for(i=0;i<ie.length;i++)f(doc,ie[i],TinyMCE_Engine.prototype._eventPatch)}else{for(i=0;i<ot.length;i++)f(doc,ot[i],tinyMCE.handleEvent);try{doc.designMode="On"}catch(e){}}},onMouseMove:function(){var inst,lh;if(tinyMCE.lastHover){lh=tinyMCE.lastHover;if(lh.className.indexOf('mceMenu')!=-1)tinyMCE._menuButtonEvent('out',lh);else lh.className=lh.className;tinyMCE.lastHover=null}if(!tinyMCE.hasMouseMoved){inst=tinyMCE.selectedInstance;if(inst.isFocused){inst.undoBookmark=inst.selection.getBookmark();tinyMCE.hasMouseMoved=true}}},cancelEvent:function(e){if(!e)return false;if(tinyMCE.isIE){e.returnValue=false;e.cancelBubble=true}else{e.preventDefault();e.stopPropagation&&e.stopPropagation()}return false},addEvent:function(o,n,h){if(n!='unload'){function clean(){var ex;try{tinyMCE.removeEvent(o,n,h);tinyMCE.removeEvent(window,'unload',clean);o=n=h=null}catch(ex){}}tinyMCE.addEvent(window,'unload',clean)}if(o.attachEvent)o.attachEvent("on"+n,h);else o.addEventListener(n,h,false)},removeEvent:function(o,n,h){if(o.detachEvent)o.detachEvent("on"+n,h);else o.removeEventListener(n,h,false)},addSelectAccessibility:function(e,s,w){if(!s._isAccessible){s.onkeydown=tinyMCE.accessibleEventHandler;s.onblur=tinyMCE.accessibleEventHandler;s._isAccessible=true;s._win=w}return false},accessibleEventHandler:function(e){var elm,win=this._win;e=tinyMCE.isIE?win.event:e;elm=tinyMCE.isIE?e.srcElement:e.target;if(e.type=="blur"){if(elm.oldonchange){elm.onchange=elm.oldonchange;elm.oldonchange=null}return true}if(elm.nodeName=="SELECT"&&!elm.oldonchange){elm.oldonchange=elm.onchange;elm.onchange=null}if(e.keyCode==13||e.keyCode==32){elm.onchange=elm.oldonchange;elm.onchange();elm.oldonchange=null;tinyMCE.cancelEvent(e);return false}return true},_resetIframeHeight:function(){var ife;if(tinyMCE.isRealIE){ife=tinyMCE.selectedInstance.iframeElement;if(ife._oldHeight){ife.style.height=ife._oldHeight;ife.height=ife._oldHeight}}}});function TinyMCE_Selection(inst){this.instance=inst};TinyMCE_Selection.prototype={getSelectedHTML:function(){var inst=this.instance,e,r=this.getRng(),h;if(!r)return null;e=document.createElement("body");if(r.cloneContents)e.appendChild(r.cloneContents());else if(typeof(r.item)!='undefined'||typeof(r.htmlText)!='undefined')e.innerHTML=r.item?r.item(0).outerHTML:r.htmlText;else e.innerHTML=r.toString();h=tinyMCE._cleanupHTML(inst,inst.contentDocument,inst.settings,e,e,false,true,false);return h},getSelectedText:function(){var inst=this.instance,d,r,s,t;if(tinyMCE.isIE){d=inst.getDoc();if(d.selection.type=="Text"){r=d.selection.createRange();t=r.text}else t=''}else{s=this.getSel();if(s&&s.toString)t=s.toString();else t=''}return t},getBookmark:function(simple){var inst=this.instance,rng=this.getRng(),doc=inst.getDoc(),b=inst.getBody();var trng,sx,sy,xx=-999999999,vp=inst.getViewPort();var sp,le,s,e,nl,i,si,ei,w;sx=vp.left;sy=vp.top;if(simple)return{rng:rng,scrollX:sx,scrollY:sy};if(tinyMCE.isRealIE){if(rng.item){e=rng.item(0);nl=b.getElementsByTagName(e.nodeName);for(i=0;i<nl.length;i++){if(e==nl[i]){sp=i;break}}return{tag:e.nodeName,index:sp,scrollX:sx,scrollY:sy}}else{trng=doc.body.createTextRange();trng.moveToElementText(inst.getBody());trng.collapse(true);bp=Math.abs(trng.move('character',xx));trng=rng.duplicate();trng.collapse(true);sp=Math.abs(trng.move('character',xx));trng=rng.duplicate();trng.collapse(false);le=Math.abs(trng.move('character',xx))-sp;return{start:sp-bp,length:le,scrollX:sx,scrollY:sy}}}else{s=this.getSel();e=this.getFocusElement();if(!s)return null;if(e&&e.nodeName=='IMG'){return{start:-1,end:-1,index:sp,scrollX:sx,scrollY:sy}}if(s.anchorNode==s.focusNode&&s.anchorOffset==s.focusOffset){e=this._getPosText(b,s.anchorNode,s.focusNode);if(!e)return{scrollX:sx,scrollY:sy};return{start:e.start+s.anchorOffset,end:e.end+s.focusOffset,scrollX:sx,scrollY:sy}}else{e=this._getPosText(b,rng.startContainer,rng.endContainer);if(!e)return{scrollX:sx,scrollY:sy};return{start:e.start+rng.startOffset,end:e.end+rng.endOffset,scrollX:sx,scrollY:sy}}}return null},moveToBookmark:function(bookmark){var inst=this.instance,rng,nl,i,ex,b=inst.getBody(),sd;var doc=inst.getDoc(),win=inst.getWin(),sel=this.getSel();if(!bookmark)return false;if(tinyMCE.isSafari&&bookmark.rng){sel.setBaseAndExtent(bookmark.rng.startContainer,bookmark.rng.startOffset,bookmark.rng.endContainer,bookmark.rng.endOffset);return true}if(tinyMCE.isRealIE){if(bookmark.rng){try{bookmark.rng.select()}catch(ex){}return true}win.focus();if(bookmark.tag){rng=b.createControlRange();nl=b.getElementsByTagName(bookmark.tag);if(nl.length>bookmark.index){try{rng.addElement(nl[bookmark.index])}catch(ex){}}}else{try{if(bookmark.start<0)return true;rng=inst.getSel().createRange();rng.moveToElementText(inst.getBody());rng.collapse(true);rng.moveStart('character',bookmark.start);rng.moveEnd('character',bookmark.length)}catch(ex){return true}}rng.select();win.scrollTo(bookmark.scrollX,bookmark.scrollY);return true}if(tinyMCE.isGecko||tinyMCE.isOpera){if(!sel)return false;if(bookmark.rng){sel.removeAllRanges();sel.addRange(bookmark.rng)}if(bookmark.start!=-1&&bookmark.end!=-1){try{sd=this._getTextPos(b,bookmark.start,bookmark.end);rng=doc.createRange();rng.setStart(sd.startNode,sd.startOffset);rng.setEnd(sd.endNode,sd.endOffset);sel.removeAllRanges();sel.addRange(rng);if(!tinyMCE.isOpera)win.focus()}catch(ex){}}win.scrollTo(bookmark.scrollX,bookmark.scrollY);return true}return false},_getPosText:function(r,sn,en){var w=document.createTreeWalker(r,NodeFilter.SHOW_TEXT,null,false),n,p=0,d={};while((n=w.nextNode())!=null){if(n==sn)d.start=p;if(n==en){d.end=p;return d}p+=n.nodeValue?n.nodeValue.length:0}return null},_getTextPos:function(r,sp,ep){var w=document.createTreeWalker(r,NodeFilter.SHOW_TEXT,null,false),n,p=0,d={};while((n=w.nextNode())!=null){p+=n.nodeValue?n.nodeValue.length:0;if(p>=sp&&!d.startNode){d.startNode=n;d.startOffset=sp-(p-n.nodeValue.length)}if(p>=ep){d.endNode=n;d.endOffset=ep-(p-n.nodeValue.length);return d}}return null},selectNode:function(node,collapse,select_text_node,to_start){var inst=this.instance,sel,rng,nodes;if(!node)return;if(typeof(collapse)=="undefined")collapse=true;if(typeof(select_text_node)=="undefined")select_text_node=false;if(typeof(to_start)=="undefined")to_start=true;if(inst.settings.auto_resize)inst.resizeToContent();if(tinyMCE.isRealIE){rng=inst.getDoc().body.createTextRange();try{rng.moveToElementText(node);if(collapse)rng.collapse(to_start);rng.select()}catch(e){}}else{sel=this.getSel();if(!sel)return;if(tinyMCE.isSafari){sel.setBaseAndExtent(node,0,node,node.innerText.length);if(collapse){if(to_start)sel.collapseToStart();else sel.collapseToEnd()}this.scrollToNode(node);return}rng=inst.getDoc().createRange();if(select_text_node){nodes=tinyMCE.getNodeTree(node,[],3);if(nodes.length>0)rng.selectNodeContents(nodes[0]);else rng.selectNodeContents(node)}else rng.selectNode(node);if(collapse){if(!to_start&&node.nodeType==3){rng.setStart(node,node.nodeValue.length);rng.setEnd(node,node.nodeValue.length)}else rng.collapse(to_start)}sel.removeAllRanges();sel.addRange(rng)}this.scrollToNode(node);tinyMCE.selectedElement=null;if(node.nodeType==1)tinyMCE.selectedElement=node},scrollToNode:function(node){var inst=this.instance,w=inst.getWin(),vp=inst.getViewPort(),pos=tinyMCE.getAbsPosition(node),cvp,p,cwin;if(pos.absLeft<vp.left||pos.absLeft>vp.left+vp.width||pos.absTop<vp.top||pos.absTop>vp.top+(vp.height-25))w.scrollTo(pos.absLeft,pos.absTop-vp.height+25);if(inst.settings.auto_resize){cwin=inst.getContainerWin();cvp=tinyMCE.getViewPort(cwin);p=this.getAbsPosition(node);if(p.absLeft<cvp.left||p.absLeft>cvp.left+cvp.width||p.absTop<cvp.top||p.absTop>cvp.top+cvp.height)cwin.scrollTo(p.absLeft,p.absTop-cvp.height+25)}},getAbsPosition:function(n){var pos=tinyMCE.getAbsPosition(n),ipos=tinyMCE.getAbsPosition(this.instance.iframeElement);return{absLeft:ipos.absLeft+pos.absLeft,absTop:ipos.absTop+pos.absTop}},getSel:function(){var inst=this.instance;if(tinyMCE.isRealIE)return inst.getDoc().selection;return inst.contentWindow.getSelection()},getRng:function(){var s=this.getSel();if(s==null)return null;if(tinyMCE.isRealIE)return s.createRange();if(tinyMCE.isSafari&&!s.getRangeAt)return''+window.getSelection();if(s.rangeCount>0)return s.getRangeAt(0);return null},isCollapsed:function(){var r=this.getRng();if(r.item)return false;return r.boundingWidth==0||this.getSel().isCollapsed},collapse:function(b){var r=this.getRng(),s=this.getSel();if(r.select){r.collapse(b);r.select()}else{if(b)s.collapseToStart();else s.collapseToEnd()}},getFocusElement:function(){var inst=this.instance,doc,rng,sel,elm;if(tinyMCE.isRealIE){doc=inst.getDoc();rng=doc.selection.createRange();elm=rng.item?rng.item(0):rng.parentElement()}else{if(!tinyMCE.isSafari&&inst.isHidden())return inst.getBody();sel=this.getSel();rng=this.getRng();if(!sel||!rng)return null;elm=rng.commonAncestorContainer;if(!rng.collapsed){if(rng.startContainer==rng.endContainer){if(rng.startOffset-rng.endOffset<2){if(rng.startContainer.hasChildNodes())elm=rng.startContainer.childNodes[rng.startOffset]}}}elm=tinyMCE.getParentElement(elm);}return elm}};function TinyMCE_UndoRedo(inst){this.instance=inst;this.undoLevels=[];this.undoIndex=0;this.typingUndoIndex=-1;this.undoRedo=true};TinyMCE_UndoRedo.prototype={add:function(l){var b,customUndoLevels,newHTML,inst=this.instance,i,ul,ur;if(l){this.undoLevels[this.undoLevels.length]=l;return true}if(this.typingUndoIndex!=-1){this.undoIndex=this.typingUndoIndex;if(tinyMCE.typingUndoIndex!=-1)tinyMCE.undoIndex=tinyMCE.typingUndoIndex}newHTML=tinyMCE.trim(inst.getBody().innerHTML);if(this.undoLevels[this.undoIndex]&&newHTML!=this.undoLevels[this.undoIndex].content){inst.isNotDirty=false;tinyMCE.dispatchCallback(inst,'onchange_callback','onChange',inst);customUndoLevels=tinyMCE.settings.custom_undo_redo_levels;if(customUndoLevels!=-1&&this.undoLevels.length>customUndoLevels){for(i=0;i<this.undoLevels.length-1;i++)this.undoLevels[i]=this.undoLevels[i+1];this.undoLevels.length--;this.undoIndex--;}b=inst.undoBookmark;if(!b)b=inst.selection.getBookmark();this.undoIndex++;this.undoLevels[this.undoIndex]={content:newHTML,bookmark:b};ul=tinyMCE.undoLevels;for(i=tinyMCE.undoIndex+1;i<ul.length;i++){ur=ul[i].undoRedo;if(ur.undoIndex==ur.undoLevels.length-1)ur.undoIndex--;ur.undoLevels.length--}tinyMCE.undoLevels[tinyMCE.undoIndex++]=inst;tinyMCE.undoLevels.length=tinyMCE.undoIndex;this.undoLevels.length=this.undoIndex+1;return true}return false},undo:function(){var inst=this.instance;if(this.undoIndex>0){this.undoIndex--;tinyMCE.setInnerHTML(inst.getBody(),this.undoLevels[this.undoIndex].content);inst.repaint();if(inst.settings.custom_undo_redo_restore_selection)inst.selection.moveToBookmark(this.undoLevels[this.undoIndex].bookmark)}},redo:function(){var inst=this.instance;tinyMCE.execCommand("mceEndTyping");if(this.undoIndex<(this.undoLevels.length-1)){this.undoIndex++;tinyMCE.setInnerHTML(inst.getBody(),this.undoLevels[this.undoIndex].content);inst.repaint();if(inst.settings.custom_undo_redo_restore_selection)inst.selection.moveToBookmark(this.undoLevels[this.undoIndex].bookmark)}tinyMCE.triggerNodeChange()}};var TinyMCE_ForceParagraphs={_insertPara:function(inst,e){var doc=inst.getDoc(),sel=inst.getSel(),body=inst.getBody(),win=inst.contentWindow,rng=sel.getRangeAt(0);var rootElm=doc.documentElement,blockName="P",startNode,endNode,startBlock,endBlock;var rngBefore,rngAfter,direct,startNode,startOffset,endNode,endOffset,b=tinyMCE.isOpera?inst.selection.getBookmark():null;var paraBefore,paraAfter,startChop,endChop,contents,i;function isEmpty(para){var nodes;function isEmptyHTML(html){return html.replace(new RegExp('[ \t\r\n]+','g'),'').toLowerCase()==''}if(para.getElementsByTagName("img").length>0)return false;if(para.getElementsByTagName("table").length>0)return false;if(para.getElementsByTagName("hr").length>0)return false;nodes=tinyMCE.getNodeTree(para,[],3);for(i=0;i<nodes.length;i++){if(!isEmptyHTML(nodes[i].nodeValue))return false}return true}rngBefore=doc.createRange();rngBefore.setStart(sel.anchorNode,sel.anchorOffset);rngBefore.collapse(true);rngAfter=doc.createRange();rngAfter.setStart(sel.focusNode,sel.focusOffset);rngAfter.collapse(true);direct=rngBefore.compareBoundaryPoints(rngBefore.START_TO_END,rngAfter)<0;startNode=direct?sel.anchorNode:sel.focusNode;startOffset=direct?sel.anchorOffset:sel.focusOffset;endNode=direct?sel.focusNode:sel.anchorNode;endOffset=direct?sel.focusOffset:sel.anchorOffset;startNode=startNode.nodeName=="HTML"?doc.body:startNode;startNode=startNode.nodeName=="BODY"?startNode.firstChild:startNode;endNode=endNode.nodeName=="BODY"?endNode.firstChild:endNode;startBlock=inst.getParentBlockElement(startNode);endBlock=inst.getParentBlockElement(endNode);if(startBlock&&(startBlock.nodeName=='CAPTION'||/absolute|relative|static/gi.test(startBlock.style.position)))startBlock=null;if(endBlock&&(endBlock.nodeName=='CAPTION'||/absolute|relative|static/gi.test(endBlock.style.position)))endBlock=null;if(startBlock!=null){blockName=startBlock.nodeName;if(/(TD|TABLE|TH|CAPTION)/.test(blockName)||(blockName=="DIV"&&/left|right/gi.test(startBlock.style.cssFloat)))blockName="P"}if(tinyMCE.getParentElement(startBlock,"OL,UL",null,body)!=null)return false;if((startBlock!=null&&startBlock.nodeName=="TABLE")||(endBlock!=null&&endBlock.nodeName=="TABLE"))startBlock=endBlock=null;paraBefore=(startBlock!=null&&startBlock.nodeName==blockName)?startBlock.cloneNode(false):doc.createElement(blockName);paraAfter=(endBlock!=null&&endBlock.nodeName==blockName)?endBlock.cloneNode(false):doc.createElement(blockName);if(/^(H[1-6])$/.test(blockName))paraAfter=doc.createElement("p");startChop=startNode;endChop=endNode;node=startChop;do{if(node==body||node.nodeType==9||tinyMCE.isBlockElement(node))break;startChop=node}while((node=node.previousSibling?node.previousSibling:node.parentNode));node=endChop;do{if(node==body||node.nodeType==9||tinyMCE.isBlockElement(node))break;endChop=node}while((node=node.nextSibling?node.nextSibling:node.parentNode));if(startChop.nodeName=="TD")startChop=startChop.firstChild;if(endChop.nodeName=="TD")endChop=endChop.lastChild;if(startBlock==null){rng.deleteContents();if(!tinyMCE.isSafari)sel.removeAllRanges();if(startChop!=rootElm&&endChop!=rootElm){rngBefore=rng.cloneRange();if(startChop==body)rngBefore.setStart(startChop,0);else rngBefore.setStartBefore(startChop);paraBefore.appendChild(rngBefore.cloneContents());if(endChop.parentNode.nodeName==blockName)endChop=endChop.parentNode;rng.setEndAfter(endChop);if(endChop.nodeName!="#text"&&endChop.nodeName!="BODY")rngBefore.setEndAfter(endChop);contents=rng.cloneContents();if(contents.firstChild&&(contents.firstChild.nodeName==blockName||contents.firstChild.nodeName=="BODY"))paraAfter.innerHTML=contents.firstChild.innerHTML;else paraAfter.appendChild(contents);if(isEmpty(paraBefore))paraBefore.innerHTML="&nbsp;";if(isEmpty(paraAfter))paraAfter.innerHTML="&nbsp;";rng.deleteContents();rngAfter.deleteContents();rngBefore.deleteContents();if(tinyMCE.isOpera){paraBefore.normalize();rngBefore.insertNode(paraBefore);paraAfter.normalize();rngBefore.insertNode(paraAfter)}else{paraAfter.normalize();rngBefore.insertNode(paraAfter);paraBefore.normalize();rngBefore.insertNode(paraBefore)}}else{body.innerHTML="<"+blockName+">&nbsp;</"+blockName+"><"+blockName+">&nbsp;</"+blockName+">";paraAfter=body.childNodes[1]}inst.selection.moveToBookmark(b);inst.selection.selectNode(paraAfter,true,true);return true}if(startChop.nodeName==blockName)rngBefore.setStart(startChop,0);else rngBefore.setStartBefore(startChop);rngBefore.setEnd(startNode,startOffset);paraBefore.appendChild(rngBefore.cloneContents());rngAfter.setEndAfter(endChop);rngAfter.setStart(endNode,endOffset);contents=rngAfter.cloneContents();if(contents.firstChild&&contents.firstChild.nodeName==blockName){paraAfter.innerHTML=contents.firstChild.innerHTML}else paraAfter.appendChild(contents);if(isEmpty(paraBefore))paraBefore.innerHTML="&nbsp;";if(isEmpty(paraAfter))paraAfter.innerHTML="&nbsp;";rng=doc.createRange();if(!startChop.previousSibling&&startChop.parentNode.nodeName.toUpperCase()==blockName){rng.setStartBefore(startChop.parentNode)}else{if(rngBefore.startContainer.nodeName.toUpperCase()==blockName&&rngBefore.startOffset==0)rng.setStartBefore(rngBefore.startContainer);else rng.setStart(rngBefore.startContainer,rngBefore.startOffset)}if(!endChop.nextSibling&&endChop.parentNode.nodeName.toUpperCase()==blockName)rng.setEndAfter(endChop.parentNode);else rng.setEnd(rngAfter.endContainer,rngAfter.endOffset);rng.deleteContents();if(tinyMCE.isOpera){rng.insertNode(paraBefore);rng.insertNode(paraAfter)}else{rng.insertNode(paraAfter);rng.insertNode(paraBefore)}paraAfter.normalize();paraBefore.normalize();inst.selection.moveToBookmark(b);inst.selection.selectNode(paraAfter,true,true);return true},_handleBackSpace:function(inst){var r=inst.getRng(),sn=r.startContainer,nv,s=false;if(sn&&sn.nextSibling&&sn.nextSibling.nodeName=="BR"&&sn.parentNode.nodeName!="BODY"){nv=sn.nodeValue;if(nv!=null&&r.startOffset==nv.length)sn.nextSibling.parentNode.removeChild(sn.nextSibling)}if(inst.settings.auto_resize)inst.resizeToContent();return s}};function TinyMCE_Layer(id,bm){this.id=id;this.blockerElement=null;this.events=false;this.element=null;this.blockMode=typeof(bm)!='undefined'?bm:true;this.doc=document};TinyMCE_Layer.prototype={moveRelativeTo:function(re,p){var rep=this.getAbsPosition(re),e=this.getElement(),x,y;var w=parseInt(re.offsetWidth),h=parseInt(re.offsetHeight);var ew=parseInt(e.offsetWidth),eh=parseInt(e.offsetHeight);switch(p){case"tl":x=rep.absLeft;y=rep.absTop;break;case"tr":x=rep.absLeft+w;y=rep.absTop;break;case"bl":x=rep.absLeft;y=rep.absTop+h;break;case"br":x=rep.absLeft+w;y=rep.absTop+h;break;case"cc":x=rep.absLeft+(w/ 2) - (ew /2);y=rep.absTop+(h/ 2) - (eh /2);break}this.moveTo(x,y)},moveBy:function(x,y){var e=this.getElement();this.moveTo(parseInt(e.style.left)+x,parseInt(e.style.top)+y)},moveTo:function(x,y){var e=this.getElement();e.style.left=x+"px";e.style.top=y+"px";this.updateBlocker()},resizeBy:function(w,h){var e=this.getElement();this.resizeTo(parseInt(e.style.width)+w,parseInt(e.style.height)+h)},resizeTo:function(w,h){var e=this.getElement();if(w!=null)e.style.width=w+"px";if(h!=null)e.style.height=h+"px";this.updateBlocker()},show:function(){var el=this.getElement();if(el){el.style.display='block';this.updateBlocker()}},hide:function(){var el=this.getElement();if(el){el.style.display='none';this.updateBlocker()}},isVisible:function(){return this.getElement().style.display=='block'},getElement:function(){if(!this.element)this.element=this.doc.getElementById(this.id);return this.element},setBlockMode:function(s){this.blockMode=s},updateBlocker:function(){var e,b,x,y,w,h;b=this.getBlocker();if(b){if(this.blockMode){e=this.getElement();x=this.parseInt(e.style.left);y=this.parseInt(e.style.top);w=this.parseInt(e.offsetWidth);h=this.parseInt(e.offsetHeight);b.style.left=x+'px';b.style.top=y+'px';b.style.width=w+'px';b.style.height=h+'px';b.style.display=e.style.display}else b.style.display='none'}},getBlocker:function(){var d,b;if(!this.blockerElement&&this.blockMode){d=this.doc;b=d.getElementById(this.id+"_blocker");if(!b){b=d.createElement("iframe");b.setAttribute('id',this.id+"_blocker");b.style.cssText='display: none; position: absolute; left: 0; top: 0';b.src='javascript:false;';b.frameBorder='0';b.scrolling='no';d.body.appendChild(b)}this.blockerElement=b}return this.blockerElement},getAbsPosition:function(n){var p={absLeft:0,absTop:0};while(n){p.absLeft+=n.offsetLeft;p.absTop+=n.offsetTop;n=n.offsetParent}return p},create:function(n,c,p,h){var d=this.doc,e=d.createElement(n);e.setAttribute('id',this.id);if(c)e.className=c;if(!p)p=d.body;if(h)e.innerHTML=h;p.appendChild(e);return this.element=e},exists:function(){return this.doc.getElementById(this.id)!=null},parseInt:function(s){if(s==null||s=='')return 0;return parseInt(s)},remove:function(){var e=this.getElement(),b=this.getBlocker();if(e)e.parentNode.removeChild(e);if(b)b.parentNode.removeChild(b)}};function TinyMCE_Menu(){var id;if(typeof(tinyMCE.menuCounter)=="undefined")tinyMCE.menuCounter=0;id="mc_menu_"+tinyMCE.menuCounter++;TinyMCE_Layer.call(this,id,true);this.id=id;this.items=[];this.needsUpdate=true};TinyMCE_Menu.prototype=tinyMCE.extend(TinyMCE_Layer.prototype,{init:function(s){var n;this.settings={separator_class:'mceMenuSeparator',title_class:'mceMenuTitle',disabled_class:'mceMenuDisabled',menu_class:'mceMenu',drop_menu:true};for(n in s)this.settings[n]=s[n];this.create('div',this.settings.menu_class)},clear:function(){this.items=[]},addTitle:function(t){this.add({type:'title',text:t})},addDisabled:function(t){this.add({type:'disabled',text:t})},addSeparator:function(){this.add({type:'separator'})},addItem:function(t,js){this.add({text:t,js:js})},add:function(mi){this.items[this.items.length]=mi;this.needsUpdate=true},update:function(){var e=this.getElement(),h='',i,t,m=this.items,s=this.settings;if(this.settings.drop_menu)h+='<span class="mceMenuLine"></span>';h+='<table border="0" cellpadding="0" cellspacing="0">';for(i=0;i<m.length;i++){t=tinyMCE.xmlEncode(m[i].text);c=m[i].class_name?' class="'+m[i].class_name+'"':'';switch(m[i].type){case'separator':h+='<tr class="'+s.separator_class+'"><td>';break;case'title':h+='<tr class="'+s.title_class+'"><td><span'+c+'>'+t+'</span>';break;case'disabled':h+='<tr class="'+s.disabled_class+'"><td><span'+c+'>'+t+'</span>';break;default:h+='<tr><td><a href="'+tinyMCE.xmlEncode(m[i].js)+'" onmousedown="'+tinyMCE.xmlEncode(m[i].js)+';return tinyMCE.cancelEvent(event);" onclick="return tinyMCE.cancelEvent(event);" onmouseup="return tinyMCE.cancelEvent(event);"><span'+c+'>'+t+'</span></a>'}h+='</td></tr>'}h+='</table>';e.innerHTML=h;this.needsUpdate=false;this.updateBlocker()},show:function(){var nl,i;if(tinyMCE.lastMenu==this)return;if(this.needsUpdate)this.update();if(tinyMCE.lastMenu&&tinyMCE.lastMenu!=this)tinyMCE.lastMenu.hide();TinyMCE_Layer.prototype.show.call(this);if(!tinyMCE.isOpera){}tinyMCE.lastMenu=this}});tinyMCE.add(TinyMCE_Engine,{debug:function(){var m="",a,i,l=tinyMCE.log.length;for(i=0,a=this.debug.arguments;i<a.length;i++){m+=a[i];if(i<a.length-1)m+=', '}if(l<1000)tinyMCE.log[l]="[debug] "+m}});
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/tiny_mce_popup.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/tiny_mce_popup.js
deleted file mode 100644 (file)
index eecad28..0000000
+++ /dev/null
@@ -1,294 +0,0 @@
-// Some global instances, this will be filled later\r
-var tinyMCE = null, tinyMCELang = null;\r
-\r
-function TinyMCE_Popup() {\r
-};\r
-\r
-TinyMCE_Popup.prototype = {\r
-       findWin : function(w) {\r
-               var c;\r
-\r
-               // Check parents\r
-               c = w;\r
-               while (c && (c = c.parent) != null) {\r
-                       if (typeof(c.tinyMCE) != "undefined")\r
-                               return c;\r
-               }\r
-\r
-               // Check openers\r
-               c = w;\r
-               while (c && (c = c.opener) != null) {\r
-                       if (typeof(c.tinyMCE) != "undefined")\r
-                               return c;\r
-               }\r
-\r
-               // Try top\r
-               if (typeof(top.tinyMCE) != "undefined")\r
-                       return top;\r
-\r
-               return null;\r
-       },\r
-\r
-       init : function() {\r
-               var win = window.opener ? window.opener : window.dialogArguments, c;\r
-               var inst, re, title, divElm;\r
-\r
-               if (!win)\r
-                       win = this.findWin(window);\r
-\r
-               if (!win) {\r
-                       alert("tinyMCE object reference not found from popup.");\r
-                       return;\r
-               }\r
-\r
-               window.opener = win;\r
-               this.windowOpener = win;\r
-               this.onLoadEval = "";\r
-\r
-               // Setup parent references\r
-               tinyMCE = win.tinyMCE;\r
-               tinyMCELang = win.tinyMCELang;\r
-\r
-               inst = tinyMCE.selectedInstance;\r
-               this.isWindow = tinyMCE.getWindowArg('mce_inside_iframe', false) == false;\r
-               this.storeSelection = (tinyMCE.isRealIE) && !this.isWindow && tinyMCE.getWindowArg('mce_store_selection', true);\r
-\r
-               if (this.isWindow)\r
-                       window.focus();\r
-\r
-               // Store selection\r
-               if (this.storeSelection)\r
-                       inst.selectionBookmark = inst.selection.getBookmark(true);\r
-\r
-               // Setup dir\r
-               if (tinyMCELang.lang_dir)\r
-                       document.dir = tinyMCELang.lang_dir;\r
-\r
-               // Setup title\r
-               re = new RegExp('{|\\\$|}', 'g');\r
-               title = document.title.replace(re, "");\r
-               if (typeof(tinyMCELang[title]) != "undefined") {\r
-                       divElm = document.createElement("div");\r
-                       divElm.innerHTML = tinyMCELang[title];\r
-                       document.title = divElm.innerHTML;\r
-\r
-                       if (typeof(tinyMCE.setWindowTitle) != 'undefined')\r
-                               tinyMCE.setWindowTitle(window, divElm.innerHTML);\r
-               }\r
-\r
-               // Output Popup CSS class\r
-               document.write('<link href="' + tinyMCE.getParam("popups_css") + '" rel="stylesheet" type="text/css">');\r
-\r
-               if (tinyMCE.getParam("popups_css_add")) {\r
-                       c = tinyMCE.getParam("popups_css_add");\r
-\r
-                       // Is relative\r
-                       if (c.indexOf('://') == -1 && c.charAt(0) != '/')\r
-                               c = tinyMCE.documentBasePath + "/" + c;\r
-\r
-                       document.write('<link href="' + c + '" rel="stylesheet" type="text/css">');\r
-               }\r
-\r
-               tinyMCE.addEvent(window, "load", this.onLoad);\r
-       },\r
-\r
-       onLoad : function() {\r
-               var dir, i, elms, body = document.body;\r
-\r
-               if (tinyMCE.getWindowArg('mce_replacevariables', true))\r
-                       body.innerHTML = tinyMCE.applyTemplate(body.innerHTML, tinyMCE.windowArgs);\r
-\r
-               dir = tinyMCE.selectedInstance.settings.directionality;\r
-               if (dir == "rtl" && document.forms && document.forms.length > 0) {\r
-                       elms = document.forms[0].elements;\r
-                       for (i=0; i<elms.length; i++) {\r
-                               if ((elms[i].type == "text" || elms[i].type == "textarea") && elms[i].getAttribute("dir") != "ltr")\r
-                                       elms[i].dir = dir;\r
-                       }\r
-               }\r
-\r
-               if (body.style.display == 'none')\r
-                       body.style.display = 'block';\r
-\r
-               // Execute real onload (Opera fix)\r
-               if (tinyMCEPopup.onLoadEval !== '')\r
-                       eval(tinyMCEPopup.onLoadEval);\r
-       },\r
-\r
-       executeOnLoad : function(str) {\r
-               if (tinyMCE.isOpera)\r
-                       this.onLoadEval = str;\r
-               else\r
-                       eval(str);\r
-       },\r
-\r
-       resizeToInnerSize : function() {\r
-               var i, doc, body, oldMargin, wrapper, iframe, nodes, dx, dy;\r
-\r
-               // Netscape 7.1 workaround\r
-               if (this.isWindow && tinyMCE.isNS71) {\r
-                       window.resizeBy(0, 10);\r
-                       return;\r
-               }\r
-\r
-               if (this.isWindow) {\r
-                       doc = document;\r
-                       body = doc.body;\r
-\r
-                       if (body.style.display == 'none')\r
-                               body.style.display = 'block';\r
-\r
-                       // Remove margin\r
-                       oldMargin = body.style.margin;\r
-                       body.style.margin = '0';\r
-\r
-                       // Create wrapper\r
-                       wrapper = doc.createElement("div");\r
-                       wrapper.id = 'mcBodyWrapper';\r
-                       wrapper.style.display = 'none';\r
-                       wrapper.style.margin = '0';\r
-\r
-                       // Wrap body elements\r
-                       nodes = doc.body.childNodes;\r
-                       for (i=nodes.length-1; i>=0; i--) {\r
-                               if (wrapper.hasChildNodes())\r
-                                       wrapper.insertBefore(nodes[i].cloneNode(true), wrapper.firstChild);\r
-                               else\r
-                                       wrapper.appendChild(nodes[i].cloneNode(true));\r
-\r
-                               nodes[i].parentNode.removeChild(nodes[i]);\r
-                       }\r
-\r
-                       // Add wrapper\r
-                       doc.body.appendChild(wrapper);\r
-\r
-                       // Create iframe\r
-                       iframe = document.createElement("iframe");\r
-                       iframe.id = "mcWinIframe";\r
-                       iframe.src = document.location.href.toLowerCase().indexOf('https') == -1 ? "about:blank" : tinyMCE.settings.default_document;\r
-                       iframe.width = "100%";\r
-                       iframe.height = "100%";\r
-                       iframe.style.margin = '0';\r
-\r
-                       // Add iframe\r
-                       doc.body.appendChild(iframe);\r
-\r
-                       // Measure iframe\r
-                       iframe = document.getElementById('mcWinIframe');\r
-                       dx = tinyMCE.getWindowArg('mce_width') - iframe.clientWidth;\r
-                       dy = tinyMCE.getWindowArg('mce_height') - iframe.clientHeight;\r
-\r
-                       // Resize window\r
-                       // tinyMCE.debug(tinyMCE.getWindowArg('mce_width') + "," + tinyMCE.getWindowArg('mce_height') + " - " + dx + "," + dy);\r
-                       window.resizeBy(dx, dy);\r
-\r
-                       // Hide iframe and show wrapper\r
-                       body.style.margin = oldMargin;\r
-                       iframe.style.display = 'none';\r
-                       wrapper.style.display = 'block';\r
-               }\r
-       },\r
-\r
-       resizeToContent : function() {\r
-               var isMSIE = (navigator.appName == "Microsoft Internet Explorer");\r
-               var isOpera = (navigator.userAgent.indexOf("Opera") != -1);\r
-               var elm, width, height, x, y, dx, dy;\r
-\r
-               if (isOpera)\r
-                       return;\r
-\r
-               if (isMSIE) {\r
-                       try { window.resizeTo(10, 10); } catch (e) {}\r
-\r
-                       elm = document.body;\r
-                       width = elm.offsetWidth;\r
-                       height = elm.offsetHeight;\r
-                       dx = (elm.scrollWidth - width) + 4;\r
-                       dy = elm.scrollHeight - height;\r
-\r
-                       try { window.resizeBy(dx, dy); } catch (e) {}\r
-               } else {\r
-                       window.scrollBy(1000, 1000);\r
-                       if (window.scrollX > 0 || window.scrollY > 0) {\r
-                               window.resizeBy(window.innerWidth * 2, window.innerHeight * 2);\r
-                               window.sizeToContent();\r
-                               window.scrollTo(0, 0);\r
-                               x = parseInt(screen.width / 2.0) - (window.outerWidth / 2.0);\r
-                               y = parseInt(screen.height / 2.0) - (window.outerHeight / 2.0);\r
-                               window.moveTo(x, y);\r
-                       }\r
-               }\r
-       },\r
-\r
-       getWindowArg : function(name, default_value) {\r
-               return tinyMCE.getWindowArg(name, default_value);\r
-       },\r
-\r
-       restoreSelection : function() {\r
-               var inst;\r
-\r
-               if (this.storeSelection) {\r
-                       inst = tinyMCE.selectedInstance;\r
-\r
-                       inst.getWin().focus();\r
-\r
-                       if (inst.selectionBookmark)\r
-                               inst.selection.moveToBookmark(inst.selectionBookmark);\r
-               }\r
-       },\r
-\r
-       execCommand : function(command, user_interface, value) {\r
-               var inst = tinyMCE.selectedInstance;\r
-\r
-               this.restoreSelection();\r
-               inst.execCommand(command, user_interface, value);\r
-\r
-               // Store selection\r
-               if (this.storeSelection)\r
-                       inst.selectionBookmark = inst.selection.getBookmark(true);\r
-       },\r
-\r
-       close : function() {\r
-               tinyMCE.closeWindow(window);\r
-       },\r
-\r
-       pickColor : function(e, element_id) {\r
-               tinyMCE.selectedInstance.execCommand('mceColorPicker', true, {\r
-                       element_id : element_id,\r
-                       document : document,\r
-                       window : window,\r
-                       store_selection : false\r
-               });\r
-       },\r
-\r
-       openBrowser : function(element_id, type, option) {\r
-               var cb = tinyMCE.getParam(option, tinyMCE.getParam("file_browser_callback"));\r
-               var url = document.getElementById(element_id).value;\r
-\r
-               tinyMCE.setWindowArg("window", window);\r
-               tinyMCE.setWindowArg("document", document);\r
-\r
-               // Call to external callback\r
-               if (eval('typeof(tinyMCEPopup.windowOpener.' + cb + ')') == "undefined")\r
-                       alert("Callback function: " + cb + " could not be found.");\r
-               else\r
-                       eval("tinyMCEPopup.windowOpener." + cb + "(element_id, url, type, window);");\r
-       },\r
-\r
-       importClass : function(c) {\r
-               var n;\r
-\r
-               window[c] = function() {};\r
-\r
-               for (n in window.opener[c].prototype)\r
-                       window[c].prototype[n] = window.opener[c].prototype[n];\r
-\r
-               window[c].constructor = window.opener[c].constructor;\r
-       }\r
-\r
-       };\r
-\r
-// Setup global instance\r
-var tinyMCEPopup = new TinyMCE_Popup();\r
-\r
-tinyMCEPopup.init();\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/tiny_mce_src.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/tiny_mce_src.js
deleted file mode 100644 (file)
index dcc9769..0000000
+++ /dev/null
@@ -1,7612 +0,0 @@
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_Engine.class.js */\r
-\r
-function TinyMCE_Engine() {\r
-       var ua;\r
-\r
-       this.majorVersion = "2";\r
-       this.minorVersion = "1.2";\r
-       this.releaseDate = "2007-08-21";\r
-\r
-       this.instances = [];\r
-       this.switchClassCache = [];\r
-       this.windowArgs = [];\r
-       this.loadedFiles = [];\r
-       this.pendingFiles = [];\r
-       this.loadingIndex = 0;\r
-       this.configs = [];\r
-       this.currentConfig = 0;\r
-       this.eventHandlers = [];\r
-       this.log = [];\r
-       this.undoLevels = [];\r
-       this.undoIndex = 0;\r
-       this.typingUndoIndex = -1;\r
-       this.settings = [];\r
-\r
-       // Browser check\r
-       ua = navigator.userAgent;\r
-       this.isMSIE = (navigator.appName == "Microsoft Internet Explorer");\r
-       this.isMSIE5 = this.isMSIE && (ua.indexOf('MSIE 5') != -1);\r
-       this.isMSIE5_0 = this.isMSIE && (ua.indexOf('MSIE 5.0') != -1);\r
-       this.isMSIE7 = this.isMSIE && (ua.indexOf('MSIE 7') != -1);\r
-       this.isGecko = ua.indexOf('Gecko') != -1; // Will also be true on Safari\r
-       this.isSafari = ua.indexOf('Safari') != -1;\r
-       this.isOpera = window['opera'] && opera.buildNumber ? true : false;\r
-       this.isMac = ua.indexOf('Mac') != -1;\r
-       this.isNS7 = ua.indexOf('Netscape/7') != -1;\r
-       this.isNS71 = ua.indexOf('Netscape/7.1') != -1;\r
-       this.dialogCounter = 0;\r
-       this.plugins = [];\r
-       this.themes = [];\r
-       this.menus = [];\r
-       this.loadedPlugins = [];\r
-       this.buttonMap = [];\r
-       this.isLoaded = false;\r
-\r
-       // Fake MSIE on Opera and if Opera fakes IE, Gecko or Safari cancel those\r
-       if (this.isOpera) {\r
-               this.isMSIE = true;\r
-               this.isGecko = false;\r
-               this.isSafari =  false;\r
-       }\r
-\r
-       this.isIE = this.isMSIE;\r
-       this.isRealIE = this.isMSIE && !this.isOpera;\r
-\r
-       // TinyMCE editor id instance counter\r
-       this.idCounter = 0;\r
-};\r
-\r
-TinyMCE_Engine.prototype = {\r
-       init : function(settings) {\r
-               var theme, nl, baseHREF = "", i, cssPath, entities, h, p, src, elements = [], head;\r
-\r
-               // IE 5.0x is no longer supported since 5.5, 6.0 and 7.0 now exists. We can't support old browsers forever, sorry.\r
-               if (this.isMSIE5_0)\r
-                       return;\r
-\r
-               this.settings = settings;\r
-\r
-               // Check if valid browser has execcommand support\r
-               if (typeof(document.execCommand) == 'undefined')\r
-                       return;\r
-\r
-               // Get script base path\r
-               if (!tinyMCE.baseURL) {\r
-                       // Search through head\r
-                       head = document.getElementsByTagName('head')[0];\r
-\r
-                       if (head) {\r
-                               for (i=0, nl = head.getElementsByTagName('script'); i<nl.length; i++)\r
-                                       elements.push(nl[i]);\r
-                       }\r
-\r
-                       // Search through rest of document\r
-                       for (i=0, nl = document.getElementsByTagName('script'); i<nl.length; i++)\r
-                               elements.push(nl[i]);\r
-\r
-                       // If base element found, add that infront of baseURL\r
-                       nl = document.getElementsByTagName('base');\r
-                       for (i=0; i<nl.length; i++) {\r
-                               if (nl[i].href)\r
-                                       baseHREF = nl[i].href;\r
-                       }\r
-\r
-                       for (i=0; i<elements.length; i++) {\r
-                               if (elements[i].src && (elements[i].src.indexOf("tiny_mce.js") != -1 || elements[i].src.indexOf("tiny_mce_dev.js") != -1 || elements[i].src.indexOf("tiny_mce_src.js") != -1 || elements[i].src.indexOf("tiny_mce_gzip") != -1)) {\r
-                                       src = elements[i].src;\r
-\r
-                                       tinyMCE.srcMode = (src.indexOf('_src') != -1 || src.indexOf('_dev') != -1) ? '_src' : '';\r
-                                       tinyMCE.gzipMode = src.indexOf('_gzip') != -1;\r
-                                       src = src.substring(0, src.lastIndexOf('/'));\r
-\r
-                                       if (settings.exec_mode == "src" || settings.exec_mode == "normal")\r
-                                               tinyMCE.srcMode = settings.exec_mode == "src" ? '_src' : '';\r
-\r
-                                       // Force it absolute if page has a base href\r
-                                       if (baseHREF !== '' && src.indexOf('://') == -1)\r
-                                               tinyMCE.baseURL = baseHREF + src;\r
-                                       else\r
-                                               tinyMCE.baseURL = src;\r
-\r
-                                       break;\r
-                               }\r
-                       }\r
-               }\r
-\r
-               // Get document base path\r
-               this.documentBasePath = document.location.href;\r
-               if (this.documentBasePath.indexOf('?') != -1)\r
-                       this.documentBasePath = this.documentBasePath.substring(0, this.documentBasePath.indexOf('?'));\r
-               this.documentURL = this.documentBasePath;\r
-               this.documentBasePath = this.documentBasePath.substring(0, this.documentBasePath.lastIndexOf('/'));\r
-\r
-               // If not HTTP absolute\r
-               if (tinyMCE.baseURL.indexOf('://') == -1 && tinyMCE.baseURL.charAt(0) != '/') {\r
-                       // If site absolute\r
-                       tinyMCE.baseURL = this.documentBasePath + "/" + tinyMCE.baseURL;\r
-               }\r
-\r
-               // Set default values on settings\r
-               this._def("mode", "none");\r
-               this._def("theme", "advanced");\r
-               this._def("plugins", "", true);\r
-               this._def("language", "en");\r
-               this._def("docs_language", this.settings.language);\r
-               this._def("elements", "");\r
-               this._def("textarea_trigger", "mce_editable");\r
-               this._def("editor_selector", "");\r
-               this._def("editor_deselector", "mceNoEditor");\r
-               this._def("valid_elements", "+a[id|style|rel|rev|charset|hreflang|dir|lang|tabindex|accesskey|type|name|href|target|title|class|onfocus|onblur|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup],-strong/-b[class|style],-em/-i[class|style],-strike[class|style],-u[class|style],#p[id|style|dir|class|align],-ol[class|style],-ul[class|style],-li[class|style],br,img[id|dir|lang|longdesc|usemap|style|class|src|onmouseover|onmouseout|border|alt=|title|hspace|vspace|width|height|align],-sub[style|class],-sup[style|class],-blockquote[dir|style],-table[border=0|cellspacing|cellpadding|width|height|class|align|summary|style|dir|id|lang|bgcolor|background|bordercolor],-tr[id|lang|dir|class|rowspan|width|height|align|valign|style|bgcolor|background|bordercolor],tbody[id|class],thead[id|class],tfoot[id|class],#td[id|lang|dir|class|colspan|rowspan|width|height|align|valign|style|bgcolor|background|bordercolor|scope],-th[id|lang|dir|class|colspan|rowspan|width|height|align|valign|style|scope],caption[id|lang|dir|class|style],-div[id|dir|class|align|style],-span[style|class|align],-pre[class|align|style],address[class|align|style],-h1[id|style|dir|class|align],-h2[id|style|dir|class|align],-h3[id|style|dir|class|align],-h4[id|style|dir|class|align],-h5[id|style|dir|class|align],-h6[id|style|dir|class|align],hr[class|style],-font[face|size|style|id|class|dir|color],dd[id|class|title|style|dir|lang],dl[id|class|title|style|dir|lang],dt[id|class|title|style|dir|lang],cite[title|id|class|style|dir|lang],abbr[title|id|class|style|dir|lang],acronym[title|id|class|style|dir|lang],del[title|id|class|style|dir|lang|datetime|cite],ins[title|id|class|style|dir|lang|datetime|cite]");\r
-               this._def("extended_valid_elements", "");\r
-               this._def("invalid_elements", "");\r
-               this._def("encoding", "");\r
-               this._def("urlconverter_callback", tinyMCE.getParam("urlconvertor_callback", "TinyMCE_Engine.prototype.convertURL"));\r
-               this._def("save_callback", "");\r
-               this._def("force_br_newlines", false);\r
-               this._def("force_p_newlines", true);\r
-               this._def("add_form_submit_trigger", true);\r
-               this._def("relative_urls", true);\r
-               this._def("remove_script_host", true);\r
-               this._def("focus_alert", true);\r
-               this._def("document_base_url", this.documentURL);\r
-               this._def("visual", true);\r
-               this._def("visual_table_class", "mceVisualAid");\r
-               this._def("setupcontent_callback", "");\r
-               this._def("fix_content_duplication", true);\r
-               this._def("custom_undo_redo", true);\r
-               this._def("custom_undo_redo_levels", -1);\r
-               this._def("custom_undo_redo_keyboard_shortcuts", true);\r
-               this._def("custom_undo_redo_restore_selection", true);\r
-               this._def("custom_undo_redo_global", false);\r
-               this._def("verify_html", true);\r
-               this._def("apply_source_formatting", false);\r
-               this._def("directionality", "ltr");\r
-               this._def("cleanup_on_startup", false);\r
-               this._def("inline_styles", false);\r
-               this._def("convert_newlines_to_brs", false);\r
-               this._def("auto_reset_designmode", true);\r
-               this._def("entities", "39,#39,160,nbsp,161,iexcl,162,cent,163,pound,164,curren,165,yen,166,brvbar,167,sect,168,uml,169,copy,170,ordf,171,laquo,172,not,173,shy,174,reg,175,macr,176,deg,177,plusmn,178,sup2,179,sup3,180,acute,181,micro,182,para,183,middot,184,cedil,185,sup1,186,ordm,187,raquo,188,frac14,189,frac12,190,frac34,191,iquest,192,Agrave,193,Aacute,194,Acirc,195,Atilde,196,Auml,197,Aring,198,AElig,199,Ccedil,200,Egrave,201,Eacute,202,Ecirc,203,Euml,204,Igrave,205,Iacute,206,Icirc,207,Iuml,208,ETH,209,Ntilde,210,Ograve,211,Oacute,212,Ocirc,213,Otilde,214,Ouml,215,times,216,Oslash,217,Ugrave,218,Uacute,219,Ucirc,220,Uuml,221,Yacute,222,THORN,223,szlig,224,agrave,225,aacute,226,acirc,227,atilde,228,auml,229,aring,230,aelig,231,ccedil,232,egrave,233,eacute,234,ecirc,235,euml,236,igrave,237,iacute,238,icirc,239,iuml,240,eth,241,ntilde,242,ograve,243,oacute,244,ocirc,245,otilde,246,ouml,247,divide,248,oslash,249,ugrave,250,uacute,251,ucirc,252,uuml,253,yacute,254,thorn,255,yuml,402,fnof,913,Alpha,914,Beta,915,Gamma,916,Delta,917,Epsilon,918,Zeta,919,Eta,920,Theta,921,Iota,922,Kappa,923,Lambda,924,Mu,925,Nu,926,Xi,927,Omicron,928,Pi,929,Rho,931,Sigma,932,Tau,933,Upsilon,934,Phi,935,Chi,936,Psi,937,Omega,945,alpha,946,beta,947,gamma,948,delta,949,epsilon,950,zeta,951,eta,952,theta,953,iota,954,kappa,955,lambda,956,mu,957,nu,958,xi,959,omicron,960,pi,961,rho,962,sigmaf,963,sigma,964,tau,965,upsilon,966,phi,967,chi,968,psi,969,omega,977,thetasym,978,upsih,982,piv,8226,bull,8230,hellip,8242,prime,8243,Prime,8254,oline,8260,frasl,8472,weierp,8465,image,8476,real,8482,trade,8501,alefsym,8592,larr,8593,uarr,8594,rarr,8595,darr,8596,harr,8629,crarr,8656,lArr,8657,uArr,8658,rArr,8659,dArr,8660,hArr,8704,forall,8706,part,8707,exist,8709,empty,8711,nabla,8712,isin,8713,notin,8715,ni,8719,prod,8721,sum,8722,minus,8727,lowast,8730,radic,8733,prop,8734,infin,8736,ang,8743,and,8744,or,8745,cap,8746,cup,8747,int,8756,there4,8764,sim,8773,cong,8776,asymp,8800,ne,8801,equiv,8804,le,8805,ge,8834,sub,8835,sup,8836,nsub,8838,sube,8839,supe,8853,oplus,8855,otimes,8869,perp,8901,sdot,8968,lceil,8969,rceil,8970,lfloor,8971,rfloor,9001,lang,9002,rang,9674,loz,9824,spades,9827,clubs,9829,hearts,9830,diams,34,quot,38,amp,60,lt,62,gt,338,OElig,339,oelig,352,Scaron,353,scaron,376,Yuml,710,circ,732,tilde,8194,ensp,8195,emsp,8201,thinsp,8204,zwnj,8205,zwj,8206,lrm,8207,rlm,8211,ndash,8212,mdash,8216,lsquo,8217,rsquo,8218,sbquo,8220,ldquo,8221,rdquo,8222,bdquo,8224,dagger,8225,Dagger,8240,permil,8249,lsaquo,8250,rsaquo,8364,euro", true);\r
-               this._def("entity_encoding", "named");\r
-               this._def("cleanup_callback", "");\r
-               this._def("add_unload_trigger", true);\r
-               this._def("ask", false);\r
-               this._def("nowrap", false);\r
-               this._def("auto_resize", false);\r
-               this._def("auto_focus", false);\r
-               this._def("cleanup", true);\r
-               this._def("remove_linebreaks", true);\r
-               this._def("button_tile_map", false);\r
-               this._def("submit_patch", true);\r
-               this._def("browsers", "msie,safari,gecko,opera", true);\r
-               this._def("dialog_type", "window");\r
-               this._def("accessibility_warnings", true);\r
-               this._def("accessibility_focus", true);\r
-               this._def("merge_styles_invalid_parents", "");\r
-               this._def("force_hex_style_colors", true);\r
-               this._def("trim_span_elements", true);\r
-               this._def("convert_fonts_to_spans", false);\r
-               this._def("doctype", '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">');\r
-               this._def("font_size_classes", '');\r
-               this._def("font_size_style_values", 'xx-small,x-small,small,medium,large,x-large,xx-large', true);\r
-               this._def("event_elements", 'a,img', true);\r
-               this._def("convert_urls", true);\r
-               this._def("table_inline_editing", false);\r
-               this._def("object_resizing", true);\r
-               this._def("custom_shortcuts", true);\r
-               this._def("convert_on_click", false);\r
-               this._def("content_css", '');\r
-               this._def("fix_list_elements", true);\r
-               this._def("fix_table_elements", false);\r
-               this._def("strict_loading_mode", document.contentType == 'application/xhtml+xml');\r
-               this._def("hidden_tab_class", '');\r
-               this._def("display_tab_class", '');\r
-               this._def("gecko_spellcheck", false);\r
-               this._def("hide_selects_on_submit", true);\r
-               this._def("forced_root_block", false);\r
-               this._def("remove_trailing_nbsp", false);\r
-               this._def("save_on_tinymce_forms", false);\r
-\r
-               // Force strict loading mode to false on non Gecko browsers\r
-               if (this.isMSIE && !this.isOpera)\r
-                       this.settings.strict_loading_mode = false;\r
-\r
-               // Browser check IE\r
-               if (this.isMSIE && this.settings.browsers.indexOf('msie') == -1)\r
-                       return;\r
-\r
-               // Browser check Gecko\r
-               if (this.isGecko && this.settings.browsers.indexOf('gecko') == -1)\r
-                       return;\r
-\r
-               // Browser check Safari\r
-               if (this.isSafari && this.settings.browsers.indexOf('safari') == -1)\r
-                       return;\r
-\r
-               // Browser check Opera\r
-               if (this.isOpera && this.settings.browsers.indexOf('opera') == -1)\r
-                       return;\r
-\r
-               // If not super absolute make it so\r
-               baseHREF = tinyMCE.settings.document_base_url;\r
-               h = document.location.href;\r
-               p = h.indexOf('://');\r
-               if (p > 0 && document.location.protocol != "file:") {\r
-                       p = h.indexOf('/', p + 3);\r
-                       h = h.substring(0, p);\r
-\r
-                       if (baseHREF.indexOf('://') == -1)\r
-                               baseHREF = h + baseHREF;\r
-\r
-                       tinyMCE.settings.document_base_url = baseHREF;\r
-                       tinyMCE.settings.document_base_prefix = h;\r
-               }\r
-\r
-               // Trim away query part\r
-               if (baseHREF.indexOf('?') != -1)\r
-                       baseHREF = baseHREF.substring(0, baseHREF.indexOf('?'));\r
-\r
-               this.settings.base_href = baseHREF.substring(0, baseHREF.lastIndexOf('/')) + "/";\r
-\r
-               theme = this.settings.theme;\r
-               this.inlineStrict = 'A|BR|SPAN|BDO|MAP|OBJECT|IMG|TT|I|B|BIG|SMALL|EM|STRONG|DFN|CODE|Q|SAMP|KBD|VAR|CITE|ABBR|ACRONYM|SUB|SUP|#text|#comment';\r
-               this.inlineTransitional = 'A|BR|SPAN|BDO|OBJECT|APPLET|IMG|MAP|IFRAME|TT|I|B|U|S|STRIKE|BIG|SMALL|FONT|BASEFONT|EM|STRONG|DFN|CODE|Q|SAMP|KBD|VAR|CITE|ABBR|ACRONYM|SUB|SUP|INPUT|SELECT|TEXTAREA|LABEL|BUTTON|#text|#comment';\r
-               this.blockElms = 'H[1-6]|P|DIV|ADDRESS|PRE|FORM|TABLE|LI|OL|UL|TD|CAPTION|BLOCKQUOTE|CENTER|DL|DT|DD|DIR|FIELDSET|FORM|NOSCRIPT|NOFRAMES|MENU|ISINDEX|SAMP';\r
-               this.blockRegExp = new RegExp("^(" + this.blockElms + ")$", "i");\r
-               this.posKeyCodes = [13,45,36,35,33,34,37,38,39,40];\r
-               this.uniqueURL = 'javascript:void(091039730);'; // Make unique URL non real URL\r
-               this.uniqueTag = '<div id="mceTMPElement" style="display: none">TMP</div>';\r
-               this.callbacks = ['onInit', 'getInfo', 'getEditorTemplate', 'setupContent', 'onChange', 'onPageLoad', 'handleNodeChange', 'initInstance', 'execCommand', 'getControlHTML', 'handleEvent', 'cleanup', 'removeInstance'];\r
-\r
-               // Theme url\r
-               this.settings.theme_href = tinyMCE.baseURL + "/themes/" + theme;\r
-\r
-               if (!tinyMCE.isIE || tinyMCE.isOpera)\r
-                       this.settings.force_br_newlines = false;\r
-\r
-               if (tinyMCE.getParam("popups_css", false)) {\r
-                       cssPath = tinyMCE.getParam("popups_css", "");\r
-\r
-                       // Is relative\r
-                       if (cssPath.indexOf('://') == -1 && cssPath.charAt(0) != '/')\r
-                               this.settings.popups_css = this.documentBasePath + "/" + cssPath;\r
-                       else\r
-                               this.settings.popups_css = cssPath;\r
-               } else\r
-                       this.settings.popups_css = tinyMCE.baseURL + "/themes/" + theme + "/css/editor_popup.css";\r
-\r
-               if (tinyMCE.getParam("editor_css", false)) {\r
-                       cssPath = tinyMCE.getParam("editor_css", "");\r
-\r
-                       // Is relative\r
-                       if (cssPath.indexOf('://') == -1 && cssPath.charAt(0) != '/')\r
-                               this.settings.editor_css = this.documentBasePath + "/" + cssPath;\r
-                       else\r
-                               this.settings.editor_css = cssPath;\r
-               } else {\r
-                       if (this.settings.editor_css !== '')\r
-                               this.settings.editor_css = tinyMCE.baseURL + "/themes/" + theme + "/css/editor_ui.css";\r
-               }\r
-\r
-               // Only do this once\r
-               if (this.configs.length == 0) {\r
-                       if (typeof(TinyMCECompressed) == "undefined") {\r
-                               tinyMCE.addEvent(window, "DOMContentLoaded", TinyMCE_Engine.prototype.onLoad);\r
-\r
-                               if (tinyMCE.isRealIE) {\r
-                                       if (document.body)\r
-                                               tinyMCE.addEvent(document.body, "readystatechange", TinyMCE_Engine.prototype.onLoad);\r
-                                       else\r
-                                               tinyMCE.addEvent(document, "readystatechange", TinyMCE_Engine.prototype.onLoad);\r
-                               }\r
-\r
-                               tinyMCE.addEvent(window, "load", TinyMCE_Engine.prototype.onLoad);\r
-                               tinyMCE._addUnloadEvents();\r
-                       }\r
-               }\r
-\r
-               this.loadScript(tinyMCE.baseURL + '/themes/' + this.settings.theme + '/editor_template' + tinyMCE.srcMode + '.js');\r
-               this.loadScript(tinyMCE.baseURL + '/langs/' + this.settings.language +  '.js');\r
-               this.loadCSS(this.settings.editor_css);\r
-\r
-               // Add plugins\r
-               p = tinyMCE.getParam('plugins', '', true, ',');\r
-               if (p.length > 0) {\r
-                       for (i=0; i<p.length; i++) {\r
-                               if (p[i].charAt(0) != '-')\r
-                                       this.loadScript(tinyMCE.baseURL + '/plugins/' + p[i] + '/editor_plugin' + tinyMCE.srcMode + '.js');\r
-                       }\r
-               }\r
-\r
-               // Setup entities\r
-               if (tinyMCE.getParam('entity_encoding') == 'named') {\r
-                       settings.cleanup_entities = [];\r
-                       entities = tinyMCE.getParam('entities', '', true, ',');\r
-                       for (i=0; i<entities.length; i+=2)\r
-                               settings.cleanup_entities['c' + entities[i]] = entities[i+1];\r
-               }\r
-\r
-               // Save away this config\r
-               settings.index = this.configs.length;\r
-               this.configs[this.configs.length] = settings;\r
-\r
-               // Start loading first one in chain\r
-               this.loadNextScript();\r
-\r
-               // Force flicker free CSS backgrounds in IE\r
-               if (this.isIE && !this.isOpera) {\r
-                       try {\r
-                               document.execCommand('BackgroundImageCache', false, true);\r
-                       } catch (e) {\r
-                               // Ignore\r
-                       }\r
-               }\r
-\r
-               // Setup XML encoding regexps\r
-               this.xmlEncodeRe = new RegExp('[<>&"]', 'g');\r
-       },\r
-\r
-       _addUnloadEvents : function() {\r
-               var st = tinyMCE.settings.add_unload_trigger;\r
-\r
-               if (tinyMCE.isIE) {\r
-                       if (st) {\r
-                               tinyMCE.addEvent(window, "unload", TinyMCE_Engine.prototype.unloadHandler);\r
-                               tinyMCE.addEvent(window.document, "beforeunload", TinyMCE_Engine.prototype.unloadHandler);\r
-                       }\r
-               } else {\r
-                       if (st)\r
-                               tinyMCE.addEvent(window, "unload", function () {tinyMCE.triggerSave(true, true);});\r
-               }\r
-       },\r
-\r
-       _def : function(key, def_val, t) {\r
-               var v = tinyMCE.getParam(key, def_val);\r
-\r
-               v = t ? v.replace(/\s+/g, "") : v;\r
-\r
-               this.settings[key] = v;\r
-       },\r
-\r
-       hasPlugin : function(n) {\r
-               return typeof(this.plugins[n]) != "undefined" && this.plugins[n] != null;\r
-       },\r
-\r
-       addPlugin : function(n, p) {\r
-               var op = this.plugins[n];\r
-\r
-               // Use the previous plugin object base URL used when loading external plugins\r
-               p.baseURL = op ? op.baseURL : tinyMCE.baseURL + "/plugins/" + n;\r
-               this.plugins[n] = p;\r
-\r
-               this.loadNextScript();\r
-       },\r
-\r
-       setPluginBaseURL : function(n, u) {\r
-               var op = this.plugins[n];\r
-\r
-               if (op)\r
-                       op.baseURL = u;\r
-               else\r
-                       this.plugins[n] = {baseURL : u};\r
-       },\r
-\r
-       loadPlugin : function(n, u) {\r
-               u = u.indexOf('.js') != -1 ? u.substring(0, u.lastIndexOf('/')) : u;\r
-               u = u.charAt(u.length-1) == '/' ? u.substring(0, u.length-1) : u;\r
-               this.plugins[n] = {baseURL : u};\r
-               this.loadScript(u + "/editor_plugin" + (tinyMCE.srcMode ? '_src' : '') + ".js");\r
-       },\r
-\r
-       hasTheme : function(n) {\r
-               return typeof(this.themes[n]) != "undefined" && this.themes[n] != null;\r
-       },\r
-\r
-       addTheme : function(n, t) {\r
-               this.themes[n] = t;\r
-\r
-               this.loadNextScript();\r
-       },\r
-\r
-       addMenu : function(n, m) {\r
-               this.menus[n] = m;\r
-       },\r
-\r
-       hasMenu : function(n) {\r
-               return typeof(this.plugins[n]) != "undefined" && this.plugins[n] != null;\r
-       },\r
-\r
-       loadScript : function(url) {\r
-               var i;\r
-\r
-               for (i=0; i<this.loadedFiles.length; i++) {\r
-                       if (this.loadedFiles[i] == url)\r
-                               return;\r
-               }\r
-\r
-               if (tinyMCE.settings.strict_loading_mode)\r
-                       this.pendingFiles[this.pendingFiles.length] = url;\r
-               else\r
-                       document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + url + '"></script>');\r
-\r
-               this.loadedFiles[this.loadedFiles.length] = url;\r
-       },\r
-\r
-       loadNextScript : function() {\r
-               var d = document, se;\r
-\r
-               if (!tinyMCE.settings.strict_loading_mode)\r
-                       return;\r
-\r
-               if (this.loadingIndex < this.pendingFiles.length) {\r
-                       se = d.createElementNS('http://www.w3.org/1999/xhtml', 'script');\r
-                       se.setAttribute('language', 'javascript');\r
-                       se.setAttribute('type', 'text/javascript');\r
-                       se.setAttribute('src', this.pendingFiles[this.loadingIndex++]);\r
-\r
-                       d.getElementsByTagName("head")[0].appendChild(se);\r
-               } else\r
-                       this.loadingIndex = -1; // Done with loading\r
-       },\r
-\r
-       loadCSS : function(url) {\r
-               var ar = url.replace(/\s+/, '').split(',');\r
-               var lflen = 0, csslen = 0, skip = false;\r
-               var x = 0, i = 0, nl, le;\r
-\r
-               for (x = 0,csslen = ar.length; x<csslen; x++) {\r
-                       if (ar[x] != null && ar[x] != 'null' && ar[x].length > 0) {\r
-                               /* Make sure it doesn't exist. */\r
-                               for (i=0, lflen=this.loadedFiles.length; i<lflen; i++) {\r
-                                       if (this.loadedFiles[i] == ar[x]) {\r
-                                               skip = true;\r
-                                               break;\r
-                                       }\r
-                               }\r
-\r
-                               if (!skip) {\r
-                                       if (tinyMCE.settings.strict_loading_mode) {\r
-                                               nl = document.getElementsByTagName("head");\r
-\r
-                                               le = document.createElement('link');\r
-                                               le.setAttribute('href', ar[x]);\r
-                                               le.setAttribute('rel', 'stylesheet');\r
-                                               le.setAttribute('type', 'text/css');\r
-\r
-                                               nl[0].appendChild(le);                  \r
-                                       } else\r
-                                               document.write('<link href="' + ar[x] + '" rel="stylesheet" type="text/css" />');\r
-\r
-                                       this.loadedFiles[this.loadedFiles.length] = ar[x];\r
-                               }\r
-                       }\r
-               }\r
-       },\r
-\r
-       importCSS : function(doc, css) {\r
-               var css_ary = css.replace(/\s+/, '').split(',');\r
-               var csslen, elm, headArr, x, css_file;\r
-\r
-               for (x = 0, csslen = css_ary.length; x<csslen; x++) {\r
-                       css_file = css_ary[x];\r
-\r
-                       if (css_file != null && css_file != 'null' && css_file.length > 0) {\r
-                               // Is relative, make absolute\r
-                               if (css_file.indexOf('://') == -1 && css_file.charAt(0) != '/')\r
-                                       css_file = this.documentBasePath + "/" + css_file;\r
-\r
-                               if (typeof(doc.createStyleSheet) == "undefined") {\r
-                                       elm = doc.createElement("link");\r
-\r
-                                       elm.rel = "stylesheet";\r
-                                       elm.href = css_file;\r
-\r
-                                       if ((headArr = doc.getElementsByTagName("head")) != null && headArr.length > 0)\r
-                                               headArr[0].appendChild(elm);\r
-                               } else\r
-                                       doc.createStyleSheet(css_file);\r
-                       }\r
-               }\r
-       },\r
-\r
-       confirmAdd : function(e, settings) {\r
-               var elm = tinyMCE.isIE ? event.srcElement : e.target;\r
-               var elementId = elm.name ? elm.name : elm.id;\r
-\r
-               tinyMCE.settings = settings;\r
-\r
-               if (tinyMCE.settings.convert_on_click || (!elm.getAttribute('mce_noask') && confirm(tinyMCELang.lang_edit_confirm)))\r
-                       tinyMCE.addMCEControl(elm, elementId);\r
-\r
-               elm.setAttribute('mce_noask', 'true');\r
-       },\r
-\r
-       updateContent : function(form_element_name) {\r
-               var formElement, n, inst, doc;\r
-\r
-               // Find MCE instance linked to given form element and copy it's value\r
-               formElement = document.getElementById(form_element_name);\r
-               for (n in tinyMCE.instances) {\r
-                       inst = tinyMCE.instances[n];\r
-\r
-                       if (!tinyMCE.isInstance(inst))\r
-                               continue;\r
-\r
-                       inst.switchSettings();\r
-\r
-                       if (inst.formElement == formElement) {\r
-                               doc = inst.getDoc();\r
-\r
-                               tinyMCE._setHTML(doc, inst.formElement.value);\r
-\r
-                               if (!tinyMCE.isIE)\r
-                                       doc.body.innerHTML = tinyMCE._cleanupHTML(inst, doc, this.settings, doc.body, inst.visualAid);\r
-                       }\r
-               }\r
-       },\r
-\r
-       addMCEControl : function(replace_element, form_element_name, target_document) {\r
-               var id = "mce_editor_" + tinyMCE.idCounter++;\r
-               var inst = new TinyMCE_Control(tinyMCE.settings);\r
-\r
-               inst.editorId = id;\r
-               this.instances[id] = inst;\r
-\r
-               inst._onAdd(replace_element, form_element_name, target_document);\r
-       },\r
-\r
-       removeInstance : function(ti) {\r
-               var t = [], n, i;\r
-\r
-               // Remove from instances\r
-               for (n in tinyMCE.instances) {\r
-                       i = tinyMCE.instances[n];\r
-\r
-                       if (tinyMCE.isInstance(i) && ti != i)\r
-                                       t[n] = i;\r
-               }\r
-\r
-               tinyMCE.instances = t;\r
-\r
-               // Remove from global undo/redo\r
-               n = [];\r
-               t = tinyMCE.undoLevels;\r
-\r
-               for (i=0; i<t.length; i++) {\r
-                       if (t[i] != ti)\r
-                               n.push(t[i]);\r
-               }\r
-\r
-               tinyMCE.undoLevels = n;\r
-               tinyMCE.undoIndex = n.length;\r
-\r
-               // Dispatch remove instance call\r
-               tinyMCE.dispatchCallback(ti, 'remove_instance_callback', 'removeInstance', ti);\r
-\r
-               return ti;\r
-       },\r
-\r
-       removeMCEControl : function(editor_id) {\r
-               var inst = tinyMCE.getInstanceById(editor_id), h, re, ot, tn, n;\r
-\r
-               if (inst) {\r
-                       inst.switchSettings();\r
-\r
-                       editor_id = inst.editorId;\r
-                       h = tinyMCE.getContent(editor_id);\r
-\r
-                       this.removeInstance(inst);\r
-\r
-                       tinyMCE.selectedElement = null;\r
-                       tinyMCE.selectedInstance = null;\r
-\r
-                       tinyMCE.selectedElement = null;\r
-                       tinyMCE.selectedInstance = null;\r
-\r
-                       // Try finding an instance\r
-                       for (n in tinyMCE.instances) {\r
-                               if (!tinyMCE.isInstance(tinyMCE.instances[n]))\r
-                                       continue;\r
-\r
-                               tinyMCE.selectedInstance = tinyMCE.instances[n];\r
-                               break;\r
-                       }\r
-\r
-                       // Remove element\r
-                       re = document.getElementById(editor_id + "_parent");\r
-                       ot = inst.oldTargetElement;\r
-                       tn = ot.nodeName.toLowerCase();\r
-\r
-                       if (tn == "textarea" || tn == "input") {\r
-                               re.parentNode.removeChild(re);\r
-                               ot.style.display = "inline";\r
-                               ot.value = h;\r
-                       } else {\r
-                               ot.innerHTML = h;\r
-                               ot.style.display = 'block';\r
-                               re.parentNode.insertBefore(ot, re);\r
-                               re.parentNode.removeChild(re);\r
-                       }\r
-               }\r
-       },\r
-\r
-       triggerSave : function(skip_cleanup, skip_callback) {\r
-               var inst, n;\r
-\r
-               // Default to false\r
-               if (typeof(skip_cleanup) == "undefined")\r
-                       skip_cleanup = false;\r
-\r
-               // Default to false\r
-               if (typeof(skip_callback) == "undefined")\r
-                       skip_callback = false;\r
-\r
-               // Cleanup and set all form fields\r
-               for (n in tinyMCE.instances) {\r
-                       inst = tinyMCE.instances[n];\r
-\r
-                       if (!tinyMCE.isInstance(inst))\r
-                               continue;\r
-\r
-                       inst.triggerSave(skip_cleanup, skip_callback);\r
-               }\r
-       },\r
-\r
-       resetForm : function(form_index) {\r
-               var i, inst, n, formObj = document.forms[form_index];\r
-\r
-               for (n in tinyMCE.instances) {\r
-                       inst = tinyMCE.instances[n];\r
-\r
-                       if (!tinyMCE.isInstance(inst))\r
-                               continue;\r
-\r
-                       inst.switchSettings();\r
-\r
-                       for (i=0; i<formObj.elements.length; i++) {\r
-                               if (inst.formTargetElementId == formObj.elements[i].name)\r
-                                       inst.getBody().innerHTML = inst.startContent;\r
-                       }\r
-               }\r
-       },\r
-\r
-       execInstanceCommand : function(editor_id, command, user_interface, value, focus) {\r
-               var inst = tinyMCE.getInstanceById(editor_id), r;\r
-\r
-               if (inst) {\r
-                       r = inst.selection.getRng();\r
-\r
-                       if (typeof(focus) == "undefined")\r
-                               focus = true;\r
-\r
-                       // IE bug lost focus on images in absolute divs Bug #1534575\r
-                       if (focus && (!r || !r.item))\r
-                               inst.contentWindow.focus();\r
-\r
-                       // Reset design mode if lost\r
-                       inst.autoResetDesignMode();\r
-\r
-                       this.selectedElement = inst.getFocusElement();\r
-                       inst.select();\r
-                       tinyMCE.execCommand(command, user_interface, value);\r
-\r
-                       // Cancel event so it doesn't call onbeforeonunlaod\r
-                       if (tinyMCE.isIE && window.event != null)\r
-                               tinyMCE.cancelEvent(window.event);\r
-               }\r
-       },\r
-\r
-       execCommand : function(command, user_interface, value) {\r
-               var inst = tinyMCE.selectedInstance, n, pe, te;\r
-\r
-               // Default input\r
-               user_interface = user_interface ? user_interface : false;\r
-               value = value ? value : null;\r
-\r
-               if (inst)\r
-                       inst.switchSettings();\r
-\r
-               switch (command) {\r
-                       case "Undo":\r
-                               if (this.getParam('custom_undo_redo_global')) {\r
-                                       if (this.undoIndex > 0) {\r
-                                               tinyMCE.nextUndoRedoAction = 'Undo';\r
-                                               inst = this.undoLevels[--this.undoIndex];\r
-                                               inst.select();\r
-\r
-                                               if (!tinyMCE.nextUndoRedoInstanceId)\r
-                                                       inst.execCommand('Undo');\r
-                                       }\r
-                               } else\r
-                                       inst.execCommand('Undo');\r
-                               return true;\r
-\r
-                       case "Redo":\r
-                               if (this.getParam('custom_undo_redo_global')) {\r
-                                       if (this.undoIndex <= this.undoLevels.length - 1) {\r
-                                               tinyMCE.nextUndoRedoAction = 'Redo';\r
-                                               inst = this.undoLevels[this.undoIndex++];\r
-                                               inst.select();\r
-\r
-                                               if (!tinyMCE.nextUndoRedoInstanceId)\r
-                                                       inst.execCommand('Redo');\r
-                                       }\r
-                               } else\r
-                                       inst.execCommand('Redo');\r
-\r
-                               return true;\r
-\r
-                       case 'mceFocus':\r
-                               inst = tinyMCE.getInstanceById(value);\r
-\r
-                               if (inst)\r
-                                       inst.getWin().focus();\r
-                       return;\r
-\r
-                       case "mceAddControl":\r
-                       case "mceAddEditor":\r
-                               tinyMCE.addMCEControl(tinyMCE._getElementById(value), value);\r
-                               return;\r
-\r
-                       case "mceAddFrameControl":\r
-                               tinyMCE.addMCEControl(tinyMCE._getElementById(value.element, value.document), value.element, value.document);\r
-                               return;\r
-\r
-                       case "mceRemoveControl":\r
-                       case "mceRemoveEditor":\r
-                               tinyMCE.removeMCEControl(value);\r
-                               return;\r
-\r
-                       case "mceToggleEditor":\r
-                               inst = tinyMCE.getInstanceById(value);\r
-\r
-                               if (inst) {\r
-                                       pe = document.getElementById(inst.editorId + '_parent');\r
-                                       te = inst.oldTargetElement;\r
-\r
-                                       if (typeof(inst.enabled) == 'undefined')\r
-                                               inst.enabled = true;\r
-\r
-                                       inst.enabled = !inst.enabled;\r
-\r
-                                       if (!inst.enabled) {\r
-                                               pe.style.display = 'none';\r
-\r
-                                               if (te.nodeName == 'TEXTAREA' || te.nodeName == 'INPUT')\r
-                                                       te.value = inst.getHTML();\r
-                                               else\r
-                                                       te.innerHTML = inst.getHTML();\r
-\r
-                                               te.style.display = inst.oldTargetDisplay;\r
-                                               tinyMCE.dispatchCallback(inst, 'hide_instance_callback', 'hideInstance', inst);\r
-                                       } else {\r
-                                               pe.style.display = 'block';\r
-                                               te.style.display = 'none';\r
-\r
-                                               if (te.nodeName == 'TEXTAREA' || te.nodeName == 'INPUT')\r
-                                                       inst.setHTML(te.value);\r
-                                               else\r
-                                                       inst.setHTML(te.innerHTML);\r
-\r
-                                               inst.useCSS = false;\r
-                                               tinyMCE.dispatchCallback(inst, 'show_instance_callback', 'showInstance', inst);\r
-                                       }\r
-                               } else\r
-                                       tinyMCE.addMCEControl(tinyMCE._getElementById(value), value);\r
-\r
-                               return;\r
-\r
-                       case "mceResetDesignMode":\r
-                               // Resets the designmode state of the editors in Gecko\r
-                               if (tinyMCE.isGecko) {\r
-                                       for (n in tinyMCE.instances) {\r
-                                               if (!tinyMCE.isInstance(tinyMCE.instances[n]))\r
-                                                       continue;\r
-\r
-                                               try {\r
-                                                       tinyMCE.instances[n].getDoc().designMode = "off";\r
-                                                       tinyMCE.instances[n].getDoc().designMode = "on";\r
-                                                       tinyMCE.instances[n].useCSS = false;\r
-                                               } catch (e) {\r
-                                                       // Ignore any errors\r
-                                               }\r
-                                       }\r
-                               }\r
-\r
-                               return;\r
-               }\r
-\r
-               if (inst) {\r
-                       inst.execCommand(command, user_interface, value);\r
-               } else if (tinyMCE.settings.focus_alert)\r
-                       alert(tinyMCELang.lang_focus_alert);\r
-       },\r
-\r
-       _createIFrame : function(replace_element, doc, win) {\r
-               var iframe, id = replace_element.getAttribute("id");\r
-               var aw, ah;\r
-\r
-               if (typeof(doc) == "undefined")\r
-                       doc = document;\r
-\r
-               if (typeof(win) == "undefined")\r
-                       win = window;\r
-\r
-               iframe = doc.createElement("iframe");\r
-\r
-               aw = "" + tinyMCE.settings.area_width;\r
-               ah = "" + tinyMCE.settings.area_height;\r
-\r
-               if (aw.indexOf('%') == -1) {\r
-                       aw = parseInt(aw);\r
-                       aw = (isNaN(aw) || aw < 0) ? 300 : aw;\r
-                       aw = aw + "px";\r
-               }\r
-\r
-               if (ah.indexOf('%') == -1) {\r
-                       ah = parseInt(ah);\r
-                       ah = (isNaN(ah) || ah < 0) ? 240 : ah;\r
-                       ah = ah + "px";\r
-               }\r
-\r
-               iframe.setAttribute("id", id);\r
-               iframe.setAttribute("name", id);\r
-               iframe.setAttribute("class", "mceEditorIframe");\r
-               iframe.setAttribute("border", "0");\r
-               iframe.setAttribute("frameBorder", "0");\r
-               iframe.setAttribute("marginWidth", "0");\r
-               iframe.setAttribute("marginHeight", "0");\r
-               iframe.setAttribute("leftMargin", "0");\r
-               iframe.setAttribute("topMargin", "0");\r
-               iframe.setAttribute("width", aw);\r
-               iframe.setAttribute("height", ah);\r
-               iframe.setAttribute("allowtransparency", "true");\r
-               iframe.className = 'mceEditorIframe';\r
-\r
-               if (tinyMCE.settings.auto_resize)\r
-                       iframe.setAttribute("scrolling", "no");\r
-\r
-               // Must have a src element in MSIE HTTPs breaks aswell as absoute URLs\r
-               if (tinyMCE.isRealIE)\r
-                       iframe.setAttribute("src", this.settings.default_document);\r
-\r
-               iframe.style.width = aw;\r
-               iframe.style.height = ah;\r
-\r
-               // Ugly hack for Gecko problem in strict mode\r
-               if (tinyMCE.settings.strict_loading_mode)\r
-                       iframe.style.marginBottom = '-5px';\r
-\r
-               // MSIE 5.0 issue\r
-               if (tinyMCE.isRealIE)\r
-                       replace_element.outerHTML = iframe.outerHTML;\r
-               else\r
-                       replace_element.parentNode.replaceChild(iframe, replace_element);\r
-\r
-               if (tinyMCE.isRealIE)\r
-                       return win.frames[id];\r
-               else\r
-                       return iframe;\r
-       },\r
-\r
-       setupContent : function(editor_id) {\r
-               var inst = tinyMCE.instances[editor_id], i, doc = inst.getDoc(), head = doc.getElementsByTagName('head').item(0);\r
-               var content = inst.startContent, contentElement, body;\r
-\r
-               // HTML values get XML encoded in strict mode\r
-               if (tinyMCE.settings.strict_loading_mode) {\r
-                       content = content.replace(/&lt;/g, '<');\r
-                       content = content.replace(/&gt;/g, '>');\r
-                       content = content.replace(/&quot;/g, '"');\r
-                       content = content.replace(/&amp;/g, '&');\r
-               }\r
-\r
-               tinyMCE.selectedInstance = inst;\r
-               inst.switchSettings();\r
-\r
-               // Not loaded correctly hit it again, Mozilla bug #997860\r
-               if (!tinyMCE.isIE && tinyMCE.getParam("setupcontent_reload", false) && doc.title != "blank_page") {\r
-                       // This part will remove the designMode status\r
-                       // Failes first time in Firefox 1.5b2 on Mac\r
-                       try {doc.location.href = tinyMCE.baseURL + "/blank.htm";} catch (ex) {}\r
-                       window.setTimeout("tinyMCE.setupContent('" + editor_id + "');", 1000);\r
-                       return;\r
-               }\r
-\r
-               // Wait for it to load\r
-               if (!head || !doc.body) {\r
-                       window.setTimeout("tinyMCE.setupContent('" + editor_id + "');", 10);\r
-                       return;\r
-               }\r
-\r
-               // Import theme specific content CSS the user specific\r
-               tinyMCE.importCSS(inst.getDoc(), tinyMCE.baseURL + "/themes/" + inst.settings.theme + "/css/editor_content.css");\r
-               tinyMCE.importCSS(inst.getDoc(), inst.settings.content_css);\r
-               tinyMCE.dispatchCallback(inst, 'init_instance_callback', 'initInstance', inst);\r
-\r
-               // Setup keyboard shortcuts\r
-               if (tinyMCE.getParam('custom_undo_redo_keyboard_shortcuts')) {\r
-                       inst.addShortcut('ctrl', 'z', 'lang_undo_desc', 'Undo');\r
-                       inst.addShortcut('ctrl', 'y', 'lang_redo_desc', 'Redo');\r
-               }\r
-\r
-               // BlockFormat shortcuts keys\r
-               for (i=1; i<=6; i++)\r
-                       inst.addShortcut('ctrl', '' + i, '', 'FormatBlock', false, '<h' + i + '>');\r
-\r
-               inst.addShortcut('ctrl', '7', '', 'FormatBlock', false, '<p>');\r
-               inst.addShortcut('ctrl', '8', '', 'FormatBlock', false, '<div>');\r
-               inst.addShortcut('ctrl', '9', '', 'FormatBlock', false, '<address>');\r
-\r
-               // Add default shortcuts for gecko\r
-               if (tinyMCE.isGecko) {\r
-                       inst.addShortcut('ctrl', 'b', 'lang_bold_desc', 'Bold');\r
-                       inst.addShortcut('ctrl', 'i', 'lang_italic_desc', 'Italic');\r
-                       inst.addShortcut('ctrl', 'u', 'lang_underline_desc', 'Underline');\r
-               }\r
-\r
-               // Setup span styles\r
-               if (tinyMCE.getParam("convert_fonts_to_spans"))\r
-                       inst.getBody().setAttribute('id', 'mceSpanFonts');\r
-\r
-               if (tinyMCE.settings.nowrap)\r
-                       doc.body.style.whiteSpace = "nowrap";\r
-\r
-               doc.body.dir = this.settings.directionality;\r
-               doc.editorId = editor_id;\r
-\r
-               // Add on document element in Mozilla\r
-               if (!tinyMCE.isIE)\r
-                       doc.documentElement.editorId = editor_id;\r
-\r
-               inst.setBaseHREF(tinyMCE.settings.base_href);\r
-\r
-               // Replace new line characters to BRs\r
-               if (tinyMCE.settings.convert_newlines_to_brs) {\r
-                       content = tinyMCE.regexpReplace(content, "\r\n", "<br />", "gi");\r
-                       content = tinyMCE.regexpReplace(content, "\r", "<br />", "gi");\r
-                       content = tinyMCE.regexpReplace(content, "\n", "<br />", "gi");\r
-               }\r
-\r
-               // Open closed anchors\r
-       //      content = content.replace(new RegExp('<a(.*?)/>', 'gi'), '<a$1></a>');\r
-\r
-               // Call custom cleanup code\r
-               content = tinyMCE.storeAwayURLs(content);\r
-               content = tinyMCE._customCleanup(inst, "insert_to_editor", content);\r
-\r
-               if (tinyMCE.isIE) {\r
-                       // Ugly!!!\r
-                       window.setInterval('try{tinyMCE.getCSSClasses(tinyMCE.instances["' + editor_id + '"].getDoc(), "' + editor_id + '");}catch(e){}', 500);\r
-\r
-                       if (tinyMCE.settings.force_br_newlines)\r
-                               doc.styleSheets[0].addRule("p", "margin: 0;");\r
-\r
-                       body = inst.getBody();\r
-                       body.editorId = editor_id;\r
-               }\r
-\r
-               content = tinyMCE.cleanupHTMLCode(content);\r
-\r
-               // Fix for bug #958637\r
-               if (!tinyMCE.isIE) {\r
-                       contentElement = inst.getDoc().createElement("body");\r
-                       doc = inst.getDoc();\r
-\r
-                       contentElement.innerHTML = content;\r
-\r
-                       if (tinyMCE.settings.cleanup_on_startup)\r
-                               tinyMCE.setInnerHTML(inst.getBody(), tinyMCE._cleanupHTML(inst, doc, this.settings, contentElement));\r
-                       else\r
-                               tinyMCE.setInnerHTML(inst.getBody(), content);\r
-\r
-                       tinyMCE.convertAllRelativeURLs(inst.getBody());\r
-               } else {\r
-                       if (tinyMCE.settings.cleanup_on_startup) {\r
-                               tinyMCE._setHTML(inst.getDoc(), content);\r
-\r
-                               // Produces permission denied error in MSIE 5.5\r
-                               try {\r
-                                       tinyMCE.setInnerHTML(inst.getBody(), tinyMCE._cleanupHTML(inst, inst.contentDocument, this.settings, inst.getBody()));\r
-                               } catch(e) {\r
-                                       // Ignore\r
-                               }\r
-                       } else\r
-                               tinyMCE._setHTML(inst.getDoc(), content);\r
-               }\r
-\r
-               // Fix for bug #957681\r
-               //inst.getDoc().designMode = inst.getDoc().designMode;\r
-\r
-               tinyMCE.handleVisualAid(inst.getBody(), true, tinyMCE.settings.visual, inst);\r
-               tinyMCE.dispatchCallback(inst, 'setupcontent_callback', 'setupContent', editor_id, inst.getBody(), inst.getDoc());\r
-\r
-               // Re-add design mode on mozilla\r
-               if (!tinyMCE.isIE)\r
-                       tinyMCE.addEventHandlers(inst);\r
-\r
-               // Add blur handler\r
-               if (tinyMCE.isIE) {\r
-                       tinyMCE.addEvent(inst.getBody(), "blur", TinyMCE_Engine.prototype._eventPatch);\r
-                       tinyMCE.addEvent(inst.getBody(), "beforedeactivate", TinyMCE_Engine.prototype._eventPatch); // Bug #1439953\r
-\r
-                       // Workaround for drag drop/copy paste base href bug\r
-                       if (!tinyMCE.isOpera) {\r
-                               tinyMCE.addEvent(doc.body, "mousemove", TinyMCE_Engine.prototype.onMouseMove);\r
-                               tinyMCE.addEvent(doc.body, "beforepaste", TinyMCE_Engine.prototype._eventPatch);\r
-                               tinyMCE.addEvent(doc.body, "drop", TinyMCE_Engine.prototype._eventPatch);\r
-                       }\r
-               }\r
-\r
-               // Trigger node change, this call locks buttons for tables and so forth\r
-               inst.select();\r
-               tinyMCE.selectedElement = inst.contentWindow.document.body;\r
-\r
-               // Call custom DOM cleanup\r
-               tinyMCE._customCleanup(inst, "insert_to_editor_dom", inst.getBody());\r
-               tinyMCE._customCleanup(inst, "setup_content_dom", inst.getBody());\r
-               tinyMCE._setEventsEnabled(inst.getBody(), false);\r
-               tinyMCE.cleanupAnchors(inst.getDoc());\r
-\r
-               if (tinyMCE.getParam("convert_fonts_to_spans"))\r
-                       tinyMCE.convertSpansToFonts(inst.getDoc());\r
-\r
-               inst.startContent = tinyMCE.trim(inst.getBody().innerHTML);\r
-               inst.undoRedo.add({ content : inst.startContent });\r
-\r
-               // Cleanup any mess left from storyAwayURLs\r
-               if (tinyMCE.isGecko) {\r
-                       // Remove mce_src from textnodes and comments\r
-                       tinyMCE.selectNodes(inst.getBody(), function(n) {\r
-                               if (n.nodeType == 3 || n.nodeType == 8)\r
-                                       n.nodeValue = n.nodeValue.replace(new RegExp('\\s(mce_src|mce_href)=\"[^\"]*\"', 'gi'), "");\r
-\r
-                               return false;\r
-                       });\r
-               }\r
-\r
-               // Remove Gecko spellchecking\r
-               if (tinyMCE.isGecko)\r
-                       inst.getBody().spellcheck = tinyMCE.getParam("gecko_spellcheck");\r
-\r
-               // Cleanup any mess left from storyAwayURLs\r
-               tinyMCE._removeInternal(inst.getBody());\r
-\r
-               inst.select();\r
-               tinyMCE.triggerNodeChange(false, true);\r
-       },\r
-\r
-       storeAwayURLs : function(s) {\r
-               // Remove all mce_src, mce_href and replace them with new ones\r
-               // s = s.replace(new RegExp('mce_src\\s*=\\s*\"[^ >\"]*\"', 'gi'), '');\r
-               // s = s.replace(new RegExp('mce_href\\s*=\\s*\"[^ >\"]*\"', 'gi'), '');\r
-\r
-               if (!s.match(/(mce_src|mce_href)/gi, s)) {\r
-                       s = s.replace(new RegExp('src\\s*=\\s*\"([^ >\"]*)\"', 'gi'), 'src="$1" mce_src="$1"');\r
-                       s = s.replace(new RegExp('href\\s*=\\s*\"([^ >\"]*)\"', 'gi'), 'href="$1" mce_href="$1"');\r
-               }\r
-\r
-               return s;\r
-       },\r
-\r
-       _removeInternal : function(n) {\r
-               if (tinyMCE.isGecko) {\r
-                       // Remove mce_src from textnodes and comments\r
-                       tinyMCE.selectNodes(n, function(n) {\r
-                               if (n.nodeType == 3 || n.nodeType == 8)\r
-                                       n.nodeValue = n.nodeValue.replace(new RegExp('\\s(mce_src|mce_href)=\"[^\"]*\"', 'gi'), "");\r
-\r
-                               return false;\r
-                       });\r
-               }\r
-       },\r
-\r
-       removeTinyMCEFormElements : function(form_obj) {\r
-               var i, elementId;\r
-\r
-               // Skip form element removal\r
-               if (!tinyMCE.getParam('hide_selects_on_submit'))\r
-                       return;\r
-\r
-               // Check if form is valid\r
-               if (typeof(form_obj) == "undefined" || form_obj == null)\r
-                       return;\r
-\r
-               // If not a form, find the form\r
-               if (form_obj.nodeName != "FORM") {\r
-                       if (form_obj.form)\r
-                               form_obj = form_obj.form;\r
-                       else\r
-                               form_obj = tinyMCE.getParentElement(form_obj, "form");\r
-               }\r
-\r
-               // Still nothing\r
-               if (form_obj == null)\r
-                       return;\r
-\r
-               // Disable all UI form elements that TinyMCE created\r
-               for (i=0; i<form_obj.elements.length; i++) {\r
-                       elementId = form_obj.elements[i].name ? form_obj.elements[i].name : form_obj.elements[i].id;\r
-\r
-                       if (elementId.indexOf('mce_editor_') == 0)\r
-                               form_obj.elements[i].disabled = true;\r
-               }\r
-       },\r
-\r
-       handleEvent : function(e) {\r
-               var inst = tinyMCE.selectedInstance, i, elm, keys;\r
-\r
-               // Remove odd, error\r
-               if (typeof(tinyMCE) == "undefined")\r
-                       return true;\r
-\r
-               //tinyMCE.debug(e.type + " " + e.target.nodeName + " " + (e.relatedTarget ? e.relatedTarget.nodeName : ""));\r
-\r
-               if (tinyMCE.executeCallback(tinyMCE.selectedInstance, 'handle_event_callback', 'handleEvent', e))\r
-                       return false;\r
-\r
-               switch (e.type) {\r
-                       case "beforedeactivate": // Was added due to bug #1439953\r
-                       case "blur":\r
-                               if (tinyMCE.selectedInstance)\r
-                                       tinyMCE.selectedInstance.execCommand('mceEndTyping');\r
-\r
-                               tinyMCE.hideMenus();\r
-\r
-                               return;\r
-\r
-                       // Workaround for drag drop/copy paste base href bug\r
-                       case "drop":\r
-                       case "beforepaste":\r
-                               if (tinyMCE.selectedInstance)\r
-                                       tinyMCE.selectedInstance.setBaseHREF(null);\r
-\r
-                               // Fixes odd MSIE bug where drag/droping elements in a iframe with height 100% breaks\r
-                               // This logic forces the width/height to be in pixels while the user is drag/dropping\r
-                               if (tinyMCE.isRealIE) {\r
-                                       var ife = tinyMCE.selectedInstance.iframeElement;\r
-\r
-                                       /*if (ife.style.width.indexOf('%') != -1) {\r
-                                               ife._oldWidth = ife.width.height;\r
-                                               ife.style.width = ife.clientWidth;\r
-                                       }*/\r
-\r
-                                       if (ife.style.height.indexOf('%') != -1) {\r
-                                               ife._oldHeight = ife.style.height;\r
-                                               ife.style.height = ife.clientHeight;\r
-                                       }\r
-                               }\r
-\r
-                               window.setTimeout("tinyMCE.selectedInstance.setBaseHREF(tinyMCE.settings.base_href);tinyMCE._resetIframeHeight();", 1);\r
-                               return;\r
-\r
-                       case "submit":\r
-                               tinyMCE.formSubmit(tinyMCE.isMSIE ? window.event.srcElement : e.target);\r
-                               return;\r
-\r
-                       case "reset":\r
-                               var formObj = tinyMCE.isIE ? window.event.srcElement : e.target;\r
-\r
-                               for (i=0; i<document.forms.length; i++) {\r
-                                       if (document.forms[i] == formObj)\r
-                                               window.setTimeout('tinyMCE.resetForm(' + i + ');', 10);\r
-                               }\r
-\r
-                               return;\r
-\r
-                       case "keypress":\r
-                               if (inst && inst.handleShortcut(e))\r
-                                       return false;\r
-\r
-                               if (e.target.editorId) {\r
-                                       tinyMCE.instances[e.target.editorId].select();\r
-                               } else {\r
-                                       if (e.target.ownerDocument.editorId)\r
-                                               tinyMCE.instances[e.target.ownerDocument.editorId].select();\r
-                               }\r
-\r
-                               if (tinyMCE.selectedInstance)\r
-                                       tinyMCE.selectedInstance.switchSettings();\r
-\r
-                               // Insert P element\r
-                               if ((tinyMCE.isGecko || tinyMCE.isOpera || tinyMCE.isSafari) && tinyMCE.settings.force_p_newlines && e.keyCode == 13 && !e.shiftKey) {\r
-                                       // Insert P element instead of BR\r
-                                       if (TinyMCE_ForceParagraphs._insertPara(tinyMCE.selectedInstance, e)) {\r
-                                               // Cancel event\r
-                                               tinyMCE.execCommand("mceAddUndoLevel");\r
-                                               return tinyMCE.cancelEvent(e);\r
-                                       }\r
-                               }\r
-\r
-                               // Handle backspace\r
-                               if ((tinyMCE.isGecko && !tinyMCE.isSafari) && tinyMCE.settings.force_p_newlines && (e.keyCode == 8 || e.keyCode == 46) && !e.shiftKey) {\r
-                                       // Insert P element instead of BR\r
-                                       if (TinyMCE_ForceParagraphs._handleBackSpace(tinyMCE.selectedInstance, e.type)) {\r
-                                               // Cancel event\r
-                                               tinyMCE.execCommand("mceAddUndoLevel");\r
-                                               return tinyMCE.cancelEvent(e);\r
-                                       }\r
-                               }\r
-\r
-                               // Return key pressed\r
-                               if (tinyMCE.isIE && tinyMCE.settings.force_br_newlines && e.keyCode == 13) {\r
-                                       if (e.target.editorId)\r
-                                               tinyMCE.instances[e.target.editorId].select();\r
-\r
-                                       if (tinyMCE.selectedInstance) {\r
-                                               var sel = tinyMCE.selectedInstance.getDoc().selection;\r
-                                               var rng = sel.createRange();\r
-\r
-                                               if (tinyMCE.getParentElement(rng.parentElement(), "li") != null)\r
-                                                       return false;\r
-\r
-                                               // Cancel event\r
-                                               e.returnValue = false;\r
-                                               e.cancelBubble = true;\r
-\r
-                                               // Insert BR element\r
-                                               rng.pasteHTML("<br />");\r
-                                               rng.collapse(false);\r
-                                               rng.select();\r
-\r
-                                               tinyMCE.execCommand("mceAddUndoLevel");\r
-                                               tinyMCE.triggerNodeChange(false);\r
-                                               return false;\r
-                                       }\r
-                               }\r
-\r
-                               // Backspace or delete\r
-                               if (e.keyCode == 8 || e.keyCode == 46) {\r
-                                       tinyMCE.selectedElement = e.target;\r
-                                       tinyMCE.linkElement = tinyMCE.getParentElement(e.target, "a");\r
-                                       tinyMCE.imgElement = tinyMCE.getParentElement(e.target, "img");\r
-                                       tinyMCE.triggerNodeChange(false);\r
-                               }\r
-\r
-                               return false;\r
-\r
-                       case "keyup":\r
-                       case "keydown":\r
-                               tinyMCE.hideMenus();\r
-                               tinyMCE.hasMouseMoved = false;\r
-\r
-                               if (inst && inst.handleShortcut(e))\r
-                                       return false;\r
-\r
-                               inst._fixRootBlocks();\r
-\r
-                               if (inst.settings.remove_trailing_nbsp)\r
-                                       inst._fixTrailingNbsp();\r
-\r
-                               if (e.target.editorId)\r
-                                       tinyMCE.instances[e.target.editorId].select();\r
-\r
-                               if (tinyMCE.selectedInstance)\r
-                                       tinyMCE.selectedInstance.switchSettings();\r
-\r
-                               inst = tinyMCE.selectedInstance;\r
-\r
-                               // Handle backspace\r
-                               if (tinyMCE.isGecko && tinyMCE.settings.force_p_newlines && (e.keyCode == 8 || e.keyCode == 46) && !e.shiftKey) {\r
-                                       // Insert P element instead of BR\r
-                                       if (TinyMCE_ForceParagraphs._handleBackSpace(tinyMCE.selectedInstance, e.type)) {\r
-                                               // Cancel event\r
-                                               tinyMCE.execCommand("mceAddUndoLevel");\r
-                                               e.preventDefault();\r
-                                               return false;\r
-                                       }\r
-                               }\r
-\r
-                               tinyMCE.selectedElement = null;\r
-                               tinyMCE.selectedNode = null;\r
-                               elm = tinyMCE.selectedInstance.getFocusElement();\r
-                               tinyMCE.linkElement = tinyMCE.getParentElement(elm, "a");\r
-                               tinyMCE.imgElement = tinyMCE.getParentElement(elm, "img");\r
-                               tinyMCE.selectedElement = elm;\r
-\r
-                               // Update visualaids on tabs\r
-                               if (tinyMCE.isGecko && e.type == "keyup" && e.keyCode == 9)\r
-                                       tinyMCE.handleVisualAid(tinyMCE.selectedInstance.getBody(), true, tinyMCE.settings.visual, tinyMCE.selectedInstance);\r
-\r
-                               // Fix empty elements on return/enter, check where enter occured\r
-                               if (tinyMCE.isIE && e.type == "keydown" && e.keyCode == 13)\r
-                                       tinyMCE.enterKeyElement = tinyMCE.selectedInstance.getFocusElement();\r
-\r
-                               // Fix empty elements on return/enter\r
-                               if (tinyMCE.isIE && e.type == "keyup" && e.keyCode == 13) {\r
-                                       elm = tinyMCE.enterKeyElement;\r
-                                       if (elm) {\r
-                                               var re = new RegExp('^HR|IMG|BR$','g'); // Skip these\r
-                                               var dre = new RegExp('^H[1-6]$','g'); // Add double on these\r
-\r
-                                               if (!elm.hasChildNodes() && !re.test(elm.nodeName)) {\r
-                                                       if (dre.test(elm.nodeName))\r
-                                                               elm.innerHTML = "&nbsp;&nbsp;";\r
-                                                       else\r
-                                                               elm.innerHTML = "&nbsp;";\r
-                                               }\r
-                                       }\r
-                               }\r
-\r
-                               // Check if it's a position key\r
-                               keys = tinyMCE.posKeyCodes;\r
-                               var posKey = false;\r
-                               for (i=0; i<keys.length; i++) {\r
-                                       if (keys[i] == e.keyCode) {\r
-                                               posKey = true;\r
-                                               break;\r
-                                       }\r
-                               }\r
-\r
-                               // MSIE custom key handling\r
-                               if (tinyMCE.isIE && tinyMCE.settings.custom_undo_redo) {\r
-                                       keys = [8, 46]; // Backspace,Delete\r
-\r
-                                       for (i=0; i<keys.length; i++) {\r
-                                               if (keys[i] == e.keyCode) {\r
-                                                       if (e.type == "keyup")\r
-                                                               tinyMCE.triggerNodeChange(false);\r
-                                               }\r
-                                       }\r
-                               }\r
-\r
-                               // If Ctrl key\r
-                               if (e.keyCode == 17)\r
-                                       return true;\r
-\r
-                               // Handle Undo/Redo when typing content\r
-\r
-                               if (tinyMCE.isGecko) {\r
-                                       // Start typing (not a position key or ctrl key, but ctrl+x and ctrl+p is ok)\r
-                                       if (!posKey && e.type == "keyup" && !e.ctrlKey || (e.ctrlKey && (e.keyCode == 86 || e.keyCode == 88)))\r
-                                               tinyMCE.execCommand("mceStartTyping");\r
-                               } else {\r
-                                       // IE seems to be working better with this setting\r
-                                       if (!posKey && e.type == "keyup")\r
-                                               tinyMCE.execCommand("mceStartTyping");\r
-                               }\r
-\r
-                               // Store undo bookmark\r
-                               if (e.type == "keydown" && (posKey || e.ctrlKey) && inst)\r
-                                       inst.undoBookmark = inst.selection.getBookmark();\r
-\r
-                               // End typing (position key) or some Ctrl event\r
-                               if (e.type == "keyup" && (posKey || e.ctrlKey))\r
-                                       tinyMCE.execCommand("mceEndTyping");\r
-\r
-                               if (posKey && e.type == "keyup")\r
-                                       tinyMCE.triggerNodeChange(false);\r
-\r
-                               if (tinyMCE.isIE && e.ctrlKey)\r
-                                       window.setTimeout('tinyMCE.triggerNodeChange(false);', 1);\r
-                       break;\r
-\r
-                       case "mousedown":\r
-                       case "mouseup":\r
-                       case "click":\r
-                       case "dblclick":\r
-                       case "focus":\r
-                               tinyMCE.hideMenus();\r
-\r
-                               if (tinyMCE.selectedInstance) {\r
-                                       tinyMCE.selectedInstance.switchSettings();\r
-                                       tinyMCE.selectedInstance.isFocused = true;\r
-                               }\r
-\r
-                               // Check instance event trigged on\r
-                               var targetBody = tinyMCE.getParentElement(e.target, "html");\r
-                               for (var instanceName in tinyMCE.instances) {\r
-                                       if (!tinyMCE.isInstance(tinyMCE.instances[instanceName]))\r
-                                               continue;\r
-\r
-                                       inst = tinyMCE.instances[instanceName];\r
-\r
-                                       // Reset design mode if lost (on everything just in case)\r
-                                       inst.autoResetDesignMode();\r
-\r
-                                       // Use HTML element since users might click outside of body element\r
-                                       if (inst.getBody().parentNode == targetBody) {\r
-                                               inst.select();\r
-                                               tinyMCE.selectedElement = e.target;\r
-                                               tinyMCE.linkElement = tinyMCE.getParentElement(tinyMCE.selectedElement, "a");\r
-                                               tinyMCE.imgElement = tinyMCE.getParentElement(tinyMCE.selectedElement, "img");\r
-                                               break;\r
-                                       }\r
-                               }\r
-\r
-                               // Add first bookmark location\r
-                               if (!tinyMCE.selectedInstance.undoRedo.undoLevels[0].bookmark && (e.type == "mouseup" || e.type == "dblclick"))\r
-                                       tinyMCE.selectedInstance.undoRedo.undoLevels[0].bookmark = tinyMCE.selectedInstance.selection.getBookmark();\r
-\r
-                               // Reset selected node\r
-                               if (e.type != "focus")\r
-                                       tinyMCE.selectedNode = null;\r
-\r
-                               tinyMCE.triggerNodeChange(false);\r
-                               tinyMCE.execCommand("mceEndTyping");\r
-\r
-                               if (e.type == "mouseup")\r
-                                       tinyMCE.execCommand("mceAddUndoLevel");\r
-\r
-                               // Just in case\r
-                               if (!tinyMCE.selectedInstance && e.target.editorId)\r
-                                       tinyMCE.instances[e.target.editorId].select();\r
-\r
-                               return false;\r
-               }\r
-       },\r
-\r
-       getButtonHTML : function(id, lang, img, cmd, ui, val) {\r
-               var h = '', m, x, io = '';\r
-\r
-               cmd = 'tinyMCE.execInstanceCommand(\'{$editor_id}\',\'' + cmd + '\'';\r
-\r
-               if (typeof(ui) != "undefined" && ui != null)\r
-                       cmd += ',' + ui;\r
-\r
-               if (typeof(val) != "undefined" && val != null)\r
-                       cmd += ",'" + val + "'";\r
-\r
-               cmd += ');';\r
-\r
-               // Patch for IE7 bug with hover out not restoring correctly\r
-               if (tinyMCE.isRealIE)\r
-                       io = 'onmouseover="tinyMCE.lastHover = this;"';\r
-\r
-               // Use tilemaps when enabled and found and never in MSIE since it loads the tile each time from cache if cahce is disabled\r
-               if (tinyMCE.getParam('button_tile_map') && (!tinyMCE.isIE || tinyMCE.isOpera) && (m = this.buttonMap[id]) != null && (tinyMCE.getParam("language") == "en" || img.indexOf('$lang') == -1)) {\r
-                       // Tiled button\r
-                       x = 0 - (m * 20) == 0 ? '0' : 0 - (m * 20);\r
-                       h += '<a id="{$editor_id}_' + id + '" href="javascript:' + cmd + '" onclick="' + cmd + 'return false;" onmousedown="return false;" ' + io + ' class="mceTiledButton mceButtonNormal" target="_self">';\r
-                       h += '<img src="{$themeurl}/images/spacer.gif" style="background-position: ' + x + 'px 0" alt="{$'+lang+'}" title="{$' + lang + '}" />';\r
-                       h += '</a>';\r
-               } else {\r
-                       // Normal button\r
-                       h += '<a id="{$editor_id}_' + id + '" href="javascript:' + cmd + '" onclick="' + cmd + 'return false;" onmousedown="return false;" ' + io + ' class="mceButtonNormal" target="_self">';\r
-                       h += '<img src="' + img + '" alt="{$'+lang+'}" title="{$' + lang + '}" />';\r
-                       h += '</a>';\r
-               }\r
-\r
-               return h;\r
-       },\r
-\r
-       getMenuButtonHTML : function(id, lang, img, mcmd, cmd, ui, val) {\r
-               var h = '', m, x;\r
-\r
-               mcmd = 'tinyMCE.execInstanceCommand(\'{$editor_id}\',\'' + mcmd + '\');';\r
-               cmd = 'tinyMCE.execInstanceCommand(\'{$editor_id}\',\'' + cmd + '\'';\r
-\r
-               if (typeof(ui) != "undefined" && ui != null)\r
-                       cmd += ',' + ui;\r
-\r
-               if (typeof(val) != "undefined" && val != null)\r
-                       cmd += ",'" + val + "'";\r
-\r
-               cmd += ');';\r
-\r
-               // Use tilemaps when enabled and found and never in MSIE since it loads the tile each time from cache if cahce is disabled\r
-               if (tinyMCE.getParam('button_tile_map') && (!tinyMCE.isIE || tinyMCE.isOpera) && (m = tinyMCE.buttonMap[id]) != null && (tinyMCE.getParam("language") == "en" || img.indexOf('$lang') == -1)) {\r
-                       x = 0 - (m * 20) == 0 ? '0' : 0 - (m * 20);\r
-\r
-                       if (tinyMCE.isRealIE)\r
-                               h += '<span id="{$editor_id}_' + id + '" class="mceMenuButton" onmouseover="tinyMCE._menuButtonEvent(\'over\',this);tinyMCE.lastHover = this;" onmouseout="tinyMCE._menuButtonEvent(\'out\',this);">';\r
-                       else\r
-                               h += '<span id="{$editor_id}_' + id + '" class="mceMenuButton">';\r
-\r
-                       h += '<a href="javascript:' + cmd + '" onclick="' + cmd + 'return false;" onmousedown="return false;" class="mceTiledButton mceMenuButtonNormal" target="_self">';\r
-                       h += '<img src="{$themeurl}/images/spacer.gif" style="width: 20px; height: 20px; background-position: ' + x + 'px 0" title="{$' + lang + '}" /></a>';\r
-                       h += '<a href="javascript:' + mcmd + '" onclick="' + mcmd + 'return false;" onmousedown="return false;"><img src="{$themeurl}/images/button_menu.gif" title="{$' + lang + '}" class="mceMenuButton" />';\r
-                       h += '</a></span>';\r
-               } else {\r
-                       if (tinyMCE.isRealIE)\r
-                               h += '<span id="{$editor_id}_' + id + '" dir="ltr" class="mceMenuButton" onmouseover="tinyMCE._menuButtonEvent(\'over\',this);tinyMCE.lastHover = this;" onmouseout="tinyMCE._menuButtonEvent(\'out\',this);">';\r
-                       else\r
-                               h += '<span id="{$editor_id}_' + id + '" dir="ltr" class="mceMenuButton">';\r
-\r
-                       h += '<a href="javascript:' + cmd + '" onclick="' + cmd + 'return false;" onmousedown="return false;" class="mceMenuButtonNormal" target="_self">';\r
-                       h += '<img src="' + img + '" title="{$' + lang + '}" /></a>';\r
-                       h += '<a href="javascript:' + mcmd + '" onclick="' + mcmd + 'return false;" onmousedown="return false;"><img src="{$themeurl}/images/button_menu.gif" title="{$' + lang + '}" class="mceMenuButton" />';\r
-                       h += '</a></span>';\r
-               }\r
-\r
-               return h;\r
-       },\r
-\r
-       _menuButtonEvent : function(e, o) {\r
-               if (o.className == 'mceMenuButtonFocus')\r
-                       return;\r
-\r
-               if (e == 'over')\r
-                       o.className = o.className + ' mceMenuHover';\r
-               else\r
-                       o.className = o.className.replace(/\s.*$/, '');\r
-       },\r
-\r
-       addButtonMap : function(m) {\r
-               var i, a = m.replace(/\s+/, '').split(',');\r
-\r
-               for (i=0; i<a.length; i++)\r
-                       this.buttonMap[a[i]] = i;\r
-       },\r
-\r
-       formSubmit : function(f, p) {\r
-               var n, inst, found = false;\r
-\r
-               if (f.form)\r
-                       f = f.form;\r
-\r
-               // Is it a form that has a TinyMCE instance\r
-               if (tinyMCE.getParam('save_on_tinymce_forms')) {\r
-                       for (n in tinyMCE.instances) {\r
-                               inst = tinyMCE.instances[n];\r
-\r
-                               if (!tinyMCE.isInstance(inst))\r
-                                       continue;\r
-\r
-                               if (inst.formElement) {\r
-                                       if (f == inst.formElement.form) {\r
-                                               found = true;\r
-                                               inst.isNotDirty = true;\r
-                                       }\r
-                               }\r
-                       }\r
-               } else\r
-                       found  = true;\r
-\r
-               // Is valid\r
-               if (found) {\r
-                       tinyMCE.removeTinyMCEFormElements(f);\r
-                       tinyMCE.triggerSave();\r
-               }\r
-\r
-               // Is it patched\r
-               if (f.mceOldSubmit && p)\r
-                       f.mceOldSubmit();\r
-       },\r
-\r
-       submitPatch : function() {\r
-               tinyMCE.formSubmit(this, true);\r
-       },\r
-\r
-       onLoad : function() {\r
-               var r, i, c, mode, trigger, elements, element, settings, elementId, elm;\r
-               var selector, deselector, elementRefAr, form;\r
-\r
-               // Wait for everything to be loaded first\r
-               if (tinyMCE.settings.strict_loading_mode && this.loadingIndex != -1) {\r
-                       window.setTimeout('tinyMCE.onLoad();', 1);\r
-                       return;\r
-               }\r
-\r
-               if (tinyMCE.isRealIE && window.event.type == "readystatechange" && document.readyState != "complete")\r
-                       return true;\r
-\r
-               if (tinyMCE.isLoaded)\r
-                       return true;\r
-\r
-               tinyMCE.isLoaded = true;\r
-\r
-               // IE produces JS error if TinyMCE is placed in a frame\r
-               // It seems to have something to do with the selection not beeing\r
-               // correctly initialized in IE so this hack solves the problem\r
-               if (tinyMCE.isRealIE && document.body && window.location.href != window.top.location.href) {\r
-                       r = document.body.createTextRange();\r
-                       r.collapse(true);\r
-                       r.select();\r
-               }\r
-\r
-               tinyMCE.dispatchCallback(null, 'onpageload', 'onPageLoad');\r
-\r
-               for (c=0; c<tinyMCE.configs.length; c++) {\r
-                       tinyMCE.settings = tinyMCE.configs[c];\r
-\r
-                       selector = tinyMCE.getParam("editor_selector");\r
-                       deselector = tinyMCE.getParam("editor_deselector");\r
-                       elementRefAr = [];\r
-\r
-                       // Add submit triggers\r
-                       if (document.forms && tinyMCE.settings.add_form_submit_trigger && !tinyMCE.submitTriggers) {\r
-                               for (i=0; i<document.forms.length; i++) {\r
-                                       form = document.forms[i];\r
-\r
-                                       tinyMCE.addEvent(form, "submit", TinyMCE_Engine.prototype.handleEvent);\r
-                                       tinyMCE.addEvent(form, "reset", TinyMCE_Engine.prototype.handleEvent);\r
-                                       tinyMCE.submitTriggers = true; // Do it only once\r
-\r
-                                       // Patch the form.submit function\r
-                                       if (tinyMCE.settings.submit_patch) {\r
-                                               try {\r
-                                                       form.mceOldSubmit = form.submit;\r
-                                                       form.submit = TinyMCE_Engine.prototype.submitPatch;\r
-                                               } catch (e) {\r
-                                                       // Do nothing\r
-                                               }\r
-                                       }\r
-                               }\r
-                       }\r
-\r
-                       // Add editor instances based on mode\r
-                       mode = tinyMCE.settings.mode;\r
-                       switch (mode) {\r
-                               case "exact":\r
-                                       elements = tinyMCE.getParam('elements', '', true, ',');\r
-\r
-                                       for (i=0; i<elements.length; i++) {\r
-                                               element = tinyMCE._getElementById(elements[i]);\r
-                                               trigger = element ? element.getAttribute(tinyMCE.settings.textarea_trigger) : "";\r
-\r
-                                               if (new RegExp('\\b' + deselector + '\\b').test(tinyMCE.getAttrib(element, "class")))\r
-                                                       continue;\r
-\r
-                                               if (trigger == "false")\r
-                                                       continue;\r
-\r
-                                               if ((tinyMCE.settings.ask || tinyMCE.settings.convert_on_click) && element) {\r
-                                                       elementRefAr[elementRefAr.length] = element;\r
-                                                       continue;\r
-                                               }\r
-\r
-                                               if (element)\r
-                                                       tinyMCE.addMCEControl(element, elements[i]);\r
-                                       }\r
-                               break;\r
-\r
-                               case "specific_textareas":\r
-                               case "textareas":\r
-                                       elements = document.getElementsByTagName("textarea");\r
-\r
-                                       for (i=0; i<elements.length; i++) {\r
-                                               elm = elements.item(i);\r
-                                               trigger = elm.getAttribute(tinyMCE.settings.textarea_trigger);\r
-\r
-                                               if (selector !== '' && !new RegExp('\\b' + selector + '\\b').test(tinyMCE.getAttrib(elm, "class")))\r
-                                                       continue;\r
-\r
-                                               if (selector !== '')\r
-                                                       trigger = selector !== '' ? "true" : "";\r
-\r
-                                               if (new RegExp('\\b' + deselector + '\\b').test(tinyMCE.getAttrib(elm, "class")))\r
-                                                       continue;\r
-\r
-                                               if ((mode == "specific_textareas" && trigger == "true") || (mode == "textareas" && trigger != "false"))\r
-                                                       elementRefAr[elementRefAr.length] = elm;\r
-                                       }\r
-                               break;\r
-                       }\r
-\r
-                       for (i=0; i<elementRefAr.length; i++) {\r
-                               element = elementRefAr[i];\r
-                               elementId = element.name ? element.name : element.id;\r
-\r
-                               if (tinyMCE.settings.ask || tinyMCE.settings.convert_on_click) {\r
-                                       // Focus breaks in Mozilla\r
-                                       if (tinyMCE.isGecko) {\r
-                                               settings = tinyMCE.settings;\r
-\r
-                                               tinyMCE.addEvent(element, "focus", function (e) {window.setTimeout(function() {TinyMCE_Engine.prototype.confirmAdd(e, settings);}, 10);});\r
-\r
-                                               if (element.nodeName != "TEXTAREA" && element.nodeName != "INPUT")\r
-                                                       tinyMCE.addEvent(element, "click", function (e) {window.setTimeout(function() {TinyMCE_Engine.prototype.confirmAdd(e, settings);}, 10);});\r
-                                               // tinyMCE.addEvent(element, "mouseover", function (e) {window.setTimeout(function() {TinyMCE_Engine.prototype.confirmAdd(e, settings);}, 10);});\r
-                                       } else {\r
-                                               settings = tinyMCE.settings;\r
-\r
-                                               tinyMCE.addEvent(element, "focus", function () { TinyMCE_Engine.prototype.confirmAdd(null, settings); });\r
-                                               tinyMCE.addEvent(element, "click", function () { TinyMCE_Engine.prototype.confirmAdd(null, settings); });\r
-                                               // tinyMCE.addEvent(element, "mouseenter", function () { TinyMCE_Engine.prototype.confirmAdd(null, settings); });\r
-                                       }\r
-                               } else\r
-                                       tinyMCE.addMCEControl(element, elementId);\r
-                       }\r
-\r
-                       // Handle auto focus\r
-                       if (tinyMCE.settings.auto_focus) {\r
-                               window.setTimeout(function () {\r
-                                       var inst = tinyMCE.getInstanceById(tinyMCE.settings.auto_focus);\r
-                                       inst.selection.selectNode(inst.getBody(), true, true);\r
-                                       inst.contentWindow.focus();\r
-                               }, 100);\r
-                       }\r
-\r
-                       tinyMCE.dispatchCallback(null, 'oninit', 'onInit');\r
-               }\r
-       },\r
-\r
-       isInstance : function(o) {\r
-               return o != null && typeof(o) == "object" && o.isTinyMCE_Control;\r
-       },\r
-\r
-       getParam : function(name, default_value, strip_whitespace, split_chr) {\r
-               var i, outArray, value = (typeof(this.settings[name]) == "undefined") ? default_value : this.settings[name];\r
-\r
-               // Fix bool values\r
-               if (value == "true" || value == "false")\r
-                       return (value == "true");\r
-\r
-               if (strip_whitespace)\r
-                       value = tinyMCE.regexpReplace(value, "[ \t\r\n]", "");\r
-\r
-               if (typeof(split_chr) != "undefined" && split_chr != null) {\r
-                       value = value.split(split_chr);\r
-                       outArray = [];\r
-\r
-                       for (i=0; i<value.length; i++) {\r
-                               if (value[i] && value[i] !== '')\r
-                                       outArray[outArray.length] = value[i];\r
-                       }\r
-\r
-                       value = outArray;\r
-               }\r
-\r
-               return value;\r
-       },\r
-\r
-       getLang : function(name, default_value, parse_entities, va) {\r
-               var v = (typeof(tinyMCELang[name]) == "undefined") ? default_value : tinyMCELang[name], n;\r
-\r
-               if (parse_entities)\r
-                       v = tinyMCE.entityDecode(v);\r
-\r
-               if (va) {\r
-                       for (n in va)\r
-                               v = this.replaceVar(v, n, va[n]);\r
-               }\r
-\r
-               return v;\r
-       },\r
-\r
-       entityDecode : function(s) {\r
-               var e = document.createElement("div");\r
-\r
-               e.innerHTML = s;\r
-\r
-               return !e.firstChild ? s : e.firstChild.nodeValue;\r
-       },\r
-\r
-       addToLang : function(prefix, ar) {\r
-               var k;\r
-\r
-               for (k in ar) {\r
-                       if (typeof(ar[k]) == 'function')\r
-                               continue;\r
-\r
-                       tinyMCELang[(k.indexOf('lang_') == -1 ? 'lang_' : '') + (prefix !== '' ? (prefix + "_") : '') + k] = ar[k];\r
-               }\r
-\r
-               this.loadNextScript();\r
-       },\r
-\r
-       triggerNodeChange : function(focus, setup_content) {\r
-               var elm, inst, editorId, undoIndex = -1, undoLevels = -1, doc, anySelection = false, st;\r
-\r
-               if (tinyMCE.selectedInstance) {\r
-                       inst = tinyMCE.selectedInstance;\r
-                       elm = (typeof(setup_content) != "undefined" && setup_content) ? tinyMCE.selectedElement : inst.getFocusElement();\r
-\r
-/*                     if (elm == inst.lastTriggerEl)\r
-                               return;\r
-\r
-                       inst.lastTriggerEl = elm;*/\r
-\r
-                       editorId = inst.editorId;\r
-                       st = inst.selection.getSelectedText();\r
-\r
-                       if (tinyMCE.settings.auto_resize)\r
-                               inst.resizeToContent();\r
-\r
-                       if (setup_content && tinyMCE.isGecko && inst.isHidden())\r
-                               elm = inst.getBody();\r
-\r
-                       inst.switchSettings();\r
-\r
-                       if (tinyMCE.selectedElement)\r
-                               anySelection = (tinyMCE.selectedElement.nodeName.toLowerCase() == "img") || (st && st.length > 0);\r
-\r
-                       if (tinyMCE.settings.custom_undo_redo) {\r
-                               undoIndex = inst.undoRedo.undoIndex;\r
-                               undoLevels = inst.undoRedo.undoLevels.length;\r
-                       }\r
-\r
-                       tinyMCE.dispatchCallback(inst, 'handle_node_change_callback', 'handleNodeChange', editorId, elm, undoIndex, undoLevels, inst.visualAid, anySelection, setup_content);\r
-               }\r
-\r
-               if (this.selectedInstance && (typeof(focus) == "undefined" || focus))\r
-                       this.selectedInstance.contentWindow.focus();\r
-       },\r
-\r
-       _customCleanup : function(inst, type, content) {\r
-               var pl, po, i, customCleanup;\r
-\r
-               // Call custom cleanup\r
-               customCleanup = tinyMCE.settings.cleanup_callback;\r
-               if (customCleanup != '')\r
-                       content = tinyMCE.resolveDots(tinyMCE.settings.cleanup_callback, window)(type, content, inst);\r
-\r
-               // Trigger theme cleanup\r
-               po = tinyMCE.themes[tinyMCE.settings.theme];\r
-               if (po && po.cleanup)\r
-                       content = po.cleanup(type, content, inst);\r
-\r
-               // Trigger plugin cleanups\r
-               pl = inst.plugins;\r
-               for (i=0; i<pl.length; i++) {\r
-                       po = tinyMCE.plugins[pl[i]];\r
-\r
-                       if (po && po.cleanup)\r
-                               content = po.cleanup(type, content, inst);\r
-               }\r
-\r
-               return content;\r
-       },\r
-\r
-       setContent : function(h) {\r
-               if (tinyMCE.selectedInstance) {\r
-                       tinyMCE.selectedInstance.execCommand('mceSetContent', false, h);\r
-                       tinyMCE.selectedInstance.repaint();\r
-               }\r
-       },\r
-\r
-       importThemeLanguagePack : function(name) {\r
-               if (typeof(name) == "undefined")\r
-                       name = tinyMCE.settings.theme;\r
-\r
-               tinyMCE.loadScript(tinyMCE.baseURL + '/themes/' + name + '/langs/' + tinyMCE.settings.language + '.js');\r
-       },\r
-\r
-       importPluginLanguagePack : function(name) {\r
-               var b = tinyMCE.baseURL + '/plugins/' + name;\r
-\r
-               if (this.plugins[name])\r
-                       b = this.plugins[name].baseURL;\r
-\r
-               tinyMCE.loadScript(b + '/langs/' + tinyMCE.settings.language +  '.js');\r
-       },\r
-\r
-       applyTemplate : function(h, ag) {\r
-               return h.replace(new RegExp('\\{\\$([a-z0-9_]+)\\}', 'gi'), function(m, s) {\r
-                       if (s.indexOf('lang_') == 0 && tinyMCELang[s])\r
-                               return tinyMCELang[s];\r
-\r
-                       if (ag && ag[s])\r
-                               return ag[s];\r
-\r
-                       if (tinyMCE.settings[s])\r
-                               return tinyMCE.settings[s];\r
-\r
-                       if (m == 'themeurl')\r
-                               return tinyMCE.themeURL;\r
-\r
-                       return m;\r
-               });\r
-       },\r
-\r
-       replaceVar : function(h, r, v) {\r
-               return h.replace(new RegExp('{\\\$' + r + '}', 'g'), v);\r
-       },\r
-\r
-       openWindow : function(template, args) {\r
-               var html, width, height, x, y, resizable, scrollbars, url, name, win, modal, features;\r
-\r
-               args = !args ? {} : args;\r
-\r
-               args.mce_template_file = template.file;\r
-               args.mce_width = template.width;\r
-               args.mce_height = template.height;\r
-               tinyMCE.windowArgs = args;\r
-\r
-               html = template.html;\r
-               if (!(width = parseInt(template.width)))\r
-                       width = 320;\r
-\r
-               if (!(height = parseInt(template.height)))\r
-                       height = 200;\r
-\r
-               // Add to height in M$ due to SP2 WHY DON'T YOU GUYS IMPLEMENT innerWidth of windows!!\r
-               if (tinyMCE.isIE)\r
-                       height += 40;\r
-               else\r
-                       height += 20;\r
-\r
-               x = parseInt(screen.width / 2.0) - (width / 2.0);\r
-               y = parseInt(screen.height / 2.0) - (height / 2.0);\r
-\r
-               resizable = (args && args.resizable) ? args.resizable : "no";\r
-               scrollbars = (args && args.scrollbars) ? args.scrollbars : "no";\r
-\r
-               if (template.file.charAt(0) != '/' && template.file.indexOf('://') == -1)\r
-                       url = tinyMCE.baseURL + "/themes/" + tinyMCE.getParam("theme") + "/" + template.file;\r
-               else\r
-                       url = template.file;\r
-\r
-               // Replace all args as variables in URL\r
-               for (name in args) {\r
-                       if (typeof(args[name]) == 'function')\r
-                               continue;\r
-\r
-                       url = tinyMCE.replaceVar(url, name, escape(args[name]));\r
-               }\r
-\r
-               if (html) {\r
-                       html = tinyMCE.replaceVar(html, "css", this.settings.popups_css);\r
-                       html = tinyMCE.applyTemplate(html, args);\r
-\r
-                       win = window.open("", "mcePopup" + new Date().getTime(), "top=" + y + ",left=" + x + ",scrollbars=" + scrollbars + ",dialog=yes,minimizable=" + resizable + ",modal=yes,width=" + width + ",height=" + height + ",resizable=" + resizable);\r
-                       if (win == null) {\r
-                               alert(tinyMCELang.lang_popup_blocked);\r
-                               return;\r
-                       }\r
-\r
-                       win.document.write(html);\r
-                       win.document.close();\r
-                       win.resizeTo(width, height);\r
-                       win.focus();\r
-               } else {\r
-                       if ((tinyMCE.isRealIE) && resizable != 'yes' && tinyMCE.settings.dialog_type == "modal") {\r
-                               height += 10;\r
-\r
-                               features = "resizable:" + resizable + ";scroll:" + scrollbars + ";status:yes;center:yes;help:no;dialogWidth:" + width + "px;dialogHeight:" + height + "px;";\r
-\r
-                               window.showModalDialog(url, window, features);\r
-                       } else {\r
-                               modal = (resizable == "yes") ? "no" : "yes";\r
-\r
-                               if (tinyMCE.isGecko && tinyMCE.isMac)\r
-                                       modal = "no";\r
-\r
-                               if (template.close_previous != "no")\r
-                                       try {tinyMCE.lastWindow.close();} catch (ex) {}\r
-\r
-                               win = window.open(url, "mcePopup" + new Date().getTime(), "top=" + y + ",left=" + x + ",scrollbars=" + scrollbars + ",dialog=" + modal + ",minimizable=" + resizable + ",modal=" + modal + ",width=" + width + ",height=" + height + ",resizable=" + resizable);\r
-                               if (win == null) {\r
-                                       alert(tinyMCELang.lang_popup_blocked);\r
-                                       return;\r
-                               }\r
-\r
-                               if (template.close_previous != "no")\r
-                                       tinyMCE.lastWindow = win;\r
-\r
-                               try {\r
-                                       win.resizeTo(width, height);\r
-                               } catch(e) {\r
-                                       // Ignore\r
-                               }\r
-\r
-                               // Make it bigger if statusbar is forced\r
-                               if (tinyMCE.isGecko) {\r
-                                       if (win.document.defaultView.statusbar.visible)\r
-                                               win.resizeBy(0, tinyMCE.isMac ? 10 : 24);\r
-                               }\r
-\r
-                               win.focus();\r
-                       }\r
-               }\r
-       },\r
-\r
-       closeWindow : function(win) {\r
-               win.close();\r
-       },\r
-\r
-       getVisualAidClass : function(class_name, state) {\r
-               var i, classNames, ar, className, aidClass = tinyMCE.settings.visual_table_class;\r
-\r
-               if (typeof(state) == "undefined")\r
-                       state = tinyMCE.settings.visual;\r
-\r
-               // Split\r
-               classNames = [];\r
-               ar = class_name.split(' ');\r
-               for (i=0; i<ar.length; i++) {\r
-                       if (ar[i] == aidClass)\r
-                               ar[i] = "";\r
-\r
-                       if (ar[i] !== '')\r
-                               classNames[classNames.length] = ar[i];\r
-               }\r
-\r
-               if (state)\r
-                       classNames[classNames.length] = aidClass;\r
-\r
-               // Glue\r
-               className = "";\r
-               for (i=0; i<classNames.length; i++) {\r
-                       if (i > 0)\r
-                               className += " ";\r
-\r
-                       className += classNames[i];\r
-               }\r
-\r
-               return className;\r
-       },\r
-\r
-       handleVisualAid : function(el, deep, state, inst, skip_dispatch) {\r
-               var i, x, y, tableElement, anchorName, oldW, oldH, bo, cn;\r
-\r
-               if (!el)\r
-                       return;\r
-\r
-               if (!skip_dispatch)\r
-                       tinyMCE.dispatchCallback(inst, 'handle_visual_aid_callback', 'handleVisualAid', el, deep, state, inst);\r
-\r
-               tableElement = null;\r
-\r
-               switch (el.nodeName) {\r
-                       case "TABLE":\r
-                               oldW = el.style.width;\r
-                               oldH = el.style.height;\r
-                               bo = tinyMCE.getAttrib(el, "border");\r
-\r
-                               bo = bo == '' || bo == "0" ? true : false;\r
-\r
-                               tinyMCE.setAttrib(el, "class", tinyMCE.getVisualAidClass(tinyMCE.getAttrib(el, "class"), state && bo));\r
-\r
-                               el.style.width = oldW;\r
-                               el.style.height = oldH;\r
-\r
-                               for (y=0; y<el.rows.length; y++) {\r
-                                       for (x=0; x<el.rows[y].cells.length; x++) {\r
-                                               cn = tinyMCE.getVisualAidClass(tinyMCE.getAttrib(el.rows[y].cells[x], "class"), state && bo);\r
-                                               tinyMCE.setAttrib(el.rows[y].cells[x], "class", cn);\r
-                                       }\r
-                               }\r
-\r
-                               break;\r
-\r
-                       case "A":\r
-                               anchorName = tinyMCE.getAttrib(el, "name");\r
-\r
-                               if (anchorName !== '' && state) {\r
-                                       el.title = anchorName;\r
-                                       tinyMCE.addCSSClass(el, 'mceItemAnchor');\r
-                               } else if (anchorName !== '' && !state)\r
-                                       el.className = '';\r
-\r
-                               break;\r
-               }\r
-\r
-               if (deep && el.hasChildNodes()) {\r
-                       for (i=0; i<el.childNodes.length; i++)\r
-                               tinyMCE.handleVisualAid(el.childNodes[i], deep, state, inst, true);\r
-               }\r
-       },\r
-\r
-       fixGeckoBaseHREFBug : function(m, e, h) {\r
-               var xsrc, xhref;\r
-\r
-               if (tinyMCE.isGecko) {\r
-                       if (m == 1) {\r
-                               h = h.replace(/\ssrc=/gi, " mce_tsrc=");\r
-                               h = h.replace(/\shref=/gi, " mce_thref=");\r
-\r
-                               return h;\r
-                       } else {\r
-                               // Why bother if there is no src or href broken\r
-                               if (!new RegExp('(src|href)=', 'g').test(h))\r
-                                       return h;\r
-\r
-                               // Restore src and href that gets messed up by Gecko\r
-                               tinyMCE.selectElements(e, 'A,IMG,SELECT,AREA,IFRAME,BASE,INPUT,SCRIPT,EMBED,OBJECT,LINK', function (n) {\r
-                                       xsrc = tinyMCE.getAttrib(n, "mce_tsrc");\r
-                                       xhref = tinyMCE.getAttrib(n, "mce_thref");\r
-\r
-                                       if (xsrc !== '') {\r
-                                               try {\r
-                                                       n.src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href, xsrc);\r
-                                               } catch (e) {\r
-                                                       // Ignore, Firefox cast exception if local file wasn't found\r
-                                               }\r
-\r
-                                               n.removeAttribute("mce_tsrc");\r
-                                       }\r
-\r
-                                       if (xhref !== '') {\r
-                                               try {\r
-                                                       n.href = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href, xhref);\r
-                                               } catch (e) {\r
-                                                       // Ignore, Firefox cast exception if local file wasn't found\r
-                                               }\r
-\r
-                                               n.removeAttribute("mce_thref");\r
-                                       }\r
-\r
-                                       return false;\r
-                               });\r
-\r
-                               // Restore text/comment nodes\r
-                               tinyMCE.selectNodes(e, function(n) {\r
-                                       if (n.nodeType == 3 || n.nodeType == 8) {\r
-                                               n.nodeValue = n.nodeValue.replace(/\smce_tsrc=/gi, " src=");\r
-                                               n.nodeValue = n.nodeValue.replace(/\smce_thref=/gi, " href=");\r
-                                       }\r
-\r
-                                       return false;\r
-                               });\r
-                       }\r
-               }\r
-\r
-               return h;\r
-       },\r
-\r
-       _setHTML : function(doc, html_content) {\r
-               var i, html, paras, node;\r
-\r
-               // Force closed anchors open\r
-               //html_content = html_content.replace(new RegExp('<a(.*?)/>', 'gi'), '<a$1></a>');\r
-\r
-               html_content = tinyMCE.cleanupHTMLCode(html_content);\r
-\r
-               // Try innerHTML if it fails use pasteHTML in MSIE\r
-               try {\r
-                       tinyMCE.setInnerHTML(doc.body, html_content);\r
-               } catch (e) {\r
-                       if (this.isMSIE)\r
-                               doc.body.createTextRange().pasteHTML(html_content);\r
-               }\r
-\r
-               // Content duplication bug fix\r
-               if (tinyMCE.isIE && tinyMCE.settings.fix_content_duplication) {\r
-                       // Remove P elements in P elements\r
-                       paras = doc.getElementsByTagName("P");\r
-                       for (i=0; i<paras.length; i++) {\r
-                               node = paras[i];\r
-\r
-                               while ((node = node.parentNode) != null) {\r
-                                       if (node.nodeName == "P")\r
-                                               node.outerHTML = node.innerHTML;\r
-                               }\r
-                       }\r
-\r
-                       // Content duplication bug fix (Seems to be word crap)\r
-                       html = doc.body.innerHTML;\r
-\r
-                       // Always set the htmlText output\r
-                       tinyMCE.setInnerHTML(doc.body, html);\r
-               }\r
-\r
-               tinyMCE.cleanupAnchors(doc);\r
-\r
-               if (tinyMCE.getParam("convert_fonts_to_spans"))\r
-                       tinyMCE.convertSpansToFonts(doc);\r
-       },\r
-\r
-       getEditorId : function(form_element) {\r
-               var inst = this.getInstanceById(form_element);\r
-\r
-               if (!inst)\r
-                       return null;\r
-\r
-               return inst.editorId;\r
-       },\r
-\r
-       getInstanceById : function(editor_id) {\r
-               var inst = this.instances[editor_id], n;\r
-\r
-               if (!inst) {\r
-                       for (n in tinyMCE.instances) {\r
-                               inst = tinyMCE.instances[n];\r
-\r
-                               if (!tinyMCE.isInstance(inst))\r
-                                       continue;\r
-\r
-                               if (inst.formTargetElementId == editor_id)\r
-                                       return inst;\r
-                       }\r
-               } else\r
-                       return inst;\r
-\r
-               return null;\r
-       },\r
-\r
-       queryInstanceCommandValue : function(editor_id, command) {\r
-               var inst = tinyMCE.getInstanceById(editor_id);\r
-\r
-               if (inst)\r
-                       return inst.queryCommandValue(command);\r
-\r
-               return false;\r
-       },\r
-\r
-       queryInstanceCommandState : function(editor_id, command) {\r
-               var inst = tinyMCE.getInstanceById(editor_id);\r
-\r
-               if (inst)\r
-                       return inst.queryCommandState(command);\r
-\r
-               return null;\r
-       },\r
-\r
-       setWindowArg : function(n, v) {\r
-               this.windowArgs[n] = v;\r
-       },\r
-\r
-       getWindowArg : function(n, d) {\r
-               return (typeof(this.windowArgs[n]) == "undefined") ? d : this.windowArgs[n];\r
-       },\r
-\r
-       getCSSClasses : function(editor_id, doc) {\r
-               var i, c, x, rule, styles, rules, csses, selectorText, inst = tinyMCE.getInstanceById(editor_id);\r
-               var cssClass, addClass, p;\r
-\r
-               if (!inst)\r
-                       inst = tinyMCE.selectedInstance;\r
-\r
-               if (!inst)\r
-                       return [];\r
-\r
-               if (!doc)\r
-                       doc = inst.getDoc();\r
-\r
-               // Is cached, use that\r
-               if (inst && inst.cssClasses.length > 0)\r
-                       return inst.cssClasses;\r
-\r
-               if (!doc)\r
-                       return;\r
-\r
-               styles = doc.styleSheets;\r
-\r
-               if (styles && styles.length > 0) {\r
-                       for (x=0; x<styles.length; x++) {\r
-                               csses = null;\r
-\r
-                               try {\r
-                                       csses = tinyMCE.isIE ? doc.styleSheets(x).rules : styles[x].cssRules;\r
-                               } catch(e) {\r
-                                       // Just ignore any errors I know this is ugly!!\r
-                               }\r
-       \r
-                               if (!csses)\r
-                                       return [];\r
-\r
-                               for (i=0; i<csses.length; i++) {\r
-                                       selectorText = csses[i].selectorText;\r
-\r
-                                       // Can be multiple rules per selector\r
-                                       if (selectorText) {\r
-                                               rules = selectorText.split(',');\r
-                                               for (c=0; c<rules.length; c++) {\r
-                                                       rule = rules[c];\r
-\r
-                                                       // Strip spaces between selectors\r
-                                                       while (rule.indexOf(' ') == 0)\r
-                                                               rule = rule.substring(1);\r
-\r
-                                                       // Invalid rule\r
-                                                       if (rule.indexOf(' ') != -1 || rule.indexOf(':') != -1 || rule.indexOf('mceItem') != -1)\r
-                                                               continue;\r
-\r
-                                                       if (rule.indexOf(tinyMCE.settings.visual_table_class) != -1 || rule.indexOf('mceEditable') != -1 || rule.indexOf('mceNonEditable') != -1)\r
-                                                               continue;\r
-\r
-                                                       // Is class rule\r
-                                                       if (rule.indexOf('.') != -1) {\r
-                                                               cssClass = rule.substring(rule.indexOf('.') + 1);\r
-                                                               addClass = true;\r
-\r
-                                                               for (p=0; p<inst.cssClasses.length && addClass; p++) {\r
-                                                                       if (inst.cssClasses[p] == cssClass)\r
-                                                                               addClass = false;\r
-                                                               }\r
-\r
-                                                               if (addClass)\r
-                                                                       inst.cssClasses[inst.cssClasses.length] = cssClass;\r
-                                                       }\r
-                                               }\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-\r
-               return inst.cssClasses;\r
-       },\r
-\r
-       regexpReplace : function(in_str, reg_exp, replace_str, opts) {\r
-               var re;\r
-\r
-               if (in_str == null)\r
-                       return in_str;\r
-\r
-               if (typeof(opts) == "undefined")\r
-                       opts = 'g';\r
-\r
-               re = new RegExp(reg_exp, opts);\r
-\r
-               return in_str.replace(re, replace_str);\r
-       },\r
-\r
-       trim : function(s) {\r
-               return s.replace(/^\s*|\s*$/g, "");\r
-       },\r
-\r
-       cleanupEventStr : function(s) {\r
-               s = "" + s;\r
-               s = s.replace('function anonymous()\n{\n', '');\r
-               s = s.replace('\n}', '');\r
-               s = s.replace(/^return true;/gi, ''); // Remove event blocker\r
-\r
-               return s;\r
-       },\r
-\r
-       getControlHTML : function(c) {\r
-               var i, l, n, o, v, rtl = tinyMCE.getLang('lang_dir') == 'rtl';\r
-\r
-               l = tinyMCE.plugins;\r
-               for (n in l) {\r
-                       o = l[n];\r
-\r
-                       if (o.getControlHTML && (v = o.getControlHTML(c)) !== '') {\r
-                               if (rtl)\r
-                                       return '<span dir="rtl">' + tinyMCE.replaceVar(v, "pluginurl", o.baseURL) + '</span>';\r
-\r
-                               return tinyMCE.replaceVar(v, "pluginurl", o.baseURL);\r
-                       }\r
-               }\r
-\r
-               o = tinyMCE.themes[tinyMCE.settings.theme];\r
-               if (o.getControlHTML && (v = o.getControlHTML(c)) !== '') {\r
-                       if (rtl)\r
-                               return '<span dir="rtl">' + v + '</span>';\r
-\r
-                       return v;\r
-               }\r
-\r
-               return '';\r
-       },\r
-\r
-       evalFunc : function(f, idx, a, o) {\r
-               o = !o ? window : o;\r
-               f = typeof(f) == 'function' ? f : o[f];\r
-\r
-               return f.apply(o, Array.prototype.slice.call(a, idx));\r
-       },\r
-\r
-       dispatchCallback : function(i, p, n) {\r
-               return this.callFunc(i, p, n, 0, this.dispatchCallback.arguments);\r
-       },\r
-\r
-       executeCallback : function(i, p, n) {\r
-               return this.callFunc(i, p, n, 1, this.executeCallback.arguments);\r
-       },\r
-\r
-       execCommandCallback : function(i, p, n) {\r
-               return this.callFunc(i, p, n, 2, this.execCommandCallback.arguments);\r
-       },\r
-\r
-       callFunc : function(ins, p, n, m, a) {\r
-               var l, i, on, o, s, v;\r
-\r
-               s = m == 2;\r
-\r
-               l = tinyMCE.getParam(p, '');\r
-\r
-               if (l !== '' && (v = tinyMCE.evalFunc(l, 3, a)) == s && m > 0)\r
-                       return true;\r
-\r
-               if (ins != null) {\r
-                       for (i=0, l = ins.plugins; i<l.length; i++) {\r
-                               o = tinyMCE.plugins[l[i]];\r
-\r
-                               if (o[n] && (v = tinyMCE.evalFunc(n, 3, a, o)) == s && m > 0)\r
-                                       return true;\r
-                       }\r
-               }\r
-\r
-               l = tinyMCE.themes;\r
-               for (on in l) {\r
-                       o = l[on];\r
-\r
-                       if (o[n] && (v = tinyMCE.evalFunc(n, 3, a, o)) == s && m > 0)\r
-                               return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       resolveDots : function(s, o) {\r
-               var i;\r
-\r
-               if (typeof(s) == 'string') {\r
-                       for (i=0, s=s.split('.'); i<s.length; i++)\r
-                               o = o[s[i]];\r
-               } else\r
-                       o = s;\r
-\r
-               return o;\r
-       },\r
-\r
-       xmlEncode : function(s) {\r
-               return s ? ('' + s).replace(this.xmlEncodeRe, function (c, b) {\r
-                       switch (c) {\r
-                               case '&':\r
-                                       return '&amp;';\r
-\r
-                               case '"':\r
-                                       return '&quot;';\r
-\r
-                               case '<':\r
-                                       return '&lt;';\r
-\r
-                               case '>':\r
-                                       return '&gt;';\r
-                       }\r
-\r
-                       return c;\r
-               }) : s;\r
-       },\r
-\r
-       add : function(c, m) {\r
-               var n;\r
-\r
-               for (n in m) {\r
-                       if (m.hasOwnProperty(n))\r
-                               c.prototype[n] = m[n];\r
-               }\r
-       },\r
-\r
-       extend : function(p, np) {\r
-               var o = {}, n;\r
-\r
-               o.parent = p;\r
-\r
-               for (n in p) {\r
-                       if (p.hasOwnProperty(n))\r
-                               o[n] = p[n];\r
-               }\r
-\r
-               for (n in np) {\r
-                       if (np.hasOwnProperty(n))\r
-                               o[n] = np[n];\r
-               }\r
-\r
-               return o;\r
-       },\r
-\r
-       hideMenus : function() {\r
-               var e = tinyMCE.lastSelectedMenuBtn;\r
-\r
-               if (tinyMCE.lastMenu) {\r
-                       tinyMCE.lastMenu.hide();\r
-                       tinyMCE.lastMenu = null;\r
-               }\r
-\r
-               if (e) {\r
-                       tinyMCE.switchClass(e, tinyMCE.lastMenuBtnClass);\r
-                       tinyMCE.lastSelectedMenuBtn = null;\r
-               }\r
-       }\r
-\r
-       };\r
-\r
-// Global instances\r
-var TinyMCE = TinyMCE_Engine; // Compatiblity with gzip compressors\r
-var tinyMCE = new TinyMCE_Engine();\r
-var tinyMCELang = {};\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_Control.class.js */\r
-\r
-function TinyMCE_Control(settings) {\r
-       var t, i, tos, fu, p, x, fn, fu, pn, s = settings;\r
-\r
-       this.undoRedoLevel = true;\r
-       this.isTinyMCE_Control = true;\r
-\r
-       // Default settings\r
-       this.enabled = true;\r
-       this.settings = s;\r
-       this.settings.theme = tinyMCE.getParam("theme", "default");\r
-       this.settings.width = tinyMCE.getParam("width", -1);\r
-       this.settings.height = tinyMCE.getParam("height", -1);\r
-       this.selection = new TinyMCE_Selection(this);\r
-       this.undoRedo = new TinyMCE_UndoRedo(this);\r
-       this.cleanup = new TinyMCE_Cleanup();\r
-       this.shortcuts = [];\r
-       this.hasMouseMoved = false;\r
-       this.foreColor = this.backColor = "#999999";\r
-       this.data = {};\r
-       this.cssClasses = [];\r
-\r
-       this.cleanup.init({\r
-               valid_elements : s.valid_elements,\r
-               extended_valid_elements : s.extended_valid_elements,\r
-               valid_child_elements : s.valid_child_elements,\r
-               entities : s.entities,\r
-               entity_encoding : s.entity_encoding,\r
-               debug : s.cleanup_debug,\r
-               indent : s.apply_source_formatting,\r
-               invalid_elements : s.invalid_elements,\r
-               verify_html : s.verify_html,\r
-               fix_content_duplication : s.fix_content_duplication,\r
-               convert_fonts_to_spans : s.convert_fonts_to_spans\r
-       });\r
-\r
-       // Wrap old theme\r
-       t = this.settings.theme;\r
-       if (!tinyMCE.hasTheme(t)) {\r
-               fn = tinyMCE.callbacks;\r
-               tos = {};\r
-\r
-               for (i=0; i<fn.length; i++) {\r
-                       if ((fu = window['TinyMCE_' + t + "_" + fn[i]]))\r
-                               tos[fn[i]] = fu;\r
-               }\r
-\r
-               tinyMCE.addTheme(t, tos);\r
-       }\r
-\r
-       // Wrap old plugins\r
-       this.plugins = [];\r
-       p = tinyMCE.getParam('plugins', '', true, ',');\r
-       if (p.length > 0) {\r
-               for (i=0; i<p.length; i++) {\r
-                       pn = p[i];\r
-\r
-                       if (pn.charAt(0) == '-')\r
-                               pn = pn.substring(1);\r
-\r
-                       if (!tinyMCE.hasPlugin(pn)) {\r
-                               fn = tinyMCE.callbacks;\r
-                               tos = {};\r
-\r
-                               for (x=0; x<fn.length; x++) {\r
-                                       if ((fu = window['TinyMCE_' + pn + "_" + fn[x]]))\r
-                                               tos[fn[x]] = fu;\r
-                               }\r
-\r
-                               tinyMCE.addPlugin(pn, tos);\r
-                       }\r
-\r
-                       this.plugins[this.plugins.length] = pn; \r
-               }\r
-       }\r
-};\r
-\r
-TinyMCE_Control.prototype = {\r
-       selection : null,\r
-\r
-       settings : null,\r
-\r
-       cleanup : null,\r
-\r
-       getData : function(na) {\r
-               var o = this.data[na];\r
-\r
-               if (!o)\r
-                       o = this.data[na] = {};\r
-\r
-               return o;\r
-       },\r
-\r
-       hasPlugin : function(n) {\r
-               var i;\r
-\r
-               for (i=0; i<this.plugins.length; i++) {\r
-                       if (this.plugins[i] == n)\r
-                               return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       addPlugin : function(n, p) {\r
-               if (!this.hasPlugin(n)) {\r
-                       tinyMCE.addPlugin(n, p);\r
-                       this.plugins[this.plugins.length] = n;\r
-               }\r
-       },\r
-\r
-       repaint : function() {\r
-               var s, b, ex;\r
-\r
-               if (tinyMCE.isRealIE)\r
-                       return;\r
-\r
-               try {\r
-                       s = this.selection;\r
-                       b = s.getBookmark(true);\r
-                       this.getBody().style.display = 'none';\r
-                       this.getDoc().execCommand('selectall', false, null);\r
-                       this.getSel().collapseToStart();\r
-                       this.getBody().style.display = 'block';\r
-                       s.moveToBookmark(b);\r
-               } catch (ex) {\r
-                       // Ignore\r
-               }\r
-       },\r
-\r
-       switchSettings : function() {\r
-               if (tinyMCE.configs.length > 1 && tinyMCE.currentConfig != this.settings.index) {\r
-                       tinyMCE.settings = this.settings;\r
-                       tinyMCE.currentConfig = this.settings.index;\r
-               }\r
-       },\r
-\r
-       select : function() {\r
-               var oldInst = tinyMCE.selectedInstance;\r
-\r
-               if (oldInst != this) {\r
-                       if (oldInst)\r
-                               oldInst.execCommand('mceEndTyping');\r
-\r
-                       tinyMCE.dispatchCallback(this, 'select_instance_callback', 'selectInstance', this, oldInst);\r
-                       tinyMCE.selectedInstance = this;\r
-               }\r
-       },\r
-\r
-       getBody : function() {\r
-               return this.contentBody ? this.contentBody : this.getDoc().body;\r
-       },\r
-\r
-       getDoc : function() {\r
-//             return this.contentDocument ? this.contentDocument : this.contentWindow.document; // Removed due to IE 5.5 ?\r
-               return this.contentWindow.document;\r
-       },\r
-\r
-       getWin : function() {\r
-               return this.contentWindow;\r
-       },\r
-\r
-       getContainerWin : function() {\r
-               return this.containerWindow ? this.containerWindow : window;\r
-       },\r
-\r
-       getViewPort : function() {\r
-               return tinyMCE.getViewPort(this.getWin());\r
-       },\r
-\r
-       getParentNode : function(n, f) {\r
-               return tinyMCE.getParentNode(n, f, this.getBody());\r
-       },\r
-\r
-       getParentElement : function(n, na, f) {\r
-               return tinyMCE.getParentElement(n, na, f, this.getBody());\r
-       },\r
-\r
-       getParentBlockElement : function(n) {\r
-               return tinyMCE.getParentBlockElement(n, this.getBody());\r
-       },\r
-\r
-       resizeToContent : function() {\r
-               var d = this.getDoc(), b = d.body, de = d.documentElement;\r
-\r
-               this.iframeElement.style.height = (tinyMCE.isRealIE) ? b.scrollHeight : de.offsetHeight + 'px';\r
-       },\r
-\r
-       addShortcut : function(m, k, d, cmd, ui, va) {\r
-               var n = typeof(k) == "number", ie = tinyMCE.isIE, c, sc, i, scl = this.shortcuts;\r
-\r
-               if (!tinyMCE.getParam('custom_shortcuts'))\r
-                       return false;\r
-\r
-               m = m.toLowerCase();\r
-               k = ie && !n ? k.toUpperCase() : k;\r
-               c = n ? null : k.charCodeAt(0);\r
-               d = d && d.indexOf('lang_') == 0 ? tinyMCE.getLang(d) : d;\r
-\r
-               sc = {\r
-                       alt : m.indexOf('alt') != -1,\r
-                       ctrl : m.indexOf('ctrl') != -1,\r
-                       shift : m.indexOf('shift') != -1,\r
-                       charCode : c,\r
-                       keyCode : n ? k : (ie ? c : null),\r
-                       desc : d,\r
-                       cmd : cmd,\r
-                       ui : ui,\r
-                       val : va\r
-               };\r
-\r
-               for (i=0; i<scl.length; i++) {\r
-                       if (sc.alt == scl[i].alt && sc.ctrl == scl[i].ctrl && sc.shift == scl[i].shift\r
-                               && sc.charCode == scl[i].charCode && sc.keyCode == scl[i].keyCode) {\r
-                               return false;\r
-                       }\r
-               }\r
-\r
-               scl[scl.length] = sc;\r
-\r
-               return true;\r
-       },\r
-\r
-       handleShortcut : function(e) {\r
-               var i, s, o;\r
-\r
-               // Normal key press, then ignore it\r
-               if (!e.altKey && !e.ctrlKey)\r
-                       return false;\r
-\r
-               s = this.shortcuts;\r
-\r
-               for (i=0; i<s.length; i++) {\r
-                       o = s[i];\r
-\r
-                       if (o.alt == e.altKey && o.ctrl == e.ctrlKey && (o.keyCode == e.keyCode || o.charCode == e.charCode)) {\r
-                               if (o.cmd && (e.type == "keydown" || (e.type == "keypress" && !tinyMCE.isOpera)))\r
-                                       tinyMCE.execCommand(o.cmd, o.ui, o.val);\r
-\r
-                               tinyMCE.cancelEvent(e);\r
-                               return true;\r
-                       }\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       autoResetDesignMode : function() {\r
-               // Add fix for tab/style.display none/block problems in Gecko\r
-               if (!tinyMCE.isIE && this.isHidden() && tinyMCE.getParam('auto_reset_designmode'))\r
-                       eval('try { this.getDoc().designMode = "On"; this.useCSS = false; } catch(e) {}');\r
-       },\r
-\r
-       isHidden : function() {\r
-               var s;\r
-\r
-               if (tinyMCE.isIE)\r
-                       return false;\r
-\r
-               s = this.getSel();\r
-\r
-               // Weird, wheres that cursor selection?\r
-               return (!s || !s.rangeCount || s.rangeCount == 0);\r
-       },\r
-\r
-       isDirty : function() {\r
-               // Is content modified and not in a submit procedure\r
-               return tinyMCE.trim(this.startContent) != tinyMCE.trim(this.getBody().innerHTML) && !this.isNotDirty;\r
-       },\r
-\r
-       _mergeElements : function(scmd, pa, ch, override) {\r
-               var st, stc, className, n;\r
-\r
-               if (scmd == "removeformat") {\r
-                       pa.className = "";\r
-                       pa.style.cssText = "";\r
-                       ch.className = "";\r
-                       ch.style.cssText = "";\r
-                       return;\r
-               }\r
-\r
-               st = tinyMCE.parseStyle(tinyMCE.getAttrib(pa, "style"));\r
-               stc = tinyMCE.parseStyle(tinyMCE.getAttrib(ch, "style"));\r
-               className = tinyMCE.getAttrib(pa, "class");\r
-\r
-               // Removed class adding due to bug #1478272\r
-               className = tinyMCE.getAttrib(ch, "class");\r
-\r
-               if (override) {\r
-                       for (n in st) {\r
-                               if (typeof(st[n]) == 'function')\r
-                                       continue;\r
-\r
-                               stc[n] = st[n];\r
-                       }\r
-               } else {\r
-                       for (n in stc) {\r
-                               if (typeof(stc[n]) == 'function')\r
-                                       continue;\r
-\r
-                               st[n] = stc[n];\r
-                       }\r
-               }\r
-\r
-               tinyMCE.setAttrib(pa, "style", tinyMCE.serializeStyle(st));\r
-               tinyMCE.setAttrib(pa, "class", tinyMCE.trim(className));\r
-               ch.className = "";\r
-               ch.style.cssText = "";\r
-               ch.removeAttribute("class");\r
-               ch.removeAttribute("style");\r
-       },\r
-\r
-       _fixRootBlocks : function() {\r
-               var rb, b, ne, be, nx, bm;\r
-\r
-               rb = tinyMCE.getParam('forced_root_block');\r
-               if (!rb)\r
-                       return;\r
-\r
-               b = this.getBody();\r
-               ne = b.firstChild;\r
-\r
-               while (ne) {\r
-                       nx = ne.nextSibling;\r
-\r
-                       // If text node or inline element wrap it in a block element\r
-                       if ((ne.nodeType == 3 && ne.nodeValue.replace(/\s+/g, '') != '') || (ne.nodeType == 1 && !tinyMCE.blockRegExp.test(ne.nodeName))) {\r
-                               if (!bm)\r
-                                       bm = this.selection.getBookmark();\r
-\r
-                               if (!be) {\r
-                                       be = this.getDoc().createElement(rb);\r
-                                       be.appendChild(ne.cloneNode(true));\r
-                                       b.replaceChild(be, ne);\r
-                               } else {\r
-                                       be.appendChild(ne.cloneNode(true));\r
-                                       b.removeChild(ne);\r
-                               }\r
-                       } else\r
-                               be = null;\r
-\r
-                       ne = nx;\r
-               }\r
-\r
-               if (bm)\r
-                       this.selection.moveToBookmark(bm);\r
-       },\r
-\r
-       _fixTrailingNbsp : function() {\r
-               var s = this.selection, e = s.getFocusElement(), bm, v;\r
-\r
-               if (e && tinyMCE.blockRegExp.test(e.nodeName) && e.firstChild) {\r
-                       v = e.firstChild.nodeValue;\r
-\r
-                       if (v && v.length > 1 && /(^\u00a0|\u00a0$)/.test(v)) {\r
-                               e.firstChild.nodeValue = v.replace(/(^\u00a0|\u00a0$)/, '');\r
-                               s.selectNode(e.firstChild, true, false, false); // Select and collapse\r
-                       }\r
-               }\r
-       },\r
-\r
-       _setUseCSS : function(b) {\r
-               var d = this.getDoc();\r
-\r
-               try {d.execCommand("useCSS", false, !b);} catch (ex) {}\r
-               try {d.execCommand("styleWithCSS", false, b);} catch (ex) {}\r
-\r
-               if (!tinyMCE.getParam("table_inline_editing"))\r
-                       try {d.execCommand('enableInlineTableEditing', false, "false");} catch (ex) {}\r
-\r
-               if (!tinyMCE.getParam("object_resizing"))\r
-                       try {d.execCommand('enableObjectResizing', false, "false");} catch (ex) {}\r
-       },\r
-\r
-       execCommand : function(command, user_interface, value) {\r
-               var i, x, z, align, img, div, doc = this.getDoc(), win = this.getWin(), focusElm = this.getFocusElement();\r
-\r
-               // Is not a undo specific command\r
-               if (!new RegExp('mceStartTyping|mceEndTyping|mceBeginUndoLevel|mceEndUndoLevel|mceAddUndoLevel', 'gi').test(command))\r
-                       this.undoBookmark = null;\r
-\r
-               // Mozilla issue\r
-               if (!tinyMCE.isIE && !this.useCSS) {\r
-                       this._setUseCSS(false);\r
-                       this.useCSS = true;\r
-               }\r
-\r
-               //debug("command: " + command + ", user_interface: " + user_interface + ", value: " + value);\r
-               this.contentDocument = doc; // <-- Strange, unless this is applied Mozilla 1.3 breaks\r
-\r
-               // Don't dispatch key commands\r
-               if (!/mceStartTyping|mceEndTyping/.test(command)) {\r
-                       if (tinyMCE.execCommandCallback(this, 'execcommand_callback', 'execCommand', this.editorId, this.getBody(), command, user_interface, value))\r
-                               return;\r
-               }\r
-\r
-               // Fix align on images\r
-               if (focusElm && focusElm.nodeName == "IMG") {\r
-                       align = focusElm.getAttribute('align');\r
-                       img = command == "JustifyCenter" ? focusElm.cloneNode(false) : focusElm;\r
-\r
-                       switch (command) {\r
-                               case "JustifyLeft":\r
-                                       if (align == 'left') {\r
-                                               img.setAttribute('align', ''); // Needed for IE\r
-                                               img.removeAttribute('align');\r
-                                       } else\r
-                                               img.setAttribute('align', 'left');\r
-\r
-                                       // Remove the div\r
-                                       div = focusElm.parentNode;\r
-                                       if (div && div.nodeName == "DIV" && div.childNodes.length == 1 && div.parentNode)\r
-                                               div.parentNode.replaceChild(img, div);\r
-\r
-                                       this.selection.selectNode(img);\r
-                                       this.repaint();\r
-                                       tinyMCE.triggerNodeChange();\r
-                                       return;\r
-\r
-                               case "JustifyCenter":\r
-                                       img.setAttribute('align', ''); // Needed for IE\r
-                                       img.removeAttribute('align');\r
-\r
-                                       // Is centered\r
-                                       div = tinyMCE.getParentElement(focusElm, "div");\r
-                                       if (div && div.style.textAlign == "center") {\r
-                                               // Remove div\r
-                                               if (div.nodeName == "DIV" && div.childNodes.length == 1 && div.parentNode)\r
-                                                       div.parentNode.replaceChild(img, div);\r
-                                       } else {\r
-                                               // Add div\r
-                                               div = this.getDoc().createElement("div");\r
-                                               div.style.textAlign = 'center';\r
-                                               div.appendChild(img);\r
-                                               focusElm.parentNode.replaceChild(div, focusElm);\r
-                                       }\r
-\r
-                                       this.selection.selectNode(img);\r
-                                       this.repaint();\r
-                                       tinyMCE.triggerNodeChange();\r
-                                       return;\r
-\r
-                               case "JustifyRight":\r
-                                       if (align == 'right') {\r
-                                               img.setAttribute('align', ''); // Needed for IE\r
-                                               img.removeAttribute('align');\r
-                                       } else\r
-                                               img.setAttribute('align', 'right');\r
-\r
-                                       // Remove the div\r
-                                       div = focusElm.parentNode;\r
-                                       if (div && div.nodeName == "DIV" && div.childNodes.length == 1 && div.parentNode)\r
-                                               div.parentNode.replaceChild(img, div);\r
-\r
-                                       this.selection.selectNode(img);\r
-                                       this.repaint();\r
-                                       tinyMCE.triggerNodeChange();\r
-                                       return;\r
-                       }\r
-               }\r
-\r
-               if (tinyMCE.settings.force_br_newlines) {\r
-                       var alignValue = "";\r
-\r
-                       if (doc.selection.type != "Control") {\r
-                               switch (command) {\r
-                                               case "JustifyLeft":\r
-                                                       alignValue = "left";\r
-                                                       break;\r
-\r
-                                               case "JustifyCenter":\r
-                                                       alignValue = "center";\r
-                                                       break;\r
-\r
-                                               case "JustifyFull":\r
-                                                       alignValue = "justify";\r
-                                                       break;\r
-\r
-                                               case "JustifyRight":\r
-                                                       alignValue = "right";\r
-                                                       break;\r
-                               }\r
-\r
-                               if (alignValue !== '') {\r
-                                       var rng = doc.selection.createRange();\r
-\r
-                                       if ((divElm = tinyMCE.getParentElement(rng.parentElement(), "div")) != null)\r
-                                               divElm.setAttribute("align", alignValue);\r
-                                       else if (rng.pasteHTML && rng.htmlText.length > 0)\r
-                                               rng.pasteHTML('<div align="' + alignValue + '">' + rng.htmlText + "</div>");\r
-\r
-                                       tinyMCE.triggerNodeChange();\r
-                                       return;\r
-                               }\r
-                       }\r
-               }\r
-\r
-               switch (command) {\r
-                       case "mceRepaint":\r
-                               this.repaint();\r
-                               return true;\r
-\r
-                       case "JustifyLeft":\r
-                       case "JustifyCenter":\r
-                       case "JustifyFull":\r
-                       case "JustifyRight":\r
-                               var el = tinyMCE.getParentNode(focusElm, function(n) {return tinyMCE.getAttrib(n, 'align');});\r
-\r
-                               if (el) {\r
-                                       el.setAttribute('align', ''); // Needed for IE\r
-                                       el.removeAttribute('align');\r
-                               } else\r
-                                       this.getDoc().execCommand(command, user_interface, value);\r
-\r
-                               tinyMCE.triggerNodeChange();\r
-\r
-                               return true;\r
-\r
-                       case "unlink":\r
-                               // Unlink if caret is inside link\r
-                               if (tinyMCE.isGecko && this.getSel().isCollapsed) {\r
-                                       focusElm = tinyMCE.getParentElement(focusElm, 'A');\r
-\r
-                                       if (focusElm)\r
-                                               this.selection.selectNode(focusElm, false);\r
-                               }\r
-\r
-                               this.getDoc().execCommand(command, user_interface, value);\r
-\r
-                               tinyMCE.isGecko && this.getSel().collapseToEnd();\r
-\r
-                               tinyMCE.triggerNodeChange();\r
-\r
-                               return true;\r
-\r
-                       case "InsertUnorderedList":\r
-                       case "InsertOrderedList":\r
-                               this.getDoc().execCommand(command, user_interface, value);\r
-                               tinyMCE.triggerNodeChange();\r
-                               break;\r
-\r
-                       case "Strikethrough":\r
-                               this.getDoc().execCommand(command, user_interface, value);\r
-                               tinyMCE.triggerNodeChange();\r
-                               break;\r
-\r
-                       case "mceSelectNode":\r
-                               this.selection.selectNode(value);\r
-                               tinyMCE.triggerNodeChange();\r
-                               tinyMCE.selectedNode = value;\r
-                               break;\r
-\r
-                       case "FormatBlock":\r
-                               if (value == null || value == '') {\r
-                                       var elm = tinyMCE.getParentElement(this.getFocusElement(), "p,div,h1,h2,h3,h4,h5,h6,pre,address,blockquote,dt,dl,dd,samp");\r
-\r
-                                       if (elm)\r
-                                               this.execCommand("mceRemoveNode", false, elm);\r
-                               } else {\r
-                                       if (!this.cleanup.isValid(value))\r
-                                               return true;\r
-\r
-                                       if (tinyMCE.isGecko && new RegExp('<(div|blockquote|code|dt|dd|dl|samp)>', 'gi').test(value))\r
-                                               value = value.replace(/[^a-z]/gi, '');\r
-\r
-                                       if (tinyMCE.isIE && new RegExp('blockquote|code|samp', 'gi').test(value)) {\r
-                                               var b = this.selection.getBookmark();\r
-                                               this.getDoc().execCommand("FormatBlock", false, '<p>');\r
-                                               tinyMCE.renameElement(tinyMCE.getParentBlockElement(this.getFocusElement()), value);\r
-                                               this.selection.moveToBookmark(b);\r
-                                       } else\r
-                                               this.getDoc().execCommand("FormatBlock", false, value);\r
-                               }\r
-\r
-                               tinyMCE.triggerNodeChange();\r
-\r
-                               break;\r
-\r
-                       case "mceRemoveNode":\r
-                               if (!value)\r
-                                       value = tinyMCE.getParentElement(this.getFocusElement());\r
-\r
-                               if (tinyMCE.isIE) {\r
-                                       value.outerHTML = value.innerHTML;\r
-                               } else {\r
-                                       var rng = value.ownerDocument.createRange();\r
-                                       rng.setStartBefore(value);\r
-                                       rng.setEndAfter(value);\r
-                                       rng.deleteContents();\r
-                                       rng.insertNode(rng.createContextualFragment(value.innerHTML));\r
-                               }\r
-\r
-                               tinyMCE.triggerNodeChange();\r
-\r
-                               break;\r
-\r
-                       case "mceSelectNodeDepth":\r
-                               var parentNode = this.getFocusElement();\r
-                               for (i=0; parentNode; i++) {\r
-                                       if (parentNode.nodeName.toLowerCase() == "body")\r
-                                               break;\r
-\r
-                                       if (parentNode.nodeName.toLowerCase() == "#text") {\r
-                                               i--;\r
-                                               parentNode = parentNode.parentNode;\r
-                                               continue;\r
-                                       }\r
-\r
-                                       if (i == value) {\r
-                                               this.selection.selectNode(parentNode, false);\r
-                                               tinyMCE.triggerNodeChange();\r
-                                               tinyMCE.selectedNode = parentNode;\r
-                                               return;\r
-                                       }\r
-\r
-                                       parentNode = parentNode.parentNode;\r
-                               }\r
-\r
-                               break;\r
-\r
-                       case "mceSetStyleInfo":\r
-                       case "SetStyleInfo":\r
-                               var rng = this.getRng();\r
-                               var sel = this.getSel();\r
-                               var scmd = value.command;\r
-                               var sname = value.name;\r
-                               var svalue = value.value == null ? '' : value.value;\r
-                               //var svalue = value['value'] == null ? '' : value['value'];\r
-                               var wrapper = value.wrapper ? value.wrapper : "span";\r
-                               var parentElm = null;\r
-                               var invalidRe = new RegExp("^BODY|HTML$", "g");\r
-                               var invalidParentsRe = tinyMCE.settings.merge_styles_invalid_parents !== '' ? new RegExp(tinyMCE.settings.merge_styles_invalid_parents, "gi") : null;\r
-\r
-                               // Whole element selected check\r
-                               if (tinyMCE.isIE) {\r
-                                       // Control range\r
-                                       if (rng.item)\r
-                                               parentElm = rng.item(0);\r
-                                       else {\r
-                                               var pelm = rng.parentElement();\r
-                                               var prng = doc.selection.createRange();\r
-                                               prng.moveToElementText(pelm);\r
-\r
-                                               if (rng.htmlText == prng.htmlText || rng.boundingWidth == 0) {\r
-                                                       if (invalidParentsRe == null || !invalidParentsRe.test(pelm.nodeName))\r
-                                                               parentElm = pelm;\r
-                                               }\r
-                                       }\r
-                               } else {\r
-                                       var felm = this.getFocusElement();\r
-                                       if (sel.isCollapsed || (new RegExp('td|tr|tbody|table|img', 'gi').test(felm.nodeName) && sel.anchorNode == felm.parentNode))\r
-                                               parentElm = felm;\r
-                               }\r
-\r
-                               // Whole element selected\r
-                               if (parentElm && !invalidRe.test(parentElm.nodeName)) {\r
-                                       if (scmd == "setstyle")\r
-                                               tinyMCE.setStyleAttrib(parentElm, sname, svalue);\r
-\r
-                                       if (scmd == "setattrib")\r
-                                               tinyMCE.setAttrib(parentElm, sname, svalue);\r
-\r
-                                       if (scmd == "removeformat") {\r
-                                               parentElm.style.cssText = '';\r
-                                               tinyMCE.setAttrib(parentElm, 'class', '');\r
-                                       }\r
-\r
-                                       // Remove style/attribs from all children\r
-                                       var ch = tinyMCE.getNodeTree(parentElm, [], 1);\r
-                                       for (z=0; z<ch.length; z++) {\r
-                                               if (ch[z] == parentElm)\r
-                                                       continue;\r
-\r
-                                               if (scmd == "setstyle")\r
-                                                       tinyMCE.setStyleAttrib(ch[z], sname, '');\r
-\r
-                                               if (scmd == "setattrib")\r
-                                                       tinyMCE.setAttrib(ch[z], sname, '');\r
-\r
-                                               if (scmd == "removeformat") {\r
-                                                       ch[z].style.cssText = '';\r
-                                                       tinyMCE.setAttrib(ch[z], 'class', '');\r
-                                               }\r
-                                       }\r
-                               } else {\r
-                                       this._setUseCSS(false); // Bug in FF when running in fullscreen\r
-                                       doc.execCommand("FontName", false, "#mce_temp_font#");\r
-                                       var elementArray = tinyMCE.getElementsByAttributeValue(this.getBody(), "font", "face", "#mce_temp_font#");\r
-\r
-                                       // Change them all\r
-                                       for (x=0; x<elementArray.length; x++) {\r
-                                               elm = elementArray[x];\r
-                                               if (elm) {\r
-                                                       var spanElm = doc.createElement(wrapper);\r
-\r
-                                                       if (scmd == "setstyle")\r
-                                                               tinyMCE.setStyleAttrib(spanElm, sname, svalue);\r
-\r
-                                                       if (scmd == "setattrib")\r
-                                                               tinyMCE.setAttrib(spanElm, sname, svalue);\r
-\r
-                                                       if (scmd == "removeformat") {\r
-                                                               spanElm.style.cssText = '';\r
-                                                               tinyMCE.setAttrib(spanElm, 'class', '');\r
-                                                       }\r
-\r
-                                                       if (elm.hasChildNodes()) {\r
-                                                               for (i=0; i<elm.childNodes.length; i++)\r
-                                                                       spanElm.appendChild(elm.childNodes[i].cloneNode(true));\r
-                                                       }\r
-\r
-                                                       spanElm.setAttribute("mce_new", "true");\r
-                                                       elm.parentNode.replaceChild(spanElm, elm);\r
-\r
-                                                       // Remove style/attribs from all children\r
-                                                       var ch = tinyMCE.getNodeTree(spanElm, [], 1);\r
-                                                       for (z=0; z<ch.length; z++) {\r
-                                                               if (ch[z] == spanElm)\r
-                                                                       continue;\r
-\r
-                                                               if (scmd == "setstyle")\r
-                                                                       tinyMCE.setStyleAttrib(ch[z], sname, '');\r
-\r
-                                                               if (scmd == "setattrib")\r
-                                                                       tinyMCE.setAttrib(ch[z], sname, '');\r
-\r
-                                                               if (scmd == "removeformat") {\r
-                                                                       ch[z].style.cssText = '';\r
-                                                                       tinyMCE.setAttrib(ch[z], 'class', '');\r
-                                                               }\r
-                                                       }\r
-                                               }\r
-                                       }\r
-                               }\r
-\r
-                               // Cleaup wrappers\r
-                               var nodes = doc.getElementsByTagName(wrapper);\r
-                               for (i=nodes.length-1; i>=0; i--) {\r
-                                       var elm = nodes[i];\r
-                                       var isNew = tinyMCE.getAttrib(elm, "mce_new") == "true";\r
-\r
-                                       elm.removeAttribute("mce_new");\r
-\r
-                                       // Is only child a element\r
-                                       if (elm.childNodes && elm.childNodes.length == 1 && elm.childNodes[0].nodeType == 1) {\r
-                                               //tinyMCE.debug("merge1" + isNew);\r
-                                               this._mergeElements(scmd, elm, elm.childNodes[0], isNew);\r
-                                               continue;\r
-                                       }\r
-\r
-                                       // Is I the only child\r
-                                       if (elm.parentNode.childNodes.length == 1 && !invalidRe.test(elm.nodeName) && !invalidRe.test(elm.parentNode.nodeName)) {\r
-                                               //tinyMCE.debug("merge2" + isNew + "," + elm.nodeName + "," + elm.parentNode.nodeName);\r
-                                               if (invalidParentsRe == null || !invalidParentsRe.test(elm.parentNode.nodeName))\r
-                                                       this._mergeElements(scmd, elm.parentNode, elm, false);\r
-                                       }\r
-                               }\r
-\r
-                               // Remove empty wrappers\r
-                               var nodes = doc.getElementsByTagName(wrapper);\r
-                               for (i=nodes.length-1; i>=0; i--) {\r
-                                       var elm = nodes[i], isEmpty = true;\r
-\r
-                                       // Check if it has any attribs\r
-                                       var tmp = doc.createElement("body");\r
-                                       tmp.appendChild(elm.cloneNode(false));\r
-\r
-                                       // Is empty span, remove it\r
-                                       tmp.innerHTML = tmp.innerHTML.replace(new RegExp('style=""|class=""', 'gi'), '');\r
-                                       //tinyMCE.debug(tmp.innerHTML);\r
-                                       if (new RegExp('<span>', 'gi').test(tmp.innerHTML)) {\r
-                                               for (x=0; x<elm.childNodes.length; x++) {\r
-                                                       if (elm.parentNode != null)\r
-                                                               elm.parentNode.insertBefore(elm.childNodes[x].cloneNode(true), elm);\r
-                                               }\r
-\r
-                                               elm.parentNode.removeChild(elm);\r
-                                       }\r
-                               }\r
-\r
-                               // Re add the visual aids\r
-                               if (scmd == "removeformat")\r
-                                       tinyMCE.handleVisualAid(this.getBody(), true, this.visualAid, this);\r
-\r
-                               tinyMCE.triggerNodeChange();\r
-\r
-                               break;\r
-\r
-                       case "FontName":\r
-                               if (value == null) {\r
-                                       var s = this.getSel();\r
-\r
-                                       // Find font and select it\r
-                                       if (tinyMCE.isGecko && s.isCollapsed) {\r
-                                               var f = tinyMCE.getParentElement(this.getFocusElement(), "font");\r
-\r
-                                               if (f != null)\r
-                                                       this.selection.selectNode(f, false);\r
-                                       }\r
-\r
-                                       // Remove format\r
-                                       this.getDoc().execCommand("RemoveFormat", false, null);\r
-\r
-                                       // Collapse range if font was found\r
-                                       if (f != null && tinyMCE.isGecko) {\r
-                                               var r = this.getRng().cloneRange();\r
-                                               r.collapse(true);\r
-                                               s.removeAllRanges();\r
-                                               s.addRange(r);\r
-                                       }\r
-                               } else\r
-                                       this.getDoc().execCommand('FontName', false, value);\r
-\r
-                               if (tinyMCE.isGecko)\r
-                                       window.setTimeout('tinyMCE.triggerNodeChange(false);', 1);\r
-\r
-                               return;\r
-\r
-                       case "FontSize":\r
-                               this.getDoc().execCommand('FontSize', false, value);\r
-\r
-                               if (tinyMCE.isGecko)\r
-                                       window.setTimeout('tinyMCE.triggerNodeChange(false);', 1);\r
-\r
-                               return;\r
-\r
-                       case "forecolor":\r
-                               value = value == null ? this.foreColor : value;\r
-                               value = tinyMCE.trim(value);\r
-                               value = value.charAt(0) != '#' ? (isNaN('0x' + value) ? value : '#' + value) : value;\r
-\r
-                               this.foreColor = value;\r
-                               this.getDoc().execCommand('forecolor', false, value);\r
-                               break;\r
-\r
-                       case "HiliteColor":\r
-                               value = value == null ? this.backColor : value;\r
-                               value = tinyMCE.trim(value);\r
-                               value = value.charAt(0) != '#' ? (isNaN('0x' + value) ? value : '#' + value) : value;\r
-                               this.backColor = value;\r
-\r
-                               if (tinyMCE.isGecko || tinyMCE.isOpera) {\r
-                                       this._setUseCSS(true);\r
-                                       this.getDoc().execCommand('hilitecolor', false, value);\r
-                                       this._setUseCSS(false);\r
-                               } else\r
-                                       this.getDoc().execCommand('BackColor', false, value);\r
-                               break;\r
-\r
-                       case "Cut":\r
-                       case "Copy":\r
-                       case "Paste":\r
-                               var cmdFailed = false;\r
-\r
-                               // Try executing command\r
-                               eval('try {this.getDoc().execCommand(command, user_interface, value);} catch (e) {cmdFailed = true;}');\r
-\r
-                               if (tinyMCE.isOpera && cmdFailed)\r
-                                       alert('Currently not supported by your browser, use keyboard shortcuts instead.');\r
-\r
-                               // Alert error in gecko if command failed\r
-                               if (tinyMCE.isGecko && cmdFailed) {\r
-                                       // Confirm more info\r
-                                       if (confirm(tinyMCE.entityDecode(tinyMCE.getLang('lang_clipboard_msg'))))\r
-                                               window.open('http://www.mozilla.org/editor/midasdemo/securityprefs.html', 'mceExternal');\r
-\r
-                                       return;\r
-                               } else\r
-                                       tinyMCE.triggerNodeChange();\r
-                       break;\r
-\r
-                       case "mceSetContent":\r
-                               if (!value)\r
-                                       value = "";\r
-\r
-                               // Call custom cleanup code\r
-                               value = tinyMCE.storeAwayURLs(value);\r
-                               value = tinyMCE._customCleanup(this, "insert_to_editor", value);\r
-\r
-                               if (this.getBody().nodeName == 'BODY')\r
-                                       tinyMCE._setHTML(doc, value);\r
-                               else\r
-                                       this.getBody().innerHTML = value;\r
-\r
-                               tinyMCE.setInnerHTML(this.getBody(), tinyMCE._cleanupHTML(this, doc, this.settings, this.getBody(), false, false, false, true));\r
-                               tinyMCE.convertAllRelativeURLs(this.getBody());\r
-\r
-                               // Cleanup any mess left from storyAwayURLs\r
-                               tinyMCE._removeInternal(this.getBody());\r
-\r
-                               // When editing always use fonts internaly\r
-                               if (tinyMCE.getParam("convert_fonts_to_spans"))\r
-                                       tinyMCE.convertSpansToFonts(doc);\r
-\r
-                               tinyMCE.handleVisualAid(this.getBody(), true, this.visualAid, this);\r
-                               tinyMCE._setEventsEnabled(this.getBody(), false);\r
-                               this._addBogusBR();\r
-\r
-                               return true;\r
-\r
-                       case "mceCleanup":\r
-                               var b = this.selection.getBookmark();\r
-                               tinyMCE._setHTML(this.contentDocument, this.getBody().innerHTML);\r
-                               tinyMCE.setInnerHTML(this.getBody(), tinyMCE._cleanupHTML(this, this.contentDocument, this.settings, this.getBody(), this.visualAid));\r
-                               tinyMCE.convertAllRelativeURLs(doc.body);\r
-\r
-                               // When editing always use fonts internaly\r
-                               if (tinyMCE.getParam("convert_fonts_to_spans"))\r
-                                       tinyMCE.convertSpansToFonts(doc);\r
-\r
-                               tinyMCE.handleVisualAid(this.getBody(), true, this.visualAid, this);\r
-                               tinyMCE._setEventsEnabled(this.getBody(), false);\r
-                               this._addBogusBR();\r
-                               this.repaint();\r
-                               this.selection.moveToBookmark(b);\r
-                               tinyMCE.triggerNodeChange();\r
-                       break;\r
-\r
-                       case "mceReplaceContent":\r
-                               // Force empty string\r
-                               if (!value)\r
-                                       value = '';\r
-\r
-                               this.getWin().focus();\r
-\r
-                               var selectedText = "";\r
-\r
-                               if (tinyMCE.isIE) {\r
-                                       var rng = doc.selection.createRange();\r
-                                       selectedText = rng.text;\r
-                               } else\r
-                                       selectedText = this.getSel().toString();\r
-\r
-                               if (selectedText.length > 0) {\r
-                                       value = tinyMCE.replaceVar(value, "selection", selectedText);\r
-                                       tinyMCE.execCommand('mceInsertContent', false, value);\r
-                               }\r
-\r
-                               this._addBogusBR();\r
-                               tinyMCE.triggerNodeChange();\r
-                       break;\r
-\r
-                       case "mceSetAttribute":\r
-                               if (typeof(value) == 'object') {\r
-                                       var targetElms = (typeof(value.targets) == "undefined") ? "p,img,span,div,td,h1,h2,h3,h4,h5,h6,pre,address" : value.targets;\r
-                                       var targetNode = tinyMCE.getParentElement(this.getFocusElement(), targetElms);\r
-\r
-                                       if (targetNode) {\r
-                                               targetNode.setAttribute(value.name, value.value);\r
-                                               tinyMCE.triggerNodeChange();\r
-                                       }\r
-                               }\r
-                       break;\r
-\r
-                       case "mceSetCSSClass":\r
-                               this.execCommand("mceSetStyleInfo", false, {command : "setattrib", name : "class", value : value});\r
-                       break;\r
-\r
-                       case "mceInsertRawHTML":\r
-                               var key = 'tiny_mce_marker';\r
-\r
-                               this.execCommand('mceBeginUndoLevel');\r
-\r
-                               // Insert marker key\r
-                               this.execCommand('mceInsertContent', false, key);\r
-\r
-                               // Store away scroll pos\r
-                               var scrollX = this.getBody().scrollLeft + this.getDoc().documentElement.scrollLeft;\r
-                               var scrollY = this.getBody().scrollTop + this.getDoc().documentElement.scrollTop;\r
-\r
-                               // Find marker and replace with RAW HTML\r
-                               var html = this.getBody().innerHTML;\r
-                               if ((pos = html.indexOf(key)) != -1)\r
-                                       tinyMCE.setInnerHTML(this.getBody(), html.substring(0, pos) + value + html.substring(pos + key.length));\r
-\r
-                               // Restore scoll pos\r
-                               this.contentWindow.scrollTo(scrollX, scrollY);\r
-\r
-                               this.execCommand('mceEndUndoLevel');\r
-\r
-                               break;\r
-\r
-                       case "mceInsertContent":\r
-                               // Force empty string\r
-                               if (!value)\r
-                                       value = '';\r
-\r
-                               var insertHTMLFailed = false;\r
-\r
-                               // Removed since it produced problems in IE\r
-                               // this.getWin().focus();\r
-\r
-                               if (tinyMCE.isGecko || tinyMCE.isOpera) {\r
-                                       try {\r
-                                               // Is plain text or HTML, &amp;, &nbsp; etc will be encoded wrong in FF\r
-                                               if (value.indexOf('<') == -1 && !value.match(/(&#38;|&#160;|&#60;|&#62;)/g)) {\r
-                                                       var r = this.getRng();\r
-                                                       var n = this.getDoc().createTextNode(tinyMCE.entityDecode(value));\r
-                                                       var s = this.getSel();\r
-                                                       var r2 = r.cloneRange();\r
-\r
-                                                       // Insert text at cursor position\r
-                                                       s.removeAllRanges();\r
-                                                       r.deleteContents();\r
-                                                       r.insertNode(n);\r
-\r
-                                                       // Move the cursor to the end of text\r
-                                                       r2.selectNode(n);\r
-                                                       r2.collapse(false);\r
-                                                       s.removeAllRanges();\r
-                                                       s.addRange(r2);\r
-                                               } else {\r
-                                                       value = tinyMCE.fixGeckoBaseHREFBug(1, this.getDoc(), value);\r
-                                                       this.getDoc().execCommand('inserthtml', false, value);\r
-                                                       tinyMCE.fixGeckoBaseHREFBug(2, this.getDoc(), value);\r
-                                               }\r
-                                       } catch (ex) {\r
-                                               insertHTMLFailed = true;\r
-                                       }\r
-\r
-                                       if (!insertHTMLFailed) {\r
-                                               tinyMCE.triggerNodeChange();\r
-                                               return;\r
-                                       }\r
-                               }\r
-\r
-                               if (!tinyMCE.isIE) {\r
-                                       var isHTML = value.indexOf('<') != -1;\r
-                                       var sel = this.getSel();\r
-                                       var rng = this.getRng();\r
-\r
-                                       if (isHTML) {\r
-                                               if (tinyMCE.isSafari) {\r
-                                                       var tmpRng = this.getDoc().createRange();\r
-\r
-                                                       tmpRng.setStart(this.getBody(), 0);\r
-                                                       tmpRng.setEnd(this.getBody(), 0);\r
-\r
-                                                       value = tmpRng.createContextualFragment(value);\r
-                                               } else\r
-                                                       value = rng.createContextualFragment(value);\r
-                                       } else {\r
-                                               // Setup text node\r
-                                               value = doc.createTextNode(tinyMCE.entityDecode(value));\r
-                                       }\r
-\r
-                                       // Insert plain text in Safari\r
-                                       if (tinyMCE.isSafari && !isHTML) {\r
-                                               this.execCommand('InsertText', false, value.nodeValue);\r
-                                               tinyMCE.triggerNodeChange();\r
-                                               return true;\r
-                                       } else if (tinyMCE.isSafari && isHTML) {\r
-                                               rng.deleteContents();\r
-                                               rng.insertNode(value);\r
-                                               tinyMCE.triggerNodeChange();\r
-                                               return true;\r
-                                       }\r
-\r
-                                       rng.deleteContents();\r
-\r
-                                       // If target node is text do special treatment, (Mozilla 1.3 fix)\r
-                                       if (rng.startContainer.nodeType == 3) {\r
-                                               var node = rng.startContainer.splitText(rng.startOffset);\r
-                                               node.parentNode.insertBefore(value, node); \r
-                                       } else\r
-                                               rng.insertNode(value);\r
-\r
-                                       if (!isHTML) {\r
-                                               // Removes weird selection trails\r
-                                               sel.selectAllChildren(doc.body);\r
-                                               sel.removeAllRanges();\r
-\r
-                                               // Move cursor to end of content\r
-                                               var rng = doc.createRange();\r
-\r
-                                               rng.selectNode(value);\r
-                                               rng.collapse(false);\r
-\r
-                                               sel.addRange(rng);\r
-                                       } else\r
-                                               rng.collapse(false);\r
-\r
-                                       tinyMCE.fixGeckoBaseHREFBug(2, this.getDoc(), value);\r
-                               } else {\r
-                                       var rng = doc.selection.createRange(), tmpRng = null;\r
-                                       var c = value.indexOf('<!--') != -1;\r
-\r
-                                       // Fix comment bug, add tag before comments\r
-                                       if (c)\r
-                                               value = tinyMCE.uniqueTag + value;\r
-\r
-                                       //      tmpRng = rng.duplicate(); // Store away range (Fixes Undo bookmark bug in IE)\r
-\r
-                                       if (rng.item)\r
-                                               rng.item(0).outerHTML = value;\r
-                                       else\r
-                                               rng.pasteHTML(value);\r
-\r
-                                       //if (tmpRng)\r
-                                       //      tmpRng.select(); // Restore range  (Fixes Undo bookmark bug in IE)\r
-\r
-                                       // Remove unique tag\r
-                                       if (c) {\r
-                                               var e = this.getDoc().getElementById('mceTMPElement');\r
-                                               e.parentNode.removeChild(e);\r
-                                       }\r
-                               }\r
-\r
-                               tinyMCE.execCommand("mceAddUndoLevel");\r
-                               tinyMCE.triggerNodeChange();\r
-                       break;\r
-\r
-                       case "mceStartTyping":\r
-                               if (tinyMCE.settings.custom_undo_redo && this.undoRedo.typingUndoIndex == -1) {\r
-                                       this.undoRedo.typingUndoIndex = this.undoRedo.undoIndex;\r
-                                       tinyMCE.typingUndoIndex = tinyMCE.undoIndex;\r
-                                       this.execCommand('mceAddUndoLevel');\r
-                               }\r
-                               break;\r
-\r
-                       case "mceEndTyping":\r
-                               if (tinyMCE.settings.custom_undo_redo && this.undoRedo.typingUndoIndex != -1) {\r
-                                       this.execCommand('mceAddUndoLevel');\r
-                                       this.undoRedo.typingUndoIndex = -1;\r
-                               }\r
-\r
-                               tinyMCE.typingUndoIndex = -1;\r
-                               break;\r
-\r
-                       case "mceBeginUndoLevel":\r
-                               this.undoRedoLevel = false;\r
-                               break;\r
-\r
-                       case "mceEndUndoLevel":\r
-                               this.undoRedoLevel = true;\r
-                               this.execCommand('mceAddUndoLevel');\r
-                               break;\r
-\r
-                       case "mceAddUndoLevel":\r
-                               if (tinyMCE.settings.custom_undo_redo && this.undoRedoLevel) {\r
-                                       if (this.undoRedo.add())\r
-                                               tinyMCE.triggerNodeChange(false);\r
-                               }\r
-                               break;\r
-\r
-                       case "Undo":\r
-                               if (tinyMCE.settings.custom_undo_redo) {\r
-                                       tinyMCE.execCommand("mceEndTyping");\r
-                                       this.undoRedo.undo();\r
-                                       tinyMCE.triggerNodeChange();\r
-                               } else\r
-                                       this.getDoc().execCommand(command, user_interface, value);\r
-                               break;\r
-\r
-                       case "Redo":\r
-                               if (tinyMCE.settings.custom_undo_redo) {\r
-                                       tinyMCE.execCommand("mceEndTyping");\r
-                                       this.undoRedo.redo();\r
-                                       tinyMCE.triggerNodeChange();\r
-                               } else\r
-                                       this.getDoc().execCommand(command, user_interface, value);\r
-                               break;\r
-\r
-                       case "mceToggleVisualAid":\r
-                               this.visualAid = !this.visualAid;\r
-                               tinyMCE.handleVisualAid(this.getBody(), true, this.visualAid, this);\r
-                               tinyMCE.triggerNodeChange();\r
-                               break;\r
-\r
-                       case "Indent":\r
-                               this.getDoc().execCommand(command, user_interface, value);\r
-                               tinyMCE.triggerNodeChange();\r
-\r
-                               if (tinyMCE.isIE) {\r
-                                       var n = tinyMCE.getParentElement(this.getFocusElement(), "blockquote");\r
-                                       do {\r
-                                               if (n && n.nodeName == "BLOCKQUOTE") {\r
-                                                       n.removeAttribute("dir");\r
-                                                       n.removeAttribute("style");\r
-                                               }\r
-                                       } while (n != null && (n = n.parentNode) != null);\r
-                               }\r
-                               break;\r
-\r
-                       case "RemoveFormat":\r
-                       case "removeformat":\r
-                               var text = this.selection.getSelectedText();\r
-\r
-                               if (tinyMCE.isOpera) {\r
-                                       this.getDoc().execCommand("RemoveFormat", false, null);\r
-                                       return;\r
-                               }\r
-\r
-                               if (tinyMCE.isIE) {\r
-                                       try {\r
-                                               var rng = doc.selection.createRange();\r
-                                               rng.execCommand("RemoveFormat", false, null);\r
-                                       } catch (e) {\r
-                                               // Do nothing\r
-                                       }\r
-\r
-                                       this.execCommand("mceSetStyleInfo", false, {command : "removeformat"});\r
-                               } else {\r
-                                       this.getDoc().execCommand(command, user_interface, value);\r
-\r
-                                       this.execCommand("mceSetStyleInfo", false, {command : "removeformat"});\r
-                               }\r
-\r
-                               // Remove class\r
-                               if (text.length == 0)\r
-                                       this.execCommand("mceSetCSSClass", false, "");\r
-\r
-                               tinyMCE.triggerNodeChange();\r
-                               break;\r
-\r
-                       default:\r
-                               this.getDoc().execCommand(command, user_interface, value);\r
-\r
-                               if (tinyMCE.isGecko)\r
-                                       window.setTimeout('tinyMCE.triggerNodeChange(false);', 1);\r
-                               else\r
-                                       tinyMCE.triggerNodeChange();\r
-               }\r
-\r
-               // Add undo level after modification\r
-               if (command != "mceAddUndoLevel" && command != "Undo" && command != "Redo" && command != "mceStartTyping" && command != "mceEndTyping")\r
-                       tinyMCE.execCommand("mceAddUndoLevel");\r
-       },\r
-\r
-       queryCommandValue : function(c) {\r
-               try {\r
-                       return this.getDoc().queryCommandValue(c);\r
-               } catch (e) {\r
-                       return null;\r
-               }\r
-       },\r
-\r
-       queryCommandState : function(c) {\r
-               return this.getDoc().queryCommandState(c);\r
-       },\r
-\r
-       _addBogusBR : function() {\r
-               var b = this.getBody();\r
-\r
-               if (tinyMCE.isGecko && !b.hasChildNodes())\r
-                       b.innerHTML = '<br _moz_editor_bogus_node="TRUE" />';\r
-       },\r
-\r
-       _onAdd : function(replace_element, form_element_name, target_document) {\r
-               var hc, th, tos, editorTemplate, targetDoc, deltaWidth, deltaHeight, html, rng, fragment;\r
-               var dynamicIFrame, tElm, doc, parentElm;\r
-\r
-               th = this.settings.theme;\r
-               tos = tinyMCE.themes[th];\r
-\r
-               targetDoc = target_document ? target_document : document;\r
-\r
-               this.targetDoc = targetDoc;\r
-\r
-               tinyMCE.themeURL = tinyMCE.baseURL + "/themes/" + this.settings.theme;\r
-               this.settings.themeurl = tinyMCE.themeURL;\r
-\r
-               if (!replace_element) {\r
-                       alert("Error: Could not find the target element.");\r
-                       return false;\r
-               }\r
-\r
-               if (tos.getEditorTemplate)\r
-                       editorTemplate = tos.getEditorTemplate(this.settings, this.editorId);\r
-\r
-               deltaWidth = editorTemplate.delta_width ? editorTemplate.delta_width : 0;\r
-               deltaHeight = editorTemplate.delta_height ? editorTemplate.delta_height : 0;\r
-               html = '<span id="' + this.editorId + '_parent" class="mceEditorContainer">' + editorTemplate.html;\r
-\r
-               html = tinyMCE.replaceVar(html, "editor_id", this.editorId);\r
-\r
-               if (!this.settings.default_document)\r
-                       this.settings.default_document = tinyMCE.baseURL + "/blank.htm";\r
-\r
-               this.settings.old_width = this.settings.width;\r
-               this.settings.old_height = this.settings.height;\r
-\r
-               // Set default width, height\r
-               if (this.settings.width == -1)\r
-                       this.settings.width = replace_element.offsetWidth;\r
-\r
-               if (this.settings.height == -1)\r
-                       this.settings.height = replace_element.offsetHeight;\r
-\r
-               // Try the style width\r
-               if (this.settings.width == 0)\r
-                       this.settings.width = replace_element.style.width;\r
-\r
-               // Try the style height\r
-               if (this.settings.height == 0)\r
-                       this.settings.height = replace_element.style.height; \r
-\r
-               // If no width/height then default to 320x240, better than nothing\r
-               if (this.settings.width == 0)\r
-                       this.settings.width = 320;\r
-\r
-               if (this.settings.height == 0)\r
-                       this.settings.height = 240;\r
-\r
-               this.settings.area_width = parseInt(this.settings.width);\r
-               this.settings.area_height = parseInt(this.settings.height);\r
-               this.settings.area_width += deltaWidth;\r
-               this.settings.area_height += deltaHeight;\r
-               this.settings.width_style = "" + this.settings.width;\r
-               this.settings.height_style = "" + this.settings.height;\r
-\r
-               // Special % handling\r
-               if (("" + this.settings.width).indexOf('%') != -1)\r
-                       this.settings.area_width = "100%";\r
-               else\r
-                       this.settings.width_style += 'px';\r
-\r
-               if (("" + this.settings.height).indexOf('%') != -1)\r
-                       this.settings.area_height = "100%";\r
-               else\r
-                       this.settings.height_style += 'px';\r
-\r
-               if (("" + replace_element.style.width).indexOf('%') != -1) {\r
-                       this.settings.width = replace_element.style.width;\r
-                       this.settings.area_width = "100%";\r
-                       this.settings.width_style = "100%";\r
-               }\r
-\r
-               if (("" + replace_element.style.height).indexOf('%') != -1) {\r
-                       this.settings.height = replace_element.style.height;\r
-                       this.settings.area_height = "100%";\r
-                       this.settings.height_style = "100%";\r
-               }\r
-\r
-               html = tinyMCE.applyTemplate(html);\r
-\r
-               this.settings.width = this.settings.old_width;\r
-               this.settings.height = this.settings.old_height;\r
-\r
-               this.visualAid = this.settings.visual;\r
-               this.formTargetElementId = form_element_name;\r
-\r
-               // Get replace_element contents\r
-               if (replace_element.nodeName == "TEXTAREA" || replace_element.nodeName == "INPUT")\r
-                       this.startContent = replace_element.value;\r
-               else\r
-                       this.startContent = replace_element.innerHTML;\r
-\r
-               // If not text area or input\r
-               if (replace_element.nodeName != "TEXTAREA" && replace_element.nodeName != "INPUT") {\r
-                       this.oldTargetElement = replace_element;\r
-\r
-                       // Debug mode\r
-                       hc = '<input type="hidden" id="' + form_element_name + '" name="' + form_element_name + '" />';\r
-                       this.oldTargetDisplay = tinyMCE.getStyle(this.oldTargetElement, 'display', 'inline');\r
-                       this.oldTargetElement.style.display = "none";\r
-\r
-                       html += '</span>';\r
-\r
-                       if (tinyMCE.isGecko)\r
-                               html = hc + html;\r
-                       else\r
-                               html += hc;\r
-\r
-                       // Output HTML and set editable\r
-                       if (tinyMCE.isGecko) {\r
-                               rng = replace_element.ownerDocument.createRange();\r
-                               rng.setStartBefore(replace_element);\r
-\r
-                               fragment = rng.createContextualFragment(html);\r
-                               tinyMCE.insertAfter(fragment, replace_element);\r
-                       } else\r
-                               replace_element.insertAdjacentHTML("beforeBegin", html);\r
-               } else {\r
-                       html += '</span>';\r
-\r
-                       // Just hide the textarea element\r
-                       this.oldTargetElement = replace_element;\r
-\r
-                       this.oldTargetDisplay = tinyMCE.getStyle(this.oldTargetElement, 'display', 'inline');\r
-                       this.oldTargetElement.style.display = "none";\r
-\r
-                       // Output HTML and set editable\r
-                       if (tinyMCE.isGecko) {\r
-                               rng = replace_element.ownerDocument.createRange();\r
-                               rng.setStartBefore(replace_element);\r
-\r
-                               fragment = rng.createContextualFragment(html);\r
-                               tinyMCE.insertAfter(fragment, replace_element);\r
-                       } else\r
-                               replace_element.insertAdjacentHTML("beforeBegin", html);\r
-               }\r
-\r
-               // Setup iframe\r
-               dynamicIFrame = false;\r
-               tElm = targetDoc.getElementById(this.editorId);\r
-\r
-               if (!tinyMCE.isIE) {\r
-                       // Node case is preserved in XML strict mode\r
-                       if (tElm && (tElm.nodeName == "SPAN" || tElm.nodeName == "span")) {\r
-                               tElm = tinyMCE._createIFrame(tElm, targetDoc);\r
-                               dynamicIFrame = true;\r
-                       }\r
-\r
-                       this.targetElement = tElm;\r
-                       this.iframeElement = tElm;\r
-                       this.contentDocument = tElm.contentDocument;\r
-                       this.contentWindow = tElm.contentWindow;\r
-\r
-                       //this.getDoc().designMode = "on";\r
-               } else {\r
-                       if (tElm && tElm.nodeName == "SPAN")\r
-                               tElm = tinyMCE._createIFrame(tElm, targetDoc, targetDoc.parentWindow);\r
-                       else\r
-                               tElm = targetDoc.frames[this.editorId];\r
-\r
-                       this.targetElement = tElm;\r
-                       this.iframeElement = targetDoc.getElementById(this.editorId);\r
-\r
-                       if (tinyMCE.isOpera) {\r
-                               this.contentDocument = this.iframeElement.contentDocument;\r
-                               this.contentWindow = this.iframeElement.contentWindow;\r
-                               dynamicIFrame = true;\r
-                       } else {\r
-                               this.contentDocument = tElm.window.document;\r
-                               this.contentWindow = tElm.window;\r
-                       }\r
-\r
-                       this.getDoc().designMode = "on";\r
-               }\r
-\r
-               // Setup base HTML\r
-               doc = this.contentDocument;\r
-               if (dynamicIFrame) {\r
-                       html = tinyMCE.getParam('doctype') + '<html><head xmlns="http://www.w3.org/1999/xhtml"><base href="' + tinyMCE.settings.base_href + '" /><title>blank_page</title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body class="mceContentBody"></body></html>';\r
-\r
-                       try {\r
-                               if (!this.isHidden())\r
-                                       this.getDoc().designMode = "on";\r
-\r
-                               doc.open();\r
-                               doc.write(html);\r
-                               doc.close();\r
-                       } catch (e) {\r
-                               // Failed Mozilla 1.3\r
-                               this.getDoc().location.href = tinyMCE.baseURL + "/blank.htm";\r
-                       }\r
-               }\r
-\r
-               // This timeout is needed in MSIE 5.5 for some odd reason\r
-               // it seems that the document.frames isn't initialized yet?\r
-               if (tinyMCE.isIE)\r
-                       window.setTimeout("tinyMCE.addEventHandlers(tinyMCE.instances[\"" + this.editorId + "\"]);", 1);\r
-\r
-               // Setup element references\r
-               parentElm = this.targetDoc.getElementById(this.editorId + '_parent');\r
-               this.formElement = tinyMCE.isGecko ? parentElm.previousSibling : parentElm.nextSibling;\r
-\r
-               tinyMCE.setupContent(this.editorId, true);\r
-\r
-               return true;\r
-       },\r
-\r
-       setBaseHREF : function(u) {\r
-               var h, b, d, nl;\r
-\r
-               d = this.getDoc();\r
-               nl = d.getElementsByTagName("base");\r
-               b = nl.length > 0 ? nl[0] : null;\r
-\r
-               if (!b) {\r
-                       nl = d.getElementsByTagName("head");\r
-                       h = nl.length > 0 ? nl[0] : null;\r
-\r
-                       b = d.createElement("base");\r
-                       b.setAttribute('href', u);\r
-                       h.appendChild(b);\r
-               } else {\r
-                       if (u == '' || u == null)\r
-                               b.parentNode.removeChild(b);\r
-                       else\r
-                               b.setAttribute('href', u);\r
-               }\r
-       },\r
-\r
-       getHTML : function(r) {\r
-               var h, d = this.getDoc(), b = this.getBody();\r
-\r
-               if (r)\r
-                       return b.innerHTML;\r
-\r
-               h = tinyMCE._cleanupHTML(this, d, this.settings, b, false, true, false, true);\r
-\r
-               if (tinyMCE.getParam("convert_fonts_to_spans"))\r
-                       tinyMCE.convertSpansToFonts(d);\r
-\r
-               return h;\r
-       },\r
-\r
-       setHTML : function(h) {\r
-               this.execCommand('mceSetContent', false, h);\r
-               this.repaint();\r
-       },\r
-\r
-       getFocusElement : function() {\r
-               return this.selection.getFocusElement();\r
-       },\r
-\r
-       getSel : function() {\r
-               return this.selection.getSel();\r
-       },\r
-\r
-       getRng : function() {\r
-               return this.selection.getRng();\r
-       },\r
-\r
-       triggerSave : function(skip_cleanup, skip_callback) {\r
-               var e, nl = [], i, s, content, htm;\r
-\r
-               if (!this.enabled)\r
-                       return;\r
-\r
-               this.switchSettings();\r
-               s = tinyMCE.settings;\r
-\r
-               // Force hidden tabs visible while serializing\r
-               if (tinyMCE.isRealIE) {\r
-                       e = this.iframeElement;\r
-\r
-                       do {\r
-                               if (e.style && e.style.display == 'none') {\r
-                                       e.style.display = 'block';\r
-                                       nl[nl.length] = {elm : e, type : 'style'};\r
-                               }\r
-\r
-                               if (e.style && s.hidden_tab_class.length > 0 && e.className.indexOf(s.hidden_tab_class) != -1) {\r
-                                       e.className = s.display_tab_class;\r
-                                       nl[nl.length] = {elm : e, type : 'class'};\r
-                               }\r
-                       } while ((e = e.parentNode) != null)\r
-               }\r
-\r
-               tinyMCE.settings.preformatted = false;\r
-\r
-               // Default to false\r
-               if (typeof(skip_cleanup) == "undefined")\r
-                       skip_cleanup = false;\r
-\r
-               // Default to false\r
-               if (typeof(skip_callback) == "undefined")\r
-                       skip_callback = false;\r
-\r
-               tinyMCE._setHTML(this.getDoc(), this.getBody().innerHTML);\r
-\r
-               // Remove visual aids when cleanup is disabled\r
-               if (this.settings.cleanup == false) {\r
-                       tinyMCE.handleVisualAid(this.getBody(), true, false, this);\r
-                       tinyMCE._setEventsEnabled(this.getBody(), true);\r
-               }\r
-\r
-               tinyMCE._customCleanup(this, "submit_content_dom", this.contentWindow.document.body);\r
-               htm = skip_cleanup ? this.getBody().innerHTML : tinyMCE._cleanupHTML(this, this.getDoc(), this.settings, this.getBody(), tinyMCE.visualAid, true, true);\r
-               htm = tinyMCE._customCleanup(this, "submit_content", htm);\r
-\r
-               if (!skip_callback && tinyMCE.settings.save_callback !== '')\r
-                       content = tinyMCE.resolveDots(tinyMCE.settings.save_callback, window)(this.formTargetElementId,htm,this.getBody());\r
-\r
-               // Use callback content if available\r
-               if ((typeof(content) != "undefined") && content != null)\r
-                       htm = content;\r
-\r
-               // Replace some weird entities (Bug: #1056343)\r
-               htm = tinyMCE.regexpReplace(htm, "&#40;", "(", "gi");\r
-               htm = tinyMCE.regexpReplace(htm, "&#41;", ")", "gi");\r
-               htm = tinyMCE.regexpReplace(htm, "&#59;", ";", "gi");\r
-               htm = tinyMCE.regexpReplace(htm, "&#34;", "&quot;", "gi");\r
-               htm = tinyMCE.regexpReplace(htm, "&#94;", "^", "gi");\r
-\r
-               if (this.formElement)\r
-                       this.formElement.value = htm;\r
-\r
-               if (tinyMCE.isSafari && this.formElement)\r
-                       this.formElement.innerText = htm;\r
-\r
-               // Hide them again (tabs in MSIE)\r
-               for (i=0; i<nl.length; i++) {\r
-                       if (nl[i].type == 'style')\r
-                               nl[i].elm.style.display = 'none';\r
-                       else\r
-                               nl[i].elm.className = s.hidden_tab_class;\r
-               }\r
-       }\r
-\r
-       };\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_Cleanup.class.js */\r
-\r
-tinyMCE.add(TinyMCE_Engine, {\r
-       cleanupHTMLCode : function(s) {\r
-               s = s.replace(new RegExp('<p \\/>', 'gi'), '<p>&nbsp;</p>');\r
-               s = s.replace(new RegExp('<p>\\s*<\\/p>', 'gi'), '<p>&nbsp;</p>');\r
-\r
-               // Fix close BR elements\r
-               s = s.replace(new RegExp('<br>\\s*<\\/br>', 'gi'), '<br />');\r
-\r
-               // Open closed tags like <b/> to <b></b>\r
-               s = s.replace(new RegExp('<(h[1-6]|p|div|address|pre|form|table|li|ol|ul|td|b|font|em|strong|i|strike|u|span|a|ul|ol|li|blockquote)([a-z]*)([^\\\\|>]*)\\/>', 'gi'), '<$1$2$3></$1$2>');\r
-\r
-               // Remove trailing space <b > to <b>\r
-               s = s.replace(new RegExp('\\s+></', 'gi'), '></');\r
-\r
-               // Close tags <img></img> to <img/>\r
-               s = s.replace(new RegExp('<(img|br|hr)([^>]*)><\\/(img|br|hr)>', 'gi'), '<$1$2 />');\r
-\r
-               // Weird MSIE bug, <p><hr /></p> breaks runtime?\r
-               if (tinyMCE.isIE)\r
-                       s = s.replace(new RegExp('<p><hr \\/><\\/p>', 'gi'), "<hr>");\r
-\r
-               // Weird tags will make IE error #bug: 1538495\r
-               if (tinyMCE.isIE)\r
-                       s = s.replace(/<!(\s*)\/>/g, '');\r
-\r
-               // Convert relative anchors to absolute URLs ex: #something to file.htm#something\r
-               // Removed: Since local document anchors should never be forced absolute example edit.php?id=something\r
-               //if (tinyMCE.getParam('convert_urls'))\r
-               //      s = s.replace(new RegExp('(href=\"{0,1})(\\s*#)', 'gi'), '$1' + tinyMCE.settings.document_base_url + "#");\r
-\r
-               return s;\r
-       },\r
-\r
-       parseStyle : function(str) {\r
-               var ar = [], st, i, re, pa;\r
-\r
-               if (str == null)\r
-                       return ar;\r
-\r
-               st = str.split(';');\r
-\r
-               tinyMCE.clearArray(ar);\r
-\r
-               for (i=0; i<st.length; i++) {\r
-                       if (st[i] == '')\r
-                               continue;\r
-\r
-                       re = new RegExp('^\\s*([^:]*):\\s*(.*)\\s*$');\r
-                       pa = st[i].replace(re, '$1||$2').split('||');\r
-       //tinyMCE.debug(str, pa[0] + "=" + pa[1], st[i].replace(re, '$1||$2'));\r
-                       if (pa.length == 2)\r
-                               ar[pa[0].toLowerCase()] = pa[1];\r
-               }\r
-\r
-               return ar;\r
-       },\r
-\r
-       compressStyle : function(ar, pr, sf, res) {\r
-               var box = [], i, a;\r
-\r
-               box[0] = ar[pr + '-top' + sf];\r
-               box[1] = ar[pr + '-left' + sf];\r
-               box[2] = ar[pr + '-right' + sf];\r
-               box[3] = ar[pr + '-bottom' + sf];\r
-\r
-               for (i=0; i<box.length; i++) {\r
-                       if (box[i] == null)\r
-                               return;\r
-\r
-                       if (i && box[i] != box[i-1])\r
-                               return;\r
-               }\r
-\r
-               // They are all the same\r
-               ar[res] = box[0];\r
-               ar[pr + '-top' + sf] = null;\r
-               ar[pr + '-left' + sf] = null;\r
-               ar[pr + '-right' + sf] = null;\r
-               ar[pr + '-bottom' + sf] = null;\r
-       },\r
-\r
-       serializeStyle : function(ar) {\r
-               var str = "", key, val, m;\r
-\r
-               // Compress box\r
-               tinyMCE.compressStyle(ar, "border", "", "border");\r
-               tinyMCE.compressStyle(ar, "border", "-width", "border-width");\r
-               tinyMCE.compressStyle(ar, "border", "-color", "border-color");\r
-               tinyMCE.compressStyle(ar, "border", "-style", "border-style");\r
-               tinyMCE.compressStyle(ar, "padding", "", "padding");\r
-               tinyMCE.compressStyle(ar, "margin", "", "margin");\r
-\r
-               for (key in ar) {\r
-                       val = ar[key];\r
-\r
-                       if (typeof(val) == 'function')\r
-                               continue;\r
-\r
-                       if (key.indexOf('mso-') == 0)\r
-                               continue;\r
-\r
-                       if (val != null && val !== '') {\r
-                               val = '' + val; // Force string\r
-\r
-                               // Fix style URL\r
-                               val = val.replace(new RegExp("url\\(\\'?([^\\']*)\\'?\\)", 'gi'), "url('$1')");\r
-\r
-                               // Convert URL\r
-                               if (val.indexOf('url(') != -1 && tinyMCE.getParam('convert_urls')) {\r
-                                       m = new RegExp("url\\('(.*?)'\\)").exec(val);\r
-\r
-                                       if (m.length > 1)\r
-                                               val = "url('" + eval(tinyMCE.getParam('urlconverter_callback') + "(m[1], null, true);") + "')";\r
-                               }\r
-\r
-                               // Force HEX colors\r
-                               if (tinyMCE.getParam("force_hex_style_colors"))\r
-                                       val = tinyMCE.convertRGBToHex(val, true);\r
-\r
-                               val = val.replace(/\"/g, '\'');\r
-\r
-                               if (val != "url('')")\r
-                                       str += key.toLowerCase() + ": " + val + "; ";\r
-                       }\r
-               }\r
-\r
-               if (new RegExp('; $').test(str))\r
-                       str = str.substring(0, str.length - 2);\r
-\r
-               return str;\r
-       },\r
-\r
-       convertRGBToHex : function(s, k) {\r
-               var re, rgb;\r
-\r
-               if (s.toLowerCase().indexOf('rgb') != -1) {\r
-                       re = new RegExp("(.*?)rgb\\s*?\\(\\s*?([0-9]+).*?,\\s*?([0-9]+).*?,\\s*?([0-9]+).*?\\)(.*?)", "gi");\r
-                       rgb = s.replace(re, "$1,$2,$3,$4,$5").split(',');\r
-\r
-                       if (rgb.length == 5) {\r
-                               r = parseInt(rgb[1]).toString(16);\r
-                               g = parseInt(rgb[2]).toString(16);\r
-                               b = parseInt(rgb[3]).toString(16);\r
-\r
-                               r = r.length == 1 ? '0' + r : r;\r
-                               g = g.length == 1 ? '0' + g : g;\r
-                               b = b.length == 1 ? '0' + b : b;\r
-\r
-                               s = "#" + r + g + b;\r
-\r
-                               if (k)\r
-                                       s = rgb[0] + s + rgb[4];\r
-                       }\r
-               }\r
-\r
-               return s;\r
-       },\r
-\r
-       convertHexToRGB : function(s) {\r
-               if (s.indexOf('#') != -1) {\r
-                       s = s.replace(new RegExp('[^0-9A-F]', 'gi'), '');\r
-                       return "rgb(" + parseInt(s.substring(0, 2), 16) + "," + parseInt(s.substring(2, 4), 16) + "," + parseInt(s.substring(4, 6), 16) + ")";\r
-               }\r
-\r
-               return s;\r
-       },\r
-\r
-       convertSpansToFonts : function(doc) {\r
-               var s, i, size, fSize, x, fFace, fColor, sizes = tinyMCE.getParam('font_size_style_values').replace(/\s+/, '').split(',');\r
-\r
-               s = tinyMCE.selectElements(doc, 'span,font');\r
-               for (i=0; i<s.length; i++) {\r
-                       size = tinyMCE.trim(s[i].style.fontSize).toLowerCase();\r
-                       fSize = 0;\r
-\r
-                       for (x=0; x<sizes.length; x++) {\r
-                               if (sizes[x] == size) {\r
-                                       fSize = x + 1;\r
-                                       break;\r
-                               }\r
-                       }\r
-\r
-                       if (fSize > 0) {\r
-                               tinyMCE.setAttrib(s[i], 'size', fSize);\r
-                               s[i].style.fontSize = '';\r
-                       }\r
-\r
-                       fFace = s[i].style.fontFamily;\r
-                       if (fFace != null && fFace !== '') {\r
-                               tinyMCE.setAttrib(s[i], 'face', fFace);\r
-                               s[i].style.fontFamily = '';\r
-                       }\r
-\r
-                       fColor = s[i].style.color;\r
-                       if (fColor != null && fColor !== '') {\r
-                               tinyMCE.setAttrib(s[i], 'color', tinyMCE.convertRGBToHex(fColor));\r
-                               s[i].style.color = '';\r
-                       }\r
-               }\r
-       },\r
-\r
-       convertFontsToSpans : function(doc) {\r
-               var fsClasses, s, i, fSize, fFace, fColor, sizes = tinyMCE.getParam('font_size_style_values').replace(/\s+/, '').split(',');\r
-\r
-               fsClasses = tinyMCE.getParam('font_size_classes');\r
-               if (fsClasses !== '')\r
-                       fsClasses = fsClasses.replace(/\s+/, '').split(',');\r
-               else\r
-                       fsClasses = null;\r
-\r
-               s = tinyMCE.selectElements(doc, 'span,font');\r
-               for (i=0; i<s.length; i++) {\r
-                       fSize = tinyMCE.getAttrib(s[i], 'size');\r
-                       fFace = tinyMCE.getAttrib(s[i], 'face');\r
-                       fColor = tinyMCE.getAttrib(s[i], 'color');\r
-\r
-                       if (fSize !== '') {\r
-                               fSize = parseInt(fSize);\r
-\r
-                               if (fSize > 0 && fSize < 8) {\r
-                                       if (fsClasses != null)\r
-                                               tinyMCE.setAttrib(s[i], 'class', fsClasses[fSize-1]);\r
-                                       else\r
-                                               s[i].style.fontSize = sizes[fSize-1];\r
-                               }\r
-\r
-                               s[i].removeAttribute('size');\r
-                       }\r
-\r
-                       if (fFace !== '') {\r
-                               s[i].style.fontFamily = fFace;\r
-                               s[i].removeAttribute('face');\r
-                       }\r
-\r
-                       if (fColor !== '') {\r
-                               s[i].style.color = fColor;\r
-                               s[i].removeAttribute('color');\r
-                       }\r
-               }\r
-       },\r
-\r
-       cleanupAnchors : function(doc) {\r
-               var i, cn, x, an = doc.getElementsByTagName("a");\r
-\r
-               // Loops backwards due to bug #1467987\r
-               for (i=an.length-1; i>=0; i--) {\r
-                       if (tinyMCE.getAttrib(an[i], "name") !== '' && tinyMCE.getAttrib(an[i], "href") == '') {\r
-                               cn = an[i].childNodes;\r
-\r
-                               for (x=cn.length-1; x>=0; x--)\r
-                                       tinyMCE.insertAfter(cn[x], an[i]);\r
-                       }\r
-               }\r
-       },\r
-\r
-       getContent : function(editor_id) {\r
-               if (typeof(editor_id) != "undefined")\r
-                        tinyMCE.getInstanceById(editor_id).select();\r
-\r
-               if (tinyMCE.selectedInstance)\r
-                       return tinyMCE.selectedInstance.getHTML();\r
-\r
-               return null;\r
-       },\r
-\r
-       _fixListElements : function(d) {\r
-               var nl, x, a = ['ol', 'ul'], i, n, p, r = new RegExp('^(OL|UL)$'), np;\r
-\r
-               for (x=0; x<a.length; x++) {\r
-                       nl = d.getElementsByTagName(a[x]);\r
-\r
-                       for (i=0; i<nl.length; i++) {\r
-                               n = nl[i];\r
-                               p = n.parentNode;\r
-\r
-                               if (r.test(p.nodeName)) {\r
-                                       np = tinyMCE.prevNode(n, 'LI');\r
-\r
-                                       if (!np) {\r
-                                               np = d.createElement('li');\r
-                                               np.innerHTML = '&nbsp;';\r
-                                               np.appendChild(n);\r
-                                               p.insertBefore(np, p.firstChild);\r
-                                       } else\r
-                                               np.appendChild(n);\r
-                               }\r
-                       }\r
-               }\r
-       },\r
-\r
-       _fixTables : function(d) {\r
-               var nl, i, n, p, np, x, t;\r
-\r
-               nl = d.getElementsByTagName('table');\r
-               for (i=0; i<nl.length; i++) {\r
-                       n = nl[i];\r
-\r
-                       if ((p = tinyMCE.getParentElement(n, 'p,h1,h2,h3,h4,h5,h6')) != null) {\r
-                               np = p.cloneNode(false);\r
-                               np.removeAttribute('id');\r
-\r
-                               t = n;\r
-\r
-                               while ((n = n.nextSibling))\r
-                                       np.appendChild(n);\r
-\r
-                               tinyMCE.insertAfter(np, p);\r
-                               tinyMCE.insertAfter(t, p);\r
-                       }\r
-               }\r
-       },\r
-\r
-       _cleanupHTML : function(inst, doc, config, elm, visual, on_save, on_submit, inn) {\r
-               var h, d, t1, t2, t3, t4, t5, c, s, nb;\r
-\r
-               if (!tinyMCE.getParam('cleanup'))\r
-                       return elm.innerHTML;\r
-\r
-               on_save = typeof(on_save) == 'undefined' ? false : on_save;\r
-\r
-               c = inst.cleanup;\r
-               s = inst.settings;\r
-               d = c.settings.debug;\r
-\r
-               if (d)\r
-                       t1 = new Date().getTime();\r
-\r
-               inst._fixRootBlocks();\r
-\r
-               if (tinyMCE.getParam("convert_fonts_to_spans"))\r
-                       tinyMCE.convertFontsToSpans(doc);\r
-\r
-               if (tinyMCE.getParam("fix_list_elements"))\r
-                       tinyMCE._fixListElements(doc);\r
-\r
-               if (tinyMCE.getParam("fix_table_elements"))\r
-                       tinyMCE._fixTables(doc);\r
-\r
-               // Call custom cleanup code\r
-               tinyMCE._customCleanup(inst, on_save ? "get_from_editor_dom" : "insert_to_editor_dom", doc.body);\r
-\r
-               if (d)\r
-                       t2 = new Date().getTime();\r
-\r
-               c.settings.on_save = on_save;\r
-\r
-               c.idCount = 0;\r
-               c.serializationId++; // Unique ID needed for the content duplication bug\r
-               c.serializedNodes = [];\r
-               c.sourceIndex = -1;\r
-\r
-               if (s.cleanup_serializer == "xml")\r
-                       h = c.serializeNodeAsXML(elm, inn);\r
-               else\r
-                       h = c.serializeNodeAsHTML(elm, inn);\r
-\r
-               if (d)\r
-                       t3 = new Date().getTime();\r
-\r
-               // Post processing\r
-               nb = tinyMCE.getParam('entity_encoding') == 'numeric' ? '&#160;' : '&nbsp;';\r
-               h = h.replace(/<\/?(body|head|html)[^>]*>/gi, '');\r
-               h = h.replace(new RegExp(' (rowspan="1"|colspan="1")', 'g'), '');\r
-               h = h.replace(/<p><hr \/><\/p>/g, '<hr />');\r
-               h = h.replace(/<p>(&nbsp;|&#160;)<\/p><hr \/><p>(&nbsp;|&#160;)<\/p>/g, '<hr />');\r
-               h = h.replace(/<td>\s*<br \/>\s*<\/td>/g, '<td>' + nb + '</td>');\r
-               h = h.replace(/<p>\s*<br \/>\s*<\/p>/g, '<p>' + nb + '</p>');\r
-               h = h.replace(/<br \/>$/, ''); // Remove last BR for Gecko\r
-               h = h.replace(/<br \/><\/p>/g, '</p>'); // Remove last BR in P tags for Gecko\r
-               h = h.replace(/<p>\s*(&nbsp;|&#160;)\s*<br \/>\s*(&nbsp;|&#160;)\s*<\/p>/g, '<p>' + nb + '</p>');\r
-               h = h.replace(/<p>\s*(&nbsp;|&#160;)\s*<br \/>\s*<\/p>/g, '<p>' + nb + '</p>');\r
-               h = h.replace(/<p>\s*<br \/>\s*&nbsp;\s*<\/p>/g, '<p>' + nb + '</p>');\r
-               h = h.replace(new RegExp('<a>(.*?)<\\/a>', 'g'), '$1');\r
-               h = h.replace(/<p([^>]*)>\s*<\/p>/g, '<p$1>' + nb + '</p>');\r
-\r
-               // Clean body\r
-               if (/^\s*(<br \/>|<p>&nbsp;<\/p>|<p>&#160;<\/p>|<p><\/p>)\s*$/.test(h))\r
-                       h = '';\r
-\r
-               // If preformatted\r
-               if (s.preformatted) {\r
-                       h = h.replace(/^<pre>/, '');\r
-                       h = h.replace(/<\/pre>$/, '');\r
-                       h = '<pre>' + h + '</pre>';\r
-               }\r
-\r
-               // Gecko specific processing\r
-               if (tinyMCE.isGecko) {\r
-                       // Makes no sence but FF generates it!!\r
-                       h = h.replace(/<br \/>\s*<\/li>/g, '</li>');\r
-                       h = h.replace(/&nbsp;\s*<\/(dd|dt)>/g, '</$1>');\r
-                       h = h.replace(/<o:p _moz-userdefined="" \/>/g, '');\r
-                       h = h.replace(/<td([^>]*)>\s*<br \/>\s*<\/td>/g, '<td$1>' + nb + '</td>');\r
-               }\r
-\r
-               if (s.force_br_newlines)\r
-                       h = h.replace(/<p>(&nbsp;|&#160;)<\/p>/g, '<br />');\r
-\r
-               // Call custom cleanup code\r
-               h = tinyMCE._customCleanup(inst, on_save ? "get_from_editor" : "insert_to_editor", h);\r
-\r
-               // Remove internal classes\r
-               if (on_save) {\r
-                       h = h.replace(new RegExp(' ?(mceItem[a-zA-Z0-9]*|' + s.visual_table_class + ')', 'g'), '');\r
-                       h = h.replace(new RegExp(' ?class=""', 'g'), '');\r
-               }\r
-\r
-               if (s.remove_linebreaks && !c.settings.indent)\r
-                       h = h.replace(/\n|\r/g, ' ');\r
-\r
-               if (d)\r
-                       t4 = new Date().getTime();\r
-\r
-               if (on_save && c.settings.indent)\r
-                       h = c.formatHTML(h);\r
-\r
-               // If encoding (not recommended option)\r
-               if (on_submit && (s.encoding == "xml" || s.encoding == "html"))\r
-                       h = c.xmlEncode(h);\r
-\r
-               if (d)\r
-                       t5 = new Date().getTime();\r
-\r
-               if (c.settings.debug)\r
-                       tinyMCE.debug("Cleanup in ms: Pre=" + (t2-t1) + ", Serialize: " + (t3-t2) + ", Post: " + (t4-t3) + ", Format: " + (t5-t4) + ", Sum: " + (t5-t1) + ".");\r
-\r
-               return h;\r
-       }\r
-});\r
-\r
-function TinyMCE_Cleanup() {\r
-       this.isIE = (navigator.appName == "Microsoft Internet Explorer");\r
-       this.rules = tinyMCE.clearArray([]);\r
-\r
-       // Default config\r
-       this.settings = {\r
-               indent_elements : 'head,table,tbody,thead,tfoot,form,tr,ul,ol,blockquote,object',\r
-               newline_before_elements : 'h1,h2,h3,h4,h5,h6,pre,address,div,ul,ol,li,meta,option,area,title,link,base,script,td',\r
-               newline_after_elements : 'br,hr,p,pre,address,div,ul,ol,meta,option,area,link,base,script',\r
-               newline_before_after_elements : 'html,head,body,table,thead,tbody,tfoot,tr,form,ul,ol,blockquote,p,object,param,hr,div',\r
-               indent_char : '\t',\r
-               indent_levels : 1,\r
-               entity_encoding : 'raw',\r
-               valid_elements : '*[*]',\r
-               entities : '',\r
-               url_converter : '',\r
-               invalid_elements : '',\r
-               verify_html : false\r
-       };\r
-\r
-       this.vElements = tinyMCE.clearArray([]);\r
-       this.vElementsRe = '';\r
-       this.closeElementsRe = /^(IMG|BR|HR|LINK|META|BASE|INPUT|AREA)$/;\r
-       this.codeElementsRe = /^(SCRIPT|STYLE)$/;\r
-       this.serializationId = 0;\r
-       this.mceAttribs = {\r
-               href : 'mce_href',\r
-               src : 'mce_src',\r
-               type : 'mce_type'\r
-       };\r
-}\r
-\r
-TinyMCE_Cleanup.prototype = {\r
-       init : function(s) {\r
-               var n, a, i, ir, or, st;\r
-\r
-               for (n in s)\r
-                       this.settings[n] = s[n];\r
-\r
-               // Setup code formating\r
-               s = this.settings;\r
-\r
-               // Setup regexps\r
-               this.inRe = this._arrayToRe(s.indent_elements.split(','), '', '^<(', ')[^>]*');\r
-               this.ouRe = this._arrayToRe(s.indent_elements.split(','), '', '^<\\/(', ')[^>]*');\r
-               this.nlBeforeRe = this._arrayToRe(s.newline_before_elements.split(','), 'gi', '<(',  ')([^>]*)>');\r
-               this.nlAfterRe = this._arrayToRe(s.newline_after_elements.split(','), 'gi', '<(',  ')([^>]*)>');\r
-               this.nlBeforeAfterRe = this._arrayToRe(s.newline_before_after_elements.split(','), 'gi', '<(\\/?)(', ')([^>]*)>');\r
-               this.serializedNodes = [];\r
-               this.serializationId = 0;\r
-\r
-               if (s.invalid_elements !== '')\r
-                       this.iveRe = this._arrayToRe(s.invalid_elements.toUpperCase().split(','), 'g', '^(', ')$');\r
-               else\r
-                       this.iveRe = null;\r
-\r
-               // Setup separator\r
-               st = '';\r
-               for (i=0; i<s.indent_levels; i++)\r
-                       st += s.indent_char;\r
-\r
-               this.inStr = st;\r
-\r
-               // If verify_html if false force *[*]\r
-               if (!s.verify_html) {\r
-                       s.valid_elements = '*[*]';\r
-                       s.extended_valid_elements = '';\r
-               }\r
-\r
-               this.fillStr = s.entity_encoding == "named" ? "&nbsp;" : "&#160;";\r
-               this.idCount = 0;\r
-               this.xmlEncodeRe = new RegExp('[\u007F-\uFFFF<>&"]', 'g');\r
-       },\r
-\r
-       addRuleStr : function(s) {\r
-               var r = this.parseRuleStr(s), n;\r
-\r
-               for (n in r) {\r
-                       if (r[n])\r
-                               this.rules[n] = r[n];\r
-               }\r
-\r
-               this.vElements = tinyMCE.clearArray([]);\r
-\r
-               for (n in this.rules) {\r
-                       if (this.rules[n])\r
-                               this.vElements[this.vElements.length] = this.rules[n].tag;\r
-               }\r
-\r
-               this.vElementsRe = this._arrayToRe(this.vElements, '');\r
-       },\r
-\r
-       isValid : function(n) {\r
-               if (!this.rulesDone)\r
-                       this._setupRules(); // Will initialize cleanup rules\r
-\r
-               // Empty is true since it removes formatting\r
-               if (!n)\r
-                       return true;\r
-\r
-               // Clean the name up a bit\r
-               n = n.replace(/[^a-z0-9]+/gi, '').toUpperCase();\r
-\r
-               return !tinyMCE.getParam('cleanup') || this.vElementsRe.test(n);\r
-       },\r
-\r
-       addChildRemoveRuleStr : function(s) {\r
-               var x, y, p, i, t, tn, ta, cl, r;\r
-\r
-               if (!s)\r
-                       return;\r
-\r
-               ta = s.split(',');\r
-               for (x=0; x<ta.length; x++) {\r
-                       s = ta[x];\r
-\r
-                       // Split tag/children\r
-                       p = this.split(/\[|\]/, s);\r
-                       if (p == null || p.length < 1)\r
-                               t = s.toUpperCase();\r
-                       else\r
-                               t = p[0].toUpperCase();\r
-\r
-                       // Handle all tag names\r
-                       tn = this.split('/', t);\r
-                       for (y=0; y<tn.length; y++) {\r
-                               r = "^(";\r
-\r
-                               // Build regex\r
-                               cl = this.split(/\|/, p[1]);\r
-                               for (i=0; i<cl.length; i++) {\r
-                                       if (cl[i] == '%istrict')\r
-                                               r += tinyMCE.inlineStrict;\r
-                                       else if (cl[i] == '%itrans')\r
-                                               r += tinyMCE.inlineTransitional;\r
-                                       else if (cl[i] == '%istrict_na')\r
-                                               r += tinyMCE.inlineStrict.substring(2);\r
-                                       else if (cl[i] == '%itrans_na')\r
-                                               r += tinyMCE.inlineTransitional.substring(2);\r
-                                       else if (cl[i] == '%btrans')\r
-                                               r += tinyMCE.blockElms;\r
-                                       else if (cl[i] == '%strict')\r
-                                               r += tinyMCE.blockStrict;\r
-                                       else\r
-                                               r += (cl[i].charAt(0) != '#' ? cl[i].toUpperCase() : cl[i]);\r
-\r
-                                       r += (i != cl.length - 1 ? '|' : '');\r
-                               }\r
-\r
-                               r += ')$';\r
-\r
-                               if (this.childRules == null)\r
-                                       this.childRules = tinyMCE.clearArray([]);\r
-\r
-                               this.childRules[tn[y]] = new RegExp(r);\r
-\r
-                               if (p.length > 1)\r
-                                       this.childRules[tn[y]].wrapTag = p[2];\r
-                       }\r
-               }\r
-       },\r
-\r
-       parseRuleStr : function(s) {\r
-               var ta, p, r, a, i, x, px, t, tn, y, av, or = tinyMCE.clearArray([]), dv;\r
-\r
-               if (s == null || s.length == 0)\r
-                       return or;\r
-\r
-               ta = s.split(',');\r
-               for (x=0; x<ta.length; x++) {\r
-                       s = ta[x];\r
-                       if (s.length == 0)\r
-                               continue;\r
-\r
-                       // Split tag/attrs\r
-                       p = this.split(/\[|\]/, s);\r
-                       if (p == null || p.length < 1)\r
-                               t = s.toUpperCase();\r
-                       else\r
-                               t = p[0].toUpperCase();\r
-\r
-                       // Handle all tag names\r
-                       tn = this.split('/', t);\r
-                       for (y=0; y<tn.length; y++) {\r
-                               r = {};\r
-\r
-                               r.tag = tn[y];\r
-                               r.forceAttribs = null;\r
-                               r.defaultAttribs = null;\r
-                               r.validAttribValues = null;\r
-\r
-                               // Handle prefixes\r
-                               px = r.tag.charAt(0);\r
-                               r.forceOpen = px == '+';\r
-                               r.removeEmpty = px == '-';\r
-                               r.fill = px == '#';\r
-                               r.tag = r.tag.replace(/\+|-|#/g, '');\r
-                               r.oTagName = tn[0].replace(/\+|-|#/g, '').toLowerCase();\r
-                               r.isWild = new RegExp('\\*|\\?|\\+', 'g').test(r.tag);\r
-                               r.validRe = new RegExp(this._wildcardToRe('^' + r.tag + '$'));\r
-\r
-                               // Setup valid attributes\r
-                               if (p.length > 1) {\r
-                                       r.vAttribsRe = '^(';\r
-                                       a = this.split(/\|/, p[1]);\r
-\r
-                                       for (i=0; i<a.length; i++) {\r
-                                               t = a[i];\r
-\r
-                                               if (t.charAt(0) == '!') {\r
-                                                       a[i] = t = t.substring(1);\r
-\r
-                                                       if (!r.reqAttribsRe)\r
-                                                               r.reqAttribsRe = '\\s+(' + t;\r
-                                                       else\r
-                                                               r.reqAttribsRe += '|' + t;\r
-                                               }\r
-\r
-                                               av = new RegExp('(=|:|<)(.*?)$').exec(t);\r
-                                               t = t.replace(new RegExp('(=|:|<).*?$'), '');\r
-                                               if (av && av.length > 0) {\r
-                                                       if (av[0].charAt(0) == ':') {\r
-                                                               if (!r.forceAttribs)\r
-                                                                       r.forceAttribs = tinyMCE.clearArray([]);\r
-\r
-                                                               r.forceAttribs[t.toLowerCase()] = av[0].substring(1);\r
-                                                       } else if (av[0].charAt(0) == '=') {\r
-                                                               if (!r.defaultAttribs)\r
-                                                                       r.defaultAttribs = tinyMCE.clearArray([]);\r
-\r
-                                                               dv = av[0].substring(1);\r
-\r
-                                                               r.defaultAttribs[t.toLowerCase()] = dv == '' ? "mce_empty" : dv;\r
-                                                       } else if (av[0].charAt(0) == '<') {\r
-                                                               if (!r.validAttribValues)\r
-                                                                       r.validAttribValues = tinyMCE.clearArray([]);\r
-\r
-                                                               r.validAttribValues[t.toLowerCase()] = this._arrayToRe(this.split('?', av[0].substring(1)), 'i');\r
-                                                       }\r
-                                               }\r
-\r
-                                               r.vAttribsRe += '' + t.toLowerCase() + (i != a.length - 1 ? '|' : '');\r
-\r
-                                               a[i] = t.toLowerCase();\r
-                                       }\r
-\r
-                                       if (r.reqAttribsRe)\r
-                                               r.reqAttribsRe = new RegExp(r.reqAttribsRe + ')=\"', 'g');\r
-\r
-                                       r.vAttribsRe += ')$';\r
-                                       r.vAttribsRe = this._wildcardToRe(r.vAttribsRe);\r
-                                       r.vAttribsReIsWild = new RegExp('\\*|\\?|\\+', 'g').test(r.vAttribsRe);\r
-                                       r.vAttribsRe = new RegExp(r.vAttribsRe);\r
-                                       r.vAttribs = a.reverse();\r
-\r
-                                       //tinyMCE.debug(r.tag, r.oTagName, r.vAttribsRe, r.vAttribsReWC);\r
-                               } else {\r
-                                       r.vAttribsRe = '';\r
-                                       r.vAttribs = tinyMCE.clearArray([]);\r
-                                       r.vAttribsReIsWild = false;\r
-                               }\r
-\r
-                               or[r.tag] = r;\r
-                       }\r
-               }\r
-\r
-               return or;\r
-       },\r
-\r
-       serializeNodeAsXML : function(n) {\r
-               var s, b;\r
-\r
-               if (!this.xmlDoc) {\r
-                       if (this.isIE) {\r
-                               try {this.xmlDoc = new ActiveXObject('MSXML2.DOMDocument');} catch (e) {}\r
-\r
-                               if (!this.xmlDoc)\r
-                                       try {this.xmlDoc = new ActiveXObject('Microsoft.XmlDom');} catch (e) {}\r
-                       } else\r
-                               this.xmlDoc = document.implementation.createDocument('', '', null);\r
-\r
-                       if (!this.xmlDoc)\r
-                               alert("Error XML Parser could not be found.");\r
-               }\r
-\r
-               if (this.xmlDoc.firstChild)\r
-                       this.xmlDoc.removeChild(this.xmlDoc.firstChild);\r
-\r
-               b = this.xmlDoc.createElement("html");\r
-               b = this.xmlDoc.appendChild(b);\r
-\r
-               this._convertToXML(n, b);\r
-\r
-               if (this.isIE)\r
-                       return this.xmlDoc.xml;\r
-               else\r
-                       return new XMLSerializer().serializeToString(this.xmlDoc);\r
-       },\r
-\r
-       _convertToXML : function(n, xn) {\r
-               var xd, el, i, l, cn, at, no, hc = false;\r
-\r
-               if (tinyMCE.isRealIE && this._isDuplicate(n))\r
-                       return;\r
-\r
-               xd = this.xmlDoc;\r
-\r
-               switch (n.nodeType) {\r
-                       case 1: // Element\r
-                               hc = n.hasChildNodes();\r
-\r
-                               el = xd.createElement(n.nodeName.toLowerCase());\r
-\r
-                               at = n.attributes;\r
-                               for (i=at.length-1; i>-1; i--) {\r
-                                       no = at[i];\r
-\r
-                                       if (no.specified && no.nodeValue)\r
-                                               el.setAttribute(no.nodeName.toLowerCase(), no.nodeValue);\r
-                               }\r
-\r
-                               if (!hc && !this.closeElementsRe.test(n.nodeName))\r
-                                       el.appendChild(xd.createTextNode(""));\r
-\r
-                               xn = xn.appendChild(el);\r
-                               break;\r
-\r
-                       case 3: // Text\r
-                               xn.appendChild(xd.createTextNode(n.nodeValue));\r
-                               return;\r
-\r
-                       case 8: // Comment\r
-                               xn.appendChild(xd.createComment(n.nodeValue));\r
-                               return;\r
-               }\r
-\r
-               if (hc) {\r
-                       cn = n.childNodes;\r
-\r
-                       for (i=0, l=cn.length; i<l; i++)\r
-                               this._convertToXML(cn[i], xn);\r
-               }\r
-       },\r
-\r
-       serializeNodeAsHTML : function(n, inn) {\r
-               var en, no, h = '', i, l, t, st, r, cn, va = false, f = false, at, hc, cr, nn;\r
-\r
-               if (!this.rulesDone)\r
-                       this._setupRules(); // Will initialize cleanup rules\r
-\r
-               if (tinyMCE.isRealIE && this._isDuplicate(n))\r
-                       return '';\r
-\r
-               // Skip non valid child elements\r
-               if (n.parentNode && this.childRules != null) {\r
-                       cr = this.childRules[n.parentNode.nodeName];\r
-\r
-                       if (typeof(cr) != "undefined" && !cr.test(n.nodeName)) {\r
-                               st = true;\r
-                               t = null;\r
-                       }\r
-               }\r
-\r
-               switch (n.nodeType) {\r
-                       case 1: // Element\r
-                               hc = n.hasChildNodes();\r
-\r
-                               if (st)\r
-                                       break;\r
-\r
-                               nn = n.nodeName;\r
-\r
-                               if (tinyMCE.isRealIE) {\r
-                                       // MSIE sometimes produces <//tag>\r
-                                       if (n.nodeName.indexOf('/') != -1)\r
-                                               break;\r
-\r
-                                       // MSIE has it's NS in a separate attrib\r
-                                       if (n.scopeName && n.scopeName != 'HTML')\r
-                                               nn = n.scopeName.toUpperCase() + ':' + nn.toUpperCase();\r
-                               } else if (tinyMCE.isOpera && nn.indexOf(':') > 0)\r
-                                       nn = nn.toUpperCase();\r
-\r
-                               // Convert fonts to spans\r
-                               if (this.settings.convert_fonts_to_spans) {\r
-                                       // On get content FONT -> SPAN\r
-                                       if (this.settings.on_save && nn == 'FONT')\r
-                                               nn = 'SPAN';\r
-\r
-                                       // On insert content SPAN -> FONT\r
-                                       if (!this.settings.on_save && nn == 'SPAN')\r
-                                               nn = 'FONT';\r
-                               }\r
-\r
-                               if (this.vElementsRe.test(nn) && (!this.iveRe || !this.iveRe.test(nn)) && !inn) {\r
-                                       va = true;\r
-\r
-                                       r = this.rules[nn];\r
-                                       if (!r) {\r
-                                               at = this.rules;\r
-                                               for (no in at) {\r
-                                                       if (at[no] && at[no].validRe.test(nn)) {\r
-                                                               r = at[no];\r
-                                                               break;\r
-                                                       }\r
-                                               }\r
-                                       }\r
-\r
-                                       en = r.isWild ? nn.toLowerCase() : r.oTagName;\r
-                                       f = r.fill;\r
-\r
-                                       if (r.removeEmpty && !hc)\r
-                                               return "";\r
-\r
-                                       t = '<' + en;\r
-\r
-                                       if (r.vAttribsReIsWild) {\r
-                                               // Serialize wildcard attributes\r
-                                               at = n.attributes;\r
-                                               for (i=at.length-1; i>-1; i--) {\r
-                                                       no = at[i];\r
-                                                       if (no.specified && r.vAttribsRe.test(no.nodeName))\r
-                                                               t += this._serializeAttribute(n, r, no.nodeName);\r
-                                               }\r
-                                       } else {\r
-                                               // Serialize specific attributes\r
-                                               for (i=r.vAttribs.length-1; i>-1; i--)\r
-                                                       t += this._serializeAttribute(n, r, r.vAttribs[i]);\r
-                                       }\r
-\r
-                                       // Serialize mce_ atts\r
-                                       if (!this.settings.on_save) {\r
-                                               at = this.mceAttribs;\r
-\r
-                                               for (no in at) {\r
-                                                       if (at[no])\r
-                                                               t += this._serializeAttribute(n, r, at[no]);\r
-                                               }\r
-                                       }\r
-\r
-                                       // Check for required attribs\r
-                                       if (r.reqAttribsRe && !t.match(r.reqAttribsRe))\r
-                                               t = null;\r
-\r
-                                       // Close these\r
-                                       if (t != null && this.closeElementsRe.test(nn))\r
-                                               return t + ' />';\r
-\r
-                                       if (t != null)\r
-                                               h += t + '>';\r
-\r
-                                       if (this.isIE && this.codeElementsRe.test(nn))\r
-                                               h += n.innerHTML;\r
-                               }\r
-                       break;\r
-\r
-                       case 3: // Text\r
-                               if (st)\r
-                                       break;\r
-\r
-                               if (n.parentNode && this.codeElementsRe.test(n.parentNode.nodeName))\r
-                                       return this.isIE ? '' : n.nodeValue;\r
-\r
-                               return this.xmlEncode(n.nodeValue);\r
-\r
-                       case 8: // Comment\r
-                               if (st)\r
-                                       break;\r
-\r
-                               return "<!--" + this._trimComment(n.nodeValue) + "-->";\r
-               }\r
-\r
-               if (hc) {\r
-                       cn = n.childNodes;\r
-\r
-                       for (i=0, l=cn.length; i<l; i++)\r
-                               h += this.serializeNodeAsHTML(cn[i]);\r
-               }\r
-\r
-               // Fill empty nodes\r
-               if (f && !hc)\r
-                       h += this.fillStr;\r
-\r
-               // End element\r
-               if (t != null && va)\r
-                       h += '</' + en + '>';\r
-\r
-               return h;\r
-       },\r
-\r
-       _serializeAttribute : function(n, r, an) {\r
-               var av = '', t, os = this.settings.on_save;\r
-\r
-               if (os && (an.indexOf('mce_') == 0 || an.indexOf('_moz') == 0))\r
-                       return '';\r
-\r
-               if (os && this.mceAttribs[an])\r
-                       av = this._getAttrib(n, this.mceAttribs[an]);\r
-\r
-               if (av.length == 0)\r
-                       av = this._getAttrib(n, an);\r
-\r
-               if (av.length == 0 && r.defaultAttribs && (t = r.defaultAttribs[an])) {\r
-                       av = t;\r
-\r
-                       if (av == "mce_empty")\r
-                               return " " + an + '=""';\r
-               }\r
-\r
-               if (r.forceAttribs && (t = r.forceAttribs[an]))\r
-                       av = t;\r
-\r
-               if (os && av.length != 0 && /^(src|href|longdesc)$/.test(an))\r
-                       av = this._urlConverter(this, n, av);\r
-\r
-               if (av.length != 0 && r.validAttribValues && r.validAttribValues[an] && !r.validAttribValues[an].test(av))\r
-                       return "";\r
-\r
-               if (av.length != 0 && av == "{$uid}")\r
-                       av = "uid_" + (this.idCount++);\r
-\r
-               if (av.length != 0) {\r
-                       if (an.indexOf('on') != 0)\r
-                               av = this.xmlEncode(av, 1);\r
-\r
-                       return " " + an + "=" + '"' + av + '"';\r
-               }\r
-\r
-               return "";\r
-       },\r
-\r
-       formatHTML : function(h) {\r
-               var s = this.settings, p = '', i = 0, li = 0, o = '', l;\r
-\r
-               // Replace BR in pre elements to \n\r
-               h = h.replace(/<pre([^>]*)>(.*?)<\/pre>/gi, function (a, b, c) {\r
-                       c = c.replace(/<br\s*\/>/gi, '\n');\r
-                       return '<pre' + b + '>' + c + '</pre>';\r
-               });\r
-\r
-               h = h.replace(/\r/g, ''); // Windows sux, isn't carriage return a thing of the past :)\r
-               h = '\n' + h;\r
-               h = h.replace(new RegExp('\\n\\s+', 'gi'), '\n'); // Remove previous formatting\r
-               h = h.replace(this.nlBeforeRe, '\n<$1$2>');\r
-               h = h.replace(this.nlAfterRe, '<$1$2>\n');\r
-               h = h.replace(this.nlBeforeAfterRe, '\n<$1$2$3>\n');\r
-               h += '\n';\r
-\r
-               //tinyMCE.debug(h);\r
-\r
-               while ((i = h.indexOf('\n', i + 1)) != -1) {\r
-                       if ((l = h.substring(li + 1, i)).length != 0) {\r
-                               if (this.ouRe.test(l) && p.length >= s.indent_levels)\r
-                                       p = p.substring(s.indent_levels);\r
-\r
-                               o += p + l + '\n';\r
-       \r
-                               if (this.inRe.test(l))\r
-                                       p += this.inStr;\r
-                       }\r
-\r
-                       li = i;\r
-               }\r
-\r
-               //tinyMCE.debug(h);\r
-\r
-               return o;\r
-       },\r
-\r
-       xmlEncode : function(s) {\r
-               var cl = this, re = this.xmlEncodeRe;\r
-\r
-               if (!this.entitiesDone)\r
-                       this._setupEntities(); // Will intialize lookup table\r
-\r
-               switch (this.settings.entity_encoding) {\r
-                       case "raw":\r
-                               return tinyMCE.xmlEncode(s);\r
-\r
-                       case "named":\r
-                               return s.replace(re, function (c) {\r
-                                       var b = cl.entities[c.charCodeAt(0)];\r
-\r
-                                       return b ? '&' + b + ';' : c;\r
-                               });\r
-\r
-                       case "numeric":\r
-                               return s.replace(re, function (c) {\r
-                                       return '&#' + c.charCodeAt(0) + ';';\r
-                               });\r
-               }\r
-\r
-               return s;\r
-       },\r
-\r
-       split : function(re, s) {\r
-               var i, l, o = [], c = s.split(re);\r
-\r
-               for (i=0, l=c.length; i<l; i++) {\r
-                       if (c[i] !== '')\r
-                               o[i] = c[i];\r
-               }\r
-\r
-               return o;\r
-       },\r
-\r
-       _trimComment : function(s) {\r
-               // Remove mce_src, mce_href\r
-               s = s.replace(new RegExp('\\smce_src=\"[^\"]*\"', 'gi'), "");\r
-               s = s.replace(new RegExp('\\smce_href=\"[^\"]*\"', 'gi'), "");\r
-\r
-               return s;\r
-       },\r
-\r
-       _getAttrib : function(e, n, d) {\r
-               var v, ex, nn;\r
-\r
-               if (typeof(d) == "undefined")\r
-                       d = "";\r
-\r
-               if (!e || e.nodeType != 1)\r
-                       return d;\r
-\r
-               try {\r
-                       v = e.getAttribute(n, 0);\r
-               } catch (ex) {\r
-                       // IE 7 may cast exception on invalid attributes\r
-                       v = e.getAttribute(n, 2);\r
-               }\r
-\r
-               if (n == "class" && !v)\r
-                       v = e.className;\r
-\r
-               if (this.isIE) {\r
-                       if (n == "http-equiv")\r
-                               v = e.httpEquiv;\r
-\r
-                       nn = e.nodeName;\r
-\r
-                       // Skip the default values that IE returns\r
-                       if (nn == "FORM" && n == "enctype" && v == "application/x-www-form-urlencoded")\r
-                               v = "";\r
-\r
-                       if (nn == "INPUT" && n == "size" && v == "20")\r
-                               v = "";\r
-\r
-                       if (nn == "INPUT" && n == "maxlength" && v == "2147483647")\r
-                               v = "";\r
-\r
-                       // Images\r
-                       if (n == "width" || n == "height")\r
-                               v = e.getAttribute(n, 2);\r
-               }\r
-\r
-               if (n == 'style' && v) {\r
-                       if (!tinyMCE.isOpera)\r
-                               v = e.style.cssText;\r
-\r
-                       v = tinyMCE.serializeStyle(tinyMCE.parseStyle(v));\r
-               }\r
-\r
-               if (this.settings.on_save && n.indexOf('on') != -1 && this.settings.on_save && v && v !== '')\r
-                       v = tinyMCE.cleanupEventStr(v);\r
-\r
-               return (v && v !== '') ? '' + v : d;\r
-       },\r
-\r
-       _urlConverter : function(c, n, v) {\r
-               if (!c.settings.on_save)\r
-                       return tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href, v);\r
-               else if (tinyMCE.getParam('convert_urls')) {\r
-                       if (!this.urlConverter)\r
-                               this.urlConverter = eval(tinyMCE.settings.urlconverter_callback);\r
-\r
-                       return this.urlConverter(v, n, true);\r
-               }\r
-\r
-               return v;\r
-       },\r
-\r
-       _arrayToRe : function(a, op, be, af) {\r
-               var i, r;\r
-\r
-               op = typeof(op) == "undefined" ? "gi" : op;\r
-               be = typeof(be) == "undefined" ? "^(" : be;\r
-               af = typeof(af) == "undefined" ? ")$" : af;\r
-\r
-               r = be;\r
-\r
-               for (i=0; i<a.length; i++)\r
-                       r += this._wildcardToRe(a[i]) + (i != a.length-1 ? "|" : "");\r
-\r
-               r += af;\r
-\r
-               return new RegExp(r, op);\r
-       },\r
-\r
-       _wildcardToRe : function(s) {\r
-               s = s.replace(/\?/g, '(\\S?)');\r
-               s = s.replace(/\+/g, '(\\S+)');\r
-               s = s.replace(/\*/g, '(\\S*)');\r
-\r
-               return s;\r
-       },\r
-\r
-       _setupEntities : function() {\r
-               var n, a, i, s = this.settings;\r
-\r
-               // Setup entities\r
-               if (s.entity_encoding == "named") {\r
-                       n = tinyMCE.clearArray([]);\r
-                       a = this.split(',', s.entities);\r
-                       for (i=0; i<a.length; i+=2)\r
-                               n[a[i]] = a[i+1];\r
-\r
-                       this.entities = n;\r
-               }\r
-\r
-               this.entitiesDone = true;\r
-       },\r
-\r
-       _setupRules : function() {\r
-               var s = this.settings;\r
-\r
-               // Setup default rule\r
-               this.addRuleStr(s.valid_elements);\r
-               this.addRuleStr(s.extended_valid_elements);\r
-               this.addChildRemoveRuleStr(s.valid_child_elements);\r
-\r
-               this.rulesDone = true;\r
-       },\r
-\r
-       _isDuplicate : function(n) {\r
-               var i, l, sn;\r
-\r
-               if (!this.settings.fix_content_duplication)\r
-                       return false;\r
-\r
-               if (tinyMCE.isRealIE && n.nodeType == 1) {\r
-                       // Mark elements\r
-                       if (n.mce_serialized == this.serializationId)\r
-                               return true;\r
-\r
-                       n.setAttribute('mce_serialized', this.serializationId);\r
-               } else {\r
-                       sn = this.serializedNodes;\r
-\r
-                       // Search lookup table for text nodes  and comments\r
-                       for (i=0, l = sn.length; i<l; i++) {\r
-                               if (sn[i] == n)\r
-                                       return true;\r
-                       }\r
-\r
-                       sn.push(n);\r
-               }\r
-\r
-               return false;\r
-       }\r
-\r
-       };\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_DOMUtils.class.js */\r
-\r
-tinyMCE.add(TinyMCE_Engine, {\r
-       createTagHTML : function(tn, a, h) {\r
-               var o = '', f = tinyMCE.xmlEncode, n;\r
-\r
-               o = '<' + tn;\r
-\r
-               if (a) {\r
-                       for (n in a) {\r
-                               if (typeof(a[n]) != 'function' && a[n] != null)\r
-                                       o += ' ' + f(n) + '="' + f('' + a[n]) + '"';\r
-                       }\r
-               }\r
-\r
-               o += !h ? ' />' : '>' + h + '</' + tn + '>';\r
-\r
-               return o;\r
-       },\r
-\r
-       createTag : function(d, tn, a, h) {\r
-               var o = d.createElement(tn), n;\r
-\r
-               if (a) {\r
-                       for (n in a) {\r
-                               if (typeof(a[n]) != 'function' && a[n] != null)\r
-                                       tinyMCE.setAttrib(o, n, a[n]);\r
-                       }\r
-               }\r
-\r
-               if (h)\r
-                       o.innerHTML = h;\r
-\r
-               return o;\r
-       },\r
-\r
-       getElementByAttributeValue : function(n, e, a, v) {\r
-               return (n = this.getElementsByAttributeValue(n, e, a, v)).length == 0 ? null : n[0];\r
-       },\r
-\r
-       getElementsByAttributeValue : function(n, e, a, v) {\r
-               var i, nl = n.getElementsByTagName(e), o = [];\r
-\r
-               for (i=0; i<nl.length; i++) {\r
-                       if (tinyMCE.getAttrib(nl[i], a).indexOf(v) != -1)\r
-                               o[o.length] = nl[i];\r
-               }\r
-\r
-               return o;\r
-       },\r
-\r
-       isBlockElement : function(n) {\r
-               return n != null && n.nodeType == 1 && this.blockRegExp.test(n.nodeName);\r
-       },\r
-\r
-       getParentBlockElement : function(n, r) {\r
-               return this.getParentNode(n, function(n) {\r
-                       return tinyMCE.isBlockElement(n);\r
-               }, r);\r
-\r
-               return null;\r
-       },\r
-\r
-       insertAfter : function(n, r){\r
-               if (r.nextSibling)\r
-                       r.parentNode.insertBefore(n, r.nextSibling);\r
-               else\r
-                       r.parentNode.appendChild(n);\r
-       },\r
-\r
-       setInnerHTML : function(e, h) {\r
-               var i, nl, n;\r
-\r
-               // Convert all strong/em to b/i in Gecko\r
-               if (tinyMCE.isGecko) {\r
-                       h = h.replace(/<embed([^>]*)>/gi, '<tmpembed$1>');\r
-                       h = h.replace(/<em([^>]*)>/gi, '<i$1>');\r
-                       h = h.replace(/<tmpembed([^>]*)>/gi, '<embed$1>');\r
-                       h = h.replace(/<strong([^>]*)>/gi, '<b$1>');\r
-                       h = h.replace(/<\/strong>/gi, '</b>');\r
-                       h = h.replace(/<\/em>/gi, '</i>');\r
-               }\r
-\r
-               if (tinyMCE.isRealIE) {\r
-                       // Since MSIE handles invalid HTML better that valid XHTML we\r
-                       // need to make some things invalid. <hr /> gets converted to <hr>.\r
-                       h = h.replace(/\s\/>/g, '>');\r
-\r
-                       // Since MSIE auto generated emtpy P tags some times we must tell it to keep the real ones\r
-                       h = h.replace(/<p([^>]*)>\u00A0?<\/p>/gi, '<p$1 mce_keep="true">&nbsp;</p>'); // Keep empty paragraphs\r
-                       h = h.replace(/<p([^>]*)>\s*&nbsp;\s*<\/p>/gi, '<p$1 mce_keep="true">&nbsp;</p>'); // Keep empty paragraphs\r
-                       h = h.replace(/<p([^>]*)>\s+<\/p>/gi, '<p$1 mce_keep="true">&nbsp;</p>'); // Keep empty paragraphs\r
-\r
-                       // Remove first comment\r
-                       e.innerHTML = tinyMCE.uniqueTag + h;\r
-                       e.firstChild.removeNode(true);\r
-\r
-                       // Remove weird auto generated empty paragraphs unless it's supposed to be there\r
-                       nl = e.getElementsByTagName("p");\r
-                       for (i=nl.length-1; i>=0; i--) {\r
-                               n = nl[i];\r
-\r
-                               if (n.nodeName == 'P' && !n.hasChildNodes() && !n.mce_keep)\r
-                                       n.parentNode.removeChild(n);\r
-                       }\r
-               } else {\r
-                       h = this.fixGeckoBaseHREFBug(1, e, h);\r
-                       e.innerHTML = h;\r
-                       this.fixGeckoBaseHREFBug(2, e, h);\r
-               }\r
-       },\r
-\r
-       getOuterHTML : function(e) {\r
-               var d;\r
-\r
-               if (tinyMCE.isIE)\r
-                       return e.outerHTML;\r
-\r
-               d = e.ownerDocument.createElement("body");\r
-               d.appendChild(e.cloneNode(true));\r
-\r
-               return d.innerHTML;\r
-       },\r
-\r
-       setOuterHTML : function(e, h, d) {\r
-               var d = typeof(d) == "undefined" ? e.ownerDocument : d, i, nl, t;\r
-\r
-               if (tinyMCE.isIE && e.nodeType == 1)\r
-                       e.outerHTML = h;\r
-               else {\r
-                       t = d.createElement("body");\r
-                       t.innerHTML = h;\r
-\r
-                       for (i=0, nl=t.childNodes; i<nl.length; i++)\r
-                               e.parentNode.insertBefore(nl[i].cloneNode(true), e);\r
-\r
-                       e.parentNode.removeChild(e);\r
-               }\r
-       },\r
-\r
-       _getElementById : function(id, d) {\r
-               var e, i, j, f;\r
-\r
-               if (typeof(d) == "undefined")\r
-                       d = document;\r
-\r
-               e = d.getElementById(id);\r
-               if (!e) {\r
-                       f = d.forms;\r
-\r
-                       for (i=0; i<f.length; i++) {\r
-                               for (j=0; j<f[i].elements.length; j++) {\r
-                                       if (f[i].elements[j].name == id) {\r
-                                               e = f[i].elements[j];\r
-                                               break;\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-\r
-               return e;\r
-       },\r
-\r
-       getNodeTree : function(n, na, t, nn) {\r
-               return this.selectNodes(n, function(n) {\r
-                       return (!t || n.nodeType == t) && (!nn || n.nodeName == nn);\r
-               }, na ? na : []);\r
-       },\r
-\r
-       getParentElement : function(n, na, f, r) {\r
-               var re = na ? new RegExp('^(' + na.toUpperCase().replace(/,/g, '|') + ')$') : 0, v;\r
-\r
-               // Compatiblity with old scripts where f param was a attribute string\r
-               if (f && typeof(f) == 'string')\r
-                       return this.getParentElement(n, na, function(no) {return tinyMCE.getAttrib(no, f) !== '';});\r
-\r
-               return this.getParentNode(n, function(n) {\r
-                       return ((n.nodeType == 1 && !re) || (re && re.test(n.nodeName))) && (!f || f(n));\r
-               }, r);\r
-       },\r
-\r
-       getParentNode : function(n, f, r) {\r
-               while (n) {\r
-                       if (n == r)\r
-                               return null;\r
-\r
-                       if (f(n))\r
-                               return n;\r
-\r
-                       n = n.parentNode;\r
-               }\r
-\r
-               return null;\r
-       },\r
-\r
-       getAttrib : function(elm, name, dv) {\r
-               var v;\r
-\r
-               if (typeof(dv) == "undefined")\r
-                       dv = "";\r
-\r
-               // Not a element\r
-               if (!elm || elm.nodeType != 1)\r
-                       return dv;\r
-\r
-               try {\r
-                       v = elm.getAttribute(name, 0);\r
-               } catch (ex) {\r
-                       // IE 7 may cast exception on invalid attributes\r
-                       v = elm.getAttribute(name, 2);\r
-               }\r
-\r
-               // Try className for class attrib\r
-               if (name == "class" && !v)\r
-                       v = elm.className;\r
-\r
-               // Workaround for a issue with Firefox 1.5rc2+\r
-               if (tinyMCE.isGecko) {\r
-                       if (name == "src" && elm.src != null && elm.src !== '')\r
-                               v = elm.src;\r
-\r
-                       // Workaround for a issue with Firefox 1.5rc2+\r
-                       if (name == "href" && elm.href != null && elm.href !== '')\r
-                               v = elm.href;\r
-               } else if (tinyMCE.isIE) {\r
-                       switch (name) {\r
-                               case "http-equiv":\r
-                                       v = elm.httpEquiv;\r
-                                       break;\r
-\r
-                               case "width":\r
-                               case "height":\r
-                                       v = elm.getAttribute(name, 2);\r
-                                       break;\r
-                       }\r
-               }\r
-\r
-               if (name == "style" && !tinyMCE.isOpera)\r
-                       v = elm.style.cssText;\r
-\r
-               return (v && v !== '') ? v : dv;\r
-       },\r
-\r
-       setAttrib : function(el, name, va, fix) {\r
-               if (typeof(va) == "number" && va != null)\r
-                       va = "" + va;\r
-\r
-               if (fix) {\r
-                       if (va == null)\r
-                               va = "";\r
-\r
-                       va = va.replace(/[^0-9%]/g, '');\r
-               }\r
-\r
-               if (name == "style")\r
-                       el.style.cssText = va;\r
-\r
-               if (name == "class")\r
-                       el.className = va;\r
-\r
-               if (va != null && va !== '' && va != -1)\r
-                       el.setAttribute(name, va);\r
-               else\r
-                       el.removeAttribute(name);\r
-       },\r
-\r
-       setStyleAttrib : function(e, n, v) {\r
-               e.style[n] = v;\r
-\r
-               // Style attrib deleted in IE\r
-               if (tinyMCE.isIE && v == null || v == '') {\r
-                       v = tinyMCE.serializeStyle(tinyMCE.parseStyle(e.style.cssText));\r
-                       e.style.cssText = v;\r
-                       e.setAttribute("style", v);\r
-               }\r
-       },\r
-\r
-       switchClass : function(ei, c) {\r
-               var e;\r
-\r
-               if (tinyMCE.switchClassCache[ei])\r
-                       e = tinyMCE.switchClassCache[ei];\r
-               else\r
-                       e = tinyMCE.switchClassCache[ei] = document.getElementById(ei);\r
-\r
-               if (e) {\r
-                       // Keep tile mode\r
-                       if (tinyMCE.settings.button_tile_map && e.className && e.className.indexOf('mceTiledButton') == 0)\r
-                               c = 'mceTiledButton ' + c;\r
-\r
-                       e.className = c;\r
-               }\r
-       },\r
-\r
-       getAbsPosition : function(n, cn) {\r
-               var l = 0, t = 0;\r
-\r
-               while (n && n != cn) {\r
-                       l += n.offsetLeft;\r
-                       t += n.offsetTop;\r
-                       n = n.offsetParent;\r
-               }\r
-\r
-               return {absLeft : l, absTop : t};\r
-       },\r
-\r
-       prevNode : function(e, n) {\r
-               var a = n.split(','), i;\r
-\r
-               while ((e = e.previousSibling) != null) {\r
-                       for (i=0; i<a.length; i++) {\r
-                               if (e.nodeName == a[i])\r
-                                       return e;\r
-                       }\r
-               }\r
-\r
-               return null;\r
-       },\r
-\r
-       nextNode : function(e, n) {\r
-               var a = n.split(','), i;\r
-\r
-               while ((e = e.nextSibling) != null) {\r
-                       for (i=0; i<a.length; i++) {\r
-                               if (e.nodeName == a[i])\r
-                                       return e;\r
-                       }\r
-               }\r
-\r
-               return null;\r
-       },\r
-\r
-       selectElements : function(n, na, f) {\r
-               var i, a = [], nl, x;\r
-\r
-               for (x=0, na = na.split(','); x<na.length; x++)\r
-                       for (i=0, nl = n.getElementsByTagName(na[x]); i<nl.length; i++)\r
-                               (!f || f(nl[i])) && a.push(nl[i]);\r
-\r
-               return a;\r
-       },\r
-\r
-       selectNodes : function(n, f, a) {\r
-               var i;\r
-\r
-               if (!a)\r
-                       a = [];\r
-\r
-               if (f(n))\r
-                       a[a.length] = n;\r
-\r
-               if (n.hasChildNodes()) {\r
-                       for (i=0; i<n.childNodes.length; i++)\r
-                               tinyMCE.selectNodes(n.childNodes[i], f, a);\r
-               }\r
-\r
-               return a;\r
-       },\r
-\r
-       addCSSClass : function(e, c, b) {\r
-               var o = this.removeCSSClass(e, c);\r
-               return e.className = b ? c + (o !== '' ? (' ' + o) : '') : (o !== '' ? (o + ' ') : '') + c;\r
-       },\r
-\r
-       removeCSSClass : function(e, c) {\r
-               c = e.className.replace(new RegExp("(^|\\s+)" + c + "(\\s+|$)"), ' ');\r
-               return e.className = c != ' ' ? c : '';\r
-       },\r
-\r
-       hasCSSClass : function(n, c) {\r
-               return new RegExp('\\b' + c + '\\b', 'g').test(n.className);\r
-       },\r
-\r
-       renameElement : function(e, n, d) {\r
-               var ne, i, ar;\r
-\r
-               d = typeof(d) == "undefined" ? tinyMCE.selectedInstance.getDoc() : d;\r
-\r
-               if (e) {\r
-                       ne = d.createElement(n);\r
-\r
-                       ar = e.attributes;\r
-                       for (i=ar.length-1; i>-1; i--) {\r
-                               if (ar[i].specified && ar[i].nodeValue)\r
-                                       ne.setAttribute(ar[i].nodeName.toLowerCase(), ar[i].nodeValue);\r
-                       }\r
-\r
-                       ar = e.childNodes;\r
-                       for (i=0; i<ar.length; i++)\r
-                               ne.appendChild(ar[i].cloneNode(true));\r
-\r
-                       e.parentNode.replaceChild(ne, e);\r
-               }\r
-       },\r
-\r
-       getViewPort : function(w) {\r
-               var d = w.document, m = d.compatMode == 'CSS1Compat', b = d.body, de = d.documentElement;\r
-\r
-               return {\r
-                       left : w.pageXOffset || (m ? de.scrollLeft : b.scrollLeft),\r
-                       top : w.pageYOffset || (m ? de.scrollTop : b.scrollTop),\r
-                       width : w.innerWidth || (m ? de.clientWidth : b.clientWidth),\r
-                       height : w.innerHeight || (m ? de.clientHeight : b.clientHeight)\r
-               };\r
-       },\r
-\r
-       getStyle : function(n, na, d) {\r
-               if (!n)\r
-                       return false;\r
-\r
-               // Gecko\r
-               if (tinyMCE.isGecko && n.ownerDocument.defaultView) {\r
-                       try {\r
-                               return n.ownerDocument.defaultView.getComputedStyle(n, null).getPropertyValue(na);\r
-                       } catch (n) {\r
-                               // Old safari might fail\r
-                               return null;\r
-                       }\r
-               }\r
-\r
-               // Camelcase it, if needed\r
-               na = na.replace(/-(\D)/g, function(a, b){\r
-                       return b.toUpperCase();\r
-               });\r
-\r
-               // IE & Opera\r
-               if (n.currentStyle)\r
-                       return n.currentStyle[na];\r
-\r
-               return false;\r
-       }\r
-\r
-       });\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_URL.class.js */\r
-\r
-tinyMCE.add(TinyMCE_Engine, {\r
-       parseURL : function(url_str) {\r
-               var urlParts = [], i, pos, lastPos, chr;\r
-\r
-               if (url_str) {\r
-                       // Parse protocol part\r
-                       pos = url_str.indexOf('://');\r
-                       if (pos != -1) {\r
-                               urlParts.protocol = url_str.substring(0, pos);\r
-                               lastPos = pos + 3;\r
-                       }\r
-\r
-                       // Find port or path start\r
-                       for (i=lastPos; i<url_str.length; i++) {\r
-                               chr = url_str.charAt(i);\r
-\r
-                               if (chr == ':')\r
-                                       break;\r
-\r
-                               if (chr == '/')\r
-                                       break;\r
-                       }\r
-                       pos = i;\r
-\r
-                       // Get host\r
-                       urlParts.host = url_str.substring(lastPos, pos);\r
-\r
-                       // Get port\r
-                       urlParts.port = "";\r
-                       lastPos = pos;\r
-                       if (url_str.charAt(pos) == ':') {\r
-                               pos = url_str.indexOf('/', lastPos);\r
-                               urlParts.port = url_str.substring(lastPos+1, pos);\r
-                       }\r
-\r
-                       // Get path\r
-                       lastPos = pos;\r
-                       pos = url_str.indexOf('?', lastPos);\r
-\r
-                       if (pos == -1)\r
-                               pos = url_str.indexOf('#', lastPos);\r
-\r
-                       if (pos == -1)\r
-                               pos = url_str.length;\r
-\r
-                       urlParts.path = url_str.substring(lastPos, pos);\r
-\r
-                       // Get query\r
-                       lastPos = pos;\r
-                       if (url_str.charAt(pos) == '?') {\r
-                               pos = url_str.indexOf('#');\r
-                               pos = (pos == -1) ? url_str.length : pos;\r
-                               urlParts.query = url_str.substring(lastPos+1, pos);\r
-                       }\r
-\r
-                       // Get anchor\r
-                       lastPos = pos;\r
-                       if (url_str.charAt(pos) == '#') {\r
-                               pos = url_str.length;\r
-                               urlParts.anchor = url_str.substring(lastPos+1, pos);\r
-                       }\r
-               }\r
-\r
-               return urlParts;\r
-       },\r
-\r
-       serializeURL : function(up) {\r
-               var o = "";\r
-\r
-               if (up.protocol)\r
-                       o += up.protocol + "://";\r
-\r
-               if (up.host)\r
-                       o += up.host;\r
-\r
-               if (up.port)\r
-                       o += ":" + up.port;\r
-\r
-               if (up.path)\r
-                       o += up.path;\r
-\r
-               if (up.query)\r
-                       o += "?" + up.query;\r
-\r
-               if (up.anchor)\r
-                       o += "#" + up.anchor;\r
-\r
-               return o;\r
-       },\r
-\r
-       convertAbsoluteURLToRelativeURL : function(base_url, url_to_relative) {\r
-               var baseURL = this.parseURL(base_url), targetURL = this.parseURL(url_to_relative);\r
-               var i, strTok1, strTok2, breakPoint = 0, outPath = "", forceSlash = false;\r
-               var fileName, pos;\r
-\r
-               if (targetURL.path == '')\r
-                       targetURL.path = "/";\r
-               else\r
-                       forceSlash = true;\r
-\r
-               // Crop away last path part\r
-               base_url = baseURL.path.substring(0, baseURL.path.lastIndexOf('/'));\r
-               strTok1 = base_url.split('/');\r
-               strTok2 = targetURL.path.split('/');\r
-\r
-               if (strTok1.length >= strTok2.length) {\r
-                       for (i=0; i<strTok1.length; i++) {\r
-                               if (i >= strTok2.length || strTok1[i] != strTok2[i]) {\r
-                                       breakPoint = i + 1;\r
-                                       break;\r
-                               }\r
-                       }\r
-               }\r
-\r
-               if (strTok1.length < strTok2.length) {\r
-                       for (i=0; i<strTok2.length; i++) {\r
-                               if (i >= strTok1.length || strTok1[i] != strTok2[i]) {\r
-                                       breakPoint = i + 1;\r
-                                       break;\r
-                               }\r
-                       }\r
-               }\r
-\r
-               if (breakPoint == 1)\r
-                       return targetURL.path;\r
-\r
-               for (i=0; i<(strTok1.length-(breakPoint-1)); i++)\r
-                       outPath += "../";\r
-\r
-               for (i=breakPoint-1; i<strTok2.length; i++) {\r
-                       if (i != (breakPoint-1))\r
-                               outPath += "/" + strTok2[i];\r
-                       else\r
-                               outPath += strTok2[i];\r
-               }\r
-\r
-               targetURL.protocol = null;\r
-               targetURL.host = null;\r
-               targetURL.port = null;\r
-               targetURL.path = outPath == '' && forceSlash ? "/" : outPath;\r
-\r
-               // Remove document prefix from local anchors\r
-               fileName = baseURL.path;\r
-\r
-               if ((pos = fileName.lastIndexOf('/')) != -1)\r
-                       fileName = fileName.substring(pos + 1);\r
-\r
-               // Is local anchor\r
-               if (fileName == targetURL.path && targetURL.anchor !== '')\r
-                       targetURL.path = "";\r
-\r
-               // If empty and not local anchor force filename or slash\r
-               if (targetURL.path == '' && !targetURL.anchor)\r
-                       targetURL.path = fileName !== '' ? fileName : "/";\r
-\r
-               return this.serializeURL(targetURL);\r
-       },\r
-\r
-       convertRelativeToAbsoluteURL : function(base_url, relative_url) {\r
-               var baseURL = this.parseURL(base_url), baseURLParts, relURLParts, newRelURLParts, numBack, relURL = this.parseURL(relative_url), i;\r
-               var len, absPath, start, end, newBaseURLParts;\r
-\r
-               if (relative_url == '' || relative_url.indexOf('://') != -1 || /^(mailto:|javascript:|#|\/)/.test(relative_url))\r
-                       return relative_url;\r
-\r
-               // Split parts\r
-               baseURLParts = baseURL.path.split('/');\r
-               relURLParts = relURL.path.split('/');\r
-\r
-               // Remove empty chunks\r
-               newBaseURLParts = [];\r
-               for (i=baseURLParts.length-1; i>=0; i--) {\r
-                       if (baseURLParts[i].length == 0)\r
-                               continue;\r
-\r
-                       newBaseURLParts[newBaseURLParts.length] = baseURLParts[i];\r
-               }\r
-               baseURLParts = newBaseURLParts.reverse();\r
-\r
-               // Merge relURLParts chunks\r
-               newRelURLParts = [];\r
-               numBack = 0;\r
-               for (i=relURLParts.length-1; i>=0; i--) {\r
-                       if (relURLParts[i].length == 0 || relURLParts[i] == ".")\r
-                               continue;\r
-\r
-                       if (relURLParts[i] == '..') {\r
-                               numBack++;\r
-                               continue;\r
-                       }\r
-\r
-                       if (numBack > 0) {\r
-                               numBack--;\r
-                               continue;\r
-                       }\r
-\r
-                       newRelURLParts[newRelURLParts.length] = relURLParts[i];\r
-               }\r
-\r
-               relURLParts = newRelURLParts.reverse();\r
-\r
-               // Remove end from absolute path\r
-               len = baseURLParts.length-numBack;\r
-               absPath = (len <= 0 ? "" : "/") + baseURLParts.slice(0, len).join('/') + "/" + relURLParts.join('/');\r
-               start = "";\r
-               end = "";\r
-\r
-               // Build output URL\r
-               relURL.protocol = baseURL.protocol;\r
-               relURL.host = baseURL.host;\r
-               relURL.port = baseURL.port;\r
-\r
-               // Re-add trailing slash if it's removed\r
-               if (relURL.path.charAt(relURL.path.length-1) == "/")\r
-                       absPath += "/";\r
-\r
-               relURL.path = absPath;\r
-\r
-               return this.serializeURL(relURL);\r
-       },\r
-\r
-       convertURL : function(url, node, on_save) {\r
-               var dl = document.location, start, portPart, urlParts, baseUrlParts, tmpUrlParts, curl;\r
-               var prot = dl.protocol, host = dl.hostname, port = dl.port;\r
-\r
-               // Pass through file protocol\r
-               if (prot == "file:")\r
-                       return url;\r
-\r
-               // Something is wrong, remove weirdness\r
-               url = tinyMCE.regexpReplace(url, '(http|https):///', '/');\r
-\r
-               // Mailto link or anchor (Pass through)\r
-               if (url.indexOf('mailto:') != -1 || url.indexOf('javascript:') != -1 || /^[ \t\r\n\+]*[#\?]/.test(url))\r
-                       return url;\r
-\r
-               // Fix relative/Mozilla\r
-               if (!tinyMCE.isIE && !on_save && url.indexOf("://") == -1 && url.charAt(0) != '/')\r
-                       return tinyMCE.settings.base_href + url;\r
-\r
-               // Handle relative URLs\r
-               if (on_save && tinyMCE.getParam('relative_urls')) {\r
-                       curl = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href, url);\r
-                       if (curl.charAt(0) == '/')\r
-                               curl = tinyMCE.settings.document_base_prefix + curl;\r
-\r
-                       urlParts = tinyMCE.parseURL(curl);\r
-                       tmpUrlParts = tinyMCE.parseURL(tinyMCE.settings.document_base_url);\r
-\r
-                       // Force relative\r
-                       if (urlParts.host == tmpUrlParts.host && (urlParts.port == tmpUrlParts.port))\r
-                               return tinyMCE.convertAbsoluteURLToRelativeURL(tinyMCE.settings.document_base_url, curl);\r
-               }\r
-\r
-               // Handle absolute URLs\r
-               if (!tinyMCE.getParam('relative_urls')) {\r
-                       urlParts = tinyMCE.parseURL(url);\r
-                       baseUrlParts = tinyMCE.parseURL(tinyMCE.settings.base_href);\r
-\r
-                       // Force absolute URLs from relative URLs\r
-                       url = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href, url);\r
-\r
-                       // If anchor and path is the same page\r
-                       if (urlParts.anchor && urlParts.path == baseUrlParts.path)\r
-                               return "#" + urlParts.anchor;\r
-               }\r
-\r
-               // Remove current domain\r
-               if (tinyMCE.getParam('remove_script_host')) {\r
-                       start = "";\r
-                       portPart = "";\r
-\r
-                       if (port !== '')\r
-                               portPart = ":" + port;\r
-\r
-                       start = prot + "//" + host + portPart + "/";\r
-\r
-                       if (url.indexOf(start) == 0)\r
-                               url = url.substring(start.length-1);\r
-               }\r
-\r
-               return url;\r
-       },\r
-\r
-       convertAllRelativeURLs : function(body) {\r
-               var i, elms, src, href, mhref, msrc;\r
-\r
-               // Convert all image URL:s to absolute URL\r
-               elms = body.getElementsByTagName("img");\r
-               for (i=0; i<elms.length; i++) {\r
-                       src = tinyMCE.getAttrib(elms[i], 'src');\r
-\r
-                       msrc = tinyMCE.getAttrib(elms[i], 'mce_src');\r
-                       if (msrc !== '')\r
-                               src = msrc;\r
-\r
-                       if (src !== '') {\r
-                               src = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href, src);\r
-                               elms[i].setAttribute("src", src);\r
-                       }\r
-               }\r
-\r
-               // Convert all link URL:s to absolute URL\r
-               elms = body.getElementsByTagName("a");\r
-               for (i=0; i<elms.length; i++) {\r
-                       href = tinyMCE.getAttrib(elms[i], 'href');\r
-\r
-                       mhref = tinyMCE.getAttrib(elms[i], 'mce_href');\r
-                       if (mhref !== '')\r
-                               href = mhref;\r
-\r
-                       if (href && href !== '') {\r
-                               href = tinyMCE.convertRelativeToAbsoluteURL(tinyMCE.settings.base_href, href);\r
-                               elms[i].setAttribute("href", href);\r
-                       }\r
-               }\r
-       }\r
-\r
-       });\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_Array.class.js */\r
-\r
-tinyMCE.add(TinyMCE_Engine, {\r
-       clearArray : function(a) {\r
-               var n;\r
-\r
-               for (n in a)\r
-                       a[n] = null;\r
-\r
-               return a;\r
-       },\r
-\r
-       explode : function(d, s) {\r
-               var ar = s.split(d), oar = [], i;\r
-\r
-               for (i = 0; i<ar.length; i++) {\r
-                       if (ar[i] !== '')\r
-                               oar[oar.length] = ar[i];\r
-               }\r
-\r
-               return oar;\r
-       }\r
-});\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_Event.class.js */\r
-\r
-tinyMCE.add(TinyMCE_Engine, {\r
-       _setEventsEnabled : function(node, state) {\r
-               var evs, x, y, elms, i, event;\r
-               var events = ['onfocus','onblur','onclick','ondblclick',\r
-                                       'onmousedown','onmouseup','onmouseover','onmousemove',\r
-                                       'onmouseout','onkeypress','onkeydown','onkeydown','onkeyup'];\r
-\r
-               evs = tinyMCE.settings.event_elements.split(',');\r
-               for (y=0; y<evs.length; y++){\r
-                       elms = node.getElementsByTagName(evs[y]);\r
-                       for (i=0; i<elms.length; i++) {\r
-                               event = "";\r
-\r
-                               for (x=0; x<events.length; x++) {\r
-                                       if ((event = tinyMCE.getAttrib(elms[i], events[x])) !== '') {\r
-                                               event = tinyMCE.cleanupEventStr("" + event);\r
-\r
-                                               if (!state)\r
-                                                       event = "return true;" + event;\r
-                                               else\r
-                                                       event = event.replace(/^return true;/gi, '');\r
-\r
-                                               elms[i].removeAttribute(events[x]);\r
-                                               elms[i].setAttribute(events[x], event);\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-       },\r
-\r
-       _eventPatch : function(editor_id) {\r
-               var n, inst, win, e;\r
-\r
-               // Remove odd, error\r
-               if (typeof(tinyMCE) == "undefined")\r
-                       return true;\r
-\r
-               try {\r
-                       // Try selected instance first\r
-                       if (tinyMCE.selectedInstance) {\r
-                               win = tinyMCE.selectedInstance.getWin();\r
-\r
-                               if (win && win.event) {\r
-                                       e = win.event;\r
-\r
-                                       if (!e.target)\r
-                                               e.target = e.srcElement;\r
-\r
-                                       TinyMCE_Engine.prototype.handleEvent(e);\r
-                                       return;\r
-                               }\r
-                       }\r
-\r
-                       // Search for it\r
-                       for (n in tinyMCE.instances) {\r
-                               inst = tinyMCE.instances[n];\r
-\r
-                               if (!tinyMCE.isInstance(inst))\r
-                                       continue;\r
-\r
-                               inst.select();\r
-                               win = inst.getWin();\r
-\r
-                               if (win && win.event) {\r
-                                       e = win.event;\r
-\r
-                                       if (!e.target)\r
-                                               e.target = e.srcElement;\r
-\r
-                                       TinyMCE_Engine.prototype.handleEvent(e);\r
-                                       return;\r
-                               }\r
-                       }\r
-               } catch (ex) {\r
-                       // Ignore error if iframe is pointing to external URL\r
-               }\r
-       },\r
-\r
-       findEvent : function(e) {\r
-               var n, inst;\r
-\r
-               if (e)\r
-                       return e;\r
-\r
-               for (n in tinyMCE.instances) {\r
-                       inst = tinyMCE.instances[n];\r
-\r
-                       if (tinyMCE.isInstance(inst) && inst.getWin().event)\r
-                               return inst.getWin().event;\r
-               }\r
-\r
-               return null;\r
-       },\r
-\r
-       unloadHandler : function() {\r
-               tinyMCE.triggerSave(true, true);\r
-       },\r
-\r
-       addEventHandlers : function(inst) {\r
-               this.setEventHandlers(inst, 1);\r
-       },\r
-\r
-       setEventHandlers : function(inst, s) {\r
-               var doc = inst.getDoc(), ie, ot, i, f = s ? tinyMCE.addEvent : tinyMCE.removeEvent;\r
-\r
-               ie = ['keypress', 'keyup', 'keydown', 'click', 'mouseup', 'mousedown', 'controlselect', 'dblclick'];\r
-               ot = ['keypress', 'keyup', 'keydown', 'click', 'mouseup', 'mousedown', 'focus', 'blur', 'dragdrop'];\r
-\r
-               inst.switchSettings();\r
-\r
-               if (tinyMCE.isIE) {\r
-                       for (i=0; i<ie.length; i++)\r
-                               f(doc, ie[i], TinyMCE_Engine.prototype._eventPatch);\r
-               } else {\r
-                       for (i=0; i<ot.length; i++)\r
-                               f(doc, ot[i], tinyMCE.handleEvent);\r
-\r
-                       // Force designmode\r
-                       try {\r
-                               doc.designMode = "On";\r
-                       } catch (e) {\r
-                               // Ignore\r
-                       }\r
-               }\r
-       },\r
-\r
-       onMouseMove : function() {\r
-               var inst, lh;\r
-\r
-               // Fix for IE7 bug where it's not restoring hover on anchors correctly\r
-               if (tinyMCE.lastHover) {\r
-                       lh = tinyMCE.lastHover;\r
-\r
-                       // Call out on menus and refresh class on normal buttons\r
-                       if (lh.className.indexOf('mceMenu') != -1)\r
-                               tinyMCE._menuButtonEvent('out', lh);\r
-                       else\r
-                               lh.className = lh.className;\r
-\r
-                       tinyMCE.lastHover = null;\r
-               }\r
-\r
-               if (!tinyMCE.hasMouseMoved) {\r
-                       inst = tinyMCE.selectedInstance;\r
-\r
-                       // Workaround for bug #1437457 (Odd MSIE bug)\r
-                       if (inst.isFocused) {\r
-                               inst.undoBookmark = inst.selection.getBookmark();\r
-                               tinyMCE.hasMouseMoved = true;\r
-                       }\r
-               }\r
-\r
-       //      tinyMCE.cancelEvent(inst.getWin().event);\r
-       //      return false;\r
-       },\r
-\r
-       cancelEvent : function(e) {\r
-               if (!e)\r
-                       return false;\r
-\r
-               if (tinyMCE.isIE) {\r
-                       e.returnValue = false;\r
-                       e.cancelBubble = true;\r
-               } else {\r
-                       e.preventDefault();\r
-                       e.stopPropagation && e.stopPropagation();\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       addEvent : function(o, n, h) {\r
-               // Add cleanup for all non unload events\r
-               if (n != 'unload') {\r
-                       function clean() {\r
-                               var ex;\r
-\r
-                               try {\r
-                                       tinyMCE.removeEvent(o, n, h);\r
-                                       tinyMCE.removeEvent(window, 'unload', clean);\r
-                                       o = n = h = null;\r
-                               } catch (ex) {\r
-                                       // IE may produce access denied exception on unload\r
-                               }\r
-                       }\r
-\r
-                       // Add memory cleaner\r
-                       tinyMCE.addEvent(window, 'unload', clean);\r
-               }\r
-\r
-               if (o.attachEvent)\r
-                       o.attachEvent("on" + n, h);\r
-               else\r
-                       o.addEventListener(n, h, false);\r
-       },\r
-\r
-       removeEvent : function(o, n, h) {\r
-               if (o.detachEvent)\r
-                       o.detachEvent("on" + n, h);\r
-               else\r
-                       o.removeEventListener(n, h, false);\r
-       },\r
-\r
-       addSelectAccessibility : function(e, s, w) {\r
-               // Add event handlers \r
-               if (!s._isAccessible) {\r
-                       s.onkeydown = tinyMCE.accessibleEventHandler;\r
-                       s.onblur = tinyMCE.accessibleEventHandler;\r
-                       s._isAccessible = true;\r
-                       s._win = w;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       accessibleEventHandler : function(e) {\r
-               var elm, win = this._win;\r
-\r
-               e = tinyMCE.isIE ? win.event : e;\r
-               elm = tinyMCE.isIE ? e.srcElement : e.target;\r
-\r
-               // Unpiggyback onchange on blur\r
-               if (e.type == "blur") {\r
-                       if (elm.oldonchange) {\r
-                               elm.onchange = elm.oldonchange;\r
-                               elm.oldonchange = null;\r
-                       }\r
-\r
-                       return true;\r
-               }\r
-\r
-               // Piggyback onchange\r
-               if (elm.nodeName == "SELECT" && !elm.oldonchange) {\r
-                       elm.oldonchange = elm.onchange;\r
-                       elm.onchange = null;\r
-               }\r
-\r
-               // Execute onchange and remove piggyback\r
-               if (e.keyCode == 13 || e.keyCode == 32) {\r
-                       elm.onchange = elm.oldonchange;\r
-                       elm.onchange();\r
-                       elm.oldonchange = null;\r
-\r
-                       tinyMCE.cancelEvent(e);\r
-                       return false;\r
-               }\r
-\r
-               return true;\r
-       },\r
-\r
-       _resetIframeHeight : function() {\r
-               var ife;\r
-\r
-               if (tinyMCE.isRealIE) {\r
-                       ife = tinyMCE.selectedInstance.iframeElement;\r
-\r
-       /*              if (ife._oldWidth) {\r
-                               ife.style.width = ife._oldWidth;\r
-                               ife.width = ife._oldWidth;\r
-                       }*/\r
-\r
-                       if (ife._oldHeight) {\r
-                               ife.style.height = ife._oldHeight;\r
-                               ife.height = ife._oldHeight;\r
-                       }\r
-               }\r
-       }\r
-\r
-       });\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_Selection.class.js */\r
-\r
-function TinyMCE_Selection(inst) {\r
-       this.instance = inst;\r
-};\r
-\r
-TinyMCE_Selection.prototype = {\r
-       getSelectedHTML : function() {\r
-               var inst = this.instance, e, r = this.getRng(), h;\r
-\r
-               if (!r)\r
-                       return null;\r
-\r
-               e = document.createElement("body");\r
-\r
-               if (r.cloneContents)\r
-                       e.appendChild(r.cloneContents());\r
-               else if (typeof(r.item) != 'undefined' || typeof(r.htmlText) != 'undefined')\r
-                       e.innerHTML = r.item ? r.item(0).outerHTML : r.htmlText;\r
-               else\r
-                       e.innerHTML = r.toString(); // Failed, use text for now\r
-\r
-               h = tinyMCE._cleanupHTML(inst, inst.contentDocument, inst.settings, e, e, false, true, false);\r
-\r
-               // When editing always use fonts internaly\r
-               //if (tinyMCE.getParam("convert_fonts_to_spans"))\r
-               //      tinyMCE.convertSpansToFonts(inst.getDoc());\r
-\r
-               return h;\r
-       },\r
-\r
-       getSelectedText : function() {\r
-               var inst = this.instance, d, r, s, t;\r
-\r
-               if (tinyMCE.isIE) {\r
-                       d = inst.getDoc();\r
-\r
-                       if (d.selection.type == "Text") {\r
-                               r = d.selection.createRange();\r
-                               t = r.text;\r
-                       } else\r
-                               t = '';\r
-               } else {\r
-                       s = this.getSel();\r
-\r
-                       if (s && s.toString)\r
-                               t = s.toString();\r
-                       else\r
-                               t = '';\r
-               }\r
-\r
-               return t;\r
-       },\r
-\r
-       getBookmark : function(simple) {\r
-               var inst = this.instance, rng = this.getRng(), doc = inst.getDoc(), b = inst.getBody();\r
-               var trng, sx, sy, xx = -999999999, vp = inst.getViewPort();\r
-               var sp, le, s, e, nl, i, si, ei, w;\r
-\r
-               sx = vp.left;\r
-               sy = vp.top;\r
-\r
-               if (simple)\r
-                       return {rng : rng, scrollX : sx, scrollY : sy};\r
-\r
-               if (tinyMCE.isRealIE) {\r
-                       if (rng.item) {\r
-                               e = rng.item(0);\r
-\r
-                               nl = b.getElementsByTagName(e.nodeName);\r
-                               for (i=0; i<nl.length; i++) {\r
-                                       if (e == nl[i]) {\r
-                                               sp = i;\r
-                                               break;\r
-                                       }\r
-                               }\r
-\r
-                               return {\r
-                                       tag : e.nodeName,\r
-                                       index : sp,\r
-                                       scrollX : sx,\r
-                                       scrollY : sy\r
-                               };\r
-                       } else {\r
-                               trng = doc.body.createTextRange();\r
-                               trng.moveToElementText(inst.getBody());\r
-                               trng.collapse(true);\r
-                               bp = Math.abs(trng.move('character', xx));\r
-\r
-                               trng = rng.duplicate();\r
-                               trng.collapse(true);\r
-                               sp = Math.abs(trng.move('character', xx));\r
-\r
-                               trng = rng.duplicate();\r
-                               trng.collapse(false);\r
-                               le = Math.abs(trng.move('character', xx)) - sp;\r
-\r
-                               return {\r
-                                       start : sp - bp,\r
-                                       length : le,\r
-                                       scrollX : sx,\r
-                                       scrollY : sy\r
-                               };\r
-                       }\r
-               } else {\r
-                       s = this.getSel();\r
-                       e = this.getFocusElement();\r
-\r
-                       if (!s)\r
-                               return null;\r
-\r
-                       if (e && e.nodeName == 'IMG') {\r
-                               /*nl = b.getElementsByTagName('IMG');\r
-                               for (i=0; i<nl.length; i++) {\r
-                                       if (e == nl[i]) {\r
-                                               sp = i;\r
-                                               break;\r
-                                       }\r
-                               }*/\r
-\r
-                               return {\r
-                                       start : -1,\r
-                                       end : -1,\r
-                                       index : sp,\r
-                                       scrollX : sx,\r
-                                       scrollY : sy\r
-                               };\r
-                       }\r
-\r
-                       // Caret or selection\r
-                       if (s.anchorNode == s.focusNode && s.anchorOffset == s.focusOffset) {\r
-                               e = this._getPosText(b, s.anchorNode, s.focusNode);\r
-\r
-                               if (!e)\r
-                                       return {scrollX : sx, scrollY : sy};\r
-\r
-                               return {\r
-                                       start : e.start + s.anchorOffset,\r
-                                       end : e.end + s.focusOffset,\r
-                                       scrollX : sx,\r
-                                       scrollY : sy\r
-                               };\r
-                       } else {\r
-                               e = this._getPosText(b, rng.startContainer, rng.endContainer);\r
-\r
-                               if (!e)\r
-                                       return {scrollX : sx, scrollY : sy};\r
-\r
-                               return {\r
-                                       start : e.start + rng.startOffset,\r
-                                       end : e.end + rng.endOffset,\r
-                                       scrollX : sx,\r
-                                       scrollY : sy\r
-                               };\r
-                       }\r
-               }\r
-\r
-               return null;\r
-       },\r
-\r
-       moveToBookmark : function(bookmark) {\r
-               var inst = this.instance, rng, nl, i, ex, b = inst.getBody(), sd;\r
-               var doc = inst.getDoc(), win = inst.getWin(), sel = this.getSel();\r
-\r
-               if (!bookmark)\r
-                       return false;\r
-\r
-               if (tinyMCE.isSafari && bookmark.rng) {\r
-                       sel.setBaseAndExtent(bookmark.rng.startContainer, bookmark.rng.startOffset, bookmark.rng.endContainer, bookmark.rng.endOffset);\r
-                       return true;\r
-               }\r
-\r
-               if (tinyMCE.isRealIE) {\r
-                       if (bookmark.rng) {\r
-                               try {\r
-                                       bookmark.rng.select();\r
-                               } catch (ex) {\r
-                                       // Ignore\r
-                               }\r
-\r
-                               return true;\r
-                       }\r
-\r
-                       win.focus();\r
-\r
-                       if (bookmark.tag) {\r
-                               rng = b.createControlRange();\r
-\r
-                               nl = b.getElementsByTagName(bookmark.tag);\r
-\r
-                               if (nl.length > bookmark.index) {\r
-                                       try {\r
-                                               rng.addElement(nl[bookmark.index]);\r
-                                       } catch (ex) {\r
-                                               // Might be thrown if the node no longer exists\r
-                                       }\r
-                               }\r
-                       } else {\r
-                               // Try/catch needed since this operation breaks when TinyMCE is placed in hidden divs/tabs\r
-                               try {\r
-                                       // Incorrect bookmark\r
-                                       if (bookmark.start < 0)\r
-                                               return true;\r
-\r
-                                       rng = inst.getSel().createRange();\r
-                                       rng.moveToElementText(inst.getBody());\r
-                                       rng.collapse(true);\r
-                                       rng.moveStart('character', bookmark.start);\r
-                                       rng.moveEnd('character', bookmark.length);\r
-                               } catch (ex) {\r
-                                       return true;\r
-                               }\r
-                       }\r
-\r
-                       rng.select();\r
-\r
-                       win.scrollTo(bookmark.scrollX, bookmark.scrollY);\r
-                       return true;\r
-               }\r
-\r
-               if (tinyMCE.isGecko || tinyMCE.isOpera) {\r
-                       if (!sel)\r
-                               return false;\r
-\r
-                       if (bookmark.rng) {\r
-                               sel.removeAllRanges();\r
-                               sel.addRange(bookmark.rng);\r
-                       }\r
-\r
-                       if (bookmark.start != -1 && bookmark.end != -1) {\r
-                               try {\r
-                                       sd = this._getTextPos(b, bookmark.start, bookmark.end);\r
-                                       rng = doc.createRange();\r
-                                       rng.setStart(sd.startNode, sd.startOffset);\r
-                                       rng.setEnd(sd.endNode, sd.endOffset);\r
-                                       sel.removeAllRanges();\r
-                                       sel.addRange(rng);\r
-\r
-                                       if (!tinyMCE.isOpera)\r
-                                               win.focus();\r
-                               } catch (ex) {\r
-                                       // Ignore\r
-                               }\r
-                       }\r
-\r
-                       /*\r
-                       if (typeof(bookmark.index) != 'undefined') {\r
-                               tinyMCE.selectElements(b, 'IMG', function (n) {\r
-                                       if (bookmark.index-- == 0) {\r
-                                               // Select image in Gecko here\r
-                                       }\r
-\r
-                                       return false;\r
-                               });\r
-                       }\r
-                       */\r
-\r
-                       win.scrollTo(bookmark.scrollX, bookmark.scrollY);\r
-                       return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       _getPosText : function(r, sn, en) {\r
-               var w = document.createTreeWalker(r, NodeFilter.SHOW_TEXT, null, false), n, p = 0, d = {};\r
-\r
-               while ((n = w.nextNode()) != null) {\r
-                       if (n == sn)\r
-                               d.start = p;\r
-\r
-                       if (n == en) {\r
-                               d.end = p;\r
-                               return d;\r
-                       }\r
-\r
-                       p += n.nodeValue ? n.nodeValue.length : 0;\r
-               }\r
-\r
-               return null;\r
-       },\r
-\r
-       _getTextPos : function(r, sp, ep) {\r
-               var w = document.createTreeWalker(r, NodeFilter.SHOW_TEXT, null, false), n, p = 0, d = {};\r
-\r
-               while ((n = w.nextNode()) != null) {\r
-                       p += n.nodeValue ? n.nodeValue.length : 0;\r
-\r
-                       if (p >= sp && !d.startNode) {\r
-                               d.startNode = n;\r
-                               d.startOffset = sp - (p - n.nodeValue.length);\r
-                       }\r
-\r
-                       if (p >= ep) {\r
-                               d.endNode = n;\r
-                               d.endOffset = ep - (p - n.nodeValue.length);\r
-\r
-                               return d;\r
-                       }\r
-               }\r
-\r
-               return null;\r
-       },\r
-\r
-       selectNode : function(node, collapse, select_text_node, to_start) {\r
-               var inst = this.instance, sel, rng, nodes;\r
-\r
-               if (!node)\r
-                       return;\r
-\r
-               if (typeof(collapse) == "undefined")\r
-                       collapse = true;\r
-\r
-               if (typeof(select_text_node) == "undefined")\r
-                       select_text_node = false;\r
-\r
-               if (typeof(to_start) == "undefined")\r
-                       to_start = true;\r
-\r
-               if (inst.settings.auto_resize)\r
-                       inst.resizeToContent();\r
-\r
-               if (tinyMCE.isRealIE) {\r
-                       rng = inst.getDoc().body.createTextRange();\r
-\r
-                       try {\r
-                               rng.moveToElementText(node);\r
-\r
-                               if (collapse)\r
-                                       rng.collapse(to_start);\r
-\r
-                               rng.select();\r
-                       } catch (e) {\r
-                               // Throws illigal agrument in MSIE some times\r
-                       }\r
-               } else {\r
-                       sel = this.getSel();\r
-\r
-                       if (!sel)\r
-                               return;\r
-\r
-                       if (tinyMCE.isSafari) {\r
-                               sel.setBaseAndExtent(node, 0, node, node.innerText.length);\r
-\r
-                               if (collapse) {\r
-                                       if (to_start)\r
-                                               sel.collapseToStart();\r
-                                       else\r
-                                               sel.collapseToEnd();\r
-                               }\r
-\r
-                               this.scrollToNode(node);\r
-\r
-                               return;\r
-                       }\r
-\r
-                       rng = inst.getDoc().createRange();\r
-\r
-                       if (select_text_node) {\r
-                               // Find first textnode in tree\r
-                               nodes = tinyMCE.getNodeTree(node, [], 3);\r
-                               if (nodes.length > 0)\r
-                                       rng.selectNodeContents(nodes[0]);\r
-                               else\r
-                                       rng.selectNodeContents(node);\r
-                       } else\r
-                               rng.selectNode(node);\r
-\r
-                       if (collapse) {\r
-                               // Special treatment of textnode collapse\r
-                               if (!to_start && node.nodeType == 3) {\r
-                                       rng.setStart(node, node.nodeValue.length);\r
-                                       rng.setEnd(node, node.nodeValue.length);\r
-                               } else\r
-                                       rng.collapse(to_start);\r
-                       }\r
-\r
-                       sel.removeAllRanges();\r
-                       sel.addRange(rng);\r
-               }\r
-\r
-               this.scrollToNode(node);\r
-\r
-               // Set selected element\r
-               tinyMCE.selectedElement = null;\r
-               if (node.nodeType == 1)\r
-                       tinyMCE.selectedElement = node;\r
-       },\r
-\r
-       scrollToNode : function(node) {\r
-               var inst = this.instance, w = inst.getWin(), vp = inst.getViewPort(), pos = tinyMCE.getAbsPosition(node), cvp, p, cwin;\r
-\r
-               // Only scroll if out of visible area\r
-               if (pos.absLeft < vp.left || pos.absLeft > vp.left + vp.width || pos.absTop < vp.top || pos.absTop > vp.top + (vp.height-25))\r
-                       w.scrollTo(pos.absLeft, pos.absTop - vp.height + 25);\r
-\r
-               // Scroll container window\r
-               if (inst.settings.auto_resize) {\r
-                       cwin = inst.getContainerWin();\r
-                       cvp = tinyMCE.getViewPort(cwin);\r
-                       p = this.getAbsPosition(node);\r
-\r
-                       if (p.absLeft < cvp.left || p.absLeft > cvp.left + cvp.width || p.absTop < cvp.top || p.absTop > cvp.top + cvp.height)\r
-                               cwin.scrollTo(p.absLeft, p.absTop - cvp.height + 25);\r
-               }\r
-       },\r
-\r
-       getAbsPosition : function(n) {\r
-               var pos = tinyMCE.getAbsPosition(n), ipos = tinyMCE.getAbsPosition(this.instance.iframeElement);\r
-\r
-               return {\r
-                       absLeft : ipos.absLeft + pos.absLeft,\r
-                       absTop : ipos.absTop + pos.absTop\r
-               };\r
-       },\r
-\r
-       getSel : function() {\r
-               var inst = this.instance;\r
-\r
-               if (tinyMCE.isRealIE)\r
-                       return inst.getDoc().selection;\r
-\r
-               return inst.contentWindow.getSelection();\r
-       },\r
-\r
-       getRng : function() {\r
-               var s = this.getSel();\r
-\r
-               if (s == null)\r
-                       return null;\r
-\r
-               if (tinyMCE.isRealIE)\r
-                       return s.createRange();\r
-\r
-               if (tinyMCE.isSafari && !s.getRangeAt)\r
-                       return '' + window.getSelection();\r
-\r
-               if (s.rangeCount > 0)\r
-                       return s.getRangeAt(0);\r
-\r
-               return null;\r
-       },\r
-\r
-       isCollapsed : function() {\r
-               var r = this.getRng();\r
-\r
-               if (r.item)\r
-                       return false;\r
-\r
-               return r.boundingWidth == 0 || this.getSel().isCollapsed;\r
-       },\r
-\r
-       collapse : function(b) {\r
-               var r = this.getRng(), s = this.getSel();\r
-\r
-               if (r.select) {\r
-                       r.collapse(b);\r
-                       r.select();\r
-               } else {\r
-                       if (b)\r
-                               s.collapseToStart();\r
-                       else\r
-                               s.collapseToEnd();\r
-               }\r
-       },\r
-\r
-       getFocusElement : function() {\r
-               var inst = this.instance, doc, rng, sel, elm;\r
-\r
-               if (tinyMCE.isRealIE) {\r
-                       doc = inst.getDoc();\r
-                       rng = doc.selection.createRange();\r
-\r
-       //              if (rng.collapse)\r
-       //                      rng.collapse(true);\r
-\r
-                       elm = rng.item ? rng.item(0) : rng.parentElement();\r
-               } else {\r
-                       if (!tinyMCE.isSafari && inst.isHidden())\r
-                               return inst.getBody();\r
-\r
-                       sel = this.getSel();\r
-                       rng = this.getRng();\r
-\r
-                       if (!sel || !rng)\r
-                               return null;\r
-\r
-                       elm = rng.commonAncestorContainer;\r
-                       //elm = (sel && sel.anchorNode) ? sel.anchorNode : null;\r
-\r
-                       // Handle selection a image or other control like element such as anchors\r
-                       if (!rng.collapsed) {\r
-                               // Is selection small\r
-                               if (rng.startContainer == rng.endContainer) {\r
-                                       if (rng.startOffset - rng.endOffset < 2) {\r
-                                               if (rng.startContainer.hasChildNodes())\r
-                                                       elm = rng.startContainer.childNodes[rng.startOffset];\r
-                                       }\r
-                               }\r
-                       }\r
-\r
-                       // Get the element parent of the node\r
-                       elm = tinyMCE.getParentElement(elm);\r
-\r
-                       //if (tinyMCE.selectedElement != null && tinyMCE.selectedElement.nodeName.toLowerCase() == "img")\r
-                       //      elm = tinyMCE.selectedElement;\r
-               }\r
-\r
-               return elm;\r
-       }\r
-\r
-       };\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_UndoRedo.class.js */\r
-\r
-function TinyMCE_UndoRedo(inst) {\r
-       this.instance = inst;\r
-       this.undoLevels = [];\r
-       this.undoIndex = 0;\r
-       this.typingUndoIndex = -1;\r
-       this.undoRedo = true;\r
-};\r
-\r
-TinyMCE_UndoRedo.prototype = {\r
-       add : function(l) {\r
-               var b, customUndoLevels, newHTML, inst = this.instance, i, ul, ur;\r
-\r
-               if (l) {\r
-                       this.undoLevels[this.undoLevels.length] = l;\r
-                       return true;\r
-               }\r
-\r
-               if (this.typingUndoIndex != -1) {\r
-                       this.undoIndex = this.typingUndoIndex;\r
-\r
-                       if (tinyMCE.typingUndoIndex != -1)\r
-                               tinyMCE.undoIndex = tinyMCE.typingUndoIndex;\r
-               }\r
-\r
-               newHTML = tinyMCE.trim(inst.getBody().innerHTML);\r
-               if (this.undoLevels[this.undoIndex] && newHTML != this.undoLevels[this.undoIndex].content) {\r
-                       //tinyMCE.debug(newHTML, this.undoLevels[this.undoIndex].content);\r
-\r
-                       // Is dirty again\r
-                       inst.isNotDirty = false;\r
-\r
-                       tinyMCE.dispatchCallback(inst, 'onchange_callback', 'onChange', inst);\r
-\r
-                       // Time to compress\r
-                       customUndoLevels = tinyMCE.settings.custom_undo_redo_levels;\r
-                       if (customUndoLevels != -1 && this.undoLevels.length > customUndoLevels) {\r
-                               for (i=0; i<this.undoLevels.length-1; i++)\r
-                                       this.undoLevels[i] = this.undoLevels[i+1];\r
-\r
-                               this.undoLevels.length--;\r
-                               this.undoIndex--;\r
-\r
-                               // Todo: Implement global undo/redo logic here\r
-                       }\r
-\r
-                       b = inst.undoBookmark;\r
-\r
-                       if (!b)\r
-                               b = inst.selection.getBookmark();\r
-\r
-                       this.undoIndex++;\r
-                       this.undoLevels[this.undoIndex] = {\r
-                               content : newHTML,\r
-                               bookmark : b\r
-                       };\r
-\r
-                       // Remove all above from global undo/redo\r
-                       ul = tinyMCE.undoLevels;\r
-                       for (i=tinyMCE.undoIndex + 1; i<ul.length; i++) {\r
-                               ur = ul[i].undoRedo;\r
-\r
-                               if (ur.undoIndex == ur.undoLevels.length -1)\r
-                                       ur.undoIndex--;\r
-\r
-                               ur.undoLevels.length--;\r
-                       }\r
-\r
-                       // Add global undo level\r
-                       tinyMCE.undoLevels[tinyMCE.undoIndex++] = inst;\r
-                       tinyMCE.undoLevels.length = tinyMCE.undoIndex;\r
-\r
-                       this.undoLevels.length = this.undoIndex + 1;\r
-\r
-                       return true;\r
-               }\r
-\r
-               return false;\r
-       },\r
-\r
-       undo : function() {\r
-               var inst = this.instance;\r
-\r
-               // Do undo\r
-               if (this.undoIndex > 0) {\r
-                       this.undoIndex--;\r
-\r
-                       tinyMCE.setInnerHTML(inst.getBody(), this.undoLevels[this.undoIndex].content);\r
-                       inst.repaint();\r
-\r
-                       if (inst.settings.custom_undo_redo_restore_selection)\r
-                               inst.selection.moveToBookmark(this.undoLevels[this.undoIndex].bookmark);\r
-               }\r
-       },\r
-\r
-       redo : function() {\r
-               var inst = this.instance;\r
-\r
-               tinyMCE.execCommand("mceEndTyping");\r
-\r
-               if (this.undoIndex < (this.undoLevels.length-1)) {\r
-                       this.undoIndex++;\r
-\r
-                       tinyMCE.setInnerHTML(inst.getBody(), this.undoLevels[this.undoIndex].content);\r
-                       inst.repaint();\r
-\r
-                       if (inst.settings.custom_undo_redo_restore_selection)\r
-                               inst.selection.moveToBookmark(this.undoLevels[this.undoIndex].bookmark);\r
-               }\r
-\r
-               tinyMCE.triggerNodeChange();\r
-       }\r
-\r
-       };\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_ForceParagraphs.class.js */\r
-\r
-var TinyMCE_ForceParagraphs = {\r
-       _insertPara : function(inst, e) {\r
-               var doc = inst.getDoc(), sel = inst.getSel(), body = inst.getBody(), win = inst.contentWindow, rng = sel.getRangeAt(0);\r
-               var rootElm = doc.documentElement, blockName = "P", startNode, endNode, startBlock, endBlock;\r
-               var rngBefore, rngAfter, direct, startNode, startOffset, endNode, endOffset, b = tinyMCE.isOpera ? inst.selection.getBookmark() : null;\r
-               var paraBefore, paraAfter, startChop, endChop, contents, i;\r
-\r
-               function isEmpty(para) {\r
-                       var nodes;\r
-\r
-                       function isEmptyHTML(html) {\r
-                               return html.replace(new RegExp('[ \t\r\n]+', 'g'), '').toLowerCase() == '';\r
-                       }\r
-\r
-                       // Check for images\r
-                       if (para.getElementsByTagName("img").length > 0)\r
-                               return false;\r
-\r
-                       // Check for tables\r
-                       if (para.getElementsByTagName("table").length > 0)\r
-                               return false;\r
-\r
-                       // Check for HRs\r
-                       if (para.getElementsByTagName("hr").length > 0)\r
-                               return false;\r
-\r
-                       // Check all textnodes\r
-                       nodes = tinyMCE.getNodeTree(para, [], 3);\r
-                       for (i=0; i<nodes.length; i++) {\r
-                               if (!isEmptyHTML(nodes[i].nodeValue))\r
-                                       return false;\r
-                       }\r
-\r
-                       // No images, no tables, no hrs, no text content then it's empty\r
-                       return true;\r
-               }\r
-\r
-       //      tinyMCE.debug(body.innerHTML);\r
-\r
-       //      debug(e.target, sel.anchorNode.nodeName, sel.focusNode.nodeName, rng.startContainer, rng.endContainer, rng.commonAncestorContainer, sel.anchorOffset, sel.focusOffset, rng.toString());\r
-\r
-               // Setup before range\r
-               rngBefore = doc.createRange();\r
-               rngBefore.setStart(sel.anchorNode, sel.anchorOffset);\r
-               rngBefore.collapse(true);\r
-\r
-               // Setup after range\r
-               rngAfter = doc.createRange();\r
-               rngAfter.setStart(sel.focusNode, sel.focusOffset);\r
-               rngAfter.collapse(true);\r
-\r
-               // Setup start/end points\r
-               direct = rngBefore.compareBoundaryPoints(rngBefore.START_TO_END, rngAfter) < 0;\r
-               startNode = direct ? sel.anchorNode : sel.focusNode;\r
-               startOffset = direct ? sel.anchorOffset : sel.focusOffset;\r
-               endNode = direct ? sel.focusNode : sel.anchorNode;\r
-               endOffset = direct ? sel.focusOffset : sel.anchorOffset;\r
-\r
-               startNode = startNode.nodeName == "HTML" ? doc.body : startNode; // Fix for Opera bug: https://bugs.opera.com/show_bug.cgi?id=273224&comments=yes\r
-               startNode = startNode.nodeName == "BODY" ? startNode.firstChild : startNode;\r
-               endNode = endNode.nodeName == "BODY" ? endNode.firstChild : endNode;\r
-\r
-               // Get block elements\r
-               startBlock = inst.getParentBlockElement(startNode);\r
-               endBlock = inst.getParentBlockElement(endNode);\r
-\r
-               // If absolute force paragraph generation within\r
-               if (startBlock && (startBlock.nodeName == 'CAPTION' || /absolute|relative|static/gi.test(startBlock.style.position)))\r
-                       startBlock = null;\r
-\r
-               if (endBlock && (endBlock.nodeName == 'CAPTION' || /absolute|relative|static/gi.test(endBlock.style.position)))\r
-                       endBlock = null;\r
-\r
-               // Use current block name\r
-               if (startBlock != null) {\r
-                       blockName = startBlock.nodeName;\r
-\r
-                       // Use P instead\r
-                       if (/(TD|TABLE|TH|CAPTION)/.test(blockName) || (blockName == "DIV" && /left|right/gi.test(startBlock.style.cssFloat)))\r
-                               blockName = "P";\r
-               }\r
-\r
-               // Within a list use normal behaviour\r
-               if (tinyMCE.getParentElement(startBlock, "OL,UL", null, body) != null)\r
-                       return false;\r
-\r
-               // Within a table create new paragraphs\r
-               if ((startBlock != null && startBlock.nodeName == "TABLE") || (endBlock != null && endBlock.nodeName == "TABLE"))\r
-                       startBlock = endBlock = null;\r
-\r
-               // Setup new paragraphs\r
-               paraBefore = (startBlock != null && startBlock.nodeName == blockName) ? startBlock.cloneNode(false) : doc.createElement(blockName);\r
-               paraAfter = (endBlock != null && endBlock.nodeName == blockName) ? endBlock.cloneNode(false) : doc.createElement(blockName);\r
-\r
-               // Is header, then force paragraph under\r
-               if (/^(H[1-6])$/.test(blockName))\r
-                       paraAfter = doc.createElement("p");\r
-\r
-               // Setup chop nodes\r
-               startChop = startNode;\r
-               endChop = endNode;\r
-\r
-               // Get startChop node\r
-               node = startChop;\r
-               do {\r
-                       if (node == body || node.nodeType == 9 || tinyMCE.isBlockElement(node))\r
-                               break;\r
-\r
-                       startChop = node;\r
-               } while ((node = node.previousSibling ? node.previousSibling : node.parentNode));\r
-\r
-               // Get endChop node\r
-               node = endChop;\r
-               do {\r
-                       if (node == body || node.nodeType == 9 || tinyMCE.isBlockElement(node))\r
-                               break;\r
-\r
-                       endChop = node;\r
-               } while ((node = node.nextSibling ? node.nextSibling : node.parentNode));\r
-\r
-               // Fix when only a image is within the TD\r
-               if (startChop.nodeName == "TD")\r
-                       startChop = startChop.firstChild;\r
-\r
-               if (endChop.nodeName == "TD")\r
-                       endChop = endChop.lastChild;\r
-\r
-               // If not in a block element\r
-               if (startBlock == null) {\r
-                       // Delete selection\r
-                       rng.deleteContents();\r
-\r
-                       if (!tinyMCE.isSafari)\r
-                               sel.removeAllRanges();\r
-\r
-                       if (startChop != rootElm && endChop != rootElm) {\r
-                               // Insert paragraph before\r
-                               rngBefore = rng.cloneRange();\r
-\r
-                               if (startChop == body)\r
-                                       rngBefore.setStart(startChop, 0);\r
-                               else\r
-                                       rngBefore.setStartBefore(startChop);\r
-\r
-                               paraBefore.appendChild(rngBefore.cloneContents());\r
-\r
-                               // Insert paragraph after\r
-                               if (endChop.parentNode.nodeName == blockName)\r
-                                       endChop = endChop.parentNode;\r
-\r
-                               // If not after image\r
-                               //if (rng.startContainer.nodeName != "BODY" && rng.endContainer.nodeName != "BODY")\r
-                                       rng.setEndAfter(endChop);\r
-\r
-                               if (endChop.nodeName != "#text" && endChop.nodeName != "BODY")\r
-                                       rngBefore.setEndAfter(endChop);\r
-\r
-                               contents = rng.cloneContents();\r
-                               if (contents.firstChild && (contents.firstChild.nodeName == blockName || contents.firstChild.nodeName == "BODY"))\r
-                                       paraAfter.innerHTML = contents.firstChild.innerHTML;\r
-                               else\r
-                                       paraAfter.appendChild(contents);\r
-\r
-                               // Check if it's a empty paragraph\r
-                               if (isEmpty(paraBefore))\r
-                                       paraBefore.innerHTML = "&nbsp;";\r
-\r
-                               // Check if it's a empty paragraph\r
-                               if (isEmpty(paraAfter))\r
-                                       paraAfter.innerHTML = "&nbsp;";\r
-\r
-                               // Delete old contents\r
-                               rng.deleteContents();\r
-                               rngAfter.deleteContents();\r
-                               rngBefore.deleteContents();\r
-\r
-                               // Insert new paragraphs\r
-                               if (tinyMCE.isOpera) {\r
-                                       paraBefore.normalize();\r
-                                       rngBefore.insertNode(paraBefore);\r
-                                       paraAfter.normalize();\r
-                                       rngBefore.insertNode(paraAfter);\r
-                               } else {\r
-                                       paraAfter.normalize();\r
-                                       rngBefore.insertNode(paraAfter);\r
-                                       paraBefore.normalize();\r
-                                       rngBefore.insertNode(paraBefore);\r
-                               }\r
-\r
-                               //tinyMCE.debug("1: ", paraBefore.innerHTML, paraAfter.innerHTML);\r
-                       } else {\r
-                               body.innerHTML = "<" + blockName + ">&nbsp;</" + blockName + "><" + blockName + ">&nbsp;</" + blockName + ">";\r
-                               paraAfter = body.childNodes[1];\r
-                       }\r
-\r
-                       inst.selection.moveToBookmark(b);\r
-                       inst.selection.selectNode(paraAfter, true, true);\r
-\r
-                       return true;\r
-               }\r
-\r
-               // Place first part within new paragraph\r
-               if (startChop.nodeName == blockName)\r
-                       rngBefore.setStart(startChop, 0);\r
-               else\r
-                       rngBefore.setStartBefore(startChop);\r
-\r
-               rngBefore.setEnd(startNode, startOffset);\r
-               paraBefore.appendChild(rngBefore.cloneContents());\r
-\r
-               // Place secound part within new paragraph\r
-               rngAfter.setEndAfter(endChop);\r
-               rngAfter.setStart(endNode, endOffset);\r
-               contents = rngAfter.cloneContents();\r
-\r
-               if (contents.firstChild && contents.firstChild.nodeName == blockName) {\r
-       /*              var nodes = contents.firstChild.childNodes;\r
-                       for (i=0; i<nodes.length; i++) {\r
-                               //tinyMCE.debug(nodes[i].nodeName);\r
-                               if (nodes[i].nodeName != "BODY")\r
-                                       paraAfter.appendChild(nodes[i]);\r
-                       }\r
-       */\r
-                       paraAfter.innerHTML = contents.firstChild.innerHTML;\r
-               } else\r
-                       paraAfter.appendChild(contents);\r
-\r
-               // Check if it's a empty paragraph\r
-               if (isEmpty(paraBefore))\r
-                       paraBefore.innerHTML = "&nbsp;";\r
-\r
-               // Check if it's a empty paragraph\r
-               if (isEmpty(paraAfter))\r
-                       paraAfter.innerHTML = "&nbsp;";\r
-\r
-               // Create a range around everything\r
-               rng = doc.createRange();\r
-\r
-               if (!startChop.previousSibling && startChop.parentNode.nodeName.toUpperCase() == blockName) {\r
-                       rng.setStartBefore(startChop.parentNode);\r
-               } else {\r
-                       if (rngBefore.startContainer.nodeName.toUpperCase() == blockName && rngBefore.startOffset == 0)\r
-                               rng.setStartBefore(rngBefore.startContainer);\r
-                       else\r
-                               rng.setStart(rngBefore.startContainer, rngBefore.startOffset);\r
-               }\r
-\r
-               if (!endChop.nextSibling && endChop.parentNode.nodeName.toUpperCase() == blockName)\r
-                       rng.setEndAfter(endChop.parentNode);\r
-               else\r
-                       rng.setEnd(rngAfter.endContainer, rngAfter.endOffset);\r
-\r
-               // Delete all contents and insert new paragraphs\r
-               rng.deleteContents();\r
-\r
-               if (tinyMCE.isOpera) {\r
-                       rng.insertNode(paraBefore);\r
-                       rng.insertNode(paraAfter);\r
-               } else {\r
-                       rng.insertNode(paraAfter);\r
-                       rng.insertNode(paraBefore);\r
-               }\r
-\r
-               //tinyMCE.debug("2", paraBefore.innerHTML, paraAfter.innerHTML);\r
-\r
-               // Normalize\r
-               paraAfter.normalize();\r
-               paraBefore.normalize();\r
-\r
-               inst.selection.moveToBookmark(b);\r
-               inst.selection.selectNode(paraAfter, true, true);\r
-\r
-               return true;\r
-       },\r
-\r
-       _handleBackSpace : function(inst) {\r
-               var r = inst.getRng(), sn = r.startContainer, nv, s = false;\r
-\r
-               // Added body check for bug #1527787\r
-               if (sn && sn.nextSibling && sn.nextSibling.nodeName == "BR" && sn.parentNode.nodeName != "BODY") {\r
-                       nv = sn.nodeValue;\r
-\r
-                       // Handle if a backspace is pressed after a space character #bug 1466054 removed since fix for #1527787\r
-                       /*if (nv != null && nv.length >= r.startOffset && nv.charAt(r.startOffset - 1) == ' ')\r
-                               s = true;*/\r
-\r
-                       // Only remove BRs if we are at the end of line #bug 1464152\r
-                       if (nv != null && r.startOffset == nv.length)\r
-                               sn.nextSibling.parentNode.removeChild(sn.nextSibling);\r
-               }\r
-\r
-               if (inst.settings.auto_resize)\r
-                       inst.resizeToContent();\r
-\r
-               return s;\r
-       }\r
-\r
-       };\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_Layer.class.js */\r
-\r
-function TinyMCE_Layer(id, bm) {\r
-       this.id = id;\r
-       this.blockerElement = null;\r
-       this.events = false;\r
-       this.element = null;\r
-       this.blockMode = typeof(bm) != 'undefined' ? bm : true;\r
-       this.doc = document;\r
-};\r
-\r
-TinyMCE_Layer.prototype = {\r
-       moveRelativeTo : function(re, p) {\r
-               var rep = this.getAbsPosition(re), e = this.getElement(), x, y;\r
-               var w = parseInt(re.offsetWidth), h = parseInt(re.offsetHeight);\r
-               var ew = parseInt(e.offsetWidth), eh = parseInt(e.offsetHeight);\r
-\r
-               switch (p) {\r
-                       case "tl":\r
-                               x = rep.absLeft;\r
-                               y = rep.absTop;\r
-                               break;\r
-\r
-                       case "tr":\r
-                               x = rep.absLeft + w;\r
-                               y = rep.absTop;\r
-                               break;\r
-\r
-                       case "bl":\r
-                               x = rep.absLeft;\r
-                               y = rep.absTop + h;\r
-                               break;\r
-\r
-                       case "br":\r
-                               x = rep.absLeft + w;\r
-                               y = rep.absTop + h;\r
-                               break;\r
-\r
-                       case "cc":\r
-                               x = rep.absLeft + (w / 2) - (ew / 2);\r
-                               y = rep.absTop + (h / 2) - (eh / 2);\r
-                               break;\r
-               }\r
-\r
-               this.moveTo(x, y);\r
-       },\r
-\r
-       moveBy : function(x, y) {\r
-               var e = this.getElement();\r
-               this.moveTo(parseInt(e.style.left) + x, parseInt(e.style.top) + y);\r
-       },\r
-\r
-       moveTo : function(x, y) {\r
-               var e = this.getElement();\r
-\r
-               e.style.left = x + "px";\r
-               e.style.top = y + "px";\r
-\r
-               this.updateBlocker();\r
-       },\r
-\r
-       resizeBy : function(w, h) {\r
-               var e = this.getElement();\r
-               this.resizeTo(parseInt(e.style.width) + w, parseInt(e.style.height) + h);\r
-       },\r
-\r
-       resizeTo : function(w, h) {\r
-               var e = this.getElement();\r
-\r
-               if (w != null)\r
-                       e.style.width = w + "px";\r
-\r
-               if (h != null)\r
-                       e.style.height = h + "px";\r
-\r
-               this.updateBlocker();\r
-       },\r
-\r
-       show : function() {\r
-               var el = this.getElement();\r
-\r
-               if (el) {\r
-                       el.style.display = 'block';\r
-                       this.updateBlocker();\r
-               }\r
-       },\r
-\r
-       hide : function() {\r
-               var el = this.getElement();\r
-\r
-               if (el) {\r
-                       el.style.display = 'none';\r
-                       this.updateBlocker();\r
-               }\r
-       },\r
-\r
-       isVisible : function() {\r
-               return this.getElement().style.display == 'block';\r
-       },\r
-\r
-       getElement : function() {\r
-               if (!this.element)\r
-                       this.element = this.doc.getElementById(this.id);\r
-\r
-               return this.element;\r
-       },\r
-\r
-       setBlockMode : function(s) {\r
-               this.blockMode = s;\r
-       },\r
-\r
-       updateBlocker : function() {\r
-               var e, b, x, y, w, h;\r
-\r
-               b = this.getBlocker();\r
-               if (b) {\r
-                       if (this.blockMode) {\r
-                               e = this.getElement();\r
-                               x = this.parseInt(e.style.left);\r
-                               y = this.parseInt(e.style.top);\r
-                               w = this.parseInt(e.offsetWidth);\r
-                               h = this.parseInt(e.offsetHeight);\r
-\r
-                               b.style.left = x + 'px';\r
-                               b.style.top = y + 'px';\r
-                               b.style.width = w + 'px';\r
-                               b.style.height = h + 'px';\r
-                               b.style.display = e.style.display;\r
-                       } else\r
-                               b.style.display = 'none';\r
-               }\r
-       },\r
-\r
-       getBlocker : function() {\r
-               var d, b;\r
-\r
-               if (!this.blockerElement && this.blockMode) {\r
-                       d = this.doc;\r
-                       b = d.getElementById(this.id + "_blocker");\r
-\r
-                       if (!b) {\r
-                               b = d.createElement("iframe");\r
-\r
-                               b.setAttribute('id', this.id + "_blocker");\r
-                               b.style.cssText = 'display: none; position: absolute; left: 0; top: 0';\r
-                               b.src = 'javascript:false;';\r
-                               b.frameBorder = '0';\r
-                               b.scrolling = 'no';\r
-       \r
-                               d.body.appendChild(b);\r
-                       }\r
-\r
-                       this.blockerElement = b;\r
-               }\r
-\r
-               return this.blockerElement;\r
-       },\r
-\r
-       getAbsPosition : function(n) {\r
-               var p = {absLeft : 0, absTop : 0};\r
-\r
-               while (n) {\r
-                       p.absLeft += n.offsetLeft;\r
-                       p.absTop += n.offsetTop;\r
-                       n = n.offsetParent;\r
-               }\r
-\r
-               return p;\r
-       },\r
-\r
-       create : function(n, c, p, h) {\r
-               var d = this.doc, e = d.createElement(n);\r
-\r
-               e.setAttribute('id', this.id);\r
-\r
-               if (c)\r
-                       e.className = c;\r
-\r
-               if (!p)\r
-                       p = d.body;\r
-\r
-               if (h)\r
-                       e.innerHTML = h;\r
-\r
-               p.appendChild(e);\r
-\r
-               return this.element = e;\r
-       },\r
-\r
-       exists : function() {\r
-               return this.doc.getElementById(this.id) != null;\r
-       },\r
-\r
-       parseInt : function(s) {\r
-               if (s == null || s == '')\r
-                       return 0;\r
-\r
-               return parseInt(s);\r
-       },\r
-\r
-       remove : function() {\r
-               var e = this.getElement(), b = this.getBlocker();\r
-\r
-               if (e)\r
-                       e.parentNode.removeChild(e);\r
-\r
-               if (b)\r
-                       b.parentNode.removeChild(b);\r
-       }\r
-\r
-       };\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_Menu.class.js */\r
-\r
-function TinyMCE_Menu() {\r
-       var id;\r
-\r
-       if (typeof(tinyMCE.menuCounter) == "undefined")\r
-               tinyMCE.menuCounter = 0;\r
-\r
-       id = "mc_menu_" + tinyMCE.menuCounter++;\r
-\r
-       TinyMCE_Layer.call(this, id, true);\r
-\r
-       this.id = id;\r
-       this.items = [];\r
-       this.needsUpdate = true;\r
-};\r
-\r
-TinyMCE_Menu.prototype = tinyMCE.extend(TinyMCE_Layer.prototype, {\r
-       init : function(s) {\r
-               var n;\r
-\r
-               // Default params\r
-               this.settings = {\r
-                       separator_class : 'mceMenuSeparator',\r
-                       title_class : 'mceMenuTitle',\r
-                       disabled_class : 'mceMenuDisabled',\r
-                       menu_class : 'mceMenu',\r
-                       drop_menu : true\r
-               };\r
-\r
-               for (n in s)\r
-                       this.settings[n] = s[n];\r
-\r
-               this.create('div', this.settings.menu_class);\r
-       },\r
-\r
-       clear : function() {\r
-               this.items = [];\r
-       },\r
-\r
-       addTitle : function(t) {\r
-               this.add({type : 'title', text : t});\r
-       },\r
-\r
-       addDisabled : function(t) {\r
-               this.add({type : 'disabled', text : t});\r
-       },\r
-\r
-       addSeparator : function() {\r
-               this.add({type : 'separator'});\r
-       },\r
-\r
-       addItem : function(t, js) {\r
-               this.add({text : t, js : js});\r
-       },\r
-\r
-       add : function(mi) {\r
-               this.items[this.items.length] = mi;\r
-               this.needsUpdate = true;\r
-       },\r
-\r
-       update : function() {\r
-               var e = this.getElement(), h = '', i, t, m = this.items, s = this.settings;\r
-\r
-               if (this.settings.drop_menu)\r
-                       h += '<span class="mceMenuLine"></span>';\r
-\r
-               h += '<table border="0" cellpadding="0" cellspacing="0">';\r
-\r
-               for (i=0; i<m.length; i++) {\r
-                       t = tinyMCE.xmlEncode(m[i].text);\r
-                       c = m[i].class_name ? ' class="' + m[i].class_name + '"' : '';\r
-\r
-                       switch (m[i].type) {\r
-                               case 'separator':\r
-                                       h += '<tr class="' + s.separator_class + '"><td>';\r
-                                       break;\r
-\r
-                               case 'title':\r
-                                       h += '<tr class="' + s.title_class + '"><td><span' + c +'>' + t + '</span>';\r
-                                       break;\r
-\r
-                               case 'disabled':\r
-                                       h += '<tr class="' + s.disabled_class + '"><td><span' + c +'>' + t + '</span>';\r
-                                       break;\r
-\r
-                               default:\r
-                                       h += '<tr><td><a href="' + tinyMCE.xmlEncode(m[i].js) + '" onmousedown="' + tinyMCE.xmlEncode(m[i].js) + ';return tinyMCE.cancelEvent(event);" onclick="return tinyMCE.cancelEvent(event);" onmouseup="return tinyMCE.cancelEvent(event);"><span' + c +'>' + t + '</span></a>';\r
-                       }\r
-\r
-                       h += '</td></tr>';\r
-               }\r
-\r
-               h += '</table>';\r
-\r
-               e.innerHTML = h;\r
-\r
-               this.needsUpdate = false;\r
-               this.updateBlocker();\r
-       },\r
-\r
-       show : function() {\r
-               var nl, i;\r
-\r
-               if (tinyMCE.lastMenu == this)\r
-                       return;\r
-\r
-               if (this.needsUpdate)\r
-                       this.update();\r
-\r
-               if (tinyMCE.lastMenu && tinyMCE.lastMenu != this)\r
-                       tinyMCE.lastMenu.hide();\r
-\r
-               TinyMCE_Layer.prototype.show.call(this);\r
-\r
-               if (!tinyMCE.isOpera) {\r
-                       // Accessibility stuff\r
-/*                     nl = this.getElement().getElementsByTagName("a");\r
-                       if (nl.length > 0)\r
-                               nl[0].focus();*/\r
-               }\r
-\r
-               tinyMCE.lastMenu = this;\r
-       }\r
-\r
-       });\r
-\r
-/* file:jscripts/tiny_mce/classes/TinyMCE_Debug.class.js */\r
-\r
-tinyMCE.add(TinyMCE_Engine, {\r
-       debug : function() {\r
-               var m = "", a, i, l = tinyMCE.log.length;\r
-\r
-               for (i=0, a = this.debug.arguments; i<a.length; i++) {\r
-                       m += a[i];\r
-\r
-                       if (i<a.length-1)\r
-                               m += ', ';\r
-               }\r
-\r
-               if (l < 1000)\r
-                       tinyMCE.log[l] = "[debug] " + m;\r
-       }\r
-\r
-       });\r
-\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/editable_selects.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/editable_selects.js
deleted file mode 100644 (file)
index e723365..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-/**\r
- * $Id: editable_selects.js 162 2007-01-03 16:16:52Z spocke $\r
- *\r
- * Makes select boxes editable.\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-var TinyMCE_EditableSelects = {\r
-       editSelectElm : null,\r
-\r
-       init : function() {\r
-               var nl = document.getElementsByTagName("select"), i, d = document, o;\r
-\r
-               for (i=0; i<nl.length; i++) {\r
-                       if (nl[i].className.indexOf('mceEditableSelect') != -1) {\r
-                               o = new Option('(value)', '__mce_add_custom__');\r
-\r
-                               o.className = 'mceAddSelectValue';\r
-\r
-                               nl[i].options[nl[i].options.length] = o;\r
-                               nl[i].setAttribute('onchange', 'TinyMCE_EditableSelects.onChangeEditableSelect(this);');\r
-                       }\r
-               }\r
-       },\r
-\r
-       onChangeEditableSelect : function(se) {\r
-               var d = document, ne;\r
-\r
-               if (se.options[se.selectedIndex].value == '__mce_add_custom__') {\r
-                       ne = d.createElement("input");\r
-                       ne.id = se.id + "_custom";\r
-                       ne.name = se.name + "_custom";\r
-                       ne.type = "text";\r
-\r
-                       ne.style.width = se.clientWidth;\r
-                       se.parentNode.insertBefore(ne, se);\r
-                       se.style.display = 'none';\r
-                       ne.focus();\r
-                       ne.onblur = TinyMCE_EditableSelects.onBlurEditableSelectInput;\r
-                       TinyMCE_EditableSelects.editSelectElm = se;\r
-               }\r
-       },\r
-\r
-       onBlurEditableSelectInput : function() {\r
-               var se = TinyMCE_EditableSelects.editSelectElm;\r
-\r
-               if (se) {\r
-                       if (se.previousSibling.value != '') {\r
-                               addSelectValue(document.forms[0], se.id, se.previousSibling.value, se.previousSibling.value);\r
-                               selectByValue(document.forms[0], se.id, se.previousSibling.value);\r
-                       } else\r
-                               selectByValue(document.forms[0], se.id, '');\r
-\r
-                       se.style.display = 'inline';\r
-                       se.parentNode.removeChild(se.previousSibling);\r
-                       TinyMCE_EditableSelects.editSelectElm = null;\r
-               }\r
-       }\r
-};\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/form_utils.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/form_utils.js
deleted file mode 100644 (file)
index ec9dbb3..0000000
+++ /dev/null
@@ -1,210 +0,0 @@
-/**\r
- * $Id: form_utils.js 162 2007-01-03 16:16:52Z spocke $\r
- *\r
- * Various form utilitiy functions.\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-var themeBaseURL = tinyMCE.baseURL + '/themes/' + tinyMCE.getParam("theme");\r
-\r
-function getColorPickerHTML(id, target_form_element) {\r
-       var h = "";\r
-\r
-       h += '<a id="' + id + '_link" href="javascript:void(0);" onkeydown="pickColor(event,\'' + target_form_element +'\');" onmousedown="pickColor(event,\'' + target_form_element +'\');return false;">';\r
-       h += '<img id="' + id + '" src="' + themeBaseURL + '/images/color.gif"';\r
-       h += ' onmouseover="this.className=\'mceButtonOver\'"';\r
-       h += ' onmouseout="this.className=\'mceButtonNormal\'"';\r
-       h += ' onmousedown="this.className=\'mceButtonDown\'"';\r
-       h += ' width="20" height="16" border="0" title="' + tinyMCE.getLang('lang_browse') + '"';\r
-       h += ' class="mceButtonNormal" alt="' + tinyMCE.getLang('lang_browse') + '" /></a>';\r
-\r
-       return h;\r
-}\r
-\r
-function pickColor(e, target_form_element) {\r
-       if ((e.keyCode == 32 || e.keyCode == 13) || e.type == "mousedown")\r
-               tinyMCEPopup.pickColor(e, target_form_element);\r
-}\r
-\r
-function updateColor(img_id, form_element_id) {\r
-       document.getElementById(img_id).style.backgroundColor = document.forms[0].elements[form_element_id].value;\r
-}\r
-\r
-function setBrowserDisabled(id, state) {\r
-       var img = document.getElementById(id);\r
-       var lnk = document.getElementById(id + "_link");\r
-\r
-       if (lnk) {\r
-               if (state) {\r
-                       lnk.setAttribute("realhref", lnk.getAttribute("href"));\r
-                       lnk.removeAttribute("href");\r
-                       tinyMCE.switchClass(img, 'mceButtonDisabled', true);\r
-               } else {\r
-                       lnk.setAttribute("href", lnk.getAttribute("realhref"));\r
-                       tinyMCE.switchClass(img, 'mceButtonNormal', false);\r
-               }\r
-       }\r
-}\r
-\r
-function getBrowserHTML(id, target_form_element, type, prefix) {\r
-       var option = prefix + "_" + type + "_browser_callback";\r
-       var cb = tinyMCE.getParam(option, tinyMCE.getParam("file_browser_callback"));\r
-       if (cb == null)\r
-               return "";\r
-\r
-       var html = "";\r
-\r
-       html += '<a id="' + id + '_link" href="javascript:openBrower(\'' + id + '\',\'' + target_form_element + '\', \'' + type + '\',\'' + option + '\');" onmousedown="return false;">';\r
-       html += '<img id="' + id + '" src="' + themeBaseURL + '/images/browse.gif"';\r
-       html += ' onmouseover="this.className=\'mceButtonOver\';"';\r
-       html += ' onmouseout="this.className=\'mceButtonNormal\';"';\r
-       html += ' onmousedown="this.className=\'mceButtonDown\';"';\r
-       html += ' width="20" height="18" border="0" title="' + tinyMCE.getLang('lang_browse') + '"';\r
-       html += ' class="mceButtonNormal" alt="' + tinyMCE.getLang('lang_browse') + '" /></a>';\r
-\r
-       return html;\r
-}\r
-\r
-function openBrower(img_id, target_form_element, type, option) {\r
-       var img = document.getElementById(img_id);\r
-\r
-       if (img.className != "mceButtonDisabled")\r
-               tinyMCEPopup.openBrowser(target_form_element, type, option);\r
-}\r
-\r
-function selectByValue(form_obj, field_name, value, add_custom, ignore_case) {\r
-       if (!form_obj || !form_obj.elements[field_name])\r
-               return;\r
-\r
-       var sel = form_obj.elements[field_name];\r
-\r
-       var found = false;\r
-       for (var i=0; i<sel.options.length; i++) {\r
-               var option = sel.options[i];\r
-\r
-               if (option.value == value || (ignore_case && option.value.toLowerCase() == value.toLowerCase())) {\r
-                       option.selected = true;\r
-                       found = true;\r
-               } else\r
-                       option.selected = false;\r
-       }\r
-\r
-       if (!found && add_custom && value != '') {\r
-               var option = new Option(value, value);\r
-               option.selected = true;\r
-               sel.options[sel.options.length] = option;\r
-               sel.selectedIndex = sel.options.length - 1;\r
-       }\r
-\r
-       return found;\r
-}\r
-\r
-function getSelectValue(form_obj, field_name) {\r
-       var elm = form_obj.elements[field_name];\r
-\r
-       if (elm == null || elm.options == null)\r
-               return "";\r
-\r
-       return elm.options[elm.selectedIndex].value;\r
-}\r
-\r
-function addSelectValue(form_obj, field_name, name, value) {\r
-       var s = form_obj.elements[field_name];\r
-       var o = new Option(name, value);\r
-       s.options[s.options.length] = o;\r
-}\r
-\r
-function addClassesToList(list_id, specific_option) {\r
-       // Setup class droplist\r
-       var styleSelectElm = document.getElementById(list_id);\r
-       var styles = tinyMCE.getParam('theme_advanced_styles', false);\r
-       styles = tinyMCE.getParam(specific_option, styles);\r
-\r
-       if (styles) {\r
-               var stylesAr = styles.split(';');\r
-\r
-               for (var i=0; i<stylesAr.length; i++) {\r
-                       if (stylesAr != "") {\r
-                               var key, value;\r
-\r
-                               key = stylesAr[i].split('=')[0];\r
-                               value = stylesAr[i].split('=')[1];\r
-\r
-                               styleSelectElm.options[styleSelectElm.length] = new Option(key, value);\r
-                       }\r
-               }\r
-       } else {\r
-               // Use auto impored classes\r
-               var csses = tinyMCE.getCSSClasses(tinyMCE.getWindowArg('editor_id'));\r
-               for (var i=0; i<csses.length; i++)\r
-                       styleSelectElm.options[styleSelectElm.length] = new Option(csses[i], csses[i]);\r
-       }\r
-}\r
-\r
-function isVisible(element_id) {\r
-       var elm = document.getElementById(element_id);\r
-\r
-       return elm && elm.style.display != "none";\r
-}\r
-\r
-function convertRGBToHex(col) {\r
-       var re = new RegExp("rgb\\s*\\(\\s*([0-9]+).*,\\s*([0-9]+).*,\\s*([0-9]+).*\\)", "gi");\r
-\r
-       var rgb = col.replace(re, "$1,$2,$3").split(',');\r
-       if (rgb.length == 3) {\r
-               r = parseInt(rgb[0]).toString(16);\r
-               g = parseInt(rgb[1]).toString(16);\r
-               b = parseInt(rgb[2]).toString(16);\r
-\r
-               r = r.length == 1 ? '0' + r : r;\r
-               g = g.length == 1 ? '0' + g : g;\r
-               b = b.length == 1 ? '0' + b : b;\r
-\r
-               return "#" + r + g + b;\r
-       }\r
-\r
-       return col;\r
-}\r
-\r
-function convertHexToRGB(col) {\r
-       if (col.indexOf('#') != -1) {\r
-               col = col.replace(new RegExp('[^0-9A-F]', 'gi'), '');\r
-\r
-               r = parseInt(col.substring(0, 2), 16);\r
-               g = parseInt(col.substring(2, 4), 16);\r
-               b = parseInt(col.substring(4, 6), 16);\r
-\r
-               return "rgb(" + r + "," + g + "," + b + ")";\r
-       }\r
-\r
-       return col;\r
-}\r
-\r
-function trimSize(size) {\r
-       return size.replace(new RegExp('[^0-9%]', 'gi'), '');\r
-}\r
-\r
-function getCSSSize(size) {\r
-       size = trimSize(size);\r
-\r
-       if (size == "")\r
-               return "";\r
-\r
-       return size.indexOf('%') != -1 ? size : size + "px";\r
-}\r
-\r
-function getStyle(elm, attrib, style) {\r
-       var val = tinyMCE.getAttrib(elm, attrib);\r
-\r
-       if (val != '')\r
-               return '' + val;\r
-\r
-       if (typeof(style) == 'undefined')\r
-               style = attrib;\r
-\r
-       val = eval('elm.style.' + style);\r
-\r
-       return val == null ? '' : '' + val;\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/mclayer.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/mclayer.js
deleted file mode 100644 (file)
index 1b347f7..0000000
+++ /dev/null
@@ -1,210 +0,0 @@
-/**\r
- * $Id: mclayer.js 162 2007-01-03 16:16:52Z spocke $\r
- *\r
- * Moxiecode floating layer script.\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-function MCLayer(id) {\r
-       this.id = id;\r
-       this.settings = new Array();\r
-       this.blockerElement = null;\r
-       this.isMSIE = navigator.appName == "Microsoft Internet Explorer";\r
-       this.events = false;\r
-       this.autoHideCallback = null;\r
-}\r
-\r
-MCLayer.prototype = {\r
-       moveRelativeTo : function(re, p, a) {\r
-               var rep = this.getAbsPosition(re);\r
-               var w = parseInt(re.offsetWidth);\r
-               var h = parseInt(re.offsetHeight);\r
-               var x, y;\r
-\r
-               switch (p) {\r
-                       case "tl":\r
-                               break;\r
-\r
-                       case "tr":\r
-                               x = rep.absLeft + w;\r
-                               y = rep.absTop;\r
-                               break;\r
-\r
-                       case "bl":\r
-                               break;\r
-\r
-                       case "br":\r
-                               break;\r
-               }\r
-\r
-               this.moveTo(x, y);\r
-       },\r
-\r
-       moveBy : function(dx, dy) {\r
-               var e = this.getElement();\r
-               var x = parseInt(e.style.left);\r
-               var y = parseInt(e.style.top);\r
-\r
-               e.style.left = (x + dx) + "px";\r
-               e.style.top = (y + dy) + "px";\r
-\r
-               this.updateBlocker();\r
-       },\r
-\r
-       moveTo : function(x, y) {\r
-               var e = this.getElement();\r
-\r
-               e.style.left = x + "px";\r
-               e.style.top = y + "px";\r
-\r
-               this.updateBlocker();\r
-       },\r
-\r
-       show : function() {\r
-               MCLayer.visibleLayer = this;\r
-\r
-               this.getElement().style.display = 'block';\r
-               this.updateBlocker();\r
-       },\r
-\r
-       hide : function() {\r
-               this.getElement().style.display = 'none';\r
-               this.updateBlocker();\r
-       },\r
-\r
-       setAutoHide : function(s, cb) {\r
-               this.autoHideCallback = cb;\r
-               this.registerEventHandlers();\r
-       },\r
-\r
-       getElement : function() {\r
-               return document.getElementById(this.id);\r
-       },\r
-\r
-       updateBlocker : function() {\r
-               if (!this.isMSIE)\r
-                       return;\r
-\r
-               var e = this.getElement();\r
-               var b = this.getBlocker();\r
-               var x = this.parseInt(e.style.left);\r
-               var y = this.parseInt(e.style.top);\r
-               var w = this.parseInt(e.offsetWidth);\r
-               var h = this.parseInt(e.offsetHeight);\r
-\r
-               b.style.left = x + 'px';\r
-               b.style.top = y + 'px';\r
-               b.style.width = w + 'px';\r
-               b.style.height = h + 'px';\r
-               b.style.display = e.style.display;\r
-       },\r
-\r
-       getBlocker : function() {\r
-               if (!this.blockerElement) {\r
-                       var d = document, b = d.createElement("iframe");\r
-\r
-                       b.style.cssText = 'display: none; left: 0px; position: absolute; top: 0';\r
-                       b.src = 'javascript:false;';\r
-                       b.frameBorder = '0';\r
-                       b.scrolling = 'no';\r
-\r
-                       d.body.appendChild(b);\r
-                       this.blockerElement = b;\r
-               }\r
-\r
-               return this.blockerElement;\r
-       },\r
-\r
-       getAbsPosition : function(n) {\r
-               var p = {absLeft : 0, absTop : 0};\r
-\r
-               while (n) {\r
-                       p.absLeft += n.offsetLeft;\r
-                       p.absTop += n.offsetTop;\r
-                       n = n.offsetParent;\r
-               }\r
-\r
-               return p;\r
-       },\r
-\r
-       registerEventHandlers : function() {\r
-               if (!this.events) {\r
-                       var d = document;\r
-\r
-                       this.addEvent(d, 'mousedown', MCLayer.prototype.onMouseDown);\r
-\r
-                       this.events = true;\r
-               }\r
-       },\r
-\r
-       addEvent : function(o, n, h) {\r
-               if (o.attachEvent)\r
-                       o.attachEvent("on" + n, h);\r
-               else\r
-                       o.addEventListener(n, h, false);\r
-       },\r
-\r
-       onMouseDown : function(e) {\r
-               e = typeof(e) == "undefined" ? window.event : e;\r
-               var b = document.body;\r
-               var l = MCLayer.visibleLayer;\r
-\r
-               if (l) {\r
-                       var mx = l.isMSIE ? e.clientX + b.scrollLeft : e.pageX;\r
-                       var my = l.isMSIE ? e.clientY + b.scrollTop : e.pageY;\r
-                       var el = l.getElement();\r
-                       var x = parseInt(el.style.left);\r
-                       var y = parseInt(el.style.top);\r
-                       var w = parseInt(el.offsetWidth);\r
-                       var h = parseInt(el.offsetHeight);\r
-\r
-                       if (!(mx > x && mx < x + w && my > y && my < y + h)) {\r
-                               MCLayer.visibleLayer = null;\r
-\r
-                               if (l.autoHideCallback && l.autoHideCallback(l, e, mx, my))\r
-                                       return true;\r
-\r
-                               l.hide();\r
-                       }\r
-               }\r
-       },\r
-\r
-       addCSSClass : function(e, c) {\r
-               this.removeCSSClass(e, c);\r
-               var a = this.explode(' ', e.className);\r
-               a[a.length] = c;\r
-               e.className = a.join(' ');\r
-       },\r
-\r
-       removeCSSClass : function(e, c) {\r
-               var a = this.explode(' ', e.className), i;\r
-\r
-               for (i=0; i<a.length; i++) {\r
-                       if (a[i] == c)\r
-                               a[i] = '';\r
-               }\r
-\r
-               e.className = a.join(' ');\r
-       },\r
-\r
-       explode : function(d, s) {\r
-               var ar = s.split(d);\r
-               var oar = new Array();\r
-\r
-               for (var i = 0; i<ar.length; i++) {\r
-                       if (ar[i] != "")\r
-                               oar[oar.length] = ar[i];\r
-               }\r
-\r
-               return oar;\r
-       },\r
-\r
-       parseInt : function(s) {\r
-               if (s == null || s == '')\r
-                       return 0;\r
-\r
-               return parseInt(s);\r
-       }\r
-}\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/mctabs.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/mctabs.js
deleted file mode 100644 (file)
index fae038d..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/**\r
- * $Id: mctabs.js 162 2007-01-03 16:16:52Z spocke $\r
- *\r
- * Moxiecode DHTML Tabs script.\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-function MCTabs() {\r
-       this.settings = new Array();\r
-};\r
-\r
-MCTabs.prototype.init = function(settings) {\r
-       this.settings = settings;\r
-};\r
-\r
-MCTabs.prototype.getParam = function(name, default_value) {\r
-       var value = null;\r
-\r
-       value = (typeof(this.settings[name]) == "undefined") ? default_value : this.settings[name];\r
-\r
-       // Fix bool values\r
-       if (value == "true" || value == "false")\r
-               return (value == "true");\r
-\r
-       return value;\r
-};\r
-\r
-MCTabs.prototype.displayTab = function(tab_id, panel_id) {\r
-       var panelElm = document.getElementById(panel_id);\r
-       var panelContainerElm = panelElm ? panelElm.parentNode : null;\r
-       var tabElm = document.getElementById(tab_id);\r
-       var tabContainerElm = tabElm ? tabElm.parentNode : null;\r
-       var selectionClass = this.getParam('selection_class', 'current');\r
-\r
-       if (tabElm && tabContainerElm) {\r
-               var nodes = tabContainerElm.childNodes;\r
-\r
-               // Hide all other tabs\r
-               for (var i=0; i<nodes.length; i++) {\r
-                       if (nodes[i].nodeName == "LI")\r
-                               nodes[i].className = '';\r
-               }\r
-\r
-               // Show selected tab\r
-               tabElm.className = 'current';\r
-       }\r
-\r
-       if (panelElm && panelContainerElm) {\r
-               var nodes = panelContainerElm.childNodes;\r
-\r
-               // Hide all other panels\r
-               for (var i=0; i<nodes.length; i++) {\r
-                       if (nodes[i].nodeName == "DIV")\r
-                               nodes[i].className = 'panel';\r
-               }\r
-\r
-               // Show selected panel\r
-               panelElm.className = 'current';\r
-       }\r
-};\r
-\r
-MCTabs.prototype.getAnchor = function() {\r
-       var pos, url = document.location.href;\r
-\r
-       if ((pos = url.lastIndexOf('#')) != -1)\r
-               return url.substring(pos + 1);\r
-\r
-       return "";\r
-};\r
-\r
-// Global instance\r
-var mcTabs = new MCTabs();\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/validate.js b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/jscripts/tiny_mce/utils/validate.js
deleted file mode 100644 (file)
index b8931f4..0000000
+++ /dev/null
@@ -1,219 +0,0 @@
-/**\r
- * $Id: validate.js 162 2007-01-03 16:16:52Z spocke $\r
- *\r
- * Various form validation methods.\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
- */\r
-\r
-/**\r
-       // String validation:\r
-\r
-       if (!Validator.isEmail('myemail'))\r
-               alert('Invalid email.');\r
-\r
-       // Form validation:\r
-\r
-       var f = document.forms['myform'];\r
-\r
-       if (!Validator.isEmail(f.myemail))\r
-               alert('Invalid email.');\r
-*/\r
-\r
-var Validator = {\r
-       isEmail : function(s) {\r
-               return this.test(s, '^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+@[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$');\r
-       },\r
-\r
-       isAbsUrl : function(s) {\r
-               return this.test(s, '^(news|telnet|nttp|file|http|ftp|https)://[-A-Za-z0-9\\.]+\\/?.*$');\r
-       },\r
-\r
-       isSize : function(s) {\r
-               return this.test(s, '^[0-9]+(px|%)?$');\r
-       },\r
-\r
-       isId : function(s) {\r
-               return this.test(s, '^[A-Za-z_]([A-Za-z0-9_])*$');\r
-       },\r
-\r
-       isEmpty : function(s) {\r
-               var nl, i;\r
-\r
-               if (s.nodeName == 'SELECT' && s.selectedIndex < 1)\r
-                       return true;\r
-\r
-               if (s.type == 'checkbox' && !s.checked)\r
-                       return true;\r
-\r
-               if (s.type == 'radio') {\r
-                       for (i=0, nl = s.form.elements; i<nl.length; i++) {\r
-                               if (nl[i].type == "radio" && nl[i].name == s.name && nl[i].checked)\r
-                                       return false;\r
-                       }\r
-\r
-                       return true;\r
-               }\r
-\r
-               return new RegExp('^\\s*$').test(s.nodeType == 1 ? s.value : s);\r
-       },\r
-\r
-       isNumber : function(s, d) {\r
-               return !isNaN(s.nodeType == 1 ? s.value : s) && (!d || !this.test(s, '^-?[0-9]*\\.[0-9]*$'));\r
-       },\r
-\r
-       test : function(s, p) {\r
-               s = s.nodeType == 1 ? s.value : s;\r
-\r
-               return s == '' || new RegExp(p).test(s);\r
-       }\r
-};\r
-\r
-var AutoValidator = {\r
-       settings : {\r
-               id_cls : 'id',\r
-               int_cls : 'int',\r
-               url_cls : 'url',\r
-               number_cls : 'number',\r
-               email_cls : 'email',\r
-               size_cls : 'size',\r
-               required_cls : 'required',\r
-               invalid_cls : 'invalid',\r
-               min_cls : 'min',\r
-               max_cls : 'max'\r
-       },\r
-\r
-       init : function(s) {\r
-               var n;\r
-\r
-               for (n in s)\r
-                       this.settings[n] = s[n];\r
-       },\r
-\r
-       validate : function(f) {\r
-               var i, nl, s = this.settings, c = 0;\r
-\r
-               nl = this.tags(f, 'label');\r
-               for (i=0; i<nl.length; i++)\r
-                       this.removeClass(nl[i], s.invalid_cls);\r
-\r
-               c += this.validateElms(f, 'input');\r
-               c += this.validateElms(f, 'select');\r
-               c += this.validateElms(f, 'textarea');\r
-\r
-               return c == 3;\r
-       },\r
-\r
-       invalidate : function(n) {\r
-               this.mark(n.form, n);\r
-       },\r
-\r
-       reset : function(e) {\r
-               var t = new Array('label', 'input', 'select', 'textarea');\r
-               var i, j, nl, s = this.settings;\r
-\r
-               if (e == null)\r
-                       return;\r
-\r
-               for (i=0; i<t.length; i++) {\r
-                       nl = this.tags(e.form ? e.form : e, t[i]);\r
-                       for (j=0; j<nl.length; j++)\r
-                               this.removeClass(nl[j], s.invalid_cls);\r
-               }\r
-       },\r
-\r
-       validateElms : function(f, e) {\r
-               var nl, i, n, s = this.settings, st = true, va = Validator, v;\r
-\r
-               nl = this.tags(f, e);\r
-               for (i=0; i<nl.length; i++) {\r
-                       n = nl[i];\r
-\r
-                       this.removeClass(n, s.invalid_cls);\r
-\r
-                       if (this.hasClass(n, s.required_cls) && va.isEmpty(n))\r
-                               st = this.mark(f, n);\r
-\r
-                       if (this.hasClass(n, s.number_cls) && !va.isNumber(n))\r
-                               st = this.mark(f, n);\r
-\r
-                       if (this.hasClass(n, s.int_cls) && !va.isNumber(n, true))\r
-                               st = this.mark(f, n);\r
-\r
-                       if (this.hasClass(n, s.url_cls) && !va.isAbsUrl(n))\r
-                               st = this.mark(f, n);\r
-\r
-                       if (this.hasClass(n, s.email_cls) && !va.isEmail(n))\r
-                               st = this.mark(f, n);\r
-\r
-                       if (this.hasClass(n, s.size_cls) && !va.isSize(n))\r
-                               st = this.mark(f, n);\r
-\r
-                       if (this.hasClass(n, s.id_cls) && !va.isId(n))\r
-                               st = this.mark(f, n);\r
-\r
-                       if (this.hasClass(n, s.min_cls, true)) {\r
-                               v = this.getNum(n, s.min_cls);\r
-\r
-                               if (isNaN(v) || parseInt(n.value) < parseInt(v))\r
-                                       st = this.mark(f, n);\r
-                       }\r
-\r
-                       if (this.hasClass(n, s.max_cls, true)) {\r
-                               v = this.getNum(n, s.max_cls);\r
-\r
-                               if (isNaN(v) || parseInt(n.value) > parseInt(v))\r
-                                       st = this.mark(f, n);\r
-                       }\r
-               }\r
-\r
-               return st;\r
-       },\r
-\r
-       hasClass : function(n, c, d) {\r
-               return new RegExp('\\b' + c + (d ? '[0-9]+' : '') + '\\b', 'g').test(n.className);\r
-       },\r
-\r
-       getNum : function(n, c) {\r
-               c = n.className.match(new RegExp('\\b' + c + '([0-9]+)\\b', 'g'))[0];\r
-               c = c.replace(/[^0-9]/g, '');\r
-\r
-               return c;\r
-       },\r
-\r
-       addClass : function(n, c, b) {\r
-               var o = this.removeClass(n, c);\r
-               n.className = b ? c + (o != '' ? (' ' + o) : '') : (o != '' ? (o + ' ') : '') + c;\r
-       },\r
-\r
-       removeClass : function(n, c) {\r
-               c = n.className.replace(new RegExp("(^|\\s+)" + c + "(\\s+|$)"), ' ');\r
-               return n.className = c != ' ' ? c : '';\r
-       },\r
-\r
-       tags : function(f, s) {\r
-               return f.getElementsByTagName(s);\r
-       },\r
-\r
-       mark : function(f, n) {\r
-               var s = this.settings;\r
-\r
-               this.addClass(n, s.invalid_cls);\r
-               this.markLabels(f, n, s.invalid_cls);\r
-\r
-               return false;\r
-       },\r
-\r
-       markLabels : function(f, n, ic) {\r
-               var nl, i;\r
-\r
-               nl = this.tags(f, "label");\r
-               for (i=0; i<nl.length; i++) {\r
-                       if (nl[i].getAttribute("for") == n.id || nl[i].htmlFor == n.id)\r
-                               this.addClass(nl[i], ic);\r
-               }\r
-\r
-               return null;\r
-       }\r
-};\r
diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/readme b/koha-tmpl/intranet-tmpl/prog/en/js/tinymce/readme
deleted file mode 100644 (file)
index b62c84c..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Please consult the HTML documentation for details.\r
-\r
index 2cf9edd..8b4977c 100644 (file)
         <div id="licenses">
             <h2>Koha</h2>
             <p>
-            <a href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html">Koha is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.</a>
+            <a href="http://www.gnu.org/licenses/gpl-3.0.html">Koha is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.</a>
             </p>
             <h2>jQuery and jQueryUI</h2>
             <p><a href="http://jquery.com/">jQuery</a> and <a href="http://jqueryui.com/">jQueryUI</a> are licensed under the <a href="http://github.com/jquery/jquery/blob/master/MIT-LICENSE.txt">MIT license</a></p>
             <p><a href="http://twitter.github.com/bootstrap/">Bootstrap</a> code and <a href="http://glyphicons.com">Glyphicons Free</a> licensed under <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License v2.0</a>.</p>
             <h2>YUI</h2>
             <p>
-            <a href="http://developer.yahoo.com/auth/license.txt">BSD License</a>
+            <a href="http://yuilibrary.com/license/">BSD License</a>
             </p>
             <h2>Famfamfam iconset</h2>
               <ul>
         <div id="translations">
             <h2>Translation</h2>
             <ul>
-<li>&#1575;&#1604;&#1593;&#1585;&#1576;&#1610;&#1577; (Arabic)</li>
+<li>&#1575;&#1604;&#1593;&#1585;&#1576;&#1610;&#1577; (Arabic) Karam Qubsi, Kouider Bounama, Sham Bajaa, Ghofran Alshami, Chrestian Aboud and others from <a href="http://wikibrary.org/wiki/Arabic_Koha_Support_Team">the Arabic Koha support team</a></li>
 <li>&#4768;&#4635;&#4653;&#4763; (Amharic) Getway II Ethiopia Co. (Yohannes Mulugeta (Team Leader), Tegene Assefa, Abiyot Bayou)</li>
 <li>Armenian Tigran Zargaryan</li>
 <li>&#1041;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080; (Bulgarian) Radoslav Kolev</li>
index fa6ae53..b029b3f 100644 (file)
@@ -35,6 +35,7 @@ $(document).ready(function() {
             { "sType": "num-html" },
             null,
         ],
+        'sDom': 't',
         'bPaginate': false,
         'bFilter': false,
         'bInfo': false,
index 07db148..49e704a 100644 (file)
@@ -65,7 +65,7 @@ function Check(ff) {
                     </li>
                 [% END %]
                 <li>
-                    <label for="basketname" class="required">Basket name</label> &nbsp;
+                    <label for="basketname" class="required">Basket name</label> &nbsp;
                         <input type="text" name="basketname" id="basketname" size="40" maxlength="80" value="[% basketname %]" />
                 </li>
                  <li>
@@ -99,7 +99,7 @@ function Check(ff) {
                     </select>
                 </li>
                 <li>
-                    <label for="basketbooksellerid">Vendor</label> &nbsp;
+                    <label for="basketbooksellerid">Vendor</label> &nbsp;
                     <select name="basketbooksellerid" id="basketbooksellerid">
                     [% FOREACH b IN booksellers %]
                         [% IF booksellerid == b.id %]
@@ -111,15 +111,15 @@ function Check(ff) {
             </select>
                 </li>
                 <li>
-                    <label for="basketnote">Internal note</label> &nbsp;
+                    <label for="basketnote">Internal note</label> &nbsp;
                     <textarea name="basketnote" id="basketnote" rows="5" cols="40">[% basketnote %]</textarea>
                 </li>
                 <li>
-                    <label for="basketbooksellernote">Vendor note</label> &nbsp;
+                    <label for="basketbooksellernote">Vendor note</label> &nbsp;
                     <textarea name="basketbooksellernote" id="basketbooksellernote" rows="5" cols="40">[% basketbooksellernote %]</textarea>
                 </li>
                 [% IF ( contractloop ) %]
-                    <li><label for="basketcontractnumber">Contract</label>
+                    <li><label for="basketcontractnumber">Contract</label>
                         <select id="basketcontractnumber" name="basketcontractnumber">
                             <option value=""></option>
                             [% FOREACH contractloo IN contractloop %]
index b0e4549..ca81812 100644 (file)
@@ -18,9 +18,11 @@ $(document).ready(function() {
         dt_add_type_uk_date();
     [% END %]
     $("table.baskets").dataTable($.extend(true, {}, dataTablesDefaults, {
+        'sDom': 't',
         'bPaginate': false,
         'bFilter': false,
         'bInfo': false,
+        "aaSorting": [[ 1, "asc" ]],
         'aoColumnDefs': [
             { 'aTargets': [-1], 'bSortable': false }
         ]
@@ -85,7 +87,8 @@ $(document).ready(function() {
                         <table class="baskets">
                             <thead>
                                 <tr>
-                                    <th>Basket (#)</th>
+                                    <th>N°</th>
+                                    <th>Name</th>
                                     <th>Item count</th>
                                     <th>Biblio count</th>
                                     <th>Items expected</th>
@@ -101,7 +104,8 @@ $(document).ready(function() {
                                     [% ELSE %]
                                         <tr>
                                     [% END %]
-                                        <td>[% basket.basketname %] (#[% basket.basketno %])</td>
+                                        <td>[% basket.basketno %]</td>
+                                        <td>[% basket.basketname %]</td>
                                         <td>[% basket.total_items %]</td>
                                         <td>[% basket.total_biblios %]</td>
                                         <td>[% basket.expected_items %]</td>
index b9411ff..f2d9925 100644 (file)
@@ -10,6 +10,7 @@
 //<![CDATA[
  $(document).ready(function() {
     var resultst = $("#resultst").dataTable($.extend(true, {}, dataTablesDefaults, {
+        'sDom': 't',
         'bPaginate': false,
         'bFilter': false,
         'bInfo': false,
index 8a1534a..549bf62 100644 (file)
@@ -361,46 +361,48 @@ $(document).ready(function()
         </fieldset>
     [% END %]
 
-    [% IF (AcqCreateItemOrdering) %]
-
-    <div id="items_list" style="display:none">
-        <p><b>Items list</b></p>
-        <div style="width:100%;overflow:auto;">
-            <table>
-                <thead>
-                    <tr>
-                        <th>&nbsp;</th>
-                        <th>&nbsp;</th>
-                        <th>Barcode</th>
-                        <th>Home library</th>
-                        <th>Holding library</th>
-                        <th>Not for loan</th>
-                        <th>Restricted</th>
-                        <th>Location</th>
-                        <th>Call number</th>
-                        <th>Copy number</th>
-                        <th>Stock number</th>
-                        <th>Collection code</th>
-                        <th>Item type</th>
-                        <th>Materials</th>
-                        <th>Notes</th>
-                    </tr>
-                </thead>
-                <tbody>
-                </tbody>
-            </table>
-        </div>
-    </div>
-
-    <fieldset class="rows" id="itemfieldset">
-        <legend>Item</legend>
-        [% IF ( NoACQframework ) %]
-            <div class="dialog message">No ACQ framework, using default. You should create a framework with code ACQ, the items framework would be used</div>
-        [% END %]
-
-        <div id="outeritemblock"></div>
-
-    </fieldset>
+    [% UNLESS subscriptionid %][% # it is a suggestion, we have not items %]
+      [% IF (AcqCreateItemOrdering) %]
+
+      <div id="items_list" style="display:none">
+          <p><b>Items list</b></p>
+          <div style="width:100%;overflow:auto;">
+              <table>
+                  <thead>
+                      <tr>
+                          <th>&nbsp;</th>
+                          <th>&nbsp;</th>
+                          <th>Barcode</th>
+                          <th>Home library</th>
+                          <th>Holding library</th>
+                          <th>Not for loan</th>
+                          <th>Restricted</th>
+                          <th>Location</th>
+                          <th>Call number</th>
+                          <th>Copy number</th>
+                          <th>Stock number</th>
+                          <th>Collection code</th>
+                          <th>Item type</th>
+                          <th>Materials</th>
+                          <th>Notes</th>
+                      </tr>
+                  </thead>
+                  <tbody>
+                  </tbody>
+              </table>
+          </div>
+      </div>
+
+      <fieldset class="rows" id="itemfieldset">
+          <legend>Item</legend>
+          [% IF ( NoACQframework ) %]
+              <div class="dialog message">No ACQ framework, using default. You should create a framework with code ACQ, the items framework would be used</div>
+          [% END %]
+
+          <div id="outeritemblock"></div>
+
+      </fieldset>
+      [% END %][%# UNLESS subscriptionid %]
     [% END %][%# IF (AcqCreateItemOrdering) %]
     <fieldset class="rows">
         <legend>Accounting Details</legend>
@@ -412,9 +414,17 @@ $(document).ready(function()
                 [% ELSE %]
                     <label class="required" for="quantity">Quantity: </label>
                     [% IF (AcqCreateItemOrdering) %]
-                        <input type="text" readonly="readonly" size="20" id="quantity" name="quantity" value="0" />
+                        [% IF subscriptionid %]
+                            <input type="text" readonly="readonly" size="20" id="quantity" name="quantity" value="1" />
+                        [% ELSE %]
+                            <input type="text" readonly="readonly" size="20" id="quantity" name="quantity" value="0" />
+                        [% END %]
                     [% ELSE %]
-                        <input type="text" size="20" id="quantity" name="quantity" value="[% quantityrec %]" onchange="updateCosts();" />
+                        [% IF subscriptionid %]
+                            <input type="text" readonly="readonly" size="20" id="quantity" name="quantity" value="1" />
+                        [% ELSE %]
+                            <input type="text" size="20" id="quantity" name="quantity" value="[% quantityrec %]" onchange="updateCosts();" />
+                        [% END %]
                     [% END %]
                 [% END %]
                 <!-- origquantityrec only here for javascript compatibility (additem.js needs it, useless here, usefull when receiveing an order -->
@@ -586,14 +596,19 @@ $(document).ready(function()
                 [% END %]
                 </span>
             </li>
-</ol>
+        </ol>
     </fieldset>
     <fieldset class="action">
+        <input type="hidden" name="subscriptionid" value="[% subscriptionid %]" />
         <input type="submit" value="Save" />
         [% IF (suggestionid) %]
             <a class="cancel" href="/cgi-bin/koha/acqui/newordersuggestion.pl?booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]">Cancel</a>
         [% ELSE %]
-            <a class="cancel" href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno %]">Cancel</a>
+            [% IF subscriptionid %]
+                <a class="cancel" href="/cgi-bin/koha/acqui/newordersubscription.pl?booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]">Cancel</a>
+            [% ELSE %]
+                <a class="cancel" href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno %]">Cancel</a>
+            [% END %]
         [% END %]
     </fieldset>
 </form>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/newordersubscription.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/newordersubscription.tt
new file mode 100644 (file)
index 0000000..ea9bc32
--- /dev/null
@@ -0,0 +1,120 @@
+[% USE KohaDates %]
+[% INCLUDE 'doc-head-open.inc' %]
+<title>Koha &rsaquo; Serials [% biblionumber %]</title>
+<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+[% INCLUDE 'doc-head-close.inc' %]
+<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
+<script type="text/javascript">
+//<![CDATA[
+    function updateRowsVisibility(show_only_renewed) {
+        if ( show_only_renewed ) {
+            $("#srlt [data-reneweddate='']").hide();
+        } else {
+            $("#srlt > tbody > tr").show();
+        }
+    }
+
+    [% IF (dateformat == 'metric') %]
+        dt_add_type_uk_date();
+    [% END %]
+    $(document).ready(function() {
+        $("#srlt").dataTable($.extend(true, {}, dataTablesDefaults, {
+            "aoColumnDefs": [
+                [% IF (dateformat == 'metric') %]
+                    { "aTargets": [ -2 ], "sType": "uk_date" },
+                [% END %]
+            ],
+        } ) )
+
+        $("#show_only_renewed").click(function(){
+            updateRowsVisibility($(this+":checked").val());
+        });
+        $("#show_only_renewed").attr('checked', false);
+        updateRowsVisibility(false);
+
+        $("#advsearch_form").show();
+    });
+ //]]>
+</script>
+</head>
+<body>
+[% INCLUDE 'header.inc' %]
+[% INCLUDE 'acquisitions-search.inc' %]
+
+<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a> &rsaquo; <a href="/cgi-bin/koha/acqui/supplier.pl?supplierid=[% supplierid %]">[% booksellername %]</a> &rsaquo; <a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno %]">Shopping Basket [% basketno %]</a> &rsaquo; Add order from a subscription</div>
+
+<div id="doc3" class="yui-t2">
+    <div id="bd">
+    <div id="yui-main">
+        <div class="yui-b">
+            <h2>Serials subscriptions</h2>
+            [% IF (done_searched) %]
+                <label for="show_only_renewed">
+                    <input type="checkbox" style="vertical-align: middle;" id="show_only_renewed" />
+                    Show only renewed
+                </label>
+                [% IF (subs_loop) %]
+                    <table id="srlt">
+                        <thead>
+                            <tr>
+                                <th>ISSN</th>
+                                <th>Title</th>
+                                <th> Notes </th>
+                                <th>Library</th>
+                                <th>Call number</th>
+                                <th>Expiration date</th>
+                                <th></th>
+                            </tr>
+                        </thead>
+                        <tbody>
+                        [% FOREACH sub IN subs_loop %]
+                            <tr data-reneweddate="[% sub.reneweddate %]" >
+                                <td>[% sub.issn %]</td>
+                                <td><a href="/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=[% sub.subscriptionid %]" class="button" title="subscription detail">[% IF (sub.title) %][% sub.title |html %][% ELSE %]
+                                ---
+                            [% END %][% IF (sub.unititle) %], [% sub.unititle %][% END %]</a>
+                                </td>
+                                <td>[% notes %]
+                                    [% IF (sub.internalnotes) %]([% sub.internalnotes %])[% END %]
+                                </td>
+                                <td>
+                                    [% IF (sub.branchcode) %][% sub.branchcode %][% END %]
+                                </td>
+                                <td>
+                                    [% IF (sub.callnumber) %][% sub.callnumber %][% END %]
+                                </td>
+                                <td>
+                                    [% IF (sub.enddate) %][% sub.enddate | $KohaDates %][% END %]
+                                </td>
+                                <td>
+                                    [% IF (sub.alreadyOnOrder) %]
+                                        Outstanding order (only one order per subscription is allowed)
+                                    [% ELSIF not sub.aqbooksellerid || booksellerid == sub.aqbooksellerid%]
+                                        <a href="/cgi-bin/koha/acqui/neworderempty.pl?booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]&amp;biblionumber=[% sub.biblionumber %]&amp;subscriptionid=[% sub.subscriptionid %]" title="Order this one">
+                                            Order
+                                        </a>
+                                    [% ELSE %]
+                                        <a title="This subscription depends on another supplier" style="cursor:help">Cannot be ordered</a>
+                                    [% END %]
+                                </td>
+                            </tr>
+                        [% END %]
+                        </tbody>
+                    </table>
+                [% ELSE %]
+                    <p>Sorry, there is no result for your search.</p>
+                [% END %]
+            [% ELSE %]
+                <p>Use the search form on the left to find subscriptions.</p>
+            [% END %]
+        </div>
+    </div>
+
+    <div class="yui-b">
+        [% INCLUDE 'subscriptions-search.inc' %]
+        [% INCLUDE 'acquisitions-menu.inc' %]
+    </div>
+</div>
+[% INCLUDE 'intranet-bottom.inc' %]
index 910844d..9e16755 100644 (file)
@@ -122,7 +122,7 @@ function IEEventHandler_KeyDown() {
     $(document).ready(function() {
         [% IF (AcqCreateItemReceiving) %]
             cloneItemBlock(0, '[% UniqueItemFields %]');
-        [% ELSIF (AcqCreateItem == 'ordering') %]
+        [% ELSIF (AcqCreateItem == 'ordering') && not subscriptionid %]
             $("input[name='items_to_receive']").change(function() {
                 CalcQtyToReceive();
             });
@@ -218,17 +218,19 @@ function IEEventHandler_KeyDown() {
             </div>
         </div>
 
-        <fieldset class="rows" id="itemfieldset">
-            <legend>Item</legend>
-            [% IF ( NoACQframework ) %]
-                <p class="required">
-                    No ACQ framework, using default. You should create a
-                    framework with code ACQ, the items framework would be
-                    used
-                </p>
-            [% END %]
-            <div id="outeritemblock"></div>
-        </fieldset>
+        [% UNLESS subscriptionid %]
+          <fieldset class="rows" id="itemfieldset">
+              <legend>Item</legend>
+              [% IF ( NoACQframework ) %]
+                  <p class="required">
+                      No ACQ framework, using default. You should create a
+                      framework with code ACQ, the items framework would be
+                      used
+                  </p>
+              [% END %]
+              <div id="outeritemblock"></div>
+          </fieldset>
+        [% END %]
     [% ELSIF (AcqCreateItem == 'ordering') %]
         [% IF (items.size) %]
             <h5>Items</h5>
@@ -294,35 +296,39 @@ function IEEventHandler_KeyDown() {
        <li><label for="bookfund">Budget: </label><span> [% bookfund %] </span></li>
        <li><label for="creator">Created by: </label><span> [% IF ( memberfirstname and membersurname ) %][% IF ( memberfirstname ) %][% memberfirstname %][% END %] [% membersurname %][% ELSE %]No name[% END %]</span></li>
        <li><label for="quantity_to_receive">Quantity to receive: </label><span class="label">
-           [% IF ( edit ) %]
+           [% IF ( edit and not subscriptionid) %]
                <input type="text" id="quantity_to_receive" name="quantity" value="[% quantity %]" />
-           [% ELSE %]
+           [% ELSE%]
                <input type="text" readonly="readonly" id="quantity_to_receive" name="quantity" value="[% quantity %]" />
            [% END %]
            </span></li>
         <li><label for="quantity">Quantity received: </label>
           [% IF (AcqCreateItemReceiving) %]
-            <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="0" />
+            [% IF ( subscriptionid ) %]
+              <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="1" />
+            [% ELSE %]
+              <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="0" />
+            [% END %]
           [% ELSE %]
             [% IF ( quantityreceived ) %]
                 [% IF ( edit ) %]
                     <input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceived %]" />
-                    <input id="origquantityrec" READONLY type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
+                    <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
                 [% ELSE %]
-                [% IF ( items ) %]
-                    <input READONLY type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
-                [% ELSE %]
-                    <input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
-                [% END %]
-                <input id="origquantityrec" READONLY type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
+                    [% IF ( items ) %]
+                        <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
+                    [% ELSE %]
+                        <input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
+                    [% END %]
+                    <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
                 [% END %]
             [% ELSE %]
-                [% IF ( items ) %]
-                    <input type="text" id="quantity" size="20" name="quantityrec" value="1" />
+                [% IF ( subscriptionid ) %]
+                    <input type="text" readonly="readonly" id="quantity" size="20" name="quantityrec" value="1" />
                 [% ELSE %]
-                    <input type="text" size="20" id="quantity" name="quantityrec" value="1" />
+                    <input type="text" id="quantity" size="20" name="quantityrec" value="1" />
                 [% END %]
-                <input id="origquantityrec" READONLY type="hidden" name="origquantityrec" value="0" />
+                <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="0" />
             [% END %]
             <div id="qtyrecerror" style="display:none">
                 <p class="error">Warning, you have entered more items than expected.
index 51ec129..16b2fd1 100644 (file)
@@ -33,6 +33,7 @@ if (f.company.value == "") {
             { "aTargets": [ 2, 3 ], "sType": "uk_date" },
           [% END %]
         ],
+        'sDom': 't',
         'bPaginate': false,
         'bFilter': false,
         'bInfo': false,
@@ -66,36 +67,36 @@ if (f.company.value == "") {
         <input type="hidden" name="booksellerid" value="[% booksellerid %]" />
         <fieldset class="rows">
             <legend>Company details</legend>
-            <ol><li><label for="company" class="required">Name * </label>
+            <ol><li><label for="company" class="required">Name: * </label>
                 <input type="text" size="40" id="company" name="company" value="[% name %]" /></li>
-            <li><label for="company_postal">Postal address</label>
+            <li><label for="company_postal">Postal address</label>
                     <textarea id="company_postal" name="company_postal" cols="40" rows="3">[% postal %]</textarea></li>
-            <li><label for="physical">Physical address</label>
+            <li><label for="physical">Physical address</label>
                 <textarea id="physical" name="physical" cols="40" rows="3">[% address1 %][% address2 %][% address3 %][% address4 %]</textarea></li>
-            <li><label for="company_phone">Phone</label>
+            <li><label for="company_phone">Phone</label>
                 <input type="text" size="20" id="company_phone" name="company_phone" value="[% phone %]" /></li>
-            <li><label for="company_fax">Fax</label>
+            <li><label for="company_fax">Fax</label>
                 <input type="text" size="20" id="company_fax" name="company_fax" value="[% fax %]" /></li>
-            <li><label for="website">Website</label>
+            <li><label for="website">Website</label>
                 <input type="text" size="40" id="website" name="website" value="[% url %]" /></li>
-            <li><label for="accountnumber">Account number</label>
+            <li><label for="accountnumber">Account number</label>
                 <input type="text" size="40" id="accountnumber" name="accountnumber" value="[% accountnumber %]" /></li></ol>
         </fieldset>
         <fieldset class="rows">
             <legend>Contact details</legend>
-        <ol> <li><label for="company_contact_name">Contact name</label>
+        <ol> <li><label for="company_contact_name">Contact name</label>
                 <input type="text" size="40" id="company_contact_name" name="company_contact_name" value="[% contact %]" /></li>
-            <li><label for="company_contact_position">Position</label>
+            <li><label for="company_contact_position">Position</label>
                 <input type="text" size="40" id="company_contact_position" name="company_contact_position" value="[% contpos %]" /></li>
-            <li><label for="contact_phone">Phone</label>
+            <li><label for="contact_phone">Phone</label>
                 <input type="text" size="20" id="contact_phone" name="contact_phone" value="[% contphone %]" /> </li>
-            <li><label for="contact_phone_2">Alternative phone</label>
+            <li><label for="contact_phone_2">Alternative phone</label>
                 <input type="text" size="20" id="contact_phone_2" name="contact_phone_2" value="[% contaltphone %]" /></li>
-            <li><label for="contact_fax">Fax</label>
+            <li><label for="contact_fax">Fax</label>
                 <input type="text" size="20" id="contact_fax" name="contact_fax" value="[% contfax %]" /></li>
-            <li><label for="company_email">Email</label>
+            <li><label for="company_email">Email</label>
                 <input type="text" size="40" id="company_email" name="company_email" value="[% contemail %]" /></li>
-            <li><label for="contact_notes">Notes</label>
+            <li><label for="contact_notes">Notes</label>
                 <textarea id="contact_notes" name="contact_notes" cols="40" rows="4">[% contnotes %]</textarea></li></ol>
         </fieldset>
     </div>
@@ -112,7 +113,7 @@ if (f.company.value == "") {
                     [% END %]</li>
             </ol>
             <ol>
-            <li><label for="list_currency">List prices are</label>
+            <li><label for="list_currency">List prices are</label>
                     <select name="list_currency" id="list_currency">
                     [% FOREACH loop_currenc IN loop_currency %]
                         [% IF ( loop_currenc.listprice ) %]<option value="[% loop_currenc.currency %]" selected="1">[% loop_currenc.currency %]</option>
@@ -120,7 +121,7 @@ if (f.company.value == "") {
                     [% END %]
                     </select>
             </li>
-            <li><label for="invoice_currency">Invoice prices are</label>
+            <li><label for="invoice_currency">Invoice prices are</label>
                     <select name="invoice_currency" id="invoice_currency">
                     [% FOREACH loop_currenc IN loop_currency %]
                         [% IF ( loop_currenc.invoiceprice ) %]<option value="[% loop_currenc.currency %]" selected="1">[% loop_currenc.currency %]</option>
@@ -160,7 +161,7 @@ if (f.company.value == "") {
             [% IF gst_values %]
                 <ol>
                   <li>
-                    <label for="gst">Tax rate</label>
+                    <label for="gst">Tax rate</label>
                     <select name="gstrate" id="gstrate">
                     [% FOREACH gst IN gst_values %]
                       [% IF ( gstrate == gst.option ) %]
@@ -176,13 +177,13 @@ if (f.company.value == "") {
                 <input type="hidden" name="gstrate" value="0" />
             [% END %]
             <ol>
-            <li><label for="discount">Discount</label>
+            <li><label for="discount">Discount</label>
                 <input type="text" size="6" id="discount" name="discount" value="[% discount | format ("%.1f") %]" />%</li>
             <li>
-                <label for="deliverytime">Delivery time</label>
+                <label for="deliverytime">Delivery time</label>
                 <input type="text" size="2" id="deliverytime" name="deliverytime" value="[% deliverytime %]" /> days
             </li>
-            <li><label for="notes">Notes</label>
+            <li><label for="notes">Notes</label>
                 <textarea cols="40" rows="4" id="notes" name="notes" >[% notes %]</textarea></li></ol>
         </fieldset>
         <fieldset class="action"><input type="button" value="Save" onclick="check(this.form);" /> [% IF ( booksellerid ) %]
index 483bf65..7ce0222 100644 (file)
@@ -100,7 +100,9 @@ tr.selected { background-color : #FFFFCC; } tr.selected td { background-color :
                </fieldset>
            </div>
     <div class="yui-u">
-       <fieldset class="rows">          <ol><li><label for="author">Author: </label> <input type="text" id="author" name="author" value="[% author %]" /><!--  <label for="Keyword">Keyword</label> <input type="text" name="keyword" value="" /> --></li>
+    <fieldset class="rows">
+        <ol>
+        <li><label for="author">Author: </label> <input type="text" id="author" name="author" value="[% author %]" /></li>
          <li><label for="issn">ISSN: </label> <input type="text" id="issn" name="issn" value="[% issn %]" /></li>
          <li> <label for="subject">Subject heading: </label> <input type="text" id="subject" name="subject" value="" /></li>
                 <li><label for="dewey">Dewey: </label> <input type="text" id="dewey" name="dewey" value="" /></li></ol></fieldset>
index 244f92f..d86a5ab 100644 (file)
     <ol>
 
     <li>
-    <label class="required" for="from">Start date</label>
+    <label class="required" for="from">Start date</label>
     <input type="text" size="10" id="from" name="budget_period_startdate" value="[% budget_period_startdate | $KohaDates %]" class="datepickerfrom" />
                                <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
     </li>
     <li>
 
-    <label class="required" for="to">End date</label>
+    <label class="required" for="to">End date</label>
     <input type="text" size="10" id="to" name="budget_period_enddate" value="[% budget_period_enddate | $KohaDates %]" class="datepickerto" />
                                <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
     </li>
     <input type="hidden" name="budget_period_id" value="[% budget_period_id %]" />
     <ol>
     <li>
-    <label class="required" for="from">Start date</label>
+    <label class="required" for="from">Start date</label>
     <input type="text" size="10" id="from" name="budget_period_startdate" value="[% budget_period_startdate | $KohaDates %]" class="datepickerfrom" />
                                <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
     </li>
     <li>
 
-    <label class="required" for="to">End date</label>
+    <label class="required" for="to">End date</label>
     <input type="text" size="10" id="to" name="budget_period_enddate" value="[% budget_period_enddate | $KohaDates %]" class="datepickerto" />
                                <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
     </li>
     <li>
         <!-- DESCRIPTION -->
         <!-- ############################## -->
-        <label class="required" for="budget_period_description">Description</label>
+        <label class="required" for="budget_period_description">Description</label>
         <input type="text" id="budget_period_description" name="budget_period_description"
         size="48" maxlength="80" value="[% budget_period_description %]" />
     </li>
     <li>
         <!-- TOTAL -->
         <!-- ############################## -->
-        <label for="budget_period_total">Total amount</label>
+        <label for="budget_period_total">Total amount</label>
         <input type="text" id="budget_period_total" name="budget_period_total"
         size="10" maxlength="80" value="[% budget_period_total %]" />
     </li>
     <li>
         <!-- ACTIVE -->
         <!-- ############################## -->
-        <label for="budget_period_active">Make budget active</label>
+        <label for="budget_period_active">Make budget active</label>
         [% IF ( budget_period_active ) %]<input type="checkbox" checked="checked" id="budget_period_active" name="budget_period_active" value="1" />[% ELSE %]  <input type="checkbox" id="budget_period_active" name="budget_period_active" value="1"/> [% END %]
     </li>
 
     <li>
         <!-- LOCK  -->
         <!-- ############################## -->
-        <label for="budget_period_locked">Lock budget</label>
+        <label for="budget_period_locked">Lock budget</label>
         [% IF ( budget_period_locked ) %]<input type="checkbox" checked="checked" id="budget_period_locked" name="budget_period_locked" value="1" />[% ELSE %]  <input type="checkbox" id="budget_period_locked" name="budget_period_locked" value="1"/> [% END %]
     </li>
     </ol>
index af0f086..95e4f8f 100644 (file)
 //]]>
 </script>
 [% ELSE %]
-<link href="[% themelang %]/lib/jquery/plugins/treetable/stylesheets/jquery.treeTable.css" rel="stylesheet" type="text/css" />
+    [% IF ( notree ) %]
+        <link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+        <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+        [% INCLUDE 'datatables-strings.inc' %]
+        <script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
+    [% ELSE %]
+        <link href="[% themelang %]/lib/jquery/plugins/treetable/stylesheets/jquery.treeTable.css" rel="stylesheet" type="text/css" />
+        <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/treetable/jquery.treeTable.min.js"></script>
+    [% END %]
 
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/treetable/jquery.treeTable.min.js"></script>
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.qtip.js"></script>
 
 <script type="text/javascript">
             }
         });
         [% IF ( notree ) %]
-        $("#budgeth").tablesorter({
-            widgets : ['zebra'],
-            sortList: [[0,0]],
-            headers: { 7: { sorter: false }}
-        });
+            $("#budgeth").dataTable($.extend(true, {}, dataTablesDefaults, {
+                "aoColumnDefs": [
+                    { "aTargets": [ -1 ], "bSortable": false, "bSearchable": false },
+                ],
+                "aLengthMenu": [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]],
+                "iDisplayLength": 20,
+                "sPaginationType": "four_button"
+            }));
         [% ELSE %]
         $("#budgeth").treeTable();
         [% END %]
 
 [% INCLUDE 'budgets-active-currency.inc' %]
 
+[% IF ( budget ) %]
+
 <table id="budgeth">
     <thead>
         <tr>
     </tr>
     </tfoot>
     <tbody>
-    [% IF ( budget ) %]
         [% FOREACH budge IN budget %]
     [% IF ( budge.toggle ) %]
     <tr id="node-[% budge.budget_id %]" class="highlight[% IF ( budge.budget_parent_id ) %] child-of-node-[% budge.budget_parent_id %][% END %] tooltiped">
         </td>
     [% END %]
     </tr>
-        [% END %]
-    [% ELSE %]
-        <tr><td colspan="12">No fund found</td></tr>
     [% END %]
     </tbody>
 </table>
 
+[% ELSE %]
+    No fund found
+[% END %]
+
 [% IF ( pagination_bar ) %]<div class="pages">[% pagination_bar %]</div>[% END %]
 [% END %] <!-- else -->
 
index 969869c..34040bd 100644 (file)
@@ -108,17 +108,17 @@ function Check(ff) {
                                             <input type="hidden" name="is_a_modif" value="1" />
                                         </li>
                                 [% END %]
-                                <li><label for="contractname" class="required">Name *</label> &nbsp;
+                                <li><label for="contractname" class="required">Name: *</label> &nbsp;
                                         <input type="text" name="contractname" id="contractname" size="40" maxlength="80" value="[% contractname %]" />
                                 </li>
-                                <li><label for="contractdescription">Description</label> &nbsp;
+                                <li><label for="contractdescription">Description</label> &nbsp;
                                         <input type="text" name="contractdescription" id="contractdescription" size="40" maxlength="80" value="[% contractdescription %]" />
                                 </li>
-                                <li><label for="from" class="required">Start date *</label> &nbsp;
+                                <li><label for="from" class="required">Start date: *</label> &nbsp;
                                         <input type="text" name="contractstartdate" id="from" value="[% contractstartdate %]" maxlength="10" size="10" class="datepickerfrom" />
                                <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
                                 </li>
-                                <li><label for="to" class="required">End date *</label> &nbsp;
+                                <li><label for="to" class="required">End date: *</label> &nbsp;
                                         <input type="text" name="contractenddate" id="to" value="[% contractenddate %]" maxlength="10"  size="10" class="datepickerto" />
                                <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
                                 </li>
index d35d37e..fc61789 100644 (file)
@@ -137,24 +137,24 @@ return false;
         [% IF ( heading_modify_tag_p ) %]<input type="hidden" name="modif" value="1" />[% END %]
         <input type="hidden" name="authtypecode" value="[% authtypecode %]" />
         <fieldset class="rows"><ol>
-        <li><span class="label">Tag</span>[% searchfield %]</li>
-        <li><label for="liblibrarian">Text for librarians</label><input type="text" name="liblibrarian" id="liblibrarian" value="[% liblibrarian |html %]" size="40" maxlength="100" /></li>
-        <li><label for="libopac">Text for opac</label><input type="text" name="libopac" id="libopac" value="[% libopac |html %]" size="40" maxlength="100" /></li>
-        <li><label for="repeatable">Repeatable</label>
+        <li><span class="label">Tag</span>[% searchfield %]</li>
+        <li><label for="liblibrarian">Text for librarians</label><input type="text" name="liblibrarian" id="liblibrarian" value="[% liblibrarian |html %]" size="40" maxlength="100" /></li>
+        <li><label for="libopac">Text for opac</label><input type="text" name="libopac" id="libopac" value="[% libopac |html %]" size="40" maxlength="100" /></li>
+        <li><label for="repeatable">Repeatable</label>
             [% IF ( repeatable ) %]
                 <input type="checkbox" name="repeatable" id="repeatable" value="1" checked="checked" />
             [% ELSE %]
                 <input type="checkbox" name="repeatable" id="repeatable" value="1" />
             [% END %]
         </li>
-        <li><label for="mandatory">Mandatory</label>
+        <li><label for="mandatory">Mandatory</label>
             [% IF ( mandatory ) %]
                 <input type="checkbox" name="mandatory" id="mandatory" value="1" checked="checked" />
             [% ELSE %]
                 <input type="checkbox" name="mandatory" id="mandatory" value="1" />
             [% END %]
             </li>
-        <li><label for="authorised_value">Authorized value</label>[% authorised_value %] (if you select a value here, the indicators will be limited to the authorized value list)</li>
+        <li><label for="authorised_value">Authorized value</label>[% authorised_value %] (if you select a value here, the indicators will be limited to the authorized value list)</li>
 </ol></fieldset>
         <p><input type="button" value="Submit" class="button" onclick="Check(this.form)" /></p>
     </form>
index 790f0b5..5ba3072 100644 (file)
@@ -80,14 +80,14 @@ $(document).ready(function() {
     <input type="hidden" name="offset" value="[% offset %]" />
         <fieldset class="rows"><ol>
         <li>
-                        [% IF ( action_add_category ) %]<label for="category">Category</label>
+        [% IF ( action_add_category ) %]<label for="category">Category: </label>
             <input type="text" name="category"  id="category" size="10" maxlength="10" class="focus" />
                         [% ELSE %]<span class="label">Category</span>
                <input type="hidden" name="category" value="[% category %]" />   [% category %]
                         [% END %]
         </li>
         <li>
-            <label for="authorised_value">Authorized value</label>
+            <label for="authorised_value">Authorized value</label>
      [% IF ( action_modify ) %]<input type="hidden" id="id" name="id" value="[% id %]" />[% END %]
             [% IF ( action_add_category ) %]
             <input type="text" id="authorised_value" name="authorised_value" value="[% authorised_value %]" maxlength="80" />
@@ -96,16 +96,16 @@ $(document).ready(function() {
             [% END %]
         </li>
         <li>
-            <label for="lib">Description</label>
+            <label for="lib">Description</label>
             <input type="text" name="lib" id="lib" value="[% lib %]" maxlength="200" />
         </li>
        <li>
-            <label for="lib_opac">Description (OPAC)</label>
+            <label for="lib_opac">Description (OPAC)</label>
             <input type="text" name="lib_opac" id="lib_opac" value="[% lib_opac %]" maxlength="200" />
         </li>
-        <li><label for="branches">Branches limitation: </label>
+        <li><label for="branches">Libraries limitation: </label>
             <select id="branches" name="branches" multiple size="10">
-                <option value="">All branches</option>
+                <option value="">All libraries</option>
                 [% FOREACH branch IN branches_loop %]
                   [% IF ( branch.selected ) %]
                     <option selected="selected" value="[% branch.branchcode %]">[% branch.branchname %]</option>
@@ -114,7 +114,7 @@ $(document).ready(function() {
                   [% END %]
                 [% END %]
             </select>
-            <span>Select All if this authorised value must to be displayed all the time. Otherwise select librairies you want to associate with this value.
+            <span>Select All if this authorised value must to be displayed all the time. Otherwise select libraries you want to associate with this value.
             </span>
         </li>
 
@@ -134,7 +134,7 @@ $(document).ready(function() {
   [% FOREACH imageset IN imagesets %]
   <div id="[% imageset.imagesetname %]"><ul>
   [% FOREACH image IN imageset.images %]
-                       <li style="float: none; display: inline; clear : none; width: auto;">
+                       <li style="float: none; display: inline-block; clear : none; width: auto;">
             <label> [% IF ( image.StaffImageUrl ) %]
               <img src="[% image.StaffImageUrl %]" alt="[% image.StaffImageUrl %]" title="[% image.StaffImageUrl %]" />
         [% ELSE %]
index 1458d10..c4fee12 100644 (file)
@@ -149,13 +149,13 @@ function Check(f) {
     <fieldset class="rows">
     <ol>
        [% IF ( frameworkcode ) %]
-        <li><span class="label">Framework code</span><input type="hidden" id="frameworkcode" name="frameworkcode" value="[% frameworkcode %]" />[% frameworkcode %]
+        <li><span class="label">Framework code</span><input type="hidden" id="frameworkcode" name="frameworkcode" value="[% frameworkcode %]" />[% frameworkcode %]
             <input type="hidden" name="modif" value="1" />
         </li>
        [% ELSE %]
-        <li><label for="frameworkcode">Framework code</label><input type="text" id="frameworkcode" name="frameworkcode" size="4" maxlength="4" onblur="toUC(this)" /></li>
+        <li><label for="frameworkcode">Framework code</label><input type="text" id="frameworkcode" name="frameworkcode" size="4" maxlength="4" onblur="toUC(this)" /></li>
        [% END %]
-        <li><label for="description">Description</label>
+        <li><label for="description">Description</label>
         <input type="text" name="frameworktext" id="description" size="40" maxlength="80" value="[% frameworktext |html %]" /></li></ol></fieldset>
         <fieldset class="action">      <input type="submit" value="Submit" class="submit" /></fieldset>
     </form>
index 4404e28..902f809 100644 (file)
@@ -15,7 +15,7 @@
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
 [% INCLUDE 'datatables-strings.inc' %]
 <script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
-<script type="text/javascript" src="[% themelang %]/js/tinymce/jscripts/tiny_mce/tiny_mce.js"></script>
+<script type="text/javascript" src="[% interface %]/lib/tiny_mce/tiny_mce.js"></script>
 <script type="text/javascript">
 //<![CDATA[
     $(document).ready(function() {
@@ -32,17 +32,15 @@ tinyMCE.init({
     mode : "textareas",
     theme : "advanced",
     content_css : "[% themelang %]/css/tinymce.css",
-    plugins : "table,save,advhr,advlink,iespell,contextmenu",
+    plugins : "table,save,advhr,advlink,contextmenu",
     theme_advanced_buttons1 : "save,|,bold,italic,|,cut,copy,paste,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,|,link,unlink,anchor,cleanup,help,code,advhr,",
     theme_advanced_buttons2 : "tablecontrols,|,bullist,numlist,|,outdent,indent,|,undo,redo,|,removeformat,|,visualaid,|,sub,sup,|,charmap",
-    theme_advanced_buttons3 : "",
+    // theme_advanced_buttons3 : "",
     theme_advanced_toolbar_location : "top",
     theme_advanced_toolbar_align : "left",
     theme_advanced_path_location : "bottom",
     theme_advanced_resizing : true,
-    apply_source_formatting : true,
-    height : "300",
-    width : "700"
+    apply_source_formatting : true
 });
 //]]>
 </script>
@@ -81,7 +79,7 @@ tinyMCE.init({
 [% IF ( add ) %]
     [% IF ( ERROR1 ) %]<div class="dialog message">Library with that code already exists &mdash; Please enter a unique code</div>[% END %]
   <h3>[% IF ( heading_branches_add_branch_p ) %]New library[% ELSE %]Modify library[% END %]</h3>
-    <form action="[% action %]" name="Aform" method="post">
+    <form action="[% action %]" id="Aform" name="Aform" class="validated" method="post">
        <fieldset class="rows">
         <input type="hidden" name="op" value="add_validate" />
         [% IF ( heading_branches_add_branch_p ) %]
@@ -91,24 +89,24 @@ tinyMCE.init({
         [% END %]
         <ol><li>
             [% IF ( heading_branches_add_branch_p ) %]
-            <label for="branchcode">Library code</label>
-                <input type="text" name="branchcode" id="branchcode" size="10" maxlength="10" value="[% branchcode |html %]" />
+            <label for="branchcode" class="required">Library code: </label>
+                <input type="text" name="branchcode" id="branchcode" size="10" maxlength="10" value="[% branchcode |html %]" class="required" required="required" /> <span class="required">Required</span>
             [% ELSE %]
-                       <label for="branchcode">Library code</label>
+            <label for="branchcode" class="required">Library code: </label>
                 <input type="hidden" name="branchcode" value="[% branchcode |html %]" />
                 [% branchcode %]
             [% END %]
         </li>
         <li>
-            <label for="branchname">Name</label>
-            <input type="text" name="branchname" id="branchname" size="80" value="[% branch_name |html %]" />&nbsp;
+            <label for="branchname" class="required">Name: </label>
+            <input type="text" name="branchname" id="branchname" size="80" value="[% branch_name |html %]" class="required" required="required" /> <span class="required">Required</span>
         </li>
        </ol>
        </fieldset>
        [% IF ( categoryloop ) %]<fieldset class="rows"><legend>Group(s):</legend>
         <ol>
                [% FOREACH categoryloo IN categoryloop %]
-            <li><label for="[% categoryloo.categorycode %]">[% categoryloo.categoryname %]</label>
+            <li><label for="[% categoryloo.categorycode %]">[% categoryloo.categoryname %]</label>
                 [% IF ( categoryloo.checked ) %]
                     <input type="checkbox" id="[% categoryloo.categorycode %]" name="[% categoryloo.categorycode %]" checked="checked" />
                 [% ELSE %]
@@ -121,21 +119,21 @@ tinyMCE.init({
 </fieldset>[% END %]
        <fieldset class="rows">
        <ol>
-        <li><label for="branchaddress1">Address line 1</label><input type="text" name="branchaddress1" id="branchaddress1" value="[% branchaddress1 |html %]" /></li>
-        <li><label for="branchaddress2">Address line 2</label><input type="text" name="branchaddress2" id="branchaddress2" value="[% branchaddress2 |html %]" /></li>
-        <li><label for="branchaddress3">Address line 3</label><input type="text" name="branchaddress3" id="branchaddress3" value="[% branchaddress3 |html %]" /></li>
-        <li><label for="branchcity">City</label><input type="text" name="branchcity" id="branchcity" value="[% branchcity |html %]" /></li>
-        <li><label for="branchstate">State</label><input type="text" name="branchstate" id="branchstate" value="[% branchstate |html %]" /></li>
-        <li><label for="branchzip">Zip/Postal code</label><input type="text" name="branchzip" id="branchzip" value="[% branchzip |html %]" /></li>
-        <li><label for="branchcountry">Country</label><input type="text" name="branchcountry" id="branchcountry" value="[% branchcountry |html %]" /></li>
-        <li><label for="branchphone">Phone</label><input type="text" name="branchphone" id="branchphone" value="[% branchphone |html %]" /></li>
-        <li><label for="branchfax">Fax</label><input type="text" name="branchfax" id="branchfax" value="[% branchfax |html %]" /></li>
-        <li><label for="branchemail">Email</label><input type="text" name="branchemail" id="branchemail" value="[% branchemail |html %]" /></li>
-        <li><label for="branchurl">URL</label><input type="text" name="branchurl" id="branchurl" value="[% branchurl |html %]" /></li>
-        <li><label for="opac_info">OPAC info</label><textarea name="opac_info" id="opac_info">[% opac_info |html %]</textarea></li>
-        <li><label for="branchip">IP</label><input type="text" name="branchip" id="branchip" value="[% branchip |html %]" /> <span class="hint">Can be entered as a single IP, or a subnet such as 192.168.1.*</span></li>
+        <li><label for="branchaddress1">Address line 1</label><input type="text" name="branchaddress1" id="branchaddress1" value="[% branchaddress1 |html %]" /></li>
+        <li><label for="branchaddress2">Address line 2</label><input type="text" name="branchaddress2" id="branchaddress2" value="[% branchaddress2 |html %]" /></li>
+        <li><label for="branchaddress3">Address line 3</label><input type="text" name="branchaddress3" id="branchaddress3" value="[% branchaddress3 |html %]" /></li>
+        <li><label for="branchcity">City</label><input type="text" name="branchcity" id="branchcity" value="[% branchcity |html %]" /></li>
+        <li><label for="branchstate">State</label><input type="text" name="branchstate" id="branchstate" value="[% branchstate |html %]" /></li>
+        <li><label for="branchzip">Zip/Postal code</label><input type="text" name="branchzip" id="branchzip" value="[% branchzip |html %]" /></li>
+        <li><label for="branchcountry">Country</label><input type="text" name="branchcountry" id="branchcountry" value="[% branchcountry |html %]" /></li>
+        <li><label for="branchphone">Phone</label><input type="text" name="branchphone" id="branchphone" value="[% branchphone |html %]" /></li>
+        <li><label for="branchfax">Fax</label><input type="text" name="branchfax" id="branchfax" value="[% branchfax |html %]" /></li>
+        <li><label for="branchemail">Email: </label><input type="text" name="branchemail" id="branchemail" class="email" value="[% branchemail |html %]" /></li>
+        <li><label for="branchurl">URL: </label><input type="text" name="branchurl" id="branchurl" value="[% branchurl |html %]" class="url" /></li>
+        <li><label for="opac_info">OPAC info</label><textarea name="opac_info" id="opac_info">[% opac_info |html %]</textarea></li>
+        <li><label for="branchip">IP</label><input type="text" name="branchip" id="branchip" value="[% branchip |html %]" /> <span class="hint">Can be entered as a single IP, or a subnet such as 192.168.1.*</span></li>
                <!--
-        <li><label for="branchprinter">Library Printer</label>
+        <li><label for="branchprinter">Library Printer</label>
             <select id="branchprinter" name="branchprinter">
                 <option value="">None</option>
             [% FOREACH printerloo IN printerloop %]
@@ -147,7 +145,7 @@ tinyMCE.init({
                 [% END %]
             </select></li>
                        -->
-        <li><label for="branchnotes">Notes</label><input type="text" name="branchnotes" id="branchnotes" value="[% branchnotes |html %]" /></li>
+        <li><label for="branchnotes">Notes</label><input type="text" name="branchnotes" id="branchnotes" value="[% branchnotes |html %]" /></li>
         </ol>
         </fieldset>
         <fieldset class="action"><input type="submit" value="Submit" /> <a class="cancel" href="/cgi-bin/koha/admin/branches.pl">Cancel</a></fieldset>
@@ -335,6 +333,14 @@ tinyMCE.init({
             [% END %]
             </select>
                </li>
+        <li>
+            <label for="show_in_pulldown">Show in search pulldown: </label>
+            [% IF ( show_in_pulldown ) %]
+                <input type="checkbox" name="show_in_pulldown" id="show_in_pulldown" checked="checked"/>
+            [% ELSE %]
+                <input type="checkbox" name="show_in_pulldown" id="show_in_pulldown" />
+            [% END %]
+        </li>
                </ol>
     </fieldset>
        <fieldset class="action"><input type="submit" value="Update" /></fieldset>
index ad57315..98e09ff 100644 (file)
        [% END %]
        <fieldset class="rows">
        <ol>[% IF ( categorycode ) %]
-       <li><span class="label">Category code</span>[% categorycode |html %]
+    <li><span class="label">Category code: </span>[% categorycode |html %]
                                <input type="hidden" name="categorycode" value="[% categorycode |html %]" /><input type="hidden" name="is_a_modif" value="1" /></li>
        [% ELSE %]
-       <li><label for="categorycode">Category code: </label> <input type="text" name="categorycode" id="categorycode" size="10" maxlength="10" onblur="toUC(this)" /></li>
+    <li><label for="categorycode">Category code: </label> <input type="text" name="categorycode" id="categorycode" size="10" maxlength="10" onblur="toUC(this)" /></li>
        [% END %]
        <li><label for="description">Description: </label> <input type="text" name="description" id="description" size="40" maxlength="80" value="[% description |html %]" /></li>
        <li><label for="enrolmentperiod">Enrollment period: </label>
                                                <option value="1">Yes</option>
                        [% END %]
                                        </select></li>
-       <li><label for="hidelostitems">Lost items in staff client</label> <select name="hidelostitems" id="hidelostitems">
+    <li><label for="hidelostitems">Lost items in staff client: </label> <select name="hidelostitems" id="hidelostitems">
                        [% IF ( hidelostitems ) %]
                                                <option value="0">Shown</option>
                                                <option value="1" selected="selected">Hidden by default</option>
index f21a998..210b575 100644 (file)
@@ -147,19 +147,19 @@ Item types administration
        <ol>
   [% IF ( itemtype ) %]
       <li>
-          <span class="label">Item type</span> <input type="hidden" name="itemtype" value="[% itemtype %]" />
+          <span class="label">Item type</span> <input type="hidden" name="itemtype" value="[% itemtype %]" />
           [% itemtype %]
      </li>
   [% ELSE %]
       <li>
-          <label for="itemtype">Item type</label> <input type="text" id="itemtype" name="itemtype" size="10" maxlength="10" onblur="toUC(this)" class="focus" />
+          <label for="itemtype">Item type</label> <input type="text" id="itemtype" name="itemtype" size="10" maxlength="10" onblur="toUC(this)" class="focus" />
       </li>
   [% END %]
       <li>
       [% IF ( itemtype ) %]
-          <label for="description">Description</label><input type="text" id="description" name="description" size="48" value="[% description |html %]" class="focus" /></li>
+          <label for="description">Description</label><input type="text" id="description" name="description" size="48" value="[% description |html %]" class="focus" /></li>
       [% ELSE %]
-          <label for="description">Description</label><input type="text" id="description" name="description" size="48" value="[% description |html %]" /></li>
+          <label for="description">Description</label><input type="text" id="description" name="description" size="48" value="[% description |html %]" /></li>
       [% END %]
      [% IF ( noItemTypeImages ) %]
         <li><span class="label">Image: </span>Item type images are disabled. To enable them, turn off the <a href="/cgi-bin/koha/admin/preferences.pl?op=search&amp;searchfield=noItemTypeImages">noItemTypeImages system preference</a></li></ol>
@@ -181,7 +181,7 @@ Item types administration
   [% FOREACH imageset IN imagesets %]
   <div id="[% imageset.imagesetname %]"><ul>
   [% FOREACH image IN imageset.images %]
-                       <li style="float: none; display: inline; clear : none; width: auto;">
+                       <li style="float: none; display: inline-block; clear : none; width: auto;">
             <label> [% IF ( image.StaffImageUrl ) %]
               <img src="[% image.StaffImageUrl %]" alt="[% image.StaffImageUrl %]" title="[% image.StaffImageUrl %]" />
         [% ELSE %]
@@ -216,7 +216,7 @@ Item types administration
 </div>
 <ol>
       <li>
-          <label for="notforloan">Not for loan</label>   [% IF ( notforloan ) %]
+          <label for="notforloan">Not for loan</label>   [% IF ( notforloan ) %]
                 <input type="checkbox" id="notforloan" name="notforloan" checked="checked" value="1" />
             [% ELSE %]
                 <input type="checkbox" id="notforloan" name="notforloan" value="1" />
index a0177db..e4918e0 100644 (file)
@@ -17,6 +17,11 @@ $(document).ready(function() {
                 link.html(_("Display more constraints"));
             }
     });
+    $("input[id^='hidden_']").click(setHiddenValue);
+    $("input[id^='hidden-']").each(function() {
+            populateHiddenCheckboxes($(this).attr('id').split('-')[1]);
+    });
+
 });
 
 /*function displayMoreConstraint(numlayer){
@@ -30,6 +35,140 @@ $(document).ready(function() {
     }
 }*/
 
+/* Function to enable/disable hidden values checkboxes when Flag is (de)selected */
+function enable_cb(tab) {
+    if ($("#hidden_flagged_" + tab).is(':checked')) {
+        $('.inclusive_' + tab).attr('disabled',true).removeAttr('checked');
+    }
+    else {
+        $('.inclusive_' + tab).removeAttr('disabled');
+    }
+}
+
+/* Function to serialize and set the 'hidden' field */
+function setHiddenValue() {
+
+    var tab = $(this).attr('id').split('_')[2];
+    var flagged_checked = $("#hidden_flagged_" + tab).is(':checked');
+    var opac_checked = $("#hidden_opac_" + tab).is(':checked');
+    var intranet_checked = $("#hidden_intranet_" + tab).is(':checked');
+    var editor_checked = $("#hidden_editor_" + tab).is(':checked');
+    var collapsed_checked = $("#hidden_collapsed_" + tab).is(':checked');
+    var hidden_value = "";
+
+    if ( flagged_checked ) {
+        hidden_value='-8';
+    } else if ( opac_checked && ! intranet_checked && ! editor_checked && collapsed_checked ) {
+        hidden_value='-7';
+    } else if ( opac_checked && intranet_checked && ! editor_checked && ! collapsed_checked) {
+        hidden_value='-6';
+    } else if ( opac_checked && intranet_checked && ! editor_checked && collapsed_checked) {
+        hidden_value='-5';
+    } else if ( opac_checked && ! intranet_checked && ! editor_checked && ! collapsed_checked) {
+        hidden_value='-4';
+    } else if ( opac_checked && ! intranet_checked && editor_checked && collapsed_checked) {
+        hidden_value='-3';
+    } else if ( opac_checked && ! intranet_checked && editor_checked && ! collapsed_checked) {
+        hidden_value='-2';
+    } else if ( opac_checked && intranet_checked && editor_checked && collapsed_checked) {
+        hidden_value='-1';
+    } else if ( opac_checked && intranet_checked && editor_checked && ! collapsed_checked) {
+        hidden_value='0';
+    } else if ( ! opac_checked && intranet_checked && editor_checked && collapsed_checked) {
+        hidden_value='1';
+    } else if ( ! opac_checked && ! intranet_checked && editor_checked && ! collapsed_checked) {
+        hidden_value='2';
+    } else if ( ! opac_checked && ! intranet_checked && editor_checked && collapsed_checked) {
+        hidden_value='3';
+    } else if ( ! opac_checked && intranet_checked && editor_checked && ! collapsed_checked) {
+        hidden_value='4';
+    } else if ( ! opac_checked && ! intranet_checked && ! editor_checked && collapsed_checked) {
+        hidden_value='5';
+    } else if ( ! opac_checked && intranet_checked && ! editor_checked && ! collapsed_checked) {
+        hidden_value='6';
+    } else if ( ! opac_checked && intranet_checked && ! editor_checked && collapsed_checked) {
+        hidden_value='7';
+    } else if ( ! opac_checked && ! intranet_checked && ! editor_checked && ! collapsed_checked) {
+        hidden_value='8';
+    }
+
+    enable_cb(tab);
+
+    $('#hidden-' + tab).val(hidden_value);
+
+}
+
+function populateHiddenCheckboxes(tab) {
+    // read the serialized value
+    var hidden_value = $('#hidden-' + tab).val();
+    // deafult to false
+    var opac_checked = false;
+    var intranet_checked = false;
+    var editor_checked = false;
+    var collapsed_checked = false;
+    var flagged_checked = false;
+
+    if ( hidden_value == '-8' ) {
+        flagged_checked = true;
+    } else if ( hidden_value == '-7') {
+        opac_checked = true;
+        collapsed_checked = true;
+    } else if ( hidden_value == '-6' ) {
+        opac_checked = true;
+        intranet_checked = true;
+    } else if ( hidden_value == '-5') {
+        opac_checked = true;
+        intranet_checked = true;
+        collapsed_checked = true;
+    } else if ( hidden_value == '-4' ) {
+        opac_checked = true;
+    } else if ( hidden_value == '-3') {
+        opac_checked = true;
+        editor_checked = true;
+        collapsed_checked = true;
+    } else if ( hidden_value == '-2' ) {
+        opac_checked = true;
+        editor_checked = true;
+    } else if ( hidden_value == '-1' ) {
+        opac_checked = true;
+        intranet_checked = true;
+        editor_checked = true;
+        collapsed_checked = true;
+    } else if ( hidden_value == '0' ) {
+        opac_checked = true;
+        intranet_checked = true;
+        editor_checked = true;
+    } else if ( hidden_value == '1' ) {
+        intranet_checked = true;
+        editor_checked = true;
+        collapsed_checked = true;
+    } else if ( hidden_value == '2' ) {
+        editor_checked = true;
+    } else if ( hidden_value == '3' ) {
+        editor_checked = true;
+        collapsed_checked = true;
+    } else if ( hidden_value == '4' ) {
+        intranet_checked = true;
+        editor_checked = true;
+    } else if ( hidden_value == '5' ) {
+        collapsed_checked = true;
+    } else if ( hidden_value == '6' ) {
+        intranet_checked = true;
+    } else if ( hidden_value == '7' ) {
+        intranet_checked = true;
+        collapsed_checked = true;
+    } // else if ( hidden_value == '8') { skip }
+
+    $("#hidden_opac_" + tab).attr('checked',opac_checked);
+    $("#hidden_intranet_" + tab).attr('checked',intranet_checked);
+    $("#hidden_editor_" + tab).attr('checked',editor_checked);
+    $("#hidden_collapsed_" + tab).attr('checked',collapsed_checked);
+    $("#hidden_flagged_" + tab).attr('checked',flagged_checked);
+
+    enable_cb(tab);
+
+}
+
 //]]>
 </script>
 </head>
@@ -111,7 +250,19 @@ $(document).ready(function() {
                 <ol><li><label for="defaultvalue[% loo.row %]">Default value:</label>
                     <input type="text" name="defaultvalue" id="defaultvalue[% loo.row %]" value="[% loo.defaultvalue %]" /></li>
                                <li><label for="maxlength[% loo.row %]">Max length:</label><input type="text" id="maxlength[% loo.row %]" name="maxlength" value="[% loo.maxlength %]" size="4" /> (see online help)</li>
-                <li><label for="hidden[% loo.row %]">hidden</label><input type="text" id="hidden[% loo.row %]" name="hidden" value="[% loo.hidden %]" size="2" /> (see online help)</li>
+                <li><input type="hidden" id="hidden-[% loo.row %]" name="hidden" value="[% loo.hidden %]" />
+                    <label for="hidden[% loo.row %]" style="float: none;">Visibility: </label>
+                    <input type="checkbox" id="hidden_opac_[% loo.row %]" class="inclusive_[% loo.row %]" name="hidden_opac_[% loo.row %]"/>
+                    <label for="hidden_opac_[% loo.row %]" style="float: none;">OPAC</label>
+                    <input type="checkbox" id="hidden_intranet_[% loo.row %]" class="inclusive_[% loo.row %]" name="hidden_intranet_[% loo.row %]"/>
+                    <label for="hidden_intranet_[% loo.row %]" style="float: none;">Intranet</label>
+                    <input type="checkbox" id="hidden_editor_[% loo.row %]" class="inclusive_[% loo.row %]" name="hidden_editor_[% loo.row %]"/>
+                    <label for="hidden_editor_[% loo.row %]" style="float: none;">Editor</label>
+                    <input type="checkbox" id="hidden_collapsed_[% loo.row %]" class="inclusive_[% loo.row %]" name="hidden_collapsed_[% loo.row %]"/>
+                    <label for="hidden_collapsed_[% loo.row %]" style="float: none;">Collapsed</label>
+                    <input type="checkbox" id="hidden_flagged_[% loo.row %]" name="flagged_[% loo.row %]"/>
+                    <label for="hidden_flagged_[% loo.row %]" style="float: none;">Flagged</label>
+                </li>
                 <li><label for="isurl[% loo.row %]">Is a URL:</label>[% loo.isurl %] (if checked, it means that the subfield is a URL and can be clicked)</li>
                 <li><label for="link[% loo.row %]">Link:</label><input type="text" id="link[% loo.row %]" name="link" value="[% loo.link %]" size="10" maxlength="80" /> (e.g., Title or Local-Number) <span class="error"><em>NOTE: If you change this value you must ask your administrator to run misc/batchRebuildBiblioTables.pl.</em></span></li>
                 <li><label for="kohafield[% loo.row %]">Koha link:</label>[% loo.kohafield %]</li>
index 8886fcf..91e7251 100644 (file)
@@ -5,14 +5,11 @@
 [% IF ( delete_confirmed ) %]MARC frameworks &rsaquo;  Data deleted[% END %]
 [% IF ( else ) %]MARC frameworks[% END %]</title>
 [% INCLUDE 'doc-head-close.inc' %]
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.pager.js"></script>
-<script type="text/javascript" id="js">$(document).ready(function() {
-       $("#table_marctagstructure").tablesorter({
-               sortList: [[0,0]],
-               headers: { 5: { sorter: false},6: { sorter: false},7: { sorter: false}}
-       }).tablesorterPager({container: $("#pagertable_marctagstructure"),positionFixed: false,size: 20});
-}); </script>
+<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
+
 <script type="text/javascript">
 //<![CDATA[
 function Check(f) {
@@ -30,6 +27,18 @@ function Check(f) {
         alert(alertString2);
     }
 }
+
+$(document).ready(function() {
+    $("#table_marctagstructure").dataTable($.extend(true, {}, dataTablesDefaults, {
+        "aoColumnDefs": [
+            { "aTargets": [ -1, -2, -3 ], "bSortable": false, "bSearchable": false },
+        ],
+        "aLengthMenu": [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]],
+        "iDisplayLength": 20,
+        "sPaginationType": "four_button"
+    }));
+});
+
 //]]>
 </script>
 </head>
@@ -152,11 +161,10 @@ function Check(f) {
         [% END %]</p>
 </fieldset>
 </form>
-<div id="pagertable_marctagstructure">
-[% INCLUDE 'table-pager.inc' perpage='20' %]
-</div>
+
     <table id="table_marctagstructure">
     <thead>
+        <tr>
         <th>Tag</th>
         <th>Lib</th>
         <th>Repeatable</th>
@@ -165,8 +173,9 @@ function Check(f) {
         <th>Subfields</th>
         <th>Edit</th>
         <th>Delete</th>
+        </tr>
        </thead>
-
+    <tbody>
     [% IF ( select_display ) %]
         [% FOREACH loo IN loop %]
             [% IF ( loop.odd ) %]<tr>[% ELSE %]<tr class="highlight">[% END %]
@@ -204,6 +213,7 @@ function Check(f) {
     </tr>
     [% END %]
     [% END %]
+    </tbody>
     </table>
 
 
index 04ebe76..be7ed9f 100644 (file)
@@ -6,6 +6,9 @@
 [% INCLUDE 'datatables-strings.inc' %]
 <script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
 <link rel="stylesheet" type="text/css" href="[% themelang %]/css/preferences.css" />
+[% IF ( bidi ) %]
+   <link rel="stylesheet" type="text/css" href="[% themelang %]/css/right-to-left.css" />
+[% END %]
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.fixFloat.js"></script>
 <script type="text/javascript">
 //<![CDATA[
@@ -23,9 +26,9 @@
     var MSG_CLICK_TO_EXPAND = _("Click to expand this section");
     var MSG_CLICK_TO_COLLAPSE = _("Click to collapse this section");
     var MSG_INTERNAL_SERVER_ERROR = _( "Internal Server Error, please reload the page" );
-    var MSG_SESSION_TIMED_OUT = _( 'You need to log in again, your session has timed out' );
-    var MSG_DATA_NOT_SAVED = _( 'Error; your data might not have been saved' );
-    var MSG_LOADING = _( 'Loading...' );
+    var MSG_SESSION_TIMED_OUT = _( "You need to log in again, your session has timed out" );
+    var MSG_DATA_NOT_SAVED = _( "Error; your data might not have been saved" );
+    var MSG_LOADING = _( "Loading..." );
 
 //]]>
 </script>
index 10bdac5..d1225b4 100644 (file)
@@ -22,6 +22,17 @@ OPAC:
                   no: Disable
             - "Koha OPAC as public. Private OPAC requires authentification before accessing the OPAC."
         -
+            - pref: HighlightOwnItemsOnOPAC
+              choices:
+                  yes: Emphasize
+                  no: "Don't emphasize"
+            - "results from the "
+            - pref: HighlightOwnItemsOnOPACWhich
+              choices:
+                  PatronBranch: "patron's home branch"
+                  OpacURLBranch: "OPAC's branch via the URL"
+            - " by moving the results to the front and increasing the size or highlighting the rows for those results. (Non-XSLT Only)"
+        -
             - "Show star-ratings on"
             - pref: OpacStarRatings
               choices:
index 586d72f..c52b77e 100644 (file)
@@ -4,11 +4,83 @@
 [% INCLUDE 'calendar.inc' %]
 <script type="text/javascript">
 //<![CDATA[
+
+function clear_edit(){
+    var cancel = confirm(_("Are you sure you want to cancel your changes?"));
+    if ( !cancel ) return;
+    $('#default-circulation-rules td').removeClass('highlighted-row');
+    var edit_row = $("#edit_row");
+    $(edit_row).find("input").each(function(){
+        var type = $(this).attr("type");
+        if (type != "button" && type != "submit" ) {
+            $(this).val("");
+            $(this).removeAttr("disabled");
+        }
+    });
+    $(edit_row).find("select").removeAttr("disabled");
+    $(edit_row).find("select option:first").attr("selected", "selected");
+    $(edit_row).find("td:last input[name='clear']").remove();
+}
+
 $(document).ready(function() {
         $('#selectlibrary').find("input:submit").hide();
         $('#branch').change(function() {
                 $('#selectlibrary').submit();
         });
+        $(".editrule").click(function(){
+            if ( $(edit_row).find("input[type='text'][value!='']").length > 0 ) {
+                var edit = confirm(_("Are you sure you want to edit another rule?"));
+                if (!edit) return false;
+            }
+            $('#default-circulation-rules td').removeClass('highlighted-row');
+            $(this).parent().parent().find("td").each(function (i) {
+                $(this).addClass('highlighted-row');
+                itm = $(this).text();
+                itm = itm.replace(/^\s*|\s*$/g,'');
+                var current_column = $("#edit_row td:eq("+i+")");
+                if ( i != 5 ) {
+                    $(current_column).find("input[type='text']").val(itm);
+                    // select the corresponding option
+                    $(current_column).find("select option").each(function(){
+                        if ( $(this).text().toLowerCase() == itm.toLowerCase() ) {
+                            $(this).attr('selected', 'selected');
+                        }
+                    });
+                    if ( i == 0 || i == 1 ) {
+                        // Disable the 2 first columns, we cannot update them.
+                        var val = $(current_column).find("select option:selected").val();
+                        var name = "categorycode";
+                        if ( i == 1 ) {
+                            name="itemtype";
+                        }
+                        // Remove potential previous input added
+                        $(current_column).find("input").remove();
+                        $(current_column).append("<input type='hidden' name='"+name+"' value='"+val+"' />");
+                    } else if ( i == 2 ) {
+                        // If the value is not an integer for "Current checkouts allowed"
+                        // The value is "Unlimited" (or an equivalent translated string)
+                        // an it should be set to an empty string
+                        if( !((parseFloat(itm) == parseInt(itm)) && !isNaN(itm)) ) {
+                            $(current_column).find("input[type='text']").val("");
+                        }
+                    }
+                } else {
+                    // specific processing for the Hard due date column
+                    var select_value = $(this).find("input[type='hidden'][name='hardduedatecomparebackup']").val();
+                    var input_value = '';
+                    if (typeof select_value === 'undefined'){
+                        select_value = '-1';
+                    }else {
+                        input_value = itm.split(' ')[1];
+                    }
+                    $(current_column).find("input[type='text']").val(input_value);
+                    $(current_column).find("select").val(select_value);
+                }
+            });
+            $("#default-circulation-rules tr:last td:eq(0) select").attr('disabled', 'disabled');
+            $("#default-circulation-rules tr:last td:eq(1) select").attr('disabled', 'disabled');
+            return false;
+        });
 });
 //]]>
 </script>
@@ -57,11 +129,13 @@ $(document).ready(function() {
         </form>
 [% IF ( definedbranch ) %]<form action="/cgi-bin/koha/admin/clone-rules.pl" method="post"><label 
 for="tobranch"><strong>Clone these rules to:</strong></label> <input type="hidden" name="frombranch" value="[% current_branch %]" />
-            <select name="tobranch" id="tobranch">[% FOREACH branchloo IN branchloop %]<option value="[% branchloo.value %]">[% branchloo.branchname %]</option>[% END %]</select> <input type="submit" value="Clone" /></form>[% END %]</fieldset>
+            <select name="tobranch" id="tobranch">[% FOREACH branchloo IN branchloop %]<option value="[% branchloo.value %]">[% branchloo.branchname %]</option>[% END %]</select> <input type="submit" value="Clone" /></form>[% END %]
 
         <form method="post" action="/cgi-bin/koha/admin/smart-rules.pl">
             <input type="hidden" name="op" value="add" />
-            <table>
+            <input type="hidden" name="branch" value="[% current_branch %]"/>
+            <table id="default-circulation-rules">
+            <thead>
             <tr>
                 <th>Patron category</th>
                 <th>Item type</th>
@@ -75,15 +149,18 @@ for="tobranch"><strong>Clone these rules to:</strong></label> <input type="hidde
                 <th>Overdue Fines Cap ($)</th>
                 <th>Suspension in days (day)</th>
                 <th>Renewals allowed (count)</th>
+                <th>Renewal period</th>
                 <th>Holds allowed (count)</th>
-               <th>Rental discount (%)</th>
-                               <th>&nbsp;</th>
+                <th>Rental discount (%)</th>
+                <th colspan="2">&nbsp;</th>
             </tr>
+            </thead>
+            <tbody>
                                [% FOREACH rule IN rules %]
                                        [% UNLESS ( loop.odd ) %]
-                                       <tr class="highlight">
+                                       <tr class="highlight" id="row_[% loop.count %]">
                                        [% ELSE %]
-                                       <tr>
+                                       <tr id="row_[% loop.count %]">
                                        [% END %]
                                                        <td>[% IF ( rule.default_humancategorycode ) %]
                                                                        <em>All</em>
@@ -107,29 +184,40 @@ for="tobranch"><strong>Clone these rules to:</strong></label> <input type="hidde
                                                        <td>
                                                            [% rule.lengthunit %]
                                                        </td>
-                                                        <td>[% IF ( rule.hardduedate ) %]
-                                                               [% IF ( rule.hardduedatebefore ) %]before [% rule.hardduedate %]</td>
-                                                               [% ELSE %][% IF ( rule.hardduedateexact ) %]on [% rule.hardduedate %]</td>
-                                                                                 [% ELSE %][% IF ( rule.hardduedateafter ) %]after [% rule.hardduedate %]</td>[% END %]
-                                                                                 [% END %]
-                                                               [% END %]
-                                                            [% ELSE %]None defined[% END %]   
+                            <td>
+                              [% IF ( rule.hardduedate ) %]
+                                [% IF ( rule.hardduedatebefore ) %]
+                                  before [% rule.hardduedate %]
+                                  <input type="hidden" name="hardduedatecomparebackup" value="-1" />
+                                [% ELSIF ( rule.hardduedateexact ) %]
+                                  on [% rule.hardduedate %]
+                                  <input type="hidden" name="hardduedatecomparebackup" value="0" />
+                                [% ELSIF ( rule.hardduedateafter ) %]
+                                  after [% rule.hardduedate %]
+                                  <input type="hidden" name="hardduedatecomparebackup" value="1" />
+                                [% END %]
+                              [% ELSE %]
+                                None defined
+                              [% END %]
+                            </td>
                                                        <td>[% rule.fine %]</td>
                                                        <td>[% rule.chargeperiod %]</td>
                                                        <td>[% rule.firstremind %]</td>
                             <td>[% rule.overduefinescap FILTER format("%.2f") %]</td>
                                                        <td>[% rule.finedays %]</td>
                                                        <td>[% rule.renewalsallowed %]</td>
+                            <td>[% rule.renewalperiod %]</td>
                                                        <td>[% rule.reservesallowed %]</td>
                                                        <td>[% rule.rentaldiscount %]</td>
+                            <td><a href="#" class="editrule">Edit</a></td>
                                                        <td>
                                                                <a class="button" href="/cgi-bin/koha/admin/smart-rules.pl?op=delete&amp;itemtype=[% rule.itemtype %]&amp;categorycode=[% rule.categorycode %]&amp;branch=[% rule.current_branch %]">Delete</a>
                                                        </td>
                        </tr>
                [% END %]
-                <tr>
+                <tr id="edit_row">
                     <td>
-                        <select name="categorycode">
+                        <select name="categorycode" id="categorycode">
                             <option value="*">All</option>
                         [% FOREACH categoryloo IN categoryloop %]
                             <option value="[% categoryloo.categorycode %]">[% categoryloo.description %]</option>
@@ -137,22 +225,23 @@ for="tobranch"><strong>Clone these rules to:</strong></label> <input type="hidde
                         </select>
                     </td>
                     <td>
-                        <select name="itemtype" style="width:13em;">
+                        <select name="itemtype" id="matrixitemtype" style="width:13em;">
                             <option value="*">All</option>
                         [% FOREACH itemtypeloo IN itemtypeloop %]
                             <option value="[% itemtypeloo.itemtype %]">[% itemtypeloo.description %]</option>
                         [% END %]
                         </select>
                     </td>
-                    <td><input name="maxissueqty" size="3" /></td>
-                    <td><input name="issuelength" size="3" /> </td>
+                    <td><input type="text" name="maxissueqty" id="maxissueqty" size="3" /></td>
+                    <td><input type="text" name="issuelength" id="issuelength" size="3" /> </td>
                     <td>
-                     <select name="lengthunit">
-                       <option value="days" selected>Days</option>
-                       <option value="hours">Hours</option>
-                     </select>
-                   </td>
-                    <td><select name="hardduedatecompare">
+                      <select name="lengthunit" id="lengthunit">
+                        <option value="days" selected>Days</option>
+                        <option value="hours">Hours</option>
+                      </select>
+                    </td>
+                    <td>
+                        <select name="hardduedatecompare" id="hardduedatecompare">
                            <option value="-1">Before</option>
                            <option value="0">Exactly on</option>
                            <option value="1">After</option>
@@ -160,16 +249,22 @@ for="tobranch"><strong>Clone these rules to:</strong></label> <input type="hidde
                         <input type="text" size="10" id="hardduedate" name="hardduedate" value="[% hardduedate %]" class="datepicker" />
                         <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
                     </td>
-                    <td><input name="fine" size="4" /></td>
-                    <td><input name="chargeperiod" size="2" /></td>
-                    <td><input name="firstremind" size="2" /> </td>
-                    <td><input name="overduefinescap" size="6" /> </td>
-                    <td><input name="finedays" size="3" /> </td>
-                    <td><input name="renewalsallowed" size="2" /></td>
-                    <td><input name="reservesallowed" size="2" /></td>
-                   <td><input name="rentaldiscount" size="2" /></td>
-                    <td><input type="hidden" name="branch" value="[% current_branch %]"/><input type="submit" value="Add" class="submit" /></td>
+                    <td><input type="text" name="fine" id="fine" size="4" /></td>
+                    <td><input type="text" name="chargeperiod" id="chargeperiod" size="2" /></td>
+                    <td><input type="text" name="firstremind" id="firstremind" size="2" /> </td>
+                    <td><input type="text" name="overduefinescap" id="overduefinescap" size="6" /> </td>
+                    <td><input type="text" name="finedays" id="fined" size="3" /> </td>
+                    <td><input type="text" name="renewalsallowed" id="renewalsallowed" size="2" /></td>
+                    <td><input type="text" name="renewalperiod" id="renewalperiod" size="3" /></td>
+                    <td><input type="text" name="reservesallowed" id="reservesallowed" size="2" /></td>
+                    <td><input type="text" name="rentaldiscount" id="rentaldiscount" size="2" /></td>
+                    <td colspan="2">
+                        <input type="hidden" name="branch" value="[% current_branch %]"/>
+                        <input type="submit" value="Save" class="submit" />
+                        <input type="button" name="cancel" value="Clear" onclick="clear_edit();return false;" />
+                    </td>
                 </tr>
+                </tbody>
             </table>
         </form>
     </div>
index 1907a1b..dbbb785 100644 (file)
@@ -125,6 +125,9 @@ function confirmnotdup(redirect){
 //]]>
 </script>
 <link type="text/css" rel="stylesheet" href="[% themelang %]/css/addbiblio.css" />
+[% IF ( bidi ) %]
+   <link rel="stylesheet" type="text/css" href="[% themelang %]/css/right-to-left.css" />
+[% END %]
 </head>
 <body id="auth_authorities" class="auth">
 
@@ -188,7 +191,7 @@ function confirmnotdup(redirect){
 
     [% FOREACH innerloo IN BIG_LOO.innerloop %]
     [% IF ( innerloo.tag ) %]
-    <div class="tag" id="tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]">
+    <div class="tag clearfix" id="tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]">
         <div class="tag_title" id="div_indicator_tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]">
         [% UNLESS hide_marc %]
             [% IF advancedMARCEditor %]
index 8495c60..a9ab8d6 100644 (file)
@@ -65,7 +65,7 @@ function Changefwk(FwkList) {
 <div id="bibliotabs" class="toptabs numbered">
        <ul>
             [% IF ( tab0XX ) %]
-                <li><a href="#tab0XX">0</a></li>
+                <li><a href="#tab0XX">&#48;</a></li>
             [% END %]
             [% IF ( tab1XX ) %]
                 <li><a href="#tab1XX">1</a></li>
index 43560d0..c982eb4 100644 (file)
     <!-- <input type="hidden" name="limit" value="branch: MAIN" /> -->
         [% IF ( searchdomainloop ) %]
     <p>OR</p> <!-- should addjs to grey out group pulldown if a library is selected. -->
-        <p><label for="categoryloop">Groups of libraries</label><select name="multibranchlimit" id="categoryloop">
+        <p><label for="categoryloop">Groups of libraries</label><select name="multibranchlimit" id="categoryloop">
         <option value=""> -- none -- </option>
         [% FOREACH searchdomainloo IN searchdomainloop %]
         <option value="[% searchdomainloo.categorycode %]">[% searchdomainloo.categoryname %]</option>
 <!-- RANK LIMITS -->
 <fieldset id="sortby"><legend>Sorting</legend>
     <p>
-    <label for="sort_by">Sort by </label><select id="sort_by" name="sort_by">
+    <label for="sort_by">Sort by: </label><select id="sort_by" name="sort_by">
   [% INCLUDE 'resort_form.inc' %]
     </select>
         </p>
index b5035c9..1b20b07 100644 (file)
@@ -134,7 +134,9 @@ $('#sort_by').change(function() {
 function highlightOn() {
     var x;
     for (x in q_array) {
-        toHighlight.highlight(q_array[x]);
+        if ( q_array[x].length > 0 ) {
+            toHighlight.highlight(q_array[x]);
+        }
     }
     $(".highlight_toggle").toggle();
 }[% END %]
index 7e439bf..011b7a6 100644 (file)
@@ -287,6 +287,9 @@ function Changefwk(FwkList) {
 //]]>
 </script>
 <link type="text/css" rel="stylesheet" href="[% themelang %]/css/addbiblio.css" />
+[% IF ( bidi ) %]
+   <link rel="stylesheet" type="text/css" href="[% themelang %]/css/right-to-left.css" />
+[% END %]
 </head>
 <body id="cat_addbiblio" class="cat">
 
@@ -371,8 +374,30 @@ function Changefwk(FwkList) {
 
     [% UNLESS (circborrowernumber) %][%# Hide in fast cataloging %]
         <div class="btn-group"><a class="btn btn-small" href="#" id="z3950search"><i class="icon-search"></i> Z39.50 search</a></div>
-        <div class="btn-group">
-            <label for="Frameworks">Change framework: </label>
+        [% IF (biblionumber) %]
+            [% IF ( BiblioDefaultViewmarc ) %]
+                <div class="btn-group">
+                    <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
+                </div>
+            [% ELSIF ( BiblioDefaultViewlabeled_marc ) %]
+                <div class="btn-group">
+                    <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/labeledMARCdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
+                </div>
+            [% ELSIF ( BiblioDefaultViewisbd ) %]
+                <div class="btn-group">
+                    <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/ISBDdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
+                </div>
+            [% ELSE %]
+                <div class="btn-group">
+                    <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
+                </div>
+            [% END %]
+        [% ELSE %]
+            <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/cataloguing/addbooks.pl">Cancel</a>
+        [% END %]
+    [% END %]
+    <div class="btn-group">
+        <label for="Frameworks">Change framework: </label>
             <select name="frameworkcode" id="Frameworks" onchange="Changefwk(this);">
                 <option value="Default">Default</option>
                 [% FOREACH frameworkcodeloo IN frameworkcodeloop %]
@@ -381,12 +406,11 @@ function Changefwk(FwkList) {
                     [% ELSE %]
                         <option value="[% frameworkcodeloo.value %]">
                     [% END %]
-                     [% frameworkcodeloo.frameworktext %]
-                     </option>
+                       [% frameworkcodeloo.frameworktext %]
+                       </option>
                 [% END %]
-            </select>
-        </div>
-    [% END %]
+        </select>
+</div>
 </div>
 
 [% IF ( popup ) %]
@@ -416,7 +440,7 @@ function Changefwk(FwkList) {
                 <a href="#" tabindex="1" class="tagnum" title="[% innerloo.tag_lib %] - Click to Expand this Tag" onclick="ExpandField('tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]'); return false;">[% innerloo.tag %]</a>
             [% ELSE %]
                 <span class="tagnum" title="[% innerloo.tag_lib %]">[% innerloo.tag %]
-                [% IF marcflavour != 'NORMARC' %]<a class="marcdocs" onclick="PopupMARCFieldDoc('[% innerloo.tag %]', [% BIG_LOO.number %]); return false;">&nbsp;?</a>[% END %]
+                [% IF marcflavour != 'NORMARC' %]<a href="#" class="marcdocs" onclick="PopupMARCFieldDoc('[% innerloo.tag %]', [% BIG_LOO.number %]); return false;">&nbsp;?</a>[% END %]
                 </span>
             [% END %]
                 [% IF ( innerloo.fixedfield ) %]
index f01c682..97d06a5 100644 (file)
@@ -94,6 +94,9 @@ $(document).ready(function() {
 //]]>
 </script>
 <link type="text/css" rel="stylesheet" href="[% themelang %]/css/addbiblio.css" />
+[% IF ( bidi ) %]
+   <link rel="stylesheet" type="text/css" href="[% themelang %]/css/right-to-left.css" />
+[% END %]
 </head>
 <body id="cat_additem" class="cat">
 [% INCLUDE 'header.inc' %]
index c30d23b..7e5b0af 100644 (file)
@@ -116,7 +116,9 @@ tr.selected { background-color : #FFFFCC; } tr.selected td { background-color :
                </fieldset>
            </div>
     <div class="yui-u">
-       <fieldset class="rows">          <ol><li><label for="author">Author: </label> <input type="text" id="author" name="author" value="[% author %]" /><!--  <label for="Keyword">Keyword</label> <input type="text" name="keyword" value="" /> --></li>
+    <fieldset class="rows">
+        <ol>
+        <li><label for="author">Author: </label> <input type="text" id="author" name="author" value="[% author %]" /></li>
         <li><label for="issn">ISSN: </label> <input type="text" id="issn" name="issn" value="[% issn %]" /></li>
         <li> <label for="subject">Subject heading: </label> <input type="text" id="subject" name="subject" value="" /></li>
                 <li><label for="dewey">Dewey: </label> <input type="text" id="dewey" name="dewey" value="" /></li>
index cb0662a..f5e82b4 100644 (file)
        <div class="yui-u">
         <h5>Offline circulation</h5>
                <ul>
-            <li><a href="/cgi-bin/koha/offline_circ/process_koc.pl">Offline circulation file (.koc) uploader</a></li>
-            <li><a href="/cgi-bin/koha/offline_circ/list.pl">Offline circulation</a> (<a href="https://addons.mozilla.org/[% lang %]/firefox/addon/koct/">Firefox add-on</a>)</li>
+                    <li><a href="/cgi-bin/koha/offline_circ/process_koc.pl">Upload offline circulation file (.koc)</a></li>
+                    <li><a href="/cgi-bin/koha/offline_circ/list.pl">Pending offline circulation actions</a>
+                    <ul>
+                        <li><a href="http://kylehall.info/index.php/projects/koha/koha-offline-circulation/">Get desktop application</a></li>
+                        <li><a href="https://addons.mozilla.org/[% lang %]/firefox/addon/koct/">Get Firefox add-on</a></li>
+                    </ul>
                </ul>
        </div>
 </div>
index 19b5bd7..b7f7c4c 100644 (file)
@@ -1,4 +1,7 @@
 [% USE KohaDates %]
+[% IF ( export_remove_fields OR export_with_csv_profile ) %]
+   [% SET exports_enabled = 1 %]
+[% END %]
 [% USE KohaAuthorisedValues %]
 [% INCLUDE 'doc-head-open.inc' %]
 [% SET destination = "circ" %]
 </title>
 [% INCLUDE 'doc-head-close.inc' %]
 [% INCLUDE 'calendar.inc' %]
-[% IF ( UseTablesortForCirc ) %]<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>[% END %]
+[% IF ( UseTablesortForCirc ) %]<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>[% END %]
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery-ui-timepicker-addon.js"></script>
 <script type="text/javascript">
 //<![CDATA[
+[% IF ( UseTablesortForCirc && dateformat == 'metric' ) %]dt_add_type_uk_date();[% END %]
 [% IF ( borrowernumber ) %]if($.cookie("holdfor") != [% borrowernumber %]){ $.cookie("holdfor",null, { path: "/", expires: 0 }); }[% ELSE %]$.cookie("holdfor",null, { path: "/", expires: 0 });[% END %]
-[% IF ( UseTablesortForCirc ) %]$.tablesorter.addParser({
-    id: 'articles',
-    is: function(s) {return false;  },
-    format: function(s) { return s.toLowerCase().replace(/^(the|an|a) /,''); },
-    type: 'text'
-});[% END %]
 [% UNLESS ( borrowernumber ) %][% UNLESS ( CGIselectborrower ) %]window.onload=function(){ $('#findborrower').focus(); };[% END %][% END %]
         $(document).ready(function() {
-
-        $('#patronlists').tabs();
-               [% IF ( UseTablesortForCirc ) %]$.tablesorter.defaults.widgets = ['zebra'];
-               $("#issuest").tablesorter({[% IF ( dateformat_metric ) %]
-               dateFormat: 'uk',[% END %]
-               headers: { 1: { sorter: 'articles' },6: { sorter: false },7:{sorter:false},8:{sorter:false},9:{sorter:false}}
-               });
-               $("#relissuest").tablesorter({[% IF ( dateformat_metric ) %]
-               dateFormat: 'uk',[% END %]
-               headers: { 1: { sorter: 'articles' },6: { sorter: false },7:{sorter:false},8:{sorter:false},9:{sorter:false}}
-               });
-
-               //FIXME: Sorting does not work when there are previous checkouts only
-               // (It works fine when there are only checkouts of the day, or both previous and today checkouts)
-               $("#issuest").bind("sortEnd",function() {
-               $("#previous").parents("tr").remove();  // 'previous checkouts' header chokes table sorter
-           });
-               $("#relissuest").bind("sortEnd",function() {
-                   $("#relprevious").parents("tr").remove();  // 'previous checkouts' header chokes table sorter
-               });
-               $("#holdst").tablesorter({[% IF ( dateformat_metric ) %]
-               dateFormat: 'uk',[% END %]
-                       sortList: [[0,0]],
-                       headers: { 1: { sorter: 'articles' },5: { sorter: false }}
-               });[% END %]
+        $('#patronlists').tabs([% IF ( UseTablesortForCirc ) %]{
+            // Correct table sizing for tables hidden in tabs
+            // http://www.datatables.net/examples/api/tabs_and_scrolling.html
+            "show": function(event, ui) {
+                var oTable = $('div.dataTables_wrapper>table', ui.panel).dataTable();
+                if ( oTable.length > 0 ) {
+                    oTable.fnAdjustColumnSizing();
+                }
+            }
+        }[% END %]);
+        [% IF ( UseTablesortForCirc ) %]
+        $("#issuest").dataTable($.extend(true, {}, dataTablesDefaults, {
+            "sDom": 't',
+            "aaSorting": [],
+            "aoColumnDefs": [
+                { "aTargets": [ -1, -2[% IF ( exports_enabled ) %], -3[% END %] ], "bSortable": false, "bSearchable": false }
+            ],
+            "aoColumns": [
+                { "sType": "title-string" },{ "sType": "html" },null,{ "sType": "title-string" },null,null,null,null,null,null[% IF ( exports_enabled ) %],null[% END %]
+            ],
+            "bPaginate": false
+        }));
+
+        $("#relissuest").dataTable($.extend(true, {}, dataTablesDefaults, {
+            "sDom": 't',
+            "aaSorting": [],
+            "aoColumns": [
+                { "sType": "title-string" },{ "sType": "html" },null,{ "sType": "title-string" },null,null,null,null,{ "sType": "html" }
+            ],
+            "bPaginate": false
+        }));
+
+        $("#issuest").on("sort",function() {
+            $("#previous").hide();  // Don't want to see "previous checkouts" header sorted with other rows
+        });
+        $("#relissuest").on("sort",function() {
+            $("#relprevious").hide();  // Don't want to see "previous checkouts" header sorted with other rows
+        });
+        [% END %]
         [% IF ( AllowRenewalLimitOverride ) %]
         $( '#override_limit' ).click( function () {
             if ( this.checked ) {
@@ -291,7 +306,7 @@ function validate1(date) {
 </form>
 </div>
 
-[% IF ( dateexpiry ) %]<div class="dialog message">Patron's account has been renewed until [% dateexpiry %]</div>[% END %]
+[% IF ( was_renewed ) %]<div class="dialog message">Patron's account has been renewed until [% expiry %]</div>[% END %]
 
 [% IF additional_materials %]
     <div id="materials" class="dialog message">Note about the accompanying materials: <br />
@@ -788,11 +803,11 @@ No patron matched <span class="ex">[% message %]</span>
         <th scope="col">Price</th>
         <th scope="col">Renew <p class="column-tool"><a href="#" id="CheckAllitems">select all</a> | <a href="#" id="CheckNoitems">none</a></p></th>
         <th scope="col">Check in <p class="column-tool"><a href="#" id="CheckAllreturns">select all</a> | <a href="#" id="CheckNoreturns">none</a></p></th>
-        [% IF export_remove_fields OR export_with_csv_profile %]
+        [% IF ( exports_enabled ) %]
           <th scope="col">Export <p class="column-tool"><a href="#" id="CheckAllexports">select all</a> | <a href="#" id="CheckNoexports">none</a></p></th>
         [% END %]
-    </tr>
-[% IF ( todayissues ) %]</thead>
+    </tr></thead>
+[% IF ( todayissues ) %]
 [% INCLUDE 'checkouts-table-footer.inc' %]
        <tbody>
 
@@ -803,11 +818,11 @@ No patron matched <span class="ex">[% message %]</span>
     <tr class="highlight">
     [% END %]
         [% IF ( todayissue.od ) %]<td class="od">[% ELSE %]<td>[% END %]
-        [% todayissue.dd %]
+        <span title="[% todayissue.dd_sort %]">[% todayissue.dd %]</span>
         </td>
         <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% todayissue.biblionumber %]&amp;type=intra"><strong>[% todayissue.title |html %]</strong></a>[% IF ( todayissue.author ) %], by [% todayissue.author %][% END %][% IF ( todayissue.itemnotes ) %]- <span class="circ-hlt">[% todayissue.itemnotes %]</span>[% END %] <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% todayissue.biblionumber %]&amp;itemnumber=[% todayissue.itemnumber %]#item[% todayissue.itemnumber %]">[% todayissue.barcode %]</a></td>
         <td>[% UNLESS ( noItemTypeImages ) %] [% IF ( todayissue.itemtype_image ) %]<img src="[% todayissue.itemtype_image %]" alt="" />[% END %][% END %][% todayissue.itemtype %]</td>
-        <td>[% todayissue.checkoutdate %]</td>
+        <td><span title="[% todayissue.displaydate_sort %]">[% todayissue.checkoutdate %]</span></td>
         [% IF ( todayissue.multiple_borrowers ) %]<td>[% todayissue.firstname %] [% todayissue.surname %]</td>[% END %]
         <td>[% todayissue.issuingbranchname %]</td>
         <td>[% todayissue.itemcallnumber %]</td>
@@ -860,7 +875,7 @@ No patron matched <span class="ex">[% message %]</span>
             </td>
             [% END %]
         [% END %]
-        [% IF export_remove_fields OR export_with_csv_profile %]
+        [% IF ( exports_enabled ) %]
           <td style="text-align:center;">
             <input type="checkbox" id="export_[% todayissue.biblionumber %]" name="biblionumbers" value="[% todayissue.biblionumber %]" />
             <input type="checkbox" name="itemnumbers" value="[% todayissue.itemnumber %]" style="visibility:hidden;" />
@@ -869,12 +884,13 @@ No patron matched <span class="ex">[% message %]</span>
     </tr>
     [% END %] <!-- /loop todayissues -->
     <!-- /if todayissues -->[% END %]
+
 [% IF ( previssues ) %]
-[% IF ( todayissues ) %]<tr><th colspan="11"><a name="previous" id="previous"></a>Previous checkouts</th></tr>[% ELSE %]
-<tr><th class="{sorter: false}" colspan="11"><a name="previous" id="previous"></a>Previous checkouts</th></tr></thead>
-[% INCLUDE 'checkouts-table-footer.inc' %]
-       <tbody>
-[% END %]
+    [% UNLESS ( todayissues ) %]
+    [% INCLUDE 'checkouts-table-footer.inc' %]
+        <tbody>
+    [% END %]
+    [% IF ( UseTablesortForCirc ) %]<tr id="previous"><th><span title="">Previous checkouts</span></th><th></th><th></th><th><span title=""></span></th><th></th><th></th><th></th><th></th><th></th><th></th>[% IF ( exports_enabled ) %]<th></th>[% END %]</tr>[% ELSE %]<tr id="previous">[% IF ( exports_enabled ) %]<th colspan="11">[% ELSE %]<th colspan="10">[% END %]Previous checkouts</th></tr>[% END %]
     [% FOREACH previssue IN previssues %]
     [% IF ( loop.odd ) %]
         <tr>
@@ -882,13 +898,13 @@ No patron matched <span class="ex">[% message %]</span>
         <tr class="highlight">
     [% END %]
         [% IF ( previssue.od ) %]<td class="od">[% ELSE %]<td>[% END %]
-        [% previssue.dd %]
+        <span title="[% previssue.dd_sort %]">[% previssue.dd %]</span>
         </td>
         <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% previssue.biblionumber %]&amp;type=intra"><strong>[% previssue.title |html %]</strong></a>[% IF ( previssue.author ) %], by [% previssue.author %][% END %] [% IF ( previssue.itemnotes ) %]- [% previssue.itemnotes %][% END %] <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% previssue.biblionumber %]&amp;itemnumber=[% previssue.itemnumber %]#item[% previssue.itemnumber %]">[% previssue.barcode %]</a></td>
         <td>
             [% previssue.itemtype %]
         </td>
-        <td>[% previssue.displaydate %]</td>
+        <td><span title="[% previssue.displaydate_sort %]">[% previssue.displaydate %]</span></td>
         [% IF ( previssue.multiple_borrowers ) %]<td>[% previssue.firstname %] [% previssue.surname %]</td>[% END %]
         <td>[% previssue.issuingbranchname %]</td>
         <td>[% previssue.itemcallnumber %]</td>
@@ -941,7 +957,7 @@ No patron matched <span class="ex">[% message %]</span>
             </td>
             [% END %]
         [% END %]
-        [% IF export_remove_fields OR export_with_csv_profile %]
+        [% IF ( exports_enabled ) %]
           <td style="text-align:center;">
             <input type="checkbox" id="export_[% previssue.biblionumber %]" name="biblionumbers" value="[% previssue.biblionumber %]" />
             <input type="checkbox" name="itemnumbers" value="[% previssue.itemnumber %]" style="visibility:hidden;" />
@@ -963,7 +979,7 @@ No patron matched <span class="ex">[% message %]</span>
         <input type="submit" name="renew_checked" value="Renew or Return checked items" />
         <input type="submit" id="renew_all" name="renew_all" value="Renew all" />
     </fieldset>
-        [% IF export_remove_fields OR export_with_csv_profile %]
+        [% IF ( exports_enabled ) %]
             <fieldset>
             <label for="export_formats"><b>Export checkouts using format:</b></label>
             <select name="export_formats" id="export_formats">
@@ -1013,10 +1029,10 @@ No patron matched <span class="ex">[% message %]</span>
     <tr class="highlight">
     [% END %]
         [% IF ( relissue.overdue ) %]<td class="od">[% ELSE %]<td>[% END %]
-            [% relissue.dd %]</td>
+            <span title="[% relissue.dd_sort %]">[% relissue.dd %]</span></td>
         <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% relissue.biblionumber %]&amp;type=intra"><strong>[% relissue.title |html %]</strong></a>[% IF ( relissue.author ) %], by [% relissue.author %][% END %][% IF ( relissue.itemnotes ) %]- <span class="circ-hlt">[% relissue.itemnotes %]</span>[% END %] <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% relissue.biblionumber %]&amp;itemnumber=[% relissue.itemnumber %]#item[% relissue.itemnumber %]">[% relissue.barcode %]</a></td>
         <td>[% UNLESS ( noItemTypeImages ) %] [% IF ( relissue.itemtype_image ) %]<img src="[% relissue.itemtype_image %]" alt="" />[% END %][% END %][% relissue.itemtype %]</td>
-        <td>[% relissue.displaydate %]</td>
+        <td><span title="[% relissue.displaydate_sort %]">[% relissue.displaydate %]</span></td>
         <td>[% relissue.issuingbranchname %]</td>
         <td>[% relissue.itemcallnumber %]</td>
         <td>[% relissue.charge %]</td>
@@ -1025,7 +1041,7 @@ No patron matched <span class="ex">[% message %]</span>
     [% END %] <!-- /loop relissues -->
     <!-- /if relissues -->[% END %]
 [% IF ( relprevissues ) %]
-<tr><th class="{sorter: false}" colspan="11"><a name="relprevious" id="relprevious"></a>Previous checkouts</th></tr>
+    [% IF ( UseTablesortForCirc ) %]<tr id="relprevious"><th><span title="">Previous checkouts</span></th><th></th><th></th><th><span title=""></span></th><th></th><th></th><th></th><th></th><th></th></tr>[% ELSE %]<tr id="relprevious"><th colspan="9">Previous checkouts</th></tr>[% END %]
     [% FOREACH relprevissue IN relprevissues %]
     [% IF ( loop.odd ) %]
         <tr>
@@ -1033,11 +1049,11 @@ No patron matched <span class="ex">[% message %]</span>
         <tr class="highlight">
     [% END %]
         [% IF ( relprevissue.overdue ) %]<td class="od">[% ELSE %]<td>[% END %]
-        [% relprevissue.dd %]
+        <span title="[% relprevissue.dd_sort %]">[% relprevissue.dd %]</span>
         </td>
         <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% relprevissue.biblionumber %]&amp;type=intra"><strong>[% relprevissue.title |html %]</strong></a>[% IF ( relprevissue.author ) %], by [% relprevissue.author %][% END %] [% IF ( relprevissue.itemnotes ) %]- [% relprevissue.itemnotes %][% END %] <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% relprevissue.biblionumber %]&amp;itemnumber=[% relprevissue.itemnumber %]#item[% relprevissue.itemnumber %]">[% relprevissue.barcode %]</a></td>
         <td>[% UNLESS noItemTypeImages %][% IF relprevissue.itemtype_image %]<img src="[% relprevissue.itemtype_image %]" alt="" />[% END %][% END %][% relprevissue.itemtype %]</td>
-        <td>[% relprevissue.displaydate %]</td>
+        <td><span title="[% relprevissue.displaydate_sort %]">[% relprevissue.displaydate %]</span></td>
         <td>[% relprevissue.issuingbranchname %]</td>
         <td>[% relprevissue.itemcallnumber %]</td>
        [% IF ( relprevissue.multiple_borrowers ) %]<td>[% relprevissue.firstname %] [% relprevissue.surname %]</td>[% END %]
index f45dbea..8235a29 100644 (file)
@@ -194,6 +194,28 @@ overdue as of [% todaysdate %][% IF ( isfiltered ) %] <span style="font-size:70%
     </li>
 
     <li>
+        <label>Item home library:</label>
+        <select name="homebranch" id="homebranch">
+            <option value="">Any</option>
+            [% FOREACH homebranchloo IN homebranchloop %][% IF ( homebranchloo.selected ) %]
+            <option value="[% homebranchloo.value |html %]" selected="selected">[% homebranchloo.branchname %]</option>[% ELSE %]
+            <option value="[% homebranchloo.value |html %]">[% homebranchloo.branchname %]</option>[% END %]
+            [% END %]
+        </select>
+    </li>
+
+    <li>
+        <label>Item holding library:</label>
+            <select name="holdingbranch" id="holdingbranch">
+            <option value="">Any</option>
+            [% FOREACH holdingbranchloo IN holdingbranchloop %][% IF ( holdingbranchloo.selected ) %]
+            <option value="[% holdingbranchloo.value |html %]" selected="selected">[% holdingbranchloo.branchname %]</option>[% ELSE %]
+            <option value="[% holdingbranchloo.value |html %]">[% holdingbranchloo.branchname %]</option>[% END %]
+            [% END %]
+        </select>
+    </li>
+
+    <li>
     <label>Library of the patron:</label><select name="branch" id="branch">
         <option value="">Any</option>
       [% FOREACH branchloo IN branchloop %]
index 0b832dc..026e9dd 100644 (file)
@@ -15,7 +15,25 @@ $(document).ready(function() {
   var holdst = $("#holdst").dataTable($.extend(true, {}, dataTablesDefaults, {
   }));
   holdst.fnAddFilters("filter");
+  [%# add separateData function to cleanse jQuery select lists by breaking apart strings glued with BR tags and then de-duplicating any repeated library codes %]
+  function separateData ( ColumnData ){
+    var cD = ColumnData;
+    var new_array = new Array();
+    for ( j=0 ; j<cD.length ; j++ ) {
+        var split_array = cD[j].split(/<br>/gi);
+        for ( k=0 ; k<split_array.length ; k++ ){
+            var check_array = $.inArray(split_array[k], new_array);
+            if (check_array == -1) {
+                new_array.push(split_array[k]);
+            }
+        }
+    }
+    new_array.sort();
+    return new_array;
+  }
+  [%# add SeparateData function into createSelect function, so that it does the createSelect on clean data %]
   function createSelect( data ) {
+      data = separateData(data);
       var r='<select style="width:99%"><option value="">None</option>', i, len=data.length;
       for ( i=0 ; i<len ; i++ ) {
           r += '<option value="'+data[i]+'">'+data[i]+'</option>';
index 33deaa9..8a52193 100644 (file)
@@ -2,15 +2,12 @@
 <title>Koha &rsaquo; Circulation &rsaquo; Hold ratios</title>
 [% INCLUDE 'doc-head-close.inc' %]
 [% INCLUDE 'calendar.inc' %]
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
+<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
 <script type="text/javascript">
 //<![CDATA[
-$.tablesorter.addParser({
-    id: 'articles', 
-    is: function(s) {return false;  }, 
-    format: function(s) { return s.toLowerCase().replace(/^(the|an|a) /,''); }, 
-    type: 'text' 
-});
         $(document).ready(function() {
                $("th a").hide();
                $(".ratiolimit").click(function () {
@@ -20,11 +17,14 @@ $.tablesorter.addParser({
             function () { $(this).toggleClass("ulined") },
             function () { $(this).toggleClass("ulined") }
         );
-               $.tablesorter.defaults.widgets = ['zebra']; 
-               $("#holdst:has(tbody tr)").tablesorter({    // only add sort if the table has a body and rows
-                       sortList: [[0,1]],
-                       headers: { 1: { sorter: 'articles' }}
-        });
+        $("#holdst").dataTable($.extend(true, {}, dataTablesDefaults, {
+            "aoColumnDefs": [
+                { "aTargets": [ 8 ], "sType": "natural" }
+            ],
+            "aLengthMenu": [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]],
+            "iDisplayLength": 20,
+            "sPaginationType": "four_button"
+        }));
         });
 //]]>
 </script>
index aefd8d9..40cc6e1 100644 (file)
@@ -42,7 +42,7 @@ $(document).ready(function() {
 [% IF ( run_report ) %]
     [% IF ( total ) %]
         <div class="results">[% total %] items found for
-            [% IF ( branch ) %][% branch %][% ELSE %]ALL libraries[% END %]
+            [% IF ( branchlimit ) %][% branchlimit %][% ELSE %]ALL libraries[% END %]
         </div>
     [% ELSE %]
         <div class="dialog message">No items found.</div>
index ca8f434..fa237be 100644 (file)
@@ -54,32 +54,15 @@ To edit the subfields associated with the tag, click 'Subfields' to the right of
 </li>
 </ul>
 <ul>
-       <li>hidden
-<ul>
-       <li>allows you to select from 19 possible visibility conditions, 17 of which are implemented. They are the following:
-<ul>
-       <li>-9 =&gt; Future use</li>
-       <li>-8 =&gt; Flag</li>
-       <li>-7 =&gt; OPAC !Intranet !Editor Collapsed</li>
-       <li>-6 =&gt; OPAC Intranet !Editor !Collapsed</li>
-       <li>-5 =&gt; OPAC Intranet !Editor Collapsed</li>
-       <li>-4 =&gt; OPAC !Intranet !Editor !Collapsed</li>
-       <li>-3 =&gt; OPAC !Intranet Editor Collapsed</li>
-       <li>-2 =&gt; OPAC !Intranet Editor !Collapsed</li>
-       <li>-1 =&gt; OPAC Intranet Editor Collapsed</li>
-       <li>0 =&gt; OPAC Intranet Editor !Collapsed</li>
-       <li>1 =&gt; !OPAC Intranet Editor Collapsed</li>
-       <li>2 =&gt; !OPAC !Intranet Editor !Collapsed</li>
-       <li>3 =&gt; !OPAC !Intranet Editor Collapsed</li>
-       <li>4 =&gt; !OPAC Intranet Editor !Collapsed</li>
-       <li>5 =&gt; !OPAC !Intranet !Editor Collapsed</li>
-       <li>6 =&gt; !OPAC Intranet !Editor !Collapsed</li>
-       <li>7 =&gt; !OPAC Intranet !Editor Collapsed</li>
-       <li>8 =&gt; !OPAC !Intranet !Editor !Collapsed</li>
-       <li>9 =&gt; Future use</li>
-</ul>
-</li>
-       <li>( ! means 'not visible' or in the case of Collapsed 'not Collapsed')</li>
+    <li>Visibility
+<ul>
+    <li>Allows you to set the visibility options for a MARC field.</li>
+    <ul>
+        <li><strong>OPAC</strong> - Checking this box determines whether the subfield is visible in the public interface. Unchecking it hides the field in the public interface.</li>
+        <li><strong>Intranet</strong> - Checking this box determines whether the subfield is visible in the staff interface. Unchecking it hides the field in the staff interface.</li>
+        <li><strong>Editor</strong> - Checking this box makes the subfield available to the MARC editor. Unchecking it indicates the field should not be shown in the editor.</li>
+        <li><strong>Collapsed</strong> - Checking this box determines whether the subfield is expanded or collapsed in the MARC editor; the subfield will appear as a clickable link to expand and edit the subfield. Unchecking it indicates that the field will be expanded by default.</li>
+        <li><strong>Flagged</strong> - This setting is exclusive of all other visibility options, and flags the field.</li>
 </ul>
 </li>
 </ul>
index 32a7370..0fbb72f 100644 (file)
@@ -89,6 +89,6 @@
 
 <p>If you would like to merge together multiple records you can do that via the Lists tool.</p>
 
-<p><strong>See the full documentation for Cataloging in the <a href="http://manual.koha-community.org/3.10/en/cataloging.html#catbibs">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Cataloging in the <a href="http://manual.koha-community.org/3.12/en/cataloging.html#catbibs">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index c92ef8b..1d7464c 100644 (file)
@@ -30,7 +30,7 @@
 
 <p>Once you've opened a blank framework or imported a record via Z39.50 you will be presented with the form to continue cataloging</p>
 
-<p><strong>See the full documentation for Cataloging in the <a href="http://manual.koha-community.org/3.10/en/cataloging.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Cataloging in the <a href="http://manual.koha-community.org/3.12/en/cataloging.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index 0306ddc..85ed076 100644 (file)
@@ -74,6 +74,6 @@
 
 <p>Finally you can use the batch delete tool to delete a batch of items.</p>
 
-<p><strong>See the full documentation for Adding/Editing Items in the <a href="http://manual.koha-community.org/3.10/en/catitems.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Adding/Editing Items in the <a href="http://manual.koha-community.org/3.12/en/catitems.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index 66cfdf2..fe9f091 100644 (file)
@@ -27,6 +27,6 @@
 
 <p>You can also see the analytics attached to this record by clicking the 'Show Analytic' link towards the top of the record in the normal view.</p>
 
-<p><strong>See the full documentation for Analytics in the <a href="http://manual.koha-community.org/3.10/en/cataloging.html#cataloganalytics">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Analytics in the <a href="http://manual.koha-community.org/3.12/en/cataloging.html#cataloganalytics">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index 1719753..0c7d905 100644 (file)
@@ -18,6 +18,6 @@
 
 <p style="color: rgb(153, 0, 0);">Important: It is important to rebuild your zebra index immediately after merging records. If a search is performed for a record which has been deleted Koha will present the patrons with an error in the OPAC.</p>
 
-<p><strong>See the full documentation for Merging Items in the <a href="http://manual.koha-community.org/3.10/en/stafflists.html#mergebibrecs">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Merging Items in the <a href="http://manual.koha-community.org/3.12/en/stafflists.html#mergebibrecs">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index dc29e28..89edfe8 100644 (file)
@@ -10,6 +10,6 @@
 
 <p>If you want to move all items to a new record creating only one bibliographic record you can use the 'Merge records' tool instead.</p>
 
-<p><strong>See the full documentation for Moving Items in the <a href="http://manual.koha-community.org/3.10/en/catitems.html#moveitemrec">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Moving Items in the <a href="http://manual.koha-community.org/3.12/en/catitems.html#moveitemrec">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/billing.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/help/circ/billing.tt
deleted file mode 100644 (file)
index d15b967..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-[% INCLUDE 'help-top.inc' %]
-          
-<h3>Billing</h3>
-
-<p>This report will list all outstanding bills for your library system.</p>
-<p>Filters on the left hand side can help limit the results displayed in this report.</p>
-
-[% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 699643a..42298e3 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
           
-<h1>Overdues with Fines</h1>
+<h1>Overdues with fines</h1>
 
 <p>This report will show you any overdues at your library that have accrued fines on them.</p>
 
@@ -8,6 +8,6 @@
 
 <p style="color: #990000">Important: If you do not charge fines and/or don't have the fines cron job running you will see no data on this report.</p>
 
-<p><strong>See the full documentation for Overdues with Fines in the <a href="http://manual.koha-community.org/3.10/en/circreports.html#overduesfines">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Overdues with Fines in the <a href="http://manual.koha-community.org/3.12/en/circreports.html#overduesfines">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index dd4c6a0..5a99a5f 100644 (file)
@@ -21,6 +21,6 @@
 </li>
 </ul>
 
-<p><strong>See the full documentation for Transfers in the <a href="http://manual.koha-community.org/3.10/en/transfers.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Transfers in the <a href="http://manual.koha-community.org/3.12/en/transfers.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index f298727..b402d27 100644 (file)
@@ -20,6 +20,6 @@
 
 <p style="background-color: #ffe599">Tip: Mac users use the OPTION button in place of ALT</p>
 
-<p><strong>See the full documentation for Circulation in the <a href="http://manual.koha-community.org/3.10/en/circulation.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Circulation in the <a href="http://manual.koha-community.org/3.12/en/circulation.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index 3836a06..a70f8e9 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Checking Out (Issuing)</h1>
+<h1>Checking out (Issuing)</h1>
 
 <p>To check an item out to a patron, first search for that patron using one of the many options listed above.</p>
 
 
 <p>Circulation messages meant for the patron will appear when they log into the OPAC.</p>
 
-<p><strong>See the full documentation for Checking Out in the <a href="http://manual.koha-community.org/3.10/en/circulation.html#checkingout">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Checking Out in the <a href="http://manual.koha-community.org/3.12/en/circulation.html#checkingout">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index 7f99a0c..e4e9317 100644 (file)
@@ -11,6 +11,6 @@
        <li style="background-color: #ffe599">Tip: Large libraries can choose to filter the report before it runs by setting the FilterBeforeOverdueReport system preference to 'Require'.</li>
 </ul>
 
-<p><strong>See the full documentation for Overdues in the <a href="http://manual.koha-community.org/3.10/en/circreports.html#overduesreport">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Overdues in the <a href="http://manual.koha-community.org/3.12/en/circreports.html#overduesreport">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index b6a5e29..8f17f3d 100644 (file)
@@ -1,11 +1,11 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Holds to Pull</h1>
+<h1>Holds to pull</h1>
 
 <p>This report will show you all of the items that have holds on them that are available at the library for pulling. If the items are available at multiple libraries then all libraries with that item available will see the hold to pull until one library triggers the hold.</p>
 
 <p>You can limit the results you see by using the Refine box on the left side of the page</p>
 
-<p><strong>See the full documentation for Holds to Pull in the <a href="http://manual.koha-community.org/3.10/en/circreports.html#holdspull">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Holds to Pull in the <a href="http://manual.koha-community.org/3.12/en/circreports.html#holdspull">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index dee539d..3edcda5 100644 (file)
@@ -1,10 +1,10 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Hold Ratios</h1>
+<h1>Hold ratios</h1>
 
 <p>Hold ratios help with collection development. Using this report you will be able to see how many of your patrons have holds on items and whether you should buy more. By default it will be set to the library needing 3 items per hold that has been placed. The report will tell you how many additional items need to be purchased to meet this quota.</p>
 
-<p><strong>See the full documentation for Hold Ratios in the <a href="http://manual.koha-community.org/3.10/en/circreports.html#holdratios">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Hold Ratios in the <a href="http://manual.koha-community.org/3.12/en/circreports.html#holdratios">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index 1e0a0c4..7046796 100644 (file)
 <p>There are several messages that can appear when checking items in:</p>
 
 <ul>
-    <li>If you are checking an item in at a library other than the home library, a message will appear asking you to transfer the book to the home library
+       <li>If you are checking an item in at a library other than the home branch, a message will appear asking you to transfer the book to the home library
 <ul>
        <li>After this item is checked in the status of the item will be changed in the catalog to 'in transit'</li>
-    <li>To mark an item as back at the home library, check the item in at the home library
+       <li>To mark an item as back at the home branch, check the item in at the home branch
 <ul>
-    <li>A message will appear tell you that the item is not checked out, but the status will now say available in the catalog. This step is necessary to mark items as received by the home library.</li>
+       <li>A message will appear tell you that the item is not checked out, but the status will now say available in the catalog. This step is necessary to mark items as received by the home branch.</li>
 </ul>
 </li>
 </ul>
 </li>
-    <li>If you are checking in an item that should have multiple parts or pieces a message will appear warning you about the number of pieces you should have in your hand</li>
+       <li>If you are checking in an item that should have multiple parts or pieces a message will appear warning you about the number of pieces you should have in your hand</li>
        <li>If you're checking an item in that has a hold on it, you will be prompted to confirm the hold
 <ul>
-    <li>Clicking the Confirm hold button will mark the item as waiting for pickup from the library</li>
-    <li>Clicking the Print Slip and Confirm button will mark the item as waiting for pickup at the library and present the library with a receipt to print and place on the book with the patron's information</li>
-    <li>Ignoring the hold will leave the item on hold, but leave its status as Available (it will not cancel the hold)</li>
+       <li>Clicking the Confirm hold button will mark the item as waiting for pickup from the library</li>
+       <li>Clicking the Print Slip and Confirm button will mark the item as waiting for pickup at the library and present the library with a receipt to print and place on the book with the patron's information</li>
+       <li>Ignoring the hold will leave the item on hold, but leave its status as Available (it will not cancel the hold)</li>
 </ul>
 </li>
-    <li>If you're checking in an item that has a hold on it at another library you will be prompted to confirm and transfer the item
+       <li>If you're checking in an item that has a hold on it at another branch you will be prompted to confirm and transfer the item
 <ul>
-    <li>Clicking the Confirm hold and Transfer button will mark the item as in transit to the library where the hold was placed</li>
-    <li>Clicking the Print Slip, Transfer and Confirm button will mark the item as in transit to the library where the hold was placed and present the library with a receipt to print and place on the book with the patron's information</li>
-    <li>Ignoring the hold will leave the item on hold, but leave its status as Available (it will not cancel the hold)</li>
+       <li>Clicking the Confirm hold and Transfer button will mark the item as in transit to the library where the hold was placed</li>
+       <li>Clicking the Print Slip, Transfer and Confirm button will mark the item as in transit to the library where the hold was placed and present the library with a receipt to print and place on the book with the patron's information</li>
+       <li>Ignoring the hold will leave the item on hold, but leave its status as Available (it will not cancel the hold)</li>
 </ul>
 </li>
+       <li>If you have the system showing you fines at the time of checkin (FineNotifyAtCheckin) you will see a message telling you about the fine and providing you a link to the payment page for that patron</li>
 </ul>
 
 <h2>Receiving Holds</h2>
@@ -71,6 +72,6 @@
 
 <p>From here you can check the item out to the patron at the desk and cancel the hold for the patron.</p>
 
-<p><strong>See the full documentation for Checking In in the <a href="http://manual.koha-community.org/3.10/en/checkingin.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Checking In in the <a href="http://manual.koha-community.org/3.12/en/checkingin.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index d0d8954..b9d22f6 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Set Library</h1>
+<h1>Set library</h1>
 
 <p>By default you will enter the staff client as if you are at your home library. This library will appear in the top right of the Staff Client.</p>
 
@@ -8,6 +8,6 @@
 
 <p>Once you have saved your changes you new library will appear in the top right.</p>
 
-<p><strong>See the full documentation for Setting your Library in the <a href="http://manual.koha-community.org/3.10/en/setlibrary.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Setting your Library in the <a href="http://manual.koha-community.org/3.12/en/setlibrary.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 09b44ec..c45d966 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Transfers To Receive</h1>
+<h1>Transfers to receive</h1>
 
 <p>This report will list all of the items that Koha thinks are in transit to your library.</p>
 
@@ -8,6 +8,6 @@
 
 <p style="color: #990000">Important: An item is considered late based on the number of days you have entered in the TransfersMaxDaysWarning system preference.</p>
 
-<p><strong>See the full documentation for Transfers to Receive in the <a href="http://manual.koha-community.org/3.10/en/circreports.html#transferstoreceive">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Transfers to Receive in the <a href="http://manual.koha-community.org/3.12/en/circreports.html#transferstoreceive">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 29be871..0399938 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Holds Queue</h1>
+<h1>Holds queue</h1>
 
 <p>This report will show you all of the holds at your library.</p>
 
@@ -18,6 +18,6 @@
 
 <p>Leaving StaticHoldsQueueWeight empty is contraindicated at this time. Doing so will cause the build_holds_queue script to ignore RandomizeHoldsQueueWeight, causing the script to request hold fulfillment not randomly, but by alphabetical order.</p>
 
-<p><strong>See the full documentation for the Holds Queue in the <a href="http://manual.koha-community.org/3.10/en/circreports.html#holdsqueue">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Holds Queue in the <a href="http://manual.koha-community.org/3.12/en/circreports.html#holdsqueue">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 93de82a..be0e509 100644 (file)
@@ -1,11 +1,11 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Holds Awaiting Pickup</h1>
+<h1>Holds awaiting pickup</h1>
 
 <p>This report will show all of the holds that are waiting for patrons to pick them up.</p>
 
-<p>Items that have been on the hold shelf longer than you normally allow (based on the ReservesMaxPickUpDelay preference value) will appear on the 'Holds Over' tab, they will not automatically be cancelled.</p>
+<p>Items that have been on the hold shelf longer than you normally allow (based on the ReservesMaxPickUpDelay preference value) will appear on the 'Holds Over' tab, they will not automatically be cancelled unless you have set the cron job to do that for you, but you can cancel all holds using the button at the top of the list.</p>
 
-<p><strong>See the full documentation for Holds Awaiting Pickup in the <a href="http://manual.koha-community.org/3.10/en/circreports.html#holdspickup">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Holds Awaiting Pickup in the <a href="http://manual.koha-community.org/3.12/en/circreports.html#holdspickup">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 9f7ef89..fd274a2 100644 (file)
@@ -1,17 +1,17 @@
 [% INCLUDE 'doc-head-open.inc' %]
 <title>Online help</title>
-<script type="text/javascript" src="[% themelang %]/js/tinymce/jscripts/tiny_mce/tiny_mce.js"></script>
-<script type="text/javascript">
+<script language="javascript" type="text/javascript" src="[% interface %]/lib/tiny_mce/tiny_mce.js"></script>
+<script type="text/javascript">//<![CDATA[
 tinyMCE.init({
        mode : "textareas",
         theme : "advanced",
     content_css : "[% themelang %]/css/tinymce.css",
-       plugins : "table,save,advhr,advlink,iespell,searchreplace,print,contextmenu",
+    plugins : "table,save,advhr,advlink,searchreplace,print,contextmenu",
         theme_advanced_disable : "underline,strikethrough,styleselect,image",
        theme_advanced_buttons1_add_before : "save,|",
        theme_advanced_buttons2_add_before: "cut,copy,paste,|,search,replace,|",
        theme_advanced_buttons3_add_before : "tablecontrols,|",
-       theme_advanced_buttons3_add : "iespell,advhr,|,print",
+    theme_advanced_buttons3_add : "advhr,|,print",
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_path_location : "bottom",
@@ -19,6 +19,7 @@ tinyMCE.init({
        plugin_insertdate_timeFormat : "%H:%M:%S",
     apply_source_formatting : true
 });
+//]]>
 </script>
 [% IF ( intranetstylesheet ) %]
     <link rel="stylesheet" type="text/css" href="[% intranetstylesheet %]" />
index 5dc1351..bf0ee2f 100644 (file)
@@ -1,10 +1,10 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Offline Circulation</h1>
+<h1>Offline circulation</h1>
 
-<p>From this page you can manage offline circulation actions tracked in the Firefox plugin found at: <a class="ulink" href="https://addons.mozilla.org/en/firefox/addon/koct/" target="_top">https://addons.mozilla.org/en/firefox/addon/koct/</a></p>
+<p>From this page you can manage offline circulation actions tracked in the Firefox plugin found at: <a class="ulink" href="https://addons.mozilla.org/en/firefox/addon/koct/" target="_top">https://addons.mozilla.org/en/firefox/addon/koct/</a> and the Windows Offline Circulation tool found at <a href="http://kylehall.info/index.php/projects/koha/koha-offline-circulation/" target="_top">http://kylehall.info/index.php/projects/koha/koha-offline-circulation/</a>.</p>
 
-<p>When you use the 'Commit to Koha' option in the offline circulation plugin you will come to this page to manage the data.</p>
+<p>When you use the 'Commit to Koha' option in the Firefox plugin or the 'View pending offline circulation actions' after uploading your *.koc file you will come to this page to manage the data.</p>
 
 <p>Once all of the logs from all of the circulation computers are loaded you will be able to check them all or select just those you want to process into Koha.</p>
 
@@ -20,6 +20,6 @@
     <li>Once finished you will have a summary of all of your transactions</li>
 </ul>
 
-<p><strong>See the full documentation for Offline Circulation in the <a href="http://manual.koha-community.org/3.10/en/offlinecirc.html#firefoxofflinecirc">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Offline Circulation in the <a href="http://manual.koha-community.org/3.12/en/offlinecirc.html#firefoxofflinecirc">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index 6b9c4ed..0959722 100644 (file)
@@ -1,17 +1,21 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Offline Circulation File (.koc) Uploader</h1>
+<h1>Upload offline circulation file (*.koc)</h1>
 
-<p>The Offline Circulation Utility can be downloaded at: <a href="http://millruntech.com/koha/koha-offline-circulation">http://millruntech.com/koha/koha-offline-circulation</a></p>
+<p>The Offline Circulation Utility can be downloaded at: <a href="http://kylehall.info/index.php/projects/koha/koha-offline-circulation/" target="_top">http://kylehall.info/index.php/projects/koha/koha-offline-circulation/</a></p>
 
-<p>The offline circulation tool for Windows generates a KOC file which you can upload into Koha once your system comes back up.</p>
+<p>The offline circulation tool for Windows will generate a KOC file that you can upload into Koha once your system comes back up.</p>
 
-<p>Browse your computer for the *.koc file.</p>
+<p>On the Circulation menu click 'Upload offline circulation file (.koc)'</p>
 
-<p>Once the file is uploaded, click the 'Process Offline Circulation' button.</p>
+<p>Browse your computer for the *.koc file</p>
 
-<p>When this process  is complete, you will see a summary of actions from when you were offline (including any errors).</p>
+<p>Once the file is uploaded, click the process the file</p>
 
-<p><strong>See the full documentation for the Offline Circulation File Uploader in the <a http://manual.koha-community.org/3.10/en/offlinecirc.html#uploadofflinecirc">manual</a> (online).</strong></p>
+<p>When this is complete you'll be able to upload another file or tend to pending offline circulation actions.</p>
+
+<p>You can also tend to pending circulation actions by going to Circulation > Pending offline circulation actions.</p>
+
+<p><strong>See the full documentation for Uploading the Offline Circulation File in the <a http://manual.koha-community.org/3.12/en/offlinecirc.html#uploadofflinecirc">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/help/plugins/plugins-home.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/help/plugins/plugins-home.tt
new file mode 100644 (file)
index 0000000..ac8eb6a
--- /dev/null
@@ -0,0 +1,11 @@
+[% INCLUDE 'help-top.inc' %]
+
+<h1>Plugins</h1>
+
+<p>Koha's Plugin System allows for you to add additional tools and reports to Koha that are specific to your library.  Plugins are installed by uploading KPZ ( Koha Plugin Zip ) packages. A KPZ file is just a zip file containing the perl files, template files, and any other files neccessary to make the plugin work.</p>
+
+<p>The plugin system needs to be turned on by a system administrator and should only managed by those who understand Perl and the way data connects within Koha.</p>
+
+<p><strong>See the full documentation for the Plugin System in the <a href="http://manual.koha-community.org/3.12/en/pluginsystem.html">manual</a> (online).</strong></p>
+
+[% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/help/plugins/plugins-upload.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/help/plugins/plugins-upload.tt
new file mode 100644 (file)
index 0000000..ce1450c
--- /dev/null
@@ -0,0 +1,11 @@
+[% INCLUDE 'help-top.inc' %]
+
+<h1>Upload Koha plugin</h1>
+
+<p>Koha's plugin system allows for you to add additional tools and reports to Koha that are specific to your library.  Plugins are installed by uploading KPZ ( Koha Plugin Zip ) packages. A KPZ file is just a zip file containing the perl files, template files, and any other files neccessary to make the plugin work.</p>
+
+<p style="color: #990000;">Important: Only install plugins from trusted sources.</p>
+
+<p><strong>See the full documentation for the Plugin system in the <a href="http://manual.koha-community.org/3.12/en/pluginsystem.html">manual</a> (online).</strong></p>
+
+[% INCLUDE 'help-bottom.inc' %]
index bc4b01e..499e597 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Acquisitions Statistics</h1>
+<h1>Acquisitions statistics</h1>
 
 <p>Using the form provided, choose which value you would like to appear in the Column and which will appear in the Row.</p>
 
@@ -12,6 +12,6 @@
 
 <p>Choosing amount will change your results to appear as the sum of the amounts spent.</p>
 
-<p><strong>See the full documentation for Acquisitions Statistics in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#acqstats">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Acquisitions Statistics in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#acqstats">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 080a16d..717c5cb 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Patrons With The Most Checkouts</h1>
+<h1>Patrons with the most checkouts</h1>
 
 <p>This report will simply list the patrons who have the most checkouts.</p>
 
@@ -8,6 +8,6 @@
 
 <p>You can also choose to export to a file that you can manipulate to your needs.</p>
 
-<p><strong>See the full documentation for the Patrons with the most Checkouts report in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#mostcheckouts">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Patrons with the most Checkouts report in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#mostcheckouts">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 40f369f..e9032c8 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Patrons With No Checkouts</h1>
+<h1>Patrons with no checkouts</h1>
 
 <p>This report will list for you the patrons in your system who haven't checked any items out.</p>
 
@@ -8,6 +8,6 @@
 
 <p>You can also choose to export to a file that you can manipulate to your needs.</p>
 
-<p><strong>See the full documentation for the Patrons with no Checkouts report in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#patnocheckouts">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Patrons with no Checkouts report in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#patnocheckouts">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 310e952..36309c0 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Patron Statistics</h1>
+<h1>Patron statistics</h1>
 
 <p>Using the form provided, choose which value you would like to appear in the Column and which will appear in the Row.</p>
 
@@ -8,7 +8,7 @@
 
 <p>Based on your selections, you may see some query information above your results table. You can also choose to export to a file that you can manipulate to your needs.</p>
 
-<p><strong>See the full documentation for Patron Statistics in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#patstats">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Patron Statistics in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#patstats">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index cf615e9..ab569e3 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Most Circulated Items</h1>
+<h1>Most circulated items</h1>
 
 <p>This report will simply list the items that have the been checked out the most.</p>
 
@@ -8,6 +8,6 @@
 
 <p>You can also choose to export to a file that you can manipulate to your needs.</p>
 
-<p><strong>See the full documentation for the Most Circulation Items report in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#mostcirculated">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Most Circulation Items report in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#mostcirculated">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 93e70a7..31f71b8 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Items With No Checkouts</h1>
+<h1>Items with no checkouts</h1>
 
 <p>This report will list items in your collection that have never been checked out.</p>
 
@@ -8,6 +8,6 @@
 
 <p>You can also choose to export to a file that you can manipulate to your needs.</p>
 
-<p><strong>See the full documentation for the Items with no Checkouts report in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#itemnocheckouts">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Items with no Checkouts report in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#itemnocheckouts">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 3a54696..9678d20 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Catalog Statistics</h1>
+<h1>Catalog statistics</h1>
 
 <p>Using the form provided, choose which value you would like to appear in the Column and which will appear in the Row.</p>
 
@@ -8,7 +8,7 @@
 
 <p>You can also choose to export to a file that you can manipulate to your needs.</p>
 
-<p><strong>See the full documentation for Catalog Statistics in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#catstats">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Catalog Statistics in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#catstats">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index 191e437..cdaf397 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Reports Dictionary</h1>
+<h1>Reports dictionary</h1>
 
 <p>The report dictionary is a way to pre-define common filters you'd like to apply to your reports. This is a good way to add in filters that the report wizard doesn't include by default. To add a new definition, or filter, click 'New Definition' on the Reports Dictionary page and follow the 4 step process.</p>
 
@@ -18,6 +18,6 @@
 
 <p>Then when generating reports on the module you created the value for you will see an option to limit by the definition at the bottom of the usual filters.</p>
 
-<p><strong>See the full documentation for the Reports Dictionary in the <a href="http://manual.koha-community.org/3.10/en/reportdic.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Reports Dictionary in the <a href="http://manual.koha-community.org/3.12/en/reportdic.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 33f46c6..c138ecf 100644 (file)
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Add a Custom Report</h1>
+<h1>Add a custom report</h1>
 
-<h2>Guided Report Wizard</h2>
+<h3>Guided report wizard</h3>
 
-<p>If the report you need is not already available, the 'Guided Reports' Wizard will walk you through creating a custom report.</p>
+<p>The guided report wizard will walk you through a six step process to generate a report.</p>
 
+<p><strong>Step 1:</strong> Choose the module you want to report on. This will determine what tables and fields are available for you to query.</p>
+
+<p>'Report is public' should be left to the default of 'No' in most cases. A report can be made public if you intend to allow access to it through the JSON webservice interface. This is a system that can be used by developers to make custom presentations of the data from the report, for example displaying it using a graphing API. To learn more speak to your local developer.</p>
 <ul>
-<li>Go to the 'Reports' module (usually under 'More' in your Global Nav)</li>
-<li>Choose 'Guided Reports' under 'Guided Reports Wizard'</li>
+    <li>A public report is accessible via a URL that looks like this: http://MYOPAC/cgi-bin/koha/svc/report?id=REPORTID</li>
 </ul>
+<p><strong>Step 2:</strong> Choose a report type. For now, Tabular is the only option available.</p>
+
+<p><strong>Step 3:</strong> Choose the fields you want in your report. You can select multiple fields and add them all at once by using CTRL+Click on each item you want to add before clicking the Add button.</p>
+
+<p><strong>Step 4:</strong> Choose any limits you might want to apply to your report (such as item types or branches). If you don't want to apply any limits, simply click Next instead of making an option.</p>
+
+<p><strong>Step 5:</strong> Perform math functions. If you don't want to do any calculations, simply click Next instead of making an option.</p>
+
+<p><strong>Step 6:</strong> Choose data order. If you want the data to print out in the order it's found in the database, simply click Finish.</p>
+
+<p>When you are finished you will be presented with the SQL generated by the report wizard. From here you can choose to save the report by clicking 'Save' or copy the SQL and make edits to it by hand.</p>
 
-<p>Answer the 6 questions presented in order to create your report.</p>
+<p>If you choose to save the report you will be asked to name your report, sort it in to groups and subgroups and enter any notes regarding it.</p>
 
-<p><strong>Step 1: Choose a Module to Report on</strong></p>
+<p>Once your report is saved it will appear on the 'Use Saved' page with all other saved reports.</p>
 
+<p>From here you can make edits, run the report, or schedule a time to have the report run. To find the report you created you can sort by any of the columns by clicking the on the column header (creation date is the best bet for finding the report you just added). You can also filter your results using the filter menu on the left or use the tabs to find reports based on your custom groups.</p>
+
+<h3>Report from SQL</h3>
+
+<p>In addition to the report wizard, you have the option to write your own queries using SQL. To find reports written by other Koha users, visit the Koha Wiki: <a href="http://wiki.koha-community.org/wiki/SQL_Reports_Library" target="blank">http://wiki.koha-community.org/wiki/SQL_Reports_Library</a>. You can also find your database structure in /installer/data/mysql/kohastructure.sql or online at: <a href="http://schema.koha-community.org" target="blank">http://schema.koha-community.org</a>.</p>
+
+<p>To add your query, click the link to 'Create from SQL' on the main reports module or the 'New report' button at the top of the 'Saved reports' page.</p>
+
+<p>Fill in the form presented</p>
+<ul>
+       <li>The 'Name' is what will appear on the Saved Reports page to help you identify the report later. It will also be searchable using the filters found the left of the Saved Reports page.</li>
+       <li>You can use the 'Report group' to organize your reports so that you can easily filter reports by groups. Report groups are set in the REPORT_GROUP authorized value category or can be added on the fly when creating the report by choosing the 'or create' radio button.
 <ul>
-<li>Choose a Koha module to build a report on (patrons, circ, cataloging, etc)</li>
-<li>Click 'Next'</li>
+       <li style="background-color: #ffe599;">Tip: If you're adding a report group on the fly, remember that you code should be fewer than 10 characters and should not include special characters or spaces.</li>
 </ul>
+</li>
+       <li>You can use 'Report subgroup' to further organize your reports so that you can easily filter reports by groups and subgroups. Report subgroups are set in the REPORT_SUBGROUP authorized value category or can be added on the fly when creating the report by choosing the 'or create' radio button.
+<ul>
+       <li style="background-color: #ffe599;">Tip: If you're adding a report subgroup on the fly, remember that you code should be fewer than 10 characters and should not include special characters or spaces.</li>
+</ul>
+</li>
+       <li>'Report is public' should be left to the default of 'No' in most cases. A report can be made public if you intend to allow access to it through the JSON webservice interface. This is a system that can be used by developers to make custom presentations of the data from the report, for example displaying it using a graphing API. To learn more speak to your local developer.
+<ul>
+       <li>A public report is accessible via a URL that looks like this: http://MYOPAC/cgi-bin/koha/svc/report?id=REPORTID</li>
+</ul>
+</li>
+       <li>'Notes' will also appear on the Saved Reports page, this can be used to provide more details about the report or tips on how to enter values when it runs</li>
+       <li>The type should always be 'Tabular' at this time since the other formats have not been implemented</li>
+       <li>In the 'SQL' box you will type or paste the SQL for the report</li>
+       <li>If you feel that your report might be too resource intensive you might want to consider using runtime parameters to your query. Runtime parameters basically make a filter appear before the report is run to save your system resources.There is a specific syntax that Koha will understand as 'ask for values when running the report'. The syntax is &lt;&lt;Question to ask authorized_value&gt;&gt;.
+<ul>
+       <li>The &lt;&lt; and &gt;&gt; are just delimiters. You must put &lt;&lt; at the beginning and &gt;&gt; at the end of your parameter</li>
+       <li>The 'Question to ask' will be displayed on the left of the string to enter.</li>
+       <li>The authorized_value can be omitted if not applicable. If it contains an authorized value category, or branches or itemtype or categorycode, a list with the Koha authorized values will be displayed instead of a free field Note that you can have more than one parameter in a given SQL Note that entering nothing at run time won't probably work as you expect. It will be considered as "value empty" not as "ignore this parameter". For example entering nothing for : "title=&lt;&lt;Enter title&gt;&gt;" will display results with title='' (no title). If you want to have to have something not mandatory, use "title like &lt;&lt;Enter title&gt;&gt;" and enter a % at run time instead of nothing</li>
+</ul>
+</li>
+       <li>Examples:
+<ul>
+       <li>SELECT surname,firstname FROM borrowers WHERE branchcode=&lt;&lt;Enter patrons library|branches&gt;&gt; AND surname like &lt;&lt;Enter filter for patron surname (% if none)&gt;&gt;</li>
+       <li>SELECT * FROM items WHERE homebranch = &lt;&lt;Pick your branch|branches&gt;&gt; and barcode like &lt;&lt;Partial barcode value here&gt;&gt;</li>
+</ul>
+</li>
+       <li style="background-color: #ffe599;">Tip: To generate a date picker calendar to the right of the field when running a report you can use the 'date' keyword like this: &lt;&lt;Enter Date|date&gt;&gt;
+</li>
+       <li style="background-color: #ffe599;">Tip: You have to put "%" in a text box to 'leave it blank'. Otherwise, it literally looks for "" (empty string) as the value for the field.</li>
+       <li style="color: #990000;">Important: In addition to using any authorized value code to generate a dropdown, you can use the following values as well: Branches (branches), Item Types (itemtypes) and Patron Categories (categorycode). For example a branch pull down would be generated like this &lt;&lt;Branch|branches&gt;&gt;</li>
+</ul>
+
+<p><strong>Note</strong>: There is a limit of 10,000 records put on SQL statements entered in Koha. To get around this you want to add 'LIMIT 100000' to the end of your SQL statement (or any other number above 10,000.</p>
+
+<p>Once everything is entered click the 'Save Report' button and you'll be presented with options to run it. Once a report is saved you do not have to recreate it you can simply find it on the Saved Reports page and run or edit it.</p>
+
+<h3>Duplicate Report</h3>
+
+<p>Reports can also be added by duplicating an existing report. Visit the 'Saved reports' page to see all of the reports listed on your system already.</p>
+
+<p>To the right of every report there is a 'Duplicate' link in the 'Saved SQL' column. Click that 'Duplicate' link to use an existing report as the basis for your new report. That will populate the new report form with the existing SQL for easy editing and resaving.</p>
 
-<p><strong>Step 2: Pick a Report Type</strong></p>
+<h3>Edit Custom Reports</h3>
 
-<ul><li style="color: #990000">IMPORTANT: Only Tabular should be chosen with this option</li></ul>
+<p>Every report can be edited from the reports lists. To see the list of reports already stored in Koha, click 'Use Saved.'</p>
 
-<p><strong>Step 3: Select Columns for Display</strong></p>
+<p>To find the report you'd like to edit you can sort by any of the columns by clicking the on the column header. You can also filter your results using the filter menu on the left or use the tabs to find reports based on your custom groups.</p>
 
-<p><strong>Step 4: Select Criteria to Limit</strong></p>
+<p>From this list you can edit any custom report by clicking 'Edit' in the 'Saved SQL' column.</p>
 
-<ul><li>This is optional, if you don't want to limit results by any one field, just leave this section blank.</li></ul>
+<h3>Running Custom Reports</h3>
 
-<p><strong>Step 5: Pick which columns to perform mathmatical functions on</strong></p>
+<p>Once custom reports are saved to Koha, you can run them by going to the Saved Reports page and clicking the 'Run' link to the right of the report.</p>
 
-<ul><li>This is optional, if you don't want to do any math on the results, just leave this section blank.</li></ul>
+<p>When you report runs you will either be asked for some value or you will see the results right away</p>
 
-<p><strong>Step 6: Choose how you want the report ordered</strong></p>
+<p>From the results you can choose to rerun the report by clicking 'Run report' at the top, edit the report by clicking the 'Edit' button or starting over and creating a new report by using the 'New' button. You can also download your results by choosing a file type at the bottom of the results next to the 'Download the report' label and clicking 'Download.'</p>
 
-<ul><li>This is optional, if you want the results to come out as they are in the table, just leave this section blank.</li></ul>
+<p style="background-color: #ffe599;">Tip:  A Comma Separated Text file is a CSV file and it can be opened by any spreadsheet application.</p>
 
-<h2>Edit Reports</h2>
+<h3>DB table value for reports</h3>
 
-<p>Custom reports can be edited in their entirety from the Saved Guided Reports page.</p>
+<p><strong>Question:</strong> What do the codes in the accounttype field in the accountlines table stand for?</p>
 
-<ul><li><em>Get there:</em> More > Reports > Guided Reports > Use Saved</li></ul>
+<p><strong>Answer:</strong></p>
 
 <ul>
-<li>To edit a report click 'Edit SQL' beside the report</li>
-<li>A page with editable fields will open so that you can change the title, notes and SQL related to the report</li>
+       <li>A = Account management fee</li>
+       <li>C = Credit</li>
+       <li>F = Overdue fine</li>
+       <li>FOR = Forgiven</li>
+       <li>FU = Overdue, still acccruing</li>
+       <li>L = Lost item</li>
+       <li>LR = Lost item returned/refunded</li>
+       <li>M = Sundry</li>
+       <li>N = New card</li>
+       <li>PAY = Payment</li>
+       <li>W = Writeoff</li>
 </ul>
 
-<h2>Report from SQL</h2>
+<p><strong>Question:</strong> What are the possible codes for the type field in the statistics table?</p>
 
-<p>In addition to the report wizard, you have the option to write your own queries using SQL. To find reports written by other Koha users, visit the Koha Wiki: <a href="http://wiki.koha-community.org/wiki/SQL_Reports_Library" target="_top">http://wiki.koha-community.org/wiki/SQL_Reports_Library</a>. You can also find your database structure in /installer/data/mysql/kohastructure.sql or online at: <a href="http://schema.koha-community.org/" target="_top">http://schema.koha-community.org</a>.</p>
+<p><strong>Answer:</strong></p>
 
-<p>To add your query, click the link to 'Create from SQL' on the main reports module or the New button at the top of the Saved Reports page.</p>
-
-<p>Fill in the form presented</p>
 <ul>
-    <li>The 'Name' is what will appear on the Saved Reports page to help you identify the report later. It will also be searchable using the filters found the left of the Saved Reports page.</li>
-    <li>You can use the 'Report group' to organize your reports so that you can easily filter reports by groups. Report groups are set in the REPORT_GROUP authorized value category.</li>
-    <li>You can use 'Report subgroup' to further organize your reports so that you can easily filter reports by groups and subgroups. Report subgroups are set in the REPORT_SUBGROUP authorized value category.</li>
-    <li>'Report is public' should be left to the default of 'No' in most cases. A report can be made public if you intend to allow access to it through the JSON webservice interface. This is a system that can be used by developers to make custom presentations of the data from the report, for example displaying it using a graphing API. To learn more speak to your local developer.
+       <li>localuse
 <ul>
-    <li>A public report is accessible via a URL that looks like this: http://MYOPAC/cgi-bin/koha/svc/report?id=REPORTID</li>
+       <li>Registers if an item that had been checked out to a statistics patron (category type = 'X') is returned</li>
 </ul>
 </li>
-    <li>'Notes' will also appear on the Saved Reports page, this can be used to provide more details about the report or tips on how to enter values when it runs</li>
-    <li>The type should always be 'Tabular' at this time since theother formats have not been implemented</li>
-    <li>In the 'SQL' box you will type or paste the SQL for the report</li>
-    <li>If you feel that your report might be too resource intensive you might want to consider using runtime parameters to your query. Runtime parameters basically make a filter appear before the report is run to save your system resources.There is a specific syntax that Koha will understand as 'ask for values when running the report'. The syntax is &lt;&lt;Question to ask|authorized_value&gt;&gt;.
+       <li>issue</li>
+       <li>return</li>
+       <li>renew</li>
+       <li>writeoff</li>
+       <li>payment</li>
+       <li>CreditXXX
 <ul>
-    <li>The &lt;&lt; and &gt;&gt; are just delimiters. You must put &lt;&lt; at the beginning and &gt;&gt; at the end of your parameter</li>
-    <li>The 'Question to ask' will be displayed on the left of the string to enter.</li>
-    <li>The authorized_value can be omitted if not applicable. If it contains an authorized value category, or libraries or itemtype or categorycode, a list with the Koha authorized values will be displayed instead of a free field Note that you can have more than one parameter in a given SQL Note that entering nothing at run time won't probably work as you expect. It will be considered as "value empty" not as "ignore this parameter". For example entering nothing for : "title=&lt;&lt;Enter title&gt;&gt;" will display results with title='' (no title). If you want to have to have something not mandatory, use "title like &lt;&lt;Enter title&gt;&gt;" and enter a % at run time instead of nothing</li>
+       <li>stores different types of fee credits, so a query to catch them all would include a clause like "type LIKE 'Credit%'"</li>
 </ul>
-<p>Examples:</p>
+</li>
+</ul>
+
+<p><strong>Question</strong>: What are the possible codes for the found field in the reserves and old_reserves tables?</p>
+
+<p><strong>Answer</strong>:</p>
+
 <ul>
-    <li>SELECT surname, firstname<br />
-FROM borrowers <br />
-WHERE branchcode=&lt;&lt;Enter patrons library|branches&gt;&gt; AND surname like &lt;&lt;Enter filter for patron surname (% if none)&gt;&gt;</li>
-    <li>SELECT * <br />
-FROM items <br />
-WHERE homebranch = &lt;&lt;Pick your library|branches&gt;&gt; AND barcode like &lt;&lt;Partial barcode value here&gt;&gt;</li>
+       <li>NULL: means the patron requested the 1st available, and we haven't chosen the item</li>
+       <li>T = Transit: the reserve is linked to an item but is in transit to the pickup branch</li>
+       <li>W =Waiting: the reserve is linked to an item, is at the pickup branch, and is waiting on the hold shelf</li>
+       <li>F = Finished: the reserve has been completed, and is done</li>
 </ul>
-</li>
-    <li>Tip: To generate a date picker calendar to the right of the field when running a report you can use the 'date' keyword like this: &lt;&lt;Enter Date|date&gt;&gt;</li>
-    <li>Tip: You have to put "%" in a text box to 'leave it blank'. Otherwise, it literally looks for "" (empty string) as the value for the field.</li>
-    <li style="color: #990000">Important: In addition to using any authorized value code to generate a dropdown, you can use the following values as well: Libraries (branches), Item Types (itemtypes) and Patron Categories (categorycode). For example a library pull down would be generated like this &lt;&lt;Library|branches&gt;&gt;</li>
+
+<p><strong>Question</strong>: What are the possible codes for the area field in the reports_dictionary table?</p>
+
+<p><strong>Answer</strong>:</p>
+
+<ul>
+       <li>1 = Circulation</li>
+       <li>2 = Catalog</li>
+       <li>3 = Patrons</li>
+       <li>4 = Acquistions</li>
+       <li>5 = Accounts</li>
 </ul>
 
-<p>Note: There is a limit of 10,000 records put on SQL statements entered in Koha. To get around this you want to add 'LIMIT 100000' to the end of your SQL statement (or any other number above 10,000.</p>
+<p><strong>Question</strong>: What are the possible codes for the message_type field in the messages table?</p>
 
-<p>Once everything is entered click the 'Save Report' button and you'll be presented with options to run it. Once a report is saved you do not have to recreate it you can simply find it on the Saved Reports page and run or edit it.</p>
+<p><strong>Answer</strong>:</p>
+
+<ul>
+       <li>L = For Librarians</li>
+       <li>B = For Patrons/Borrowers</li>
+</ul>
 
-<p><strong>Is there a repository for reports?</strong></p>
+<p><strong>Question</strong>: What are the possible codes for the status field in the serial table"?</p>
 
-<p>There is a page on the Koha Wiki: <a href="http://wiki.koha-community.org/wiki/SQL_Reports_Library" target="_new">http://wiki.koha-community.org/wiki/SQL_Reports_Library</a> with reports written by Koha libraries around the world.</p>
+<p><strong>Answer</strong>:</p>
 
-<p>NEKLS also has a great page (<a href="http://www.nexpresslibrary.org/training/reports-training/" target="_new">http://www.nexpresslibrary.org/training/reports-training/</a>) with a list of reports they have written.</p>
+<ul>
+       <li>1 = Expected</li>
+       <li>2 = Arrived</li>
+       <li>3 = Late</li>
+       <li>4 = Missing</li>
+       <li>5 = Not Available</li>
+       <li>6 = Delete</li>
+</ul>
 
 <p><strong>See the full documentation for Custom Reports in the <a href="http://manual.koha-community.org/3.10/en/reports.html#customreports">manual</a> (online).</strong></p>
 
index 16c025b..479e9a3 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Average Loan Time</h1>
+<h1>Average loan time</h1>
 
 <p>This report will list the average time items are out on loan based on the criteria you enter</p>
 
@@ -8,6 +8,6 @@
 
 <p>You can also choose to export to a file that you can manipulate to your needs.</p>
 
-<p><strong>See the full documentation for the Average Loan Time report in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#avloantime">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Average Loan Time report in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#avloantime">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 6117f00..068bff8 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Circulation Statistics</h1>
+<h1>Circulation statistics</h1>
 
 <p>Using the form provided, choose which value you would like to appear in the Column and which will appear in the Row.</p>
 
@@ -19,6 +19,6 @@
        <li>For a single day, an example would be: 11/15/2009 to 11/16/2009 to find what circulated on the 15th</li>
 </ul>
 
-<p><strong>See the full documentation for Circulation Statistics in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#circstats">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Circulation Statistics in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#circstats">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index 5d48ded..4e33125 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Lost Items</h1>
+<h1>Lost items</h1>
 
 <p> This one-step report will show you how many items of each item type are currently in your library or libraries.</p>
 
@@ -16,6 +16,6 @@
                </ul>
        </div>  
 
-<p><strong>See the full documentation for the Lost Items report in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#lostreport">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Lost Items report in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#lostreport">manual</a> (online).</strong></p>
        
 [% INCLUDE 'help-bottom.inc' %]
index a9f3c02..3dd9ca2 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Catalog by Item Type</h1>
+<h1>Catalog by item type</h1>
 
 <p>This report will list the total number of items of each item type per library.</p>
 
@@ -8,6 +8,6 @@
 
 <p>You can also choose to export to a file that you can manipulate to your needs.</p>
 
-<p><strong>See the full documentation for the Catalog by Item Type report in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#catbyitem">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Catalog by Item Type report in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#catbyitem">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index c64c1a0..c7914cf 100644 (file)
@@ -19,6 +19,6 @@
 </li>
 </ul>
 
-<p><strong>See the full documentation for Reports in the <a href="http://manual.koha-community.org/3.10/en/reports.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Reports in the <a href="http://manual.koha-community.org/3.12/en/reports.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 463f441..91bda83 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Holds Statistics</h1>
+<h1>Holds statistics</h1>
 
 <p><strong>Note:</strong> These reports are limited in what data they can look at, so it's often recommended to use custom reports for official end of the year statistics.</p>
 
@@ -10,6 +10,6 @@
 
 <p>You can also choose to export to a file that you can manipulate to your needs.</p>
 
-<p><strong>See the full documentation for Holds Statistics in the <a href="manual.koha-community.org/3.10/en/statsreports.html#holdstats">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Holds Statistics in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#holdstats">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index dcb7d4b..1519f0d 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Serials Statistics</h1>
+<h1>Serials statistics</h1>
 
 <p>Using the form provided, choose how you would like to list the serials in your system.</p>
 
@@ -8,6 +8,6 @@
 
 <p>You can also choose to export to a file that you can manipulate to your needs.</p>
 
-<p><strong>See the full documentation for Serials Statistics in the <a href="http://manual.koha-community.org/3.10/en/statsreports.html#serialstats">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Serials Statistics in the <a href="http://manual.koha-community.org/3.12/en/statsreports.html#serialstats">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index c13b223..cc30fb1 100644 (file)
@@ -8,6 +8,6 @@
 
 <p>In your results you will see all subscriptions that will expire before the date you entered. From there you can choose to view the subscription further or renew it in one click.</P>
 
-<p><strong>See the full documentation for Checking Serial Expiration in the <a href="http://manual.koha-community.org/3.10/en/serialexpiration.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Checking Serial Expiration in the <a href="http://manual.koha-community.org/3.12/en/serialexpiration.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 91cfcd0..33116a8 100644 (file)
@@ -12,7 +12,7 @@
 
 <p>From the list of late issues you can choose which ones you want to send a claim email to by clicking the checkbox to the left of late issue, choosing the notice template to use and clicking the 'Send notification' button.</p>
 
-<p><strong>See the full documentation for Serial Claims in the <a href="http://manual.koha-community.org/3.10/en/serialclaims.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Serial Claims in the <a href="http://manual.koha-community.org/3.12/en/serialclaims.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index cf7e655..644baae 100644 (file)
@@ -16,6 +16,8 @@
 
 <p>If RoutingListAddReserves is set to on then patrons listed in the routing list will automatically be added to the holds list for the issue.</p>
 
-<p><strong>See the full documentation for Routing Lists in the <a href="http://manual.koha-community.org/3.10/en/routinglist.html">manual</a> (online).</strong></p>
+<p>To see a list of all of the routing lists a specific patron is on visit the Routing Lists tab on their patron record.</p>
+
+<p><strong>See the full documentation for Routing Lists in the <a href="http://manual.koha-community.org/3.12/en/routinglist.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index f00eb88..5854817 100644 (file)
@@ -10,6 +10,6 @@
 
 <p>If you are adding multiple issues at once or if the latest expected issue is late, you can click the 'Generate Next' button to generate the next issue based on the subscription pattern.</p>
 
-<p><strong>See the full documentation for Serials in the <a href="http://manual.koha-community.org/3.10/en/serials.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Serials in the <a href="http://manual.koha-community.org/3.12/en/serials.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index acb3f2d..4b0c596 100644 (file)
@@ -24,6 +24,6 @@
 
 <p>Clicking this button will generate the next issue for you and mark the previously expected issue as 'Late' automatically. You can then check the 'Edit' box to the right of each issue and edit the status on multiple issues at once.</p>
 
-<p><strong>See the full documentation for Receiving a Serial in the <a href="http://manual.koha-community.org/3.10/en/receiveissues.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Receiving a Serial in the <a href="http://manual.koha-community.org/3.12/en/receiveissues.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index 1def1f1..6b56d41 100644 (file)
@@ -6,7 +6,7 @@
 
 <p>You can search for existing subscriptions by using the search box at the top of the page. You can search for any part of the serial title or ISSN.</p>
 
-<p><strong>See the full documentation for Serials in the <a href="http://manual.koha-community.org/3.10/en/serials.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Serials in the <a href="http://manual.koha-community.org/3.12/en/serials.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index b8710f3..a5d99b6 100644 (file)
@@ -83,7 +83,7 @@
 
 <p>Click 'Save Subscription' to save the information you have entered.</p>
 
-<p><strong>See the full documentation for Adding a Subscription in the <a href="http://manual.koha-community.org/3.10/en/serials.html#newsubscription">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Adding a Subscription in the <a href="http://manual.koha-community.org/3.12/en/serials.html#newsubscription">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index 1226147..ae0c07b 100644 (file)
@@ -6,6 +6,6 @@
 
 <p>From here you can edit your subscription, renew it and/or recieve issues.</p>
 
-<p><strong>See the full documentation for Serials in the <a href="http://manual.koha-community.org/3.10/en/serials.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Serials in the <a href="http://manual.koha-community.org/3.12/en/serials.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 1049d0d..1c923b5 100644 (file)
@@ -1,15 +1,17 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Purchase Suggestions</h1>
+<h1>Purchase suggestions</h1>
 
 <p>Depending on your settings in the suggestion system preference, patrons may be able to make purchase suggestions via the OPAC. When a suggestion is waiting for library review, it will appear on the Acquisitions home page under the vendor search.</p>
 
-<p>It will also appear on the main staff dashboard under the module labels.</p>
+<p>It will also appear on the main staff dashboard under the module labels</p>
 
 <p>Clicking 'Manage suggestions' will take you to the suggestion management tool. If there are no pending suggestions you can access the suggestion management tool by clicking the 'Manage suggestions' link on the menu on the left of the Acquisitions page.</p>
 
 <p>Your suggestions will be sorted into several tabs: Accepted, Pending, Checked, Ordered and/or Rejected. Each accepted or rejected suggestion will show the name of the librarian who managed the suggestion and the reason they gave for accepting or rejecting it (found under 'Status').</p>
 
+<p>An 'Accepted' suggestion is one that you have marked as 'Accepted' using the form below the suggestions. A 'Pending' suggestion is one that is awaiting action from the library. A 'Checked' suggestion is one that has been marked as 'Checked' using the form before the suggestions. An 'Ordered' suggestion is on that has been ordered using the 'From a purchase suggestion' link in your basket. A 'Rejected' suggestion is one that you have marked at 'Rejected' using the form below the list of suggestions.</p>
+
 <p>For libraries with lots of suggestions, there are filters on the left hand side of the Manage Suggestions page to assist in limiting the number of titles displayed on the screen.</p>
 
 <p>Clicking on the blue headings will expand the filtering options and clicking '[clear]' will clear all filters and show all suggestions.</p>
@@ -34,7 +36,7 @@
 
 <p>Once you have clicked 'Submit' the suggestion will be moved to the matching tab. The status will also be updated on the patron's account in the OPAC and an email notice will be sent to the patron using the template that matches the status you have chosen.</p>
 
-<p><strong>See the full documentation for Purchase Suggestions in the <a href="http://manual.koha-community.org/3.10/en/managesuggest.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Purchase Suggestions in the <a href="http://manual.koha-community.org/3.12/en/managesuggest.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index bff3a9c..63c60b6 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Batch Modify Items</h1>
+<h1>Batch modify items</h1>
 
 <p>This tool will allow you to modify a batch of item records in Koha.</p>
 
@@ -30,6 +30,6 @@
 
 <p>If the items can be deleted they will be and you will be presented with a confirmation of your deletion.</p>
 
-<p><strong>See the full documentation for <a href="http://manual.koha-community.org/3.10/en/batchmodifyitems.html">Batch Item Modifications</a> and <a href="http://manual.koha-community.org/3.10/en/batchdeleteitems.html">Batch Item Deletions</a> in the manual (online).</strong></p>
+<p><strong>See the full documentation for <a href="http://manual.koha-community.org/3.12/en/batchmodifyitems.html">Batch Item Modifications</a> and <a href="http://manual.koha-community.org/3.12/en/batchdeleteitems.html">Batch Item Deletions</a> in the manual (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index ee72d92..c5e2a40 100644 (file)
@@ -4,18 +4,23 @@
 
 <p>This tool allows you to bulk anonymize circulation histories (this means that you keep records of how many times items were checked out - but not the patrons who checked the items out) or bulk delete patrons (remove them from the system completely).</p>
 
-<p style="color: #990000;">Important: Patrons with outstanding fines or items checked out are not saved. They are not completely removed from the system (moved to the delete_borrowers table), but this tool does not provide as many checks as one may desire.</p
+<p style="color: #990000;">Important: Patrons with outstanding fines or items checked out are not saved. They are not completely removed from the system (they are only moved to the delete_borrowers table), but this tool does not provide as many checks as one may desire.</p>
+
+<p style="color: #990000;">Important: Before using this tool it is recommended that you backup your database. Changes made here are permanent.</p>
+
+<p style="color: #990000;">Important: The anonymization will fail quietly if AnonymousPatron preference does not contain a valid value.</p>
 
 <p>To either delete or anonymize patrons</p>
 
 <ul>
-       <li>Check the task you would like to perform (Delete or Anonymize)</li>
+       <li>Check the 'Verify' box on the task you would like to complete (Delete or Anonymize)</li>
        <li>Enter a date before which you want to alter the data</li>
+       <li>If deleting patrons you can also choose to find patrons with a specific expiration date or category</li>
        <li>Click 'Next'</li>
        <li>A confirmation will appear asking if you're sure this is what you want to happen</li>
        <li>Clicking 'Finish' will delete or anonymize your data</li>
 </ul>
 
-<p><strong>See the full documentation for Anonymizing Patrons in the <a href="http://manual.koha-community.org/3.1-/en/anonpatrons.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Anonymizing Patrons in the <a href="http://manual.koha-community.org/3.12/en/anonpatrons.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index c7c37d6..3dcb37e 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>CSV Profiles</h1>
+<h1>CSV profiles</h1>
 
 <p>CSV Profiles are created to define how you would like your cart or list to export.</p>
 
@@ -52,6 +52,6 @@
 
 <p>Your CSV Profiles will appear on the export list or cart menu under the 'Download' button in both the staff client and the OPAC</p>
 
-<p><strong>See the full documentation for CSV Profiles in the <a href="http://manual.koha-community.org/3.10/en/csvprofiles.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for CSV Profiles in the <a href="http://manual.koha-community.org/3.12/en/csvprofiles.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 54438e5..261164a 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]   
 
-<h1>MARC Export</h1>
+<h1>MARC export</h1>
 
 <p>Koha comes with a tool that will allow you to export your bibliographic, holdings and/or authority data in bulk. This can be used to send your records to fellow libraries, organizations or services; or simply for backup purposes.</p>
 
@@ -59,6 +59,6 @@
     <li>Click 'Export authority records'</li>
 </ul>
 
-<p><strong>See the full documentation for Exporting MARC Records in the <a href="http://manual.koha-community.org/3.10/en/exportbibs.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Exporting MARC Records in the <a href="http://manual.koha-community.org/3.12/en/exportbibs.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 923e1d5..5b3ad48 100644 (file)
@@ -1,16 +1,16 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Holidays Calendar</h1>
+<h1>Holidays calendar</h1>
 
 <p>Libraries can define library closings and holidays to be used when calculating due dates. You can make use of the Calendar by turning on the proper system preferences:</p>
 
 <ul>
-    <li><em>Get there: </em>More &gt; Administration &gt; Global System Preferences &gt; Circulation &gt; <span class="link"><span class="link">useDaysMode</span></span>
+    <li><em>Get there: </em>More &gt; Administration &gt; Global System Preferences &gt; Circulation &gt; useDaysMode
 <ul>
        <li>Choose the method for calculating due date - either include days the library is closed in the calculation or don't include them.</li>
 </ul>
 </li>
-    <li><em>Get there:</em> More &gt; Administration &gt; Global System Preferences &gt; Circulation &gt; <span class="link"><span class="link">finescalendar</span></span>
+    <li><em>Get there:</em> More &gt; Administration &gt; Global System Preferences &gt; Circulation &gt; finescalendar
 <ul>
        <li>This will check the holiday calendar before charging fines</li>
 </ul>
@@ -65,7 +65,7 @@
 
 <p>When adding or editing events you can get additional help by clicking on the question mark next to various different options on the form</p>
 
-<p><strong>See the full documentation for the Calendar in the <a href="http://manual.koha-community.org/3.10/en/calholidays.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Calendar in the <a href="http://manual.koha-community.org/3.12/en/calholidays.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index 7ad3322..0ef671d 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Patron Import</h1>
+<h1>Patron import</h1>
 
 <p>The patron import tool can be used at any time to add patrons in bulk. It is commonly used in universities and schools when a new batch of students registers.</p>
 
@@ -55,6 +55,6 @@
 </li>
 </ul>
 
-<p><strong>See the full documentation for Patron Import in the <a href="http://manual.koha-community.org/3.10/en/patronimport.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Patron Import in the <a href="http://manual.koha-community.org/3.12/en/patronimport.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index c02da58..f6f8d2f 100644 (file)
@@ -16,6 +16,6 @@
 
 <p>Choose the text file and the date you want to mark all times as seen and click 'Submit.'</p>
 
-<p><strong>See the full documentation for Inventory in the <a href="http://manual.koha-community.org/3.10/en/inventory.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Inventory in the <a href="http://manual.koha-community.org/3.12/en/inventory.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 67f438e..4b05dbd 100644 (file)
@@ -22,6 +22,6 @@
        <li>News on the circulation receipts will appear below the items that are checked out</li>
 </ul>
 
-<p><strong>See the full documentation for News in the <a href="http://manual.koha-community.org/3.10/en/tools.html#newstool">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for News in the <a href="http://manual.koha-community.org/3.12/en/tools.html#newstool">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]    
\ No newline at end of file
index bae182f..c490504 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Notices & Slips</h1>
+<h1>Notices & slips</h1>
 
 <p>All notices and circulation receipts (or slips) generated by Koha can be customized using the Notices &amp; Slips Tool. The system comes with several predefined templates that will appear when you first visit this tool.</p>
 
@@ -27,7 +27,7 @@
     <li>On overdue notices make sure to use &lt;&lt;items.content&gt;&gt; tags to print out the data related to all items that are overdue.</li>
 </ul>
 <ul>
-    <li>The other option, only for overdue notices, is to use the &lt;item&gt;&lt;/item&gt; tags to span the line so that it will print out multiple lines One example for the &lt;item&gt;&lt;/item&gt; tag option is:&lt;item&gt;"&lt;&lt;biblio.title&gt;&gt;" by &lt;&lt;biblio.author&gt;&gt;, &lt;&lt;items.itemcallnumber&gt;&gt;, Barcode: &lt;&lt;items.barcode&gt;&gt; , Checkout date: &lt;&lt;issues.issuedate&gt;&gt;, Due date: &lt;&lt;issues.date_due&gt;&gt; Fine: &lt;fine&gt;USD&lt;/fine&gt; Due date: &lt;&lt;issues.date_due&gt;&gt; &lt;/item&gt;</li>
+    <li>The other option, only for overdue notices, is to use the &lt;item&gt;&lt;/item&gt; tags to span the line so that it will print out multiple lines One example for the &lt;item&gt;&lt;/item&gt; tag option is:&lt;item&gt;"&lt;&lt;biblio.title&gt;&gt;" by &lt;&lt;biblio.author&gt;&gt;, &lt;&lt;items.itemcallnumber&gt;&gt;, Barcode: &lt;&lt;items.barcode&gt;&gt; , Checkout date: &lt;&lt;issues.issuedate&gt;&gt;, Due date: &lt;&lt;issues.date_due&gt;&gt; Fine: &lt;&lt;items.fine&gt;&gt; Due date: &lt;&lt;issues.date_due&gt;&gt; &lt;/item&gt;</li>
 </ul>
 </ul>
 </li>
@@ -53,7 +53,7 @@
 
 <pre>The following item(s) is/are currently overdue:
 
-   &lt;item&gt;"&lt;&lt;biblio.title&gt;&gt;" by &lt;&lt;biblio.author&gt;&gt;, &lt;&lt;items.itemcallnumber&gt;&gt;, Barcode: &lt;&lt;items.barcode&gt;&gt; Fine: &lt;fine&gt;GBP&lt;/fine&gt;&lt;/item&gt;</pre>
+   &lt;item&gt;"&lt;&lt;biblio.title&gt;&gt;" by &lt;&lt;biblio.author&gt;&gt;, &lt;&lt;items.itemcallnumber&gt;&gt;, Barcode: &lt;&lt;items.barcode&gt;&gt; Fine: &lt;&lt;items.fine&gt;&gt; &lt;/item&gt;</pre>
 
 <p>Which, assuming two items were overdue, would result in a notice like:</p>
 
@@ -81,7 +81,7 @@
        <li>HOLD (Hold Available for Pickup)
 <ul>
        <li>This notice is used if two criteria are met:
-<ol type="1">
+<ol>
     <li>The EnhancedMessagingPreferences is set to 'Allow'</li>
        <li>The patron has requested to receive this notice
 <ul>
     <li>TRANSFERSLIP
 <ul>
     <li>Used to print a transfer slip</li>
-    <li>The transfer sliip is printed when you confirm a transfer from one library to another in your system</li>
+    <li>The transfer slip is printed when you confirm a transfer from one library to another in your system</li>
 </ul>
 </li>
 </ul>
 
-<p><strong>See the full documentation for Notices in the <a href="http://manual.koha-community.org/3.10/en/notices.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Notices in the <a href="http://manual.koha-community.org/3.12/en/notices.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index e4da1a7..0d53d86 100644 (file)
@@ -40,7 +40,7 @@
 </li>
 </ul>
 
-<p><strong>See the full documentation for the Managing Staged MARC Records in the <a href="http://manual.koha-community.org/3.10/en/managestaged.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Managing Staged MARC Records in the <a href="http://manual.koha-community.org/3.12/en/managestaged.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index 7fabf69..8debfb4 100644 (file)
@@ -14,6 +14,6 @@
 
 <p>Once you have made the changes you want, you can click 'Save' and Koha will present you with the changed patron records.</p>
 
-<p><strong>See the full documentation for Batch Patron Modification in the <a href="http://manual.koha-community.org/3.10/en/tools.html#batchpatronmod">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Batch Patron Modification in the <a href="http://manual.koha-community.org/3.12/en/tools.html#batchpatronmod">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 1504364..90f5430 100644 (file)
@@ -41,7 +41,7 @@
 
 <p>Sincerely, Library Staff</p>
 
-<p><strong>See the full documentation for the Overdue Notice/Status Triggers in the <a href="http://manual.koha-community.org/3.10/en/noticetriggers.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Overdue Notice/Status Triggers in the <a href="http://manual.koha-community.org/3.12/en/noticetriggers.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
 
index bdae00a..9c5cc07 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Upload Patron Images</h1>
+<h1>Upload patron images</h1>
 
 <p>Patron images can be uploaded in bulk if you are allowing patron images to be attached to patron records. These images can also be used when creating patron cards.</p>
 
@@ -20,6 +20,6 @@
 
 <p style="color:#990000;">Important: There is a limit of 520K on the size of the picture uploaded and it is recommended that the image be 200x300 pixels, but smaller images will work as well.</p>
 
-<p><strong>See the full documentation for the Patron Image Uploader in the <a href="http://manual.koha-community.org/3.10/en/uploadpatronimages.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Patron Image Uploader in the <a href="http://manual.koha-community.org/3.12/en/uploadpatronimages.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index f13cb9a..6f27ca8 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Quote of the Day Uploader</h1>
+<h1>Quote of the day uploader</h1>
 
 <p>The Quote of the Day (QOTD) uploader allows for uploading of bulk quotes into the pool of quotes which serve as the source of the Quote-Of-The-Day (QOTD) feature in OPAC.</p>
 
@@ -40,6 +40,6 @@
     </ol>
 </ol>
 
-<p><strong>See the full documentation for the Quote of the Day Uploader in the <a href="http://manual.koha-community.org/3.10/en/additionaltools.html#importquote">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Quote of the Day Uploader in the <a href="http://manual.koha-community.org/3.12/en/additionaltools.html#importquote">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index ce069be..6672663 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Quote of the Day Editor</h1>
+<h1>Quote of the day editor</h1>
 
 <p>The Quote of the Day (QOTD) editor allows for editing of and adding to the pool of quotes which serve as the source of the Quote-Of-The-Day (QOTD) feature in OPAC.</p>
 
@@ -38,6 +38,6 @@
     </ol>
 </ol>
 
-<p><strong>See the full documentation for the Quote of the Day Editor in the <a href="http://manual.koha-community.org/3.10/en/additionaltools.html#QOTDEditor">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Quote of the Day Editor in the <a href="http://manual.koha-community.org/3.12/en/additionaltools.html#QOTDEditor">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index 258ec67..1b06d8a 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Task Scheduler</h1>
+<h1>Task scheduler</h1>
 
 <p>The task scheduler is a way to schedule reports to run whenever you want.</p>
 
@@ -23,6 +23,6 @@
 
 <p>Task scheduler will not work if the user the web server runs as doesn't have the permission to use it. To find out if the right user has the permissions necessary, check /etc/at.allow to see what users are in it. If you don't have that file, check etc/at.deny. If at.deny exists but is blank, then every user can use it. Talk to your system admin about adding the user to the right place to make the task scheduler work.</p>
 
-<p><strong>See the full documentation for the Task Scheduler in the <a href="http://manual.koha-community.org/3.10/en/taskscheduler.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Task Scheduler in the <a href="http://manual.koha-community.org/3.12/en/taskscheduler.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
index 6850565..77315e7 100644 (file)
@@ -1,23 +1,25 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>MARC Import</h1>
+<h1>MARC import</h1>
 
-<p>Importing records into Koha includes two steps. The first is to stage records for import.</p>
+<p>This tool can be used to import both bibliographic and authority records that are saved in MARC format. Importing records into Koha includes two steps. The first is to stage records for import.</p>
 
 <ul>
        <li>First find the MARC file on your computer</li>
        <li>Next you will be presented with options for record matching and item imports
 <ul>
        <li>Enter 'Comments about this file' to identify your upload when going to the 'Manage Staged MARC Records' tool</li>
-    <li>Choose the character encoding</li>
-       <li>Choose whether or not you want to look for matching records
+       <li>Tell Koha which type of file this is, bibliographic or authority</li>
+       <li>Choose the character encoding</li>
+       <li>Choose whether or not you want to look for matching
+records
 <ul>
        <li>You can set up record matching rules through the administration area</li>
 </ul>
 </li>
        <li>Next choose what to do with matching records if they are found</li>
        <li>Finally choose what to do with records that are unique</li>
-       <li>Next you can choose whether or not to import the item data found in the MARC records</li>
+       <li>Next you can choose whether or not to import the item data found in the MARC records (if the file you're loading is a bibliographic file)</li>
 </ul>
 </li>
        <li>Click 'Stage for import'</li>
@@ -25,6 +27,6 @@
        <li>To complete the process continue to the Managed Staged MARC Records Tool</li>
 </ul>
 
-<p><strong>See the full documentation for the MARC Import in the <a href="http://manual.koha-community.org/3.10/en/stagemarc.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the MARC Import in the <a href="http://manual.koha-community.org/3.12/en/stagemarc.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 88084a1..eb18b4c 100644 (file)
@@ -4,6 +4,6 @@
 
 <p>Tools in Koha all perform some sort of action. Often many of the items listed under Tools in Koha are referred to as 'Reports' in other library management systems.</p>
 
-<p><strong>See the full documentation for Tools in the <a href="http://manual.koha-community.org/3.10/en/tools.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Tools in the <a href="http://manual.koha-community.org/3.12/en/tools.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 93dd614..7422c7f 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Upload Cover Images</h1>
+<h1>Upload cover images</h1>
 
 <p>This tool will allow you to upload cover images for the materials in your catalog. To access this tool, staff will need the upload_local_cover_images permission. In order for images to show in the staff client and/or OPAC you will need to set your LocalCoverImages and/or OPACLocalCoverImages preferences to 'Display.' Images can be uploaded in batches or one by one.</p>
 
@@ -40,6 +40,6 @@
 
 <p>In the OPAC the cover images will also appear in the images tab, as well as next to the title and on the search results.</p>
 
-<p><strong>See the full documentation for Uploading Cover Images in the <a href="http://manual.koha-community.org/3.10/en/uploadlocalimages.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for Uploading Cover Images in the <a href="http://manual.koha-community.org/3.12/en/uploadlocalimages.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index f28a0be..73b5c04 100644 (file)
@@ -1,6 +1,6 @@
 [% INCLUDE 'help-top.inc' %]
 
-<h1>Log Viewer</h1>
+<h1>Log viewer</h1>
 
 <p>Actions within the Koha system are tracked in log files. Your system preferences can be changed to prevent the logging of different actions. These logs can be viewed using the Log Viewer Tool.</p>
 
@@ -8,6 +8,6 @@
 
 <p>You will note that real names do not appear on the log, only identifying numbers. You need to use the identifying numbers when searching the logs as well.</p>
 
-<p><strong>See the full documentation for the Log Viewer in the <a href="http://manual.koha-community.org/3.10/en/logviewer.html">manual</a> (online).</strong></p>
+<p><strong>See the full documentation for the Log Viewer in the <a href="http://manual.koha-community.org/3.12/en/logviewer.html">manual</a> (online).</strong></p>
 
 [% INCLUDE 'help-bottom.inc' %]
\ No newline at end of file
index 7351c36..560d4b6 100644 (file)
     [% END %]
     <p>When you've made your selections, please click 'Import' below to begin the process. It may take a while to complete,
     please be patient.</p>
-    <p><input type="submit" value="import" />
+    <p><input type="submit" value="Import &gt;&gt;" />
     </p>
     </form>
     </p>
index 45a084d..583f6f0 100644 (file)
                             <legend>[% IF ( layout_id ) %]Edit[% ELSE %]Create[% END %] Label layout</legend>
                             <ol>
                                 <li>
-                                    <label for="layout_name">Layout name</label>
+                                    <label for="layout_name">Layout name</label>
                                     <input type="text" name="layout_name" id="layout_name" size="20" value="[% layout_name %]" />
                                 </li>
                                 <li>
-                                    <label for="barcode_type">Choose barcode type (encoding)</label>
+                                    <label for="barcode_type">Choose barcode type (encoding)</label>
                                     <select name="barcode_type" id="barcode_type">
                                     [% FOREACH barcode_type IN barcode_types %]
                                     [% IF ( barcode_type.selected ) %]
@@ -54,7 +54,7 @@
                                     </select>
                                 </li>
                                 <li>
-                                    <label for="printing_type">Choose layout type</label>
+                                    <label for="printing_type">Choose layout type</label>
                                     <select name="printing_type" id="printing_type">
                                     [% FOREACH label_type IN label_types %]
                                     [% IF ( label_type.selected ) %]
                                     </fieldset>
                                 </li>
                                 <li>
-                                    <label for="guidebox">Draw guide boxes</label>
+                                    <label for="guidebox">Draw guide boxes</label>
                                     [% IF ( guidebox ) %]
                                     <input type="checkbox" name="guidebox" id="guidebox" value="1"  checked="checked" />
                                     [% ELSE %]
                                     [% END %]
                                 </li>
                                 <li>
-                                    <label for="callnum_split">Split call numbers</label>
+                                    <label for="callnum_split">Split call numbers</label>
                                     [% IF ( callnum_split ) %]
                                     <input type="checkbox" name="callnum_split" id="callnum_split" value="1"  checked="checked" />
                                     [% ELSE %]
                                     [% END %]
                                 </li>
                                 <li>
-                                    <label for="text_justify">Text justification</label>
+                                    <label for="text_justify">Text justification</label>
                                     <select name="text_justify" id="text_justify">
                                         [% FOREACH text_justification_type IN text_justification_types %]
                                         [% IF ( text_justification_type.selected ) %]
                                     </select>
                                 </li>
                                 <li>
-                                    <label for="font">Font</label>
+                                    <label for="font">Font</label>
                                     <select name="font" id="font">
                                         [% FOREACH font_type IN font_types %]
                                         [% IF ( font_type.selected ) %]
                                     </select>
                                 </li>
                                 <li>
-                                    <label for="font_size">Font size</label>
+                                    <label for="font_size">Font size</label>
                                     <input type="text" name="font_size" id="font_size" size="2" value="[% font_size |html %]" />
                                 </li>
                             </ol>
index 22f5dc4..4889b1c 100644 (file)
@@ -2,6 +2,9 @@
     <title>Koha &rsaquo; Tools &rsaquo; Labels home</title>
     [% INCLUDE 'doc-head-close.inc' %]
     <link rel="stylesheet" type="text/css" href="[% themelang %]/css/label.css" />
+    [% IF ( bidi ) %]
+    <link rel="stylesheet" type="text/css" href="[% themelang %]/css/right-to-left.css" />
+    [% END %]
 </head>
 <body id="labels_label-home" class="tools labels">
     [% INCLUDE 'header.inc' %]
index db76c12..d685640 100644 (file)
             };
         //]]>
     </script>
+
+<link rel="stylesheet" type="text/css" href="/intranet-tmpl/prog/en/css/datatables.css" />
+<script type="text/javascript" src="/intranet-tmpl/prog/en/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="/intranet-tmpl/prog/en/js/datatables.js"></script>
+<script type="text/javascript" id="js">
+ $(document).ready(function() {
+    $("#labels-table").dataTable($.extend(true, {}, dataTablesDefaults, {
+        "sPaginationType": "four_button",
+        "aaSorting": [[ 1, "asc" ]],
+    }));
+ });
+</script>
+
 </head>
 <body id="labels_label-manage" class="tools labels">
     [% INCLUDE 'header.inc' %]
                             [% IF ( table_loop ) %]
                             <form name="layouts" action="/cgi-bin/koha/label-manage.pl?label_element=[% label_element %]">
                             <h2>Currently Available [% label_element_title %]</h2>
-                            <table>
+                            <table id="labels-table">
                                 [% FOREACH table_loo IN table_loop %]
-                                [% IF ( table_loo.header_fields ) %]
-                                <tr>
-                                [% FOREACH header_field IN table_loo.header_fields %]
-                                    <th>[% header_field.field_label %]</th>
-                                [% END %]
-                                </tr>
-                                [% ELSE %]
-                                <tr>
-                                [% FOREACH text_field IN table_loo.text_fields %]
-                                [% IF ( text_field.select_field ) %]
-                                    <td align="center"><input type="checkbox" name="action" value="[% text_field.field_value %]" /></td>
-                                [% ELSIF ( text_field.field_value ) %]
-                                    <td>[% text_field.field_value %]</td>
-                                [% ELSE %]
-                                    <td>&nbsp;</td>
-                                [% END %]
-                                [% END %]
-                                </tr>
-                                [% END %]
+                                    [% IF ( table_loo.header_fields ) %]
+                                        <thead>
+                                        <tr>
+                                            [% FOREACH header_field IN table_loo.header_fields %]
+                                                 <th>[% header_field.field_label %]</th>
+                                            [% END %]
+                                        </tr>
+                                        </thead>
+                                    [% ELSE %]
+                                        <tr>
+                                        [% FOREACH text_field IN table_loo.text_fields %]
+                                            [% IF ( text_field.select_field ) %]
+                                                <td align="center"><input type="checkbox" name="action" value="[% text_field.field_value %]" /></td>
+                                            [% ELSIF ( text_field.field_value ) %]
+                                                <td>[% text_field.field_value %]</td>
+                                            [% ELSE %]
+                                                <td>&nbsp;</td>
+                                            [% END %]
+                                        [% END %]
+                                        </tr>
+                                    [% END %]
                                 [% END %]
                             </table>
                             <fieldset class="action">
index 04170ac..748d5ac 100644 (file)
@@ -90,12 +90,12 @@ to add to Batch [% batch_id %]
 <fieldset class="rows">
 <ol>
        <li>
-    <label for="from">Added on or after date</label>
+    <label for="from">Added on or after date</label>
         <input type="text" size="10" id="from" name="datefrom" class="datepickerfrom" value="" />
 <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
 </li>
 <li>
-    <label for="to">Added on or before date</label>
+    <label for="to">Added on or before date</label>
         <input type="text" size="10" id="to" name="dateto" class="datepickerto" value="" />
 <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
 </li></ol>
index 46ae7df..b9cddb4 100644 (file)
@@ -1,7 +1,7 @@
 [% INCLUDE 'doc-head-open.inc' %]
 <title>Koha &rsaquo; Patrons &rsaquo; Set permissions for [% surname %], [% firstname %]</title>
-[% INCLUDE 'doc-head-close.inc' %]
 <link rel="stylesheet" type="text/css" href="[% themelang %]/css/treeview/jquery.treeview.css"/>
+[% INCLUDE 'doc-head-close.inc' %]
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.treeview.pack.js"></script>
 <!-- set up tree -->
 <script type="text/javascript">
index 2fdb387..3843c56 100644 (file)
@@ -33,6 +33,7 @@
             }
         [% END %]
         $("#dateofbirth").datepicker({ maxDate: "-1D" });
+        $("#entryform").preventDoubleFormSubmit();
     });
 
     function clear_entry(node) {
       [% IF ( CGIsort1 ) %] 
         [% CGIsort1 %]
       [% ELSE %]
-        <input  type="text" id="sort1" name="sort1" size="20"  value="[% sort1 %]" />
+          [% IF ( opduplicate ) %]
+            <input  type="text" id="sort1" name="sort1" size="20"  value="[% sort1 %]" onclick="this.value=''" />
+          [% ELSE %]
+            <input  type="text" id="sort1" name="sort1" size="20"  value="[% sort1 %]" />
+          [% END %]
          [% IF ( mandatorysort1 ) %]<span class="required">Required</span>[% END %]
       [% END %]   
     </li>
index 7b85274..eddfb29 100644 (file)
@@ -56,7 +56,7 @@
         altcontactaddress3  => "Alternate contact - city"
         altcontactstate     => "Alternate contact - state"
         altcontactzipcode   => "Alternate contact - zip code"
-        altcontactcounty    => "Alternate contact - county"
+        altcontactcountry   => "Alternate contact - country"
         altcontactphone     => "Alternate contact - phone"
         smsalertnumber      => "SMS alert number"
     }
index d983996..c9fb845 100644 (file)
@@ -76,7 +76,7 @@
     <li><span class="label">Category: </span>[% description %] ([% categorycode %])</li>
     <li><span class="label">Registration date: </span>[% dateenrolled %]</li>
     <li><span class="label">Expiration date: </span>
-    [% IF ( reregistration ) %]
+    [% IF ( was_renewed ) %]
             <strong class="reregistrinfo">[% dateexpiry %]</strong>
     [% ELSE %]
             [% dateexpiry %]
index 868334f..b3eef3a 100644 (file)
@@ -181,7 +181,7 @@ function validate1(date) {
 [% IF ( unknowuser ) %]
    <div class="dialog message">This patron does not exist.</div>
 [% ELSE %]
-    [% IF ( reregistration ) %]<div class="dialog message">Patron's account has been renewed until [% dateexpiry %]</div>[% END %]
+    [% IF ( was_renewed ) %]<div class="dialog message">Patron's account has been renewed until [% dateexpiry %]</div>[% END %]
 
     [% IF ( flagged ) %]
     <div id="circmessages" class="circmessage attention">
@@ -358,7 +358,7 @@ function validate1(date) {
     <li><span class="label">Registration date: </span>[% dateenrolled %]</li>
     
     <li><span class="label">Expiration date: </span>
-    [% IF ( reregistration ) %]
+    [% IF ( was_renewed ) %]
             <strong class="reregistrinfo">[% dateexpiry %]</strong>
     [% ELSE %]
             [% dateexpiry %]
index 59848c2..f3727f7 100644 (file)
@@ -1,19 +1,25 @@
+[% USE KohaDates %]
 [% INCLUDE 'doc-head-open.inc' %]
 <title>Sent notices for [% INCLUDE 'patron-title.inc' %]</title>
 [% INCLUDE 'doc-head-close.inc' %]
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
+<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
 <script type="text/javascript">
 //<![CDATA[
     $(document).ready(function() {
-       $("#noticestable").tablesorter({
-           [% IF ( dateformat == 'metric' ) %]
-               dateFormat: 'uk'
-           [% END %]
-       });
+    $("#noticestable").dataTable($.extend(true, {}, dataTablesDefaults, {
+        "aaSorting": [[ 3, "desc" ]],
+        "aoColumns": [ null,null,null,{ "sType": "title-string" } ],
+        "aLengthMenu": [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]],
+        "iDisplayLength": 20,
+        "sPaginationType": "four_button"
+    }));
 
-    $(".message").hide();
-    $(".message-title").click(function(e){
-        $(this).next(".message").toggle();
+    $(".notice").hide();
+    $(".notice-title").click(function(e){
+        $(this).next(".notice").toggle();
         e.preventDefault();
     });
     
@@ -21,8 +27,8 @@
 //]]>
 </script>
 <style type="text/css">
-    p.message { display: none; }
-    a.message-title { font-weight: bold; display: block; }
+    p.notice { display: none; }
+    a.notice-title { font-weight: bold; display: block; }
 </style>
 </head>
 <body id="pat_notices" class="pat">
@@ -38,7 +44,7 @@
 [% INCLUDE 'members-toolbar.inc' %]
 <h1>Sent notices for [% INCLUDE 'patron-title.inc' %]</h1>
 
-
+[% IF ( QUEUED_MESSAGES ) %]
     <table id="noticestable">
        <thead>
            <tr>
                <th>Time</th>
            </tr>
        </thead>
-[% IF ( QUEUED_MESSAGES ) %]
        <tbody>
            [% FOREACH QUEUED_MESSAGE IN QUEUED_MESSAGES %]
            <tr>
                <td>
-            <a class="message-title" href="#">[% QUEUED_MESSAGE.subject %]</a>
-            <p class="message">
+            <a class="notice-title" href="#">[% QUEUED_MESSAGE.subject %]</a>
+            <p class="notice">
                 [% QUEUED_MESSAGE.content FILTER html_line_break %]
             </p>
         </td>
             [% ELSIF ( QUEUED_MESSAGE.status == 'deleted' ) %]deleted
             [% ELSE %][% QUEUED_MESSAGE.status %][% END %]
         </td>
-               <td>[% QUEUED_MESSAGE.time_queued %]</td>
+        <td><span title="[% QUEUED_MESSAGE.time_queued %]">[% QUEUED_MESSAGE.time_queued | $KohaDates with_hours => 1 %]</span></td>
            </tr>
            [% END %]
        </tbody>
-    [% ELSE %]
-    <tr><td colspan="4">There is no record of any messages that have been sent to this patron.</td></tr>
-    [% END %]
     </table>
+[% ELSE %]
+    <div class="dialog message">There is no record of any messages that have been sent to this patron.</div>
+[% END %]
 
 </div>
 </div>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/offline_circ/enqueue_koc.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/offline_circ/enqueue_koc.tt
new file mode 100644 (file)
index 0000000..8c836e3
--- /dev/null
@@ -0,0 +1,31 @@
+[% INCLUDE 'doc-head-open.inc' %]
+<title>Koha &rsaquo; Circulation &rsaquo; Add offline circulations to queue</title>
+[% INCLUDE 'doc-head-close.inc' %]
+</head>
+<body>
+[% INCLUDE 'header.inc' %]
+[% INCLUDE 'circ-search.inc' %]
+
+<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/circ/circulation-home.pl">Circulation</a> &rsaquo; <a href="/cgi-bin/koha/offline_circ/process_koc.pl">Add offline circulations to queue</a></div>
+
+<div id="doc" class="yui-t7">
+
+   <div id="bd">
+
+  <h2>Koha offline circulation</h2>
+  <p>Your file was processed.</p>
+
+[% FOREACH message IN messages %]
+  [% IF ( message.message ) %]
+      [% IF ( message.ERROR_file_version ) %]
+          <div class="dialog alert"><p>Warning: This file is version [% message.upload_version %], but I only know how to import version [% message.current_version %]. I'll try my best.</p>
+      [% END %]
+  [% END %]
+[% END %]
+
+<p><a href="process_koc.pl">Upload another KOC file</a></p>
+
+<p><a href="list.pl">View pending offline circulation actions</a></p>
+
+</div>
+[% INCLUDE 'intranet-bottom.inc' %]
index 8e14d07..b155acc 100644 (file)
@@ -1,7 +1,6 @@
     [% INCLUDE "doc-head-open.inc" %]
     <title>Koha &rsaquo; Circulation &rsaquo; Offline circulation</title>
     [% INCLUDE "doc-head-close.inc" %]
-    <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
     <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
     <script type="text/javascript">
     //<![CDATA[
@@ -78,7 +77,8 @@
                                    <th>Date</th>
                                    <th>Action</th>
                                    <th>Barcode</th>
-                        <th>Card number</th>
+                                    <th>Card number</th>
+                                    <th>Amount</th>
                            </tr>
                        </thead>
                        <tbody>
@@ -95,7 +95,7 @@
                                            [% END %]
                                        </td>
                                        <td>
-                                       [% IF ( operation.actionissue ) %]
+                                       [% IF ( operation.actionissue || operation.actionpayment) %]
                                        [% IF ( operation.borrowernumber ) %]
                                            <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% operation.borrowernumber %]" title="[% operation.borrower %]">[% operation.cardnumber %]</a>
                                        [% ELSE %]
                                        [% END %]
                                        [% END %]
                                        </td>
+                                        <td>[% operation.amount %]</td>
                                </tr>
                            [% END %]
                        </tbody>
index 0aae78b..5c9da7e 100644 (file)
@@ -6,22 +6,25 @@
 <script type="text/javascript">
 //<![CDATA[
 $(document).ready(function(){
-       $("#processfile").hide();
+    $("#enqueuefile").hide();
+    $("#processfile").hide();
 });
+
 function CheckUpload(f){
-       if(f.fileToUpload.value == ""){
-               alert(_("Please choose a file to upload"));
-       } else {
-               return ajaxFileUpload()
-       }
-               return false;
+    if (f.fileToUpload.value == ""){
+        alert(_("Please choose a file to upload"));
+    } else {
+        return ajaxFileUpload()
+    }
+    return false;
 }
+
 function CheckForm(f) {
     if (f.uploadedfileid.value == '') {
         alert(_("Please upload a file first."));
     } else {
-               $("#fileuploadstatus").hide();
-               $("#fileuploadform").slideUp();
+        $("#fileuploadstatus").hide();
+        $("#fileuploadform").slideUp();
         return submitBackgroundJob(f);
     }
     return false;
@@ -60,7 +63,8 @@ function CheckForm(f) {
        [% IF ( message.payment ) %]<p>Accepted payment ([% message.amount %]) from <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% message.borrowernumber %]">[% message.firstname %] [% message.surname %]</a> ([% message.cardnumber %]): [% message.datetime %]</p>[% END %]
   [% END %]
 [% ELSE %]
-  <h2>Upload offline circulation data</h2>
+   <h2>Upload offline circulation data</h2>
+
    <div id="fileuploadform">
      <form method="post" action="[% SCRIPT_NAME %]" enctype="multipart/form-data">
                <fieldset class="brief">
@@ -72,11 +76,17 @@ function CheckForm(f) {
      <div id="fileuploadstatus" style="display:none">Upload progress: <div id="fileuploadprogress"></div> <span id="fileuploadpercent">0</span>%</div>
      <div id="fileuploadfailed" style="display:none"></div>
    </div>
-   <form action="process_koc.pl" id="processfile" method="post" enctype="multipart/form-data">
+
+   <form action="enqueue_koc.pl" id="processfile" method="post" enctype="multipart/form-data">
+     <input type="hidden" name="uploadedfileid" id="uploadedfileid" value="" />
+     <input type="submit" value="Add to offline circulation queue" onclick="return CheckForm(this.form);" id="queueformsubmit" />
+   </form>
+
+   <form action="process_koc.pl" id="enqueuefile" method="post" enctype="multipart/form-data">
      <input type="hidden" name="uploadedfileid" id="uploadedfileid" value="" />
      <input type="hidden" name="runinbackground" id="runinbackground" value="" />
      <input type="hidden" name="completedJobID" id="completedJobID" value="" />
-     <input type="submit" value="Process offline circulation file" onclick="return CheckForm(this.form);" id="mainformsubmit" />
+     <input type="submit" value="Apply directly" onclick="return CheckForm(this.form);" id="mainformsubmit" />
      <div id="jobstatus" style="display:none">Job progress: <div id="jobprogress"></div> <span id="jobprogresspercent">0</span>%</div>
      <div id="jobfailed" style="display:none"></div>
    </form>
index 7a0811b..f8c18c5 100644 (file)
@@ -2,6 +2,130 @@
     <title>Koha &rsaquo; Tools &rsaquo; Patron card creator &rsaquo; Manage patron card batches</title>
     [% INCLUDE 'doc-head-close.inc' %]
     [% INCLUDE 'greybox.inc' %]
+    <script type="text/javascript">
+        //<![CDATA[
+           function DeleteConfirm() {
+                var msg = _("Are you sure you want to delete batch") + " [% batch_id %]?";
+                var answer = confirm(msg);
+                if (answer) {
+                    window.location = "/cgi-bin/koha/patroncards/manage.pl?op=delete&amp;card_element=batch&amp;element_id=[% batch_id %]";
+                }
+                else {
+                    return; // abort delete
+                }
+            };
+            function Remove() {
+                items = new Array;
+                item_num = new Array;
+                if(document.items.action.length > 0) {
+                    for (var i=0; i < document.items.action.length; i++) {
+                        if (document.items.action[i].checked) {
+                            items.push("label_id=" +  document.items.action[i].value);
+                            item_num.push(i+1);
+                        }
+                    }
+                    if (items.length < 1) {
+                        alert(_("Please select at least one item to delete."));
+                        return;     // no item selected
+                    }
+                    getstr = items.join("&");
+                    item_msg = item_num.join(", ");
+                    var msg = "Are you sure you want to remove card number(s): " + item_msg + " from this batch?"
+                }
+                else {
+                    alert(_("Please select at least label to delete."));
+                    return;     // no item selected
+                }
+                var answer = confirm(msg);
+                if (answer) {
+                    window.location = "/cgi-bin/koha/patroncards/edit-batch.pl?op=remove&amp;batch_id=[% batch_id %]&amp;" + getstr;
+                }
+                else {
+                    return; // abort delete
+                }
+            };
+            function Add() {
+                window.open("/cgi-bin/koha/patroncards/members-search.pl?batch_id=[% batch_id %]",'FindABibIndex','width=875,height=400,toolbar=no,scrollbars=yes');
+            };
+            function DeDuplicate() {
+                window.location = "/cgi-bin/koha/patroncards/edit-batch.pl?op=de_duplicate&amp;batch_id=[% batch_id %]";
+            };
+            function Xport(mode) {
+                if (mode == 'label') {
+                    patroncards= new Array;
+                    if(document.items.action.length > 0) {
+                        for (var i=0; i < document.items.action.length; i++) {
+                            if (document.items.action[i].checked) {
+                                patroncards.push("label_id=" +  document.items.action[i].value);
+                            }
+                        }
+                        if (patroncards.length < 1) {
+                            alert(_("Please select at least one card to export."));
+                            return;     // no batch selected
+                        }
+                        getstr = patroncards.join("&");
+                    }
+                    else if (document.items.action.checked) {
+                        getstr = document.items.action.value;
+                    }
+                    else {
+                        alert(_("Please select at least one card to export."));
+                        return;     // no batch selected
+                    }
+                    return GB_showCenter(_("Export labels"), "/cgi-bin/koha/patroncards/print.pl?batch_id=[% batch_id %]&" + getstr, 700, 800);
+                }
+                else if (mode == 'batch') {
+                    return GB_showCenter(_("Export labels"), "/cgi-bin/koha/patroncards/print.pl?batch_id=[% batch_id %]", 700, 800);
+                }
+                else {
+                    // some pass-thru error trapping just in case...
+                }
+            };
+           function selected_layout() {
+                if (document.items.action.length) {
+                for (i=0;i<document.items.action.length;i++){
+                    if (document.items.action[i].checked==true){
+                        return(document.items.action[i].value);
+                    }
+                };
+                }
+                else {
+                    if (document.items.action.checked){
+                        return(document.items.action.value);
+                    }
+                };
+                alert(_("Please select at least one item."));
+                return (-1);
+            };
+
+         $(document).ready(function() {
+            $("#additems").click(function(){
+                Add();
+                return false;
+            });
+            $("#removeitems").click(function(){
+                Remove();
+                return false;
+            });
+            $("#deletebatch").click(function(){
+                DeleteConfirm();
+                return false;
+            });
+            $("#deduplicate").click(function(){
+                DeDuplicate();
+                return false;
+            });
+            $("#exportitems").click(function(){
+                Xport('label');
+                return false;
+            });
+            $("#exportbatch").click(function(){
+                Xport('batch');
+                return false;
+            });
+         });
+        //]]>
+    </script>
 </head>
 <body id="pcard_edit-batch" class="tools pcard">
     [% INCLUDE 'header.inc' %]
         <div id="bd">
             <div id="yui-main">
                 <div class="yui-b">
-                    [% INCLUDE 'patroncards-batches-toolbar.inc' %]
+
+                <div id="toolbar" class="btn-toolbar">
+                    <a class="btn btn-small" id="additems" href="#">Add item(s)</a>[% IF ( table_loop ) %]
+                    <a class="btn btn-small" id="removeitems" href="#">Remove item(s)</a>
+                    <a class="btn btn-small" id="deletebatch" href="#">Delete batch</a>
+                    <a class="btn btn-small" id="deduplicate" href="#">Remove duplicates</a>
+                    <a class="btn btn-small" id="exportitems" href="#">Export item(s)</a>
+                    <a class="btn btn-small" id="exportbatch" href="#">Export batch</a>[% END %]
+                </div>
+
+
                     [% INCLUDE 'error-messages.inc' %]
                     <div class="yui-g">
                         <div class="yui-u first" id="manage-patroncard-batches">
index 0a96568..798ad48 100644 (file)
                                 <fieldset>
                                 <legend>General settings</legend>
                                 <li>
-                                    <label for="layout_name">Layout name</label>
+                                    <label for="layout_name">Layout name</label>
                                     <input type="text" name="layout_name" id="layout_name" size="20" value="[% layout_name %]" />
                                 </li>
                                 <li>
-                                    <label for="units">Units:</label>
+                                    <label for="units">Units: </label>
                                     <select id="units" name="units">
                                     [% FOREACH unit IN units %]
                                         [% IF ( unit.selected ) %]
                                     </select>
                                 </li>
                                 <li>
-                                    <label for="page_side">Page side:</label>
+                                    <label for="page_side">Page side: </label>
                                     [% IF ( page_side ) %]
                                     <input type="radio" name="page_side" id="page_side" value="F" />Front
                                     <input type="radio" name="page_side" id="page_side" value="B" checked="checked" />Back
                                             [% END %]
                                             <div id="field_1_select" style="display: none;">
                                             <li>
-                                                <label for="field_1_text">Text</label>
+                                                <label for="field_1_text">Text</label>
                                                 <input type="text" name="field_1_text" id="field_1_text" size="60" value="[% field_1_text |html %]" />
                                             </li>
                                             <li>
-                                                <label for="field_1_font">Font</label>
+                                                <label for="field_1_font">Font</label>
                                                 <select name="field_1_font" id="field_1_font">
                                                     [% FOREACH field_1_fon IN field_1_font %]
                                                     [% IF ( field_1_fon.selected ) %]
                                                 </select>
                                             </li>
                                             <li>
-                                                <label for="field_1_font_size">Font size</label>
+                                                <label for="field_1_font_size">Font size</label>
                                                 <input type="text" name="field_1_font_size" id="field_1_font_size" size="2" value="[% field_1_font_size |html %]" />
                                                 <span class="font_unit"> pt</span>
                                             </li>
                                             <li>
-                                                <label for="field_1_text_alignment">Text alignment</label>
+                                                <label for="field_1_text_alignment">Text alignment</label>
                                                 <select name="field_1_text_alignment" id="field_1_text_alignment">
                                                     [% FOREACH field_1_text_alignmen IN field_1_text_alignment %]
                                                     [% IF ( field_1_text_alignmen.selected ) %]
                                                 </select>
                                             </li>
                                             <li>
-                                                <label for="field_1_llx">Lower left X coordinate</label>
+                                                <label for="field_1_llx">Lower left X coordinate</label>
                                                 <input type="text" name="field_1_llx" id="field_1_llx" size="2" value="[% field_1_llx |html %]" />
                                             </li>
                                             <li>
-                                                <label for="field_1_lly">Lower left Y coordinate</label>
+                                                <label for="field_1_lly">Lower left Y coordinate</label>
                                                 <input type="text" name="field_1_lly" id="field_1_lly" size="2" value="[% field_1_lly |html %]" />
                                             </li>
                                             </div>
                                             [% END %]
                                             <div id="field_2_select" style="display: none;">
                                             <li>
-                                                <label for="field_2_text">Text</label>
+                                                <label for="field_2_text">Text</label>
                                                 <input type="text" name="field_2_text" id="field_2_text" size="60" value="[% field_2_text |html %]" />
                                             </li>
                                             <li>
-                                                <label for="field_2_font">Font</label>
+                                                <label for="field_2_font">Font</label>
                                                 <select name="field_2_font" id="field_2_font">
                                                     [% FOREACH field_2_fon IN field_2_font %]
                                                     [% IF ( field_2_fon.selected ) %]
                                                 </select>
                                             </li>
                                             <li>
-                                                <label for="field_2_font_size">Font size</label>
+                                                <label for="field_2_font_size">Font size</label>
                                                 <input type="text" name="field_2_font_size" id="field_2_font_size" size="2" value="[% field_2_font_size |html %]" />
                                                 <span class="font_unit"> pt</span>
                                             </li>
                                             <li>
-                                                <label for="field_2_text_alignment">Text alignment</label>
+                                                <label for="field_2_text_alignment">Text alignment</label>
                                                 <select name="field_2_text_alignment" id="field_2_text_alignment">
                                                     [% FOREACH field_2_text_alignmen IN field_2_text_alignment %]
                                                     [% IF ( field_2_text_alignmen.selected ) %]
                                                 </select>
                                             </li>
                                             <li>
-                                                <label for="field_2_llx">Lower left X coordinate</label>
+                                                <label for="field_2_llx">Lower left X coordinate</label>
                                                 <input type="text" name="field_2_llx" id="field_2_llx" size="2" value="[% field_2_llx |html %]" />
                                             </li>
                                             <li>
-                                                <label for="field_2_lly">Lower left Y coordinate</label>
+                                                <label for="field_2_lly">Lower left Y coordinate</label>
                                                 <input type="text" name="field_2_lly" id="field_2_lly" size="2" value="[% field_2_lly |html %]" />
                                             </li>
                                             </div>
                                             [% END %]
                                             <div id="field_3_select" style="display: none;">
                                             <li>
-                                                <label for="field_3_text">Text</label>
+                                                <label for="field_3_text">Text</label>
                                                 <input type="text" name="field_3_text" id="field_3_text" size="60" value="[% field_3_text |html %]" />
                                             </li>
                                             <li>
-                                                <label for="field_3_font">Font</label>
+                                                <label for="field_3_font">Font</label>
                                                 <select name="field_3_font" id="field_3_font">
                                                     [% FOREACH field_3_fon IN field_3_font %]
                                                     [% IF ( field_3_fon.selected ) %]
                                                 </select>
                                             </li>
                                             <li>
-                                                <label for="field_3_font_size">Font size</label>
+                                                <label for="field_3_font_size">Font size</label>
                                                 <input type="text" name="field_3_font_size" id="field_3_font_size" size="2" value="[% field_3_font_size |html %]" />
                                                 <span class="font_unit"> pt</span>
                                             </li>
                                             <li>
-                                                <label for="field_3_text_alignment">Text alignment</label>
+                                                <label for="field_3_text_alignment">Text alignment</label>
                                                 <select name="field_3_text_alignment" id="field_3_text_alignment">
                                                     [% FOREACH field_3_text_alignmen IN field_3_text_alignment %]
                                                     [% IF ( field_3_text_alignmen.selected ) %]
                                                 </select>
                                             </li>
                                             <li>
-                                                <label for="field_3_llx">Lower left X coordinate</label>
+                                                <label for="field_3_llx">Lower left X coordinate</label>
                                                 <input type="text" name="field_3_llx" id="field_3_llx" size="2" value="[% field_3_llx |html %]" />
                                             </li>
                                             <li>
-                                                <label for="field_3_lly">Lower left Y coordinate</label>
+                                                <label for="field_3_lly">Lower left Y coordinate</label>
                                                 <input type="text" name="field_3_lly" id="field_3_lly" size="2" value="[% field_3_lly |html %]" />
                                             </li>
                                             </div>
 <!--
                             <li>
                                 <fieldset>
-                                <label for="guidebox">Draw guide boxes</label>
+                                <label for="guidebox">Draw guide boxes</label>
                                 [% IF ( guidebox ) %]
                                 <input type="checkbox" name="guidebox" id="guidebox" value="1"  checked="checked" />
                                 [% ELSE %]
                             <fieldset>
                                 <legend>Barcode</legend>
                                 <li>
-                                    <label for="barcode_print">Print card number as barcode</label>
+                                    <label for="barcode_print">Print card number as barcode</label>
                                     [% IF ( barcode_print ) %]
                                     <input type="checkbox" name="barcode_print" id="barcode_print" value="1" checked="checked" />
                                     [% ELSE %]
                                 </li>
                                 <div id="barcode_param" style="display: none;">
                                 <li>
-                                    <label for="barcode_llx">Lower left X coordinate</label>
+                                    <label for="barcode_llx">Lower left X coordinate</label>
                                     <input type="text" name="barcode_llx" id="barcode_llx" size="2" value="[% barcode_llx |html %]" />
                                 </li>
                                 <li>
-                                    <label for="barcode_lly">Lower left Y coordinate</label>
+                                    <label for="barcode_lly">Lower left Y coordinate</label>
                                     <input type="text" name="barcode_lly" id="barcode_lly" size="2" value="[% barcode_lly |html %]" />
                                 </li>
                                 <li>
-                                    <label for="barcode_type">Barcode type</label>
+                                    <label for="barcode_type">Barcode type</label>
                                     <select name="barcode_type" id="barcode_type">
                                         [% FOREACH barcode_typ IN barcode_type %]
                                         [% IF ( barcode_typ.selected ) %]
                                     </select>
                                 </li>
                                 <li>
-                                    <label for="barcode_text_print">Print card number as text under barcode</label>
+                                    <label for="barcode_text_print">Print card number as text under barcode</label>
                                     [% IF ( barcode_text_print ) %]
                                     <input type="checkbox" name="barcode_text_print" id="barcode_text_print" value="1" checked="checked" />
                                     [% ELSE %]
                                     <fieldset>
                                     <legend>Image 1</legend>
                                     <li>
-                                        <label for="image_1_image_source">Image source</label>
+                                        <label for="image_1_image_source">Image source</label>
                                         <select name="image_1_image_source" id="image_1_image_source">
                                             [% FOREACH image_1_image_sourc IN image_1_image_source %]
                                             [% IF ( image_1_image_sourc.selected ) %]
                                     </li>
                                     <div id="image_1_image_name" style="display: none;">
                                     <li>
-                                        <label for="image_1_image_name">Image</label>
+                                        <label for="image_1_image_name">Image</label>
                                         <select name="image_1_image_name" id="image_1_image_name">
                                             [% FOREACH image_1_image_nam IN image_1_image_name %]
                                             [% IF ( image_1_image_nam.selected ) %]
                                     </div>
                                     <div id="image_1_image_metrics" style="display: none;">
                                     <li>
-                                        <label for="image_1_Dx">Display height</label>
+                                        <label for="image_1_Dx">Display height</label>
                                         <input type="text" name="image_1_Dx" id="image_1_Dx" size="2" value="[% image_1_Dx |html %]" />
                                     </li>
                                     <li>
-                                        <label for="image_1_Tx">Lower left X coordinate</label>
+                                        <label for="image_1_Tx">Lower left X coordinate</label>
                                         <input type="text" name="image_1_Tx" id="image_1_Tx" size="2" value="[% image_1_Tx |html %]" />
                                     </li>
                                     <li>
-                                        <label for="image_1_Ty">Lower left Y coordinate</label>
+                                        <label for="image_1_Ty">Lower left Y coordinate</label>
                                         <input type="text" name="image_1_Ty" id="image_1_Ty" size="2" value="[% image_1_Ty |html %]" />
                                     </li>
                                     </div>
                                     <fieldset>
                                     <legend>Image 2</legend>
                                     <li>
-                                        <label for="image_2_image_source">Image source</label>
+                                        <label for="image_2_image_source">Image source</label>
                                         <select name="image_2_image_source" id="image_2_image_source">
                                             [% FOREACH image_2_image_sourc IN image_2_image_source %]
                                             [% IF ( image_2_image_sourc.selected ) %]
                                     </li>
                                     <div id="image_2_image_name" style="display: none;">
                                     <li>
-                                        <label for="image_2_image_name">Image</label>
+                                        <label for="image_2_image_name">Image</label>
                                         <select name="image_2_image_name" id="image_2_image_name">
                                             [% FOREACH image_2_image_nam IN image_2_image_name %]
                                             [% IF ( image_2_image_nam.selected ) %]
                                     </div>
                                     <div id="image_2_image_metrics" style="display: none;">
                                     <li>
-                                        <label for="image_2_Dx">Display height</label>
+                                        <label for="image_2_Dx">Display height</label>
                                         <input type="text" name="image_2_Dx" id="image_2_Dx" size="2" value="[% image_2_Dx |html %]" />
                                     </li>
                                     <li>
-                                        <label for="image_2_Tx">Lower left X coordinate</label>
+                                        <label for="image_2_Tx">Lower left X coordinate</label>
                                         <input type="text" name="image_2_Tx" id="image_2_Tx" size="2" value="[% image_2_Tx |html %]" />
                                     </li>
                                     <li>
-                                        <label for="image_2_Ty">Lower left Y coordinate</label>
+                                        <label for="image_2_Ty">Lower left Y coordinate</label>
                                         <input type="text" name="image_2_Ty" id="image_2_Ty" size="2" value="[% image_2_Ty |html %]" />
                                     </li>
                                     </div>
index c3a1df7..9bef74c 100644 (file)
@@ -57,9 +57,9 @@ function add_item(borrowernum,batch_id,type_id){
 <form method="get" action="/cgi-bin/koha/patroncards/members-search.pl"><p>
 <input type="hidden" name="batch_id" value="[% batch_id %]" />
 <input type="hidden" name="type" value="[% type %]" />
-<label for="member">Name</label>
+<label for="member">Name</label>
 <input id="member" name="member" />
-<label for="category">Category code</label>
+<label for="category">Category code</label>
 <input id="category" name="category" />
 <input type="submit" value="Search" /></p>
 </form>
@@ -73,7 +73,7 @@ function add_item(borrowernum,batch_id,type_id){
 
     <table style="float: left; margin: .5em 0;">
     <tr>
-    <th><label style="font-weight:bold;">Select</label></th>
+    <th>Select</th>
     <th><a href="members-search.pl?member=[% member %]&amp;category=[% category_type %]&amp;batch_id=[% batch_id %]&amp;orderby=cardnumber">Card</a></th>
     <th><a href="members-search.pl?member=[% member %]&amp;category=[% category_type %]&amp;batch_id=[% batch_id %]&amp;orderby=surname">Name</a></th>
     <th><a href="members-search.pl?member=[% member %]&amp;category=[% category_type %]&amp;batch_id=[% batch_id %]&amp;orderby=borrowers.categorycode">Category</a></th>
index a42b834..1526283 100644 (file)
@@ -59,7 +59,7 @@ function Dopop(link) {
        [% FOREACH mainloo IN mainloop %]
         <h1>Top [% mainloo.limit %] List patrons for checkouts</h1>
                [% IF ( mainloo.loopfilter ) %]
-                       <p>Filtered on</p>
+            <p>Filtered on:</p>
                        [% FOREACH loopfilte IN mainloo.loopfilter %]
                                        <p>[% IF ( loopfilte.err ) %]  [% END %] [% loopfilte.crit %] =[% loopfilte.filter %][% IF ( loopfilte.err ) %]  [% END %]</p>
                        [% END %]
index ec92c8c..58b5622 100644 (file)
@@ -26,7 +26,7 @@ $(document).ready(function(){
     [% FOREACH mainloo IN mainloop %]
         <h1>Patrons with no checkouts</h1>
         [% IF ( mainloo.loopfilter ) %]
-            <p>Filtered on</p>
+            <p>Filtered on:</p>
             [% FOREACH loopfilte IN mainloo.loopfilter %]
                     <p>[% IF ( loopfilte.err ) %]  [% END %] [% loopfilte.crit %] =[% loopfilte.filter %][% IF ( loopfilte.err ) %]  [% END %]</p>
             [% END %]
index b6ebcfa..37da198 100644 (file)
@@ -23,7 +23,7 @@
        [% FOREACH mainloo IN mainloop %]
                <h1>Patrons statistics</h1>
                [% IF ( mainloo.loopfilter ) %]
-                       <p>Filtered on</p>
+            <p>Filtered on:</p>
                        [% FOREACH loopfilte IN mainloo.loopfilter %]
                                <p>
                                        [% loopfilte.crit %] = [% loopfilte.filter %]
index c2d8906..dba83f2 100644 (file)
@@ -56,7 +56,7 @@
        [% FOREACH mainloo IN mainloop %]
         <h1>Top [% mainloo.limit %] Most-circulated items</h1>
                [% IF ( mainloo.loopfilter ) %]
-                       <p>Filtered on</p>
+            <p>Filtered on:</p>
                        [% FOREACH loopfilte IN mainloo.loopfilter %]
                                        <p>[% IF ( loopfilte.err ) %]  [% END %] [% loopfilte.crit %] =[% loopfilte.filter %][% IF ( loopfilte.err ) %]  [% END %]</p>
                        [% END %]
index 23eb6ba..b098cc7 100644 (file)
@@ -20,7 +20,7 @@
        <h1>Items with no checkouts</h1>
        [% FOREACH mainloo IN mainloop %]
                [% IF ( mainloo.loopfilter ) %]
-                       <p>Filtered on</p>
+            <p>Filtered on:</p>
                        [% FOREACH loopfilte IN mainloo.loopfilter %]
                                [% IF ( loopfilte.err ) %]<p class="error">Error: 
                                [% ELSE %]<p>
index 41e5f74..e1fc987 100644 (file)
@@ -52,7 +52,7 @@
        [% FOREACH mainloo IN mainloop %]
                <h1>Catalog statistics</h1>
                [% IF ( mainloo.loopfilter ) %]
-                       <p>Filtered on</p>
+            <p>Filtered on:</p>
                        [% FOREACH loopfilte IN mainloo.loopfilter %]
                                        <p>[% loopfilte.crit %] =[% loopfilte.filter %]</p>
                        [% END %]
index e1f4593..330a7cd 100644 (file)
 dt_add_type_uk_date();
 [% END %]
 var group_subgroups = {};
-var no_subgroup_label = _( "(None)" );
+[% FOREACH group IN groups_with_subgroups %]
+    var gid = "[% group.id %]"
+    group_subgroups[gid] = new Array();
+    [% FOREACH subgroup IN group.subgroups %]
+        var sgid = "[% subgroup.id %]";
+        var sgname = "[% subgroup.name %]";
+        group_subgroups[gid].push([sgid, sgname]);
+    [% END %]
+[% END %]
+
 function load_group_subgroups () {
-    var group = $("#group").val();
+    var group = $("#group_select").val();
     var sg = $("#subgroup");
-    var has_subgroups = false;
-    $(sg).empty().append('<option value="">' + no_subgroup_label + '</option>');
+    $(sg).find('option[value!=""]').each(function() {
+        $(this).remove();
+    });
+    $(sg).hide();
     if (group) {
+        var select = $(sg).find('select')[0];
         $.each( group_subgroups[group], function(index, value) {
-                has_subgroups = true;
-            $('<option value="' + value[0] + '">' + value[1] + '</option>').appendTo(sg);
+            $('<option value="' + value[0] + '">' + value[1] + '</option>').appendTo(select);
         } );
-    }
-    if (has_subgroups) {
-        $(sg).show();
-    } else {
-        $(sg).hide();
+        $("#subgroup, #subgroup *").show();
     }
 }
+
 $(document).ready(function(){
+
+[% IF (saved1) %]
+    [% IF (dateformat == "metric") %]
+        dt_add_type_uk_date();
+    [% END %]
+    var rtable = $("#table_reports").dataTable($.extend(true, {}, dataTablesDefaults, {
+        'bAutoWidth': false,
+        'sDom': 't<"bottom pager"ilpf>',
+        'sPaginationType': 'four_button',
+        'aLengthMenu': [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]],
+        'iDisplayLength': 20,
+        'aaSorting': [[ 1, "asc" ]],
+        'aoColumnDefs': [
+            { 'bSortable': false, 'bSearchable':false, 'aTargets': [-1, -2, -3, -4] },
+            { 'bSearchable': false, 'aTargets': [3, 4] }
+        ],
+        'oLanguage': {
+            'sZeroRecords': _("No matching reports found")
+        }
+    }));
+
+    var rtabs = $("#tabs").tabs();
+    rtabs.bind("tabsshow", function(e, ui) {
+        $("#subgroup_filter option").each(function() {
+            if($(this).val().length > 0) {
+                $(this).remove();
+            }
+        });
+        rtable.fnFilter('', 3);
+        rtable.fnFilter('', 4);
+        rtable.fnSetColumnVis(3, true);
+        rtable.fnSetColumnVis(4, true);
+
+        var g_id = $(ui.tab).attr('id')
+        var g_name = $(ui.tab).text();
+        if (g_id && g_id.length > 0) {
+            rtable.fnFilter('^' + g_name + '$', 3, true, true, true, false);
+            rtable.fnSetColumnVis(3, false);
+            for(var i in group_subgroups[g_id]) {
+                $("#subgroup_filter").append(
+                    '<option value="' + group_subgroups[g_id][i][0] + '">'
+                    + group_subgroups[g_id][i][1] + '</option>'
+                );
+            }
+            $("#subgroup_filter_block").show();
+        } else {
+            $("#subgroup_filter_block").hide();
+        }
+    });
+    $("#subgroup_filter_block").hide();
+
+    $("#subgroup_filter").change(function() {
+        var selected = $(this).find('option:selected');
+        var sg_id = $(selected).val();
+        var sg_name = $(selected).text();
+        if (sg_id.length > 0) {
+            rtable.fnFilter('^' + sg_name + '$', 4, true, true, true, false);
+            rtable.fnSetColumnVis(4, false);
+        } else {
+            rtable.fnFilter('', 4);
+            rtable.fnSetColumnVis(4, true);
+        }
+    });
+[% END %]
+
 [% IF ( showsql ) %]
     $("#sql").focus(function() {
         $(this).select();
@@ -66,20 +139,57 @@ $(document).ready(function(){
             return false;
         }
     });
-  // call the datatables plugin
-    $("#table_reports").dataTable($.extend(true, {}, dataTablesDefaults, {
-        "aoColumnDefs": [
-            { "aTargets": [ -1, -2, -3, -4 ], "bSortable": false, "bSearchable": false },
-        ],
-        "aaSorting": [[ 1, "asc" ]],
-        "aLengthMenu": [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]],
-        "iDisplayLength": 20,
-        "sPaginationType": "four_button"
-    }));
 [% END %]
   // redefine the datepicker's default because reports require ISO
   // http://jqueryui.com/demos/datepicker/#option-dateFormat
   $( ".datepicker" ).datepicker( "option", "dateFormat", "yy-mm-dd" );
+
+[% IF (create || editsql || save) %]
+    $("#select_group").change(function() {
+        if($(this).attr('checked')) {
+            $("#group_input").attr('disabled', 'disabled');
+            $("#groupdesc_input").attr('disabled', 'disabled');
+            $("#group_select").attr('disabled', false);
+            if ($("#group_select").val().length > 0) {
+                $("#select_subgroup").attr('checked', 'checked');
+                $("#select_subgroup").change();
+                $("#subgroup, #subgroup *").show();
+            } else {
+                $("#subgroup").hide();
+            }
+        }
+    });
+    $("#create_group").change(function() {
+        if($(this).attr('checked')) {
+            $("#group_input").attr('disabled', false);
+            $("#groupdesc_input").attr('disabled', false);
+            $("#group_select").attr('disabled', 'disabled');
+            $("#create_subgroup").attr('checked', 'checked').change();
+            $("#subgroup_select").hide();
+            $("#subgroup input[type='radio']").hide();
+            $("#subgroup label[for]").hide();
+            $("#subgroup_input").show();
+            $("#subgroupdesc_input").show();
+            $("#subgroup").show();
+        }
+    });
+    $("#select_subgroup").change(function() {
+        if($(this).attr('checked')) {
+            $("#subgroup_select").attr('disabled', false);
+            $("#subgroup_input").attr('disabled', 'disabled');
+            $("#subgroupdesc_input").attr('disabled', 'disabled');
+        }
+    });
+    $("#create_subgroup").change(function() {
+        if($(this).attr('checked')) {
+            $("#subgroup_input").attr('disabled', false);
+            $("#subgroupdesc_input").attr('disabled', false);
+            $("#subgroup_select").attr('disabled', 'disabled');
+        }
+    });
+    $("#select_group").change();
+    $("#select_subgroup").change();
+[% END %]
 });
 //]]>
 </script>
@@ -149,61 +259,80 @@ canned reports and writing custom SQL reports.</p>
 [% IF ( saved1 ) %]
 [% IF ( savedreports ) %]<h1>Saved reports</h1>
 
-<table id="table_reports" class="tablesorter">
-<thead>
- <tr>
-  <th>ID</th>
-  <th>Report name</th>
-  <th>Type</th>
-  <th>Area</th>
-  <th>Group</th>
-  <th>Subgroup</th>
-  <th>Notes</th>
-  <th>Author</th>
-  <th>Creation date</th>
-  <th>Public</th>
-  [% IF (usecache) %] <th>Cache expiry (seconds)</th> [% END %]
-  <th>Saved results</th>
-  <th>Saved SQL</th>
-  <th>&nbsp;</th>
-  <th>&nbsp;</th>
- </tr>
-</thead>
-<tbody>
-[% FOREACH savedreport IN savedreports %]
-[% UNLESS ( loop.odd ) %]<tr class="odd">[% ELSE %]<tr>[% END %]
-<td>[% savedreport.id %]</td>
-<td>[% savedreport.report_name %]</td>
-<td>[% savedreport.type %]</td>
-<td>[% savedreport.areaname %]</td>
-<td>[% savedreport.groupname %]</td>
-<td>[% savedreport.subgroupname %]</td>
-<td>[% savedreport.notes %]</td>
-<td>[% savedreport.borrowersurname %][% IF ( savedreport.borrowerfirstname ) %], [% savedreport.borrowerfirstname %][% END %] ([% savedreport.borrowernumber %])</td>
-<td>[% savedreport.date_created %]</td>
-[% IF (savedreport.public) %]
-<td>Yes</td>
-[% ELSE %]
-<td>No</td>
-[% END %]
-[% IF (usecache) %] <td>[% savedreport.cache_expiry %]</td> [% END %]
-<td>[% IF ( savedreport.date_run ) %]<a href="/cgi-bin/koha/reports/guided_reports.pl?phase=retrieve%20results&amp;id=[% savedreport.id %]">[% savedreport.date_run %]</a>[% END %]
-</td>
-    <td>
-        <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% savedreport.id %]&amp;phase=Show%20SQL">Show</a> 
-        [% IF ( CAN_user_reports_create_reports ) %]
-            &nbsp; <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% savedreport.id %]&amp;phase=Edit%20SQL">Edit</a>
+<div id="tabs" class="toptabs">
+    <ul>
+        <li><a href="#reports">All</a></li>
+        [% FOREACH group IN groups_with_subgroups %]
+            <li><a id="[% group.id %]" href="#reports">[% group.name %]</a></li>
         [% END %]
-    </td>
-<td><a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% savedreport.id %]&amp;phase=Run%20this%20report">Run</a>
-<a href="/cgi-bin/koha/tools/scheduler.pl?id=[% savedreport.id %]">Schedule</a></td>
-    [% IF ( CAN_user_reports_create_reports ) %]
-        <td><a class="confirmdelete" title="Delete this saved report" href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% savedreport.id %]&amp;phase=Delete%20Saved">Delete</a></td>
-    [% END %]
-</tr>
-[% END %]
-</tbody>
-</table>
+    </ul>
+    <div id="reports">
+        <div id="subgroup_filter_block">
+            <label for="subgroup_filter">Subgroup:</label>
+            <select id="subgroup_filter">
+                <option value="">All</option>
+            </select>
+        </div>
+        <table id="table_reports">
+            <thead>
+                <tr>
+                    <th>ID</th>
+                    <th>Report name</th>
+                    <th>Type</th>
+                    <th>Group</th>
+                    <th>Subgroup</th>
+                    <th>Notes</th>
+                    <th>Author</th>
+                    <th>Creation date</th>
+                    <th>Public</th>
+                    [% IF (usecache) %] <th>Cache expiry (seconds)</th> [% END %]
+                    <th>Saved results</th>
+                    <th>Saved SQL</th>
+                    <th>&nbsp;</th>
+                    [% IF ( CAN_user_reports_create_reports ) %]
+                        <th>&nbsp;</th>
+                    [% END %]
+                </tr>
+            </thead>
+            <tbody>
+                [% FOREACH savedreport IN savedreports %]
+                    [% UNLESS ( loop.odd ) %]<tr class="odd">[% ELSE %]<tr>[% END %]
+                        <td>[% savedreport.id %]</td>
+                        <td>[% savedreport.report_name %]</td>
+                        <td>[% savedreport.type %]</td>
+                        <td>[% savedreport.groupname %]</td>
+                        <td>[% savedreport.subgroupname %]</td>
+                        <td>[% savedreport.notes %]</td>
+                        <td>[% savedreport.borrowersurname %][% IF ( savedreport.borrowerfirstname ) %], [% savedreport.borrowerfirstname %][% END %] ([% savedreport.borrowernumber %])</td>
+                        <td>[% savedreport.date_created %]</td>
+                        [% IF (savedreport.public) %]
+                        <td>Yes</td>
+                        [% ELSE %]
+                        <td>No</td>
+                        [% END %]
+                        [% IF (usecache) %] <td>[% savedreport.cache_expiry %]</td> [% END %]
+                        <td>[% IF ( savedreport.date_run ) %]<a href="/cgi-bin/koha/reports/guided_reports.pl?phase=retrieve%20results&amp;id=[% savedreport.id %]">[% savedreport.date_run %]</a>[% END %]
+                        </td>
+                        <td>
+                            <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% savedreport.id %]&amp;phase=Show%20SQL">Show</a>
+                            [% IF ( CAN_user_reports_create_reports ) %]
+                                <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% savedreport.id %]&amp;phase=Edit%20SQL">Edit</a>
+                                <a title="Duplicate this saved report" href="/cgi-bin/koha/reports/guided_reports.pl?phase=Create report from SQL&amp;sql=[% savedreport.savedsql |uri %]&amp;reportname=[% savedreport.report_name |uri %]&amp;notes=[% savedreport.notes |uri %]">Duplicate</a>
+                            [% END %]
+                        </td>
+                        <td>
+                            <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% savedreport.id %]&amp;phase=Run%20this%20report">Run</a>
+                            <a href="/cgi-bin/koha/tools/scheduler.pl?id=[% savedreport.id %]">Schedule</a>
+                        </td>
+                        [% IF ( CAN_user_reports_create_reports ) %]
+                            <td><a class="confirmdelete" title="Delete this saved report" href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% savedreport.id %]&amp;phase=Delete%20Saved">Delete</a></td>
+                        [% END %]
+                    </tr>
+                [% END %]
+            </tbody>
+        </table>
+    </div>
+</div>
 [% ELSE %]<div class="dialog message">
     [% IF (filter_set) %]
     <h4>No saved reports match your criteria. </h4>
@@ -248,9 +377,9 @@ canned reports and writing custom SQL reports.</p>
 [% END %]
 </select></li>
 [% IF (public) %]
-  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0">No (default)</option> <option value="1" selected="selected">Yes</public> </select></li>
+  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0">No (default)</option> <option value="1" selected="selected">Yes</option> </select></li>
 [% ELSE %]
-  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0" selected="selected">No (default)</option> <option value="1">Yes</public> </select></li>
+  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0" selected="selected">No (default)</option> <option value="1">Yes</option> </select></li>
 [% END %]
 [% IF (usecache) %] <li>
 <label for="cache_expiry">Cache expiry:</label><input type="text" id="cache_expiry" name="cache_expiry" value="[% cache_expiry %]"></input>
@@ -262,7 +391,7 @@ canned reports and writing custom SQL reports.</p>
 </select>
 </li>[% END %]
 </ol>
-<ofieldset>
+</fieldset>
 <fieldset class="action">
 <input type="hidden" name="phase" value="Report on this Area" />
 <input type="submit" name="submit" value="Next &gt;&gt;" />
@@ -410,11 +539,13 @@ canned reports and writing custom SQL reports.</p>
     </fieldset>
 
 [% IF ( definitions ) %]
-<fieldset><legend>Dictionary definitions</legend><table>
+<fieldset><legend>Dictionary definitions</legend>
+<table>
 [% FOREACH definition IN definitions %]
     <tr><td><input type="checkbox" name="definition" value="[% definition.id %]" /> [% definition.name %]</td></tr>
 [% END %]
 </table>
+</fieldset>
 [% END %]
 
 <fieldset class="action"><input type="hidden" name="phase" value="Choose these criteria" />
@@ -515,31 +646,7 @@ canned reports and writing custom SQL reports.</p>
 <legend>Save your custom report</legend>
 <ol>
     <li><label for="reportname">Report name: </label><input type="text" id="reportname" name="reportname" /></li>
-    [% IF groups_with_subgroups %]
-    <li><label for="group">Report group: </label><select name="group" id="group" onChange="load_group_subgroups();">
-        [% FOR g IN groups_with_subgroups %]
-            [% IF g.selected %]
-    <option value="[% g.id %]" selected>[% g.name %]</option>
-            [% ELSE %]
-    <option value="[% g.id %]">[% g.name %]</option>
-            [% END %]
-    <script type="text/javascript">
-        var g_sg = new Array();
-            [% FOR sg IN g.subgroups %]
-        g_sg.push(["[% sg.id %]", "[% sg.name %]"]);
-                [% IF sg.selected %]
-        $(document).ready(function() {
-            $("#subgroup").val("[% sg.id %]");
-        });
-                [% END %]
-            [% END %]
-        group_subgroups["[% g.id %]"] = g_sg;
-    </script>
-        [% END %]
-    </select></li>
-    <li><label for="subgroup">Report subgroup: </label><select name="subgroup" id="subgroup">
-    </select></li>
-    [% END %]
+    [% PROCESS group_and_subgroup_selection %]
     <li><label for="notes">Notes:</label> <textarea name="notes" id="notes"></textarea></li>
 </ol></fieldset>
 <fieldset class="action"><input type="hidden" name="phase" value="Save Report" />
@@ -635,35 +742,12 @@ $(document).ready(function() {
         [% IF ( reportname ) %]<input type="text" id="reportname" name="reportname" value="[% reportname %]" />
         [% ELSE %]<input type="text" id="reportname" name="reportname" />[% END %] 
     </li>
-    [% IF groups_with_subgroups %]
-    <li><label for="group">Report group: </label><select name="group" id="group" onChange="load_group_subgroups();">
-        [% FOR g IN groups_with_subgroups %]
-            [% IF g.selected %]
-    <option value="[% g.id %]" selected>[% g.name %]</option>
-            [% ELSE %]
-    <option value="[% g.id %]">[% g.name %]</option>
-            [% END %]
-    <script type="text/javascript">
-        var g_sg = new Array();
-            [% FOR sg IN g.subgroups %]
-        g_sg.push(["[% sg.id %]", "[% sg.name %]"]);
-                [% IF sg.selected %]
-        $(document).ready(function() {
-            $("#subgroup").val("[% sg.id %]");
-        });
-                [% END %]
-            [% END %]
-        group_subgroups["[% g.id %]"] = g_sg;
-    </script>
-        [% END %]
-    </select></li>
-    <li><label for="subgroup">Report subgroup: </label><select name="subgroup" id="subgroup">
-    </select></li>
-    [% END %]
+    [% PROCESS group_and_subgroup_selection %]
+
 [% IF (public) %]
-  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0">No (default)</option> <option value="1" selected="selected">Yes</public> </select></li>
+  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0">No (default)</option> <option value="1" selected="selected">Yes</option> </select></li>
 [% ELSE %]
-  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0" selected="selected">No (default)</option> <option value="1">Yes</public> </select></li>
+  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0" selected="selected">No (default)</option> <option value="1">Yes</option> </select></li>
 [% END %]
 [% IF (usecache) %] <li>
 <label for="cache_expiry">Cache expiry:</label><input type="text" id="cache_expiry" name="cache_expiry" value="[% cache_expiry %]"></input>
@@ -744,11 +828,6 @@ Sub report:<select name="subreport">
 [% END %]
 
 [% IF ( editsql ) %]
-<script type="text/javascript">
-$(document).ready(function() {
-    load_group_subgroups();
-});
-</script>
 <form action="/cgi-bin/koha/reports/guided_reports.pl" method="post">
 <input type="hidden" name="phase" value="Update SQL" />
 <input type="hidden" name="id" value="[% id %]"/>
@@ -756,35 +835,11 @@ $(document).ready(function() {
 <legend>Edit SQL report</legend>
 <ol>
 <li><label for="reportname">Report name:</label><input type="text" id="reportname" name="reportname" value="[% reportname %]" size="50" /></li>
-    [% IF groups_with_subgroups %]
-    <li><label for="group">Report group: </label><select name="group" id="group" onChange="load_group_subgroups();">
-        [% FOR g IN groups_with_subgroups %]
-            [% IF g.selected %]
-    <option value="[% g.id %]" selected>[% g.name %]</option>
-            [% ELSE %]
-    <option value="[% g.id %]">[% g.name %]</option>
-            [% END %]
-    <script type="text/javascript">
-        var g_sg = new Array();
-            [% FOR sg IN g.subgroups %]
-        g_sg.push(["[% sg.id %]", "[% sg.name %]"]);
-                [% IF sg.selected %]
-        $(document).ready(function() {
-            $("#subgroup").val("[% sg.id %]");
-        });
-                [% END %]
-            [% END %]
-        group_subgroups["[% g.id %]"] = g_sg;
-    </script>
-        [% END %]
-    </select></li>
-    <li><label for="subgroup">Report subgroup: </label><select name="subgroup" id="subgroup">
-    </select></li>
-    [% END %]
+[% PROCESS group_and_subgroup_selection %]
 [% IF (public) %]
-  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0">No (default)</option> <option value="1" selected="selected">Yes</public> </select></li>
+  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0">No (default)</option> <option value="1" selected="selected">Yes</option> </select></li>
 [% ELSE %]
-  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0" selected="selelcted">No (default)</option> <option value="1">Yes</public> </select></li>
+  <li><label for="public">Report is public:</label><select id="public" name="public"> <option value="0" selected="selected">No (default)</option> <option value="1">Yes</option> </select></li>
 [% END %]
 [% IF (usecache) %] <li>
 <label for="cache_expiry">Cache expiry:</label><input type="text" id="cache_expiry" name="cache_expiry" value="[% cache_expiry %]"></input>
@@ -848,43 +903,12 @@ $(document).ready(function() {
 
 [% IF ( saved1 ) %]
 <div id="saved-reports-filter">
-<script type="text/javascript">
-$(document).ready(function() {
-    no_subgroup_label = _( "-- All --" );
-    load_group_subgroups();
-});
-</script>
 <form action="/cgi-bin/koha/reports/guided_reports.pl" method="get">
   <input type="hidden" name="phase" value="Use saved" />
   <input type="hidden" name="filter_set" value="1" />
   <fieldset class="brief">
   <h3>Filter</h3>
   <ol>
-    <li><label for="group">Choose Group and Subgroup: </label>
-    <select name="group" id="group" onChange="load_group_subgroups();">
-        <option value="">-- All --</option>
-    [% FOR g IN groups_with_subgroups %]
-        [% IF g.selected %]
-        <option value="[% g.id %]" selected>[% g.name %]</option>
-        [% ELSE %]
-        <option value="[% g.id %]">[% g.name %]</option>
-        [% END %]
-        <script type="text/javascript">
-            var g_sg = new Array();
-        [% FOR sg IN g.subgroups %]
-            g_sg.push(["[% sg.id %]", "[% sg.name %]"]);
-            [% IF sg.selected %]
-            $(document).ready(function() {
-                $("#subgroup").val("[% sg.id %]");
-            });
-            [% END %]
-        [% END %]
-            group_subgroups["[% g.id %]"] = g_sg;
-        </script>
-    [% END %]
-    </select>
-    <select name="subgroup" id="subgroup"></select>
-    </li>
     <li><label for="filter_date">Date:</label> <input type="text" id="filter_date" name="filter_date" size="10" value="[% filter_date %]" class="datepicker" />
     <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
 
@@ -892,6 +916,7 @@ $(document).ready(function() {
     <li><label for="filter_author">Author:</label> <input type="text" id="filter_author" name="filter_author" value="[% filter_author %]" /></li>
     <li><label for="filter_keyword">Keyword:</label> <input type="text" id="filter_keyword" name="filter_keyword" value="[% filter_keyword %]" /></li>
   </ol>
+  </fieldset>
   <fieldset class="action"><input type="submit" value="Apply filter" /></fieldset>
 </form>
 </div>
@@ -920,3 +945,56 @@ $("#column_submit").submit(function() {
 //]]>
 </script>
 [% INCLUDE 'intranet-bottom.inc' %]
+
+
+[% BLOCK group_and_subgroup_selection %]
+    <li id="group">
+        <label>Report group:</label>
+        <input type="radio" name="select_or_create_group"
+            id="select_group" checked="checked" />
+        <label for="select_group" style="float:none">Select</label>
+        <select name="group" onChange="load_group_subgroups();" id="group_select">
+            <option value="">(None)</option>
+            [% FOREACH group IN groups_with_subgroups %]
+                [% IF (group.selected) %]
+                    <option value="[% group.id %]" selected="selected">
+                [% ELSE %]
+                    <option value="[% group.id %]">
+                [% END %]
+                    [% group.name %]
+                </option>
+            [% END %]
+        </select>
+        <input type="radio" name="select_or_create_group" id="create_group" />
+        <label for="create_group" style="float:none">or create</label>
+        <input type="text" name="group" id="group_input" title="Group code" placeholder="Code" />
+        <input type="text" name="groupdesc" id="groupdesc_input" title="Group name" placeholder="Name" />
+    </li>
+    <li id="subgroup">
+        <label>Report subgroup:</label>
+        <input type="radio" name="select_or_create_subgroup"
+            id="select_subgroup" checked="checked" />
+        <label for="select_subgroup" style="float:none">Select</label>
+        <select name="subgroup" id="subgroup_select">
+            <option value="">(None)</option>
+            [% FOREACH group IN groups_with_subgroups %]
+                [% IF (group.selected) %]
+                    [% FOREACH subgroup IN group.subgroups %]
+                        [% IF (subgroup.selected) %]
+                            <option value="[% subgroup.id %]" selected="selected">
+                        [% ELSE %]
+                            <option value="[% subgroup.id %]">
+                        [% END %]
+                            [% subgroup.name %]
+                        </option>
+                    [% END %]
+                [% END %]
+            [% END %]
+        </select>
+        <input type="radio" name="select_or_create_subgroup"
+            id="create_subgroup" />
+        <label for="create_subgroup" style="float:none">or create</label>
+        <input type="text" name="subgroup" id="subgroup_input" title="Subgroup code" placeholder="Code" />
+        <input type="text" name="subgroupdesc" id="subgroupdesc_input" title="Subgroup name" placeholder="Name" />
+    </li>
+[% END %]
index 9010092..8460bf0 100644 (file)
@@ -52,7 +52,7 @@
        [% FOREACH mainloo IN mainloop %]
         <h1>Average checkout period</h1>
                [% IF ( mainloo.loopfilter ) %]
-                       <p>Filtered on</p>
+            <p>Filtered on:</p>
                        [% FOREACH loopfilte IN mainloo.loopfilter %]
                                        <p>[% IF ( loopfilte.err ) %]  [% END %] [% loopfilte.crit %] =[% loopfilte.filter %][% IF ( loopfilte.err ) %]  [% END %]</p>
                        [% END %]
index e09b9cc..54708b4 100644 (file)
@@ -22,7 +22,7 @@
     [% FOREACH mainloo IN mainloop %]
         <h1>Circulation statistics</h1>
         [% IF ( mainloo.loopfilter ) %]
-            <p>Filtered on</p>
+            <p>Filtered on:</p>
             <ul>
             [% FOREACH loopfilte IN mainloo.loopfilter %]
                 [% IF ( loopfilte.err ) %]<li class="error">Error:
index c5a198b..e8b2548 100644 (file)
@@ -94,7 +94,7 @@
     [% IF ( mainloop ) %]
         <h1>Holds statistics</h1>
         [% IF ( loopfilter ) %]
-            <p>Filtered on</p>
+            <p>Filtered on:</p>
             <ul>
             [% FOREACH loopfilte IN loopfilter %]
                 [% IF ( loopfilte.err ) %]<li class="error">Error:
index 3a64b11..5c8c80c 100644 (file)
@@ -68,13 +68,13 @@ function unHideItems(index,labelindex, serialId) {
        label = document.getElementById(labelindex);
        label.style.display='none';     
 
-       // Prefilling 995$h with serial enumeration/issue number
-       // Getting item id
-       itemid = $("fieldset#" + index + " div.cataloguing_additem_itemlist div.items").attr("id");
-       // Getting subfield id
-       subfieldid = "subfield" + itemid.substr(4) + "h";
-       // Setting text field 
-       $("#" + subfieldid + " input[type='text']").val($("#serialseq" + serialId).val());
+    // Prefilling enumcron subfield with serial enumeration/issue number
+    // Getting item div
+    item_div = $("fieldset#" + index + " div.cataloguing_additem_itemlist div.items");
+    // Getting subfield with enumcron mapping
+    subfield_div = $(item_div).find("input[name='kohafield'][value='items.enumchron']").parent();
+    // Setting text field
+    $(subfield_div).children("input[type='text'][name='field_value']").val($("#serialseq" + serialId).val());
 
 }
 function HideItems(index,labelindex) {
@@ -197,6 +197,8 @@ $(document).ready(function() {
             [% END %]
             [% IF ( serialslis.status1 ) %]
               <option value="1" selected="selected">Expected</option>
+            [% ELSE %]
+              <option value="1">Expected</option>
             [% END %]
             [% IF ( serialslis.status2 ) %]
               <option value="2" selected="selected">Arrived</option>
index eaafc94..4037b45 100644 (file)
@@ -17,6 +17,7 @@
     </div>
   </div>
   <div class="yui-b">
+    [% INCLUDE 'subscriptions-search.inc' %]
     [% INCLUDE 'serials-menu.inc' %]
   </div>
 </div>
index 0c937bf..459a80a 100644 (file)
         [% IF ( total ) %]
           <div id="serialstabs" class="toptabs" style="clear:both;">
             <ul class="ui-tabs-nav">
-              <li><a href="#opened">Opened ([% openedsubscriptions.size || 0 %])</a></li>
+              <li><a href="#opened">Open ([% openedsubscriptions.size || 0 %])</a></li>
               <li><a href="#closed">Closed ([% closedsubscriptions.size || 0 %])</a></li>
             </ul>
             <div id="opened">
                   </tbody>
                 </table>
               [% ELSE %]
-                There is no opened subscription for your search.
+                <div class="dialog message">
+                  <p>Your search returned no open subscriptions.</p>
+                </div>
               [% END %]
             </div>
             <div id="closed">
                   </tbody>
                 </table>
               [% ELSE %]
-                There is no closed subscription for your search.
+                <div class="dialog message">
+                  <p>Your search returned no closed subscriptions.</p>
+                </div>
               [% END %]
             </div>
           </div>
+        [% ELSE %]
+            <div class="dialog message">
+              <p>Your search returned no results.</p>
+            </div>
         [% END %]
       [% END %]
     </div>
index 35d4187..2f1dc7f 100644 (file)
@@ -1102,27 +1102,27 @@ $(document).ready(function() {
         <fieldset class="rows">
             <ol>
                 <li>
-                <label for="histstartdate">Subscription start date</label>
+                <label for="histstartdate">Subscription start date</label>
                 <input type="text" name="histstartdate" id="histstartdate" value="[% histstartdate %]" /><div class="hint"> (start date of the 1st subscription)</div>
                 </li>
                 <li>
-                <label for="histenddate">Subscription end date</label>
+                <label for="histenddate">Subscription end date</label>
                 <input type="text" name="histenddate" id="histenddate" value="[% histenddate %]" /> <div class="hint">(if empty, subscription is still active)</div>
                 </li>
                 <li>
-                <label for="recievedlist">Received issues</label>
+                <label for="recievedlist">Received issues</label>
                 <textarea name="recievedlist" id="recievedlist" cols="60" rows="5">[% recievedlist %]</textarea>
                 </li>
                 <li>
-                <label for="missinglist">Missing issues</label>
+                <label for="missinglist">Missing issues</label>
                 <textarea name="missinglist" id="missinglist" cols="60" rows="5">[% missinglist %]</textarea>
                 </li>
                 <li>
-                <label for="opacnote">Note for OPAC</label>
+                <label for="opacnote">Note for OPAC</label>
                 <textarea name="opacnote" id="opacnote" cols="60" rows="5">[% opacnote %]</textarea>
                 </li>
                 <li>
-                <label for="librariannote">Note for staff</label>
+                <label for="librariannote">Note for staff</label>
                 <textarea name="librariannote" id="librariannote" cols="60" rows="5">[% librariannote %]</textarea>
                 </li>
             </ol>
index e6a7074..0d9e832 100644 (file)
@@ -136,7 +136,7 @@ $(document).ready(function() {
             <h2>Acquisition details</h2>
             <table>
                 <thead>
-                    <tr><th></th><th>Price exc. taxes</th><th>Price inc. taxes</th><th>fund</th><th></th></tr>
+                    <tr><th></th><th>Price exc. taxes</th><th>Price inc. taxes</th><th>Fund</th><th></th></tr>
                 </thead>
                 <tbody>
                     <tr>
@@ -146,7 +146,7 @@ $(document).ready(function() {
                         <td>[% budget_name_ordered %]</td>
                         <td>
                             [% IF ( ordered_exists ) %]
-                                <a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno %]">See basket informations</a>
+                                <a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno %]">See basket information</a>
                             [% END %]
                         </td>
                     </tr>
@@ -157,7 +157,7 @@ $(document).ready(function() {
                         <td>[% budget_name_spent %]</td>
                         <td>
                             [% IF ( spent_exists ) %]
-                                <a href="/cgi-bin/koha/acqui/invoice.pl?invoicenumber=[% invoicenumber %]">See invoice informations</a>
+                                <a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoiceid %]">See invoice information</a>
                             [% END %]
                         </td>
                     </tr>
@@ -409,8 +409,8 @@ $(document).ready(function() {
             <li><span class="label">Missing issues:</span>[% missinglist %]</li>
             <li><span class="label">Nonpublic note:</span>[% internalnotes FILTER html_line_break %]</li>
             <li><span class="label">Public note:</span>[% notes FILTER html_line_break %]</li>
-            <li><span class="label">History staff note</span>[% librariannote FILTER html_line_break %]</li>
-            <li><span class="label">History OPAC note</span>[% opacnote FILTER html_line_break %]</li>
+            <li><span class="label">History staff note:</span>[% librariannote FILTER html_line_break %]</li>
+            <li><span class="label">History OPAC note:</span>[% opacnote FILTER html_line_break %]</li>
         </ol>
     </div>
     </div>
index fcb8eca..0ce3804 100644 (file)
@@ -325,7 +325,7 @@ $(document).ready(function() { calcNewsuggTotal(); });
     <fieldset class="rows"> <legend>Acquisition information</legend><ol>
         <li><label for="branchcode">Library:</label>
             <select name="branchcode" id="branchcode">
-                <option value="">Any</option>[% FOREACH branchloo IN branchloop %]
+                <option value="__ANY__">Any</option>[% FOREACH branchloo IN branchloop %]
                 [% IF ( branchloo.selected ) %]<option value="[% branchloo.value %]" selected="selected">[% branchloo.branchname %]</option>[% ELSE %]<option value="[% branchloo.value %]">[% branchloo.branchname %]</option>[% END %][% END %]
             </select>
         </li>
@@ -346,7 +346,7 @@ $(document).ready(function() { calcNewsuggTotal(); });
             </select>
                 </li><li><label for="price">Price:</label>
                        <input type="text" size="20" name="price" id="price" value="[% price %]" onchange="calcNewsuggTotal();" />
-                </li><li><label for="total">Total</label>
+                </li><li><label for="total">Total</label>
                        <input type="text" readonly="readonly" id="total" name="total" size="10" value="[% total %]"/>
                 </li></ol>
     </fieldset><input type="hidden" id="returnsuggested" name="returnsuggested" value="[% IF ( returnsuggestedby ) %][% returnsuggestedby %][% ELSE %]noone[% END %]"/>
@@ -555,7 +555,7 @@ $(document).ready(function() { calcNewsuggTotal(); });
                     </select></li>
                     <li><label for="branchcode"> For:</label>
                     <select name="branchcode" id="branchcode">
-                        <option value="">Any</option>[% FOREACH branchloo IN branchloop %]
+                        <option value="__ANY__">Any</option>[% FOREACH branchloo IN branchloop %]
                             [% IF ( branchloo.selected ) %] <option value="[% branchloo.value %]" selected="selected">[% branchloo.branchname %]</option>[% ELSE %] <option value="[% branchloo.value %]">[% branchloo.branchname %]</option>[% END %]
                             [% END %]
                     </select></li><li><input type="submit" value="Go" /></li></ol>
index e3f6b29..32aeb95 100644 (file)
@@ -3,7 +3,11 @@
 [% INCLUDE 'doc-head-close.inc' %]
 <script type="text/javascript" src="[% themelang %]/js/background-job-progressbar.js"></script>
 <link rel="stylesheet" type="text/css" href="[% themelang %]/css/pages/batchMod.css" />
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
+<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+<script type="text/javascript" src="[% themelang %]/js/pages/batchMod.js"></script>
+<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
 <script type="text/javascript">
 //<![CDATA[
@@ -16,7 +20,6 @@ for( x=0; x<allColumns.length; x++ ){
 }
 //]]>
 </script>
-<script type="text/javascript" src="[% themelang %]/js/pages/batchMod.js"></script>
 <!--[if IE]>
 <style type="text/css">#selections { display: none; }</style>
 <![endif]-->
index c65277a..d4b5e10 100644 (file)
@@ -4,7 +4,11 @@
 <script type="text/javascript" src="[% themelang %]/js/background-job-progressbar.js"></script>
 <script type="text/javascript" src="[% themelang %]/js/cataloging.js"></script>
 <link rel="stylesheet" type="text/css" href="[% themelang %]/css/pages/batchMod.css" />
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
+<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+<script type="text/javascript" src="[% themelang %]/js/pages/batchMod.js"></script>
+<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
 <script type="text/javascript">
 //<![CDATA[
@@ -16,7 +20,6 @@ for( x=0; x<allColumns.length; x++ ){
   allColumns[x] = Number(allColumns[x]) + 2;
 }
 $(document).ready(function(){
-  $("#itemst").tablesorter({ widgets : ['zebra'], headers: {0:{sorter: false}} });
   $("#selectallbutton").click(function() {
       $("#itemst").find("input:checkbox").each(function() {
    $(this).attr("checked", "checked");
@@ -43,7 +46,6 @@ $(document).ready(function(){
 });
 //]]>
 </script>
-<script type="text/javascript" src="[% themelang %]/js/pages/batchMod.js"></script>
 <!--[if IE]>
 <style type="text/css">#selections { display: none; }</style>
 <![endif]-->
index df6fa57..ed57366 100644 (file)
@@ -1,15 +1,6 @@
 [% INCLUDE 'doc-head-open.inc' %]
 <title>Koha &rsaquo; Tools &rsaquo; [% IF ( del ) %]Batch item deletion[% ELSE %]Batch item modification[% END %] </title>
 [% INCLUDE 'doc-head-close.inc' %]
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
-<script type="text/JavaScript" language="JavaScript">
-//<![CDATA[
-         $(document).ready(function() {
-           $("#itemst").tablesorter();
-
-        });
-//]]>
-</script>
 </head>
 <body id="tools_batchMod" class="tools">
 [% INCLUDE 'header.inc' %]
@@ -35,9 +26,9 @@
                                 <legend>Use a file</legend>
                                      <ol>
                                      <li>
-                                       <label for="barcode_file">Barcode file</label><input type="radio" name="filecontent" value="barcode_file" id="barcode_file" checked="checked" /></li>
+                    <label for="barcode_file">Barcode file: </label><input type="radio" name="filecontent" value="barcode_file" id="barcode_file" checked="checked" /></li>
                     <li>
-                                       <label for="itemid_file">Item number file</label><input type="radio" name="filecontent" value="itemid_file" id="itemid_file" />
+                    <label for="itemid_file">Item number file: </label><input type="radio" name="filecontent" value="itemid_file" id="itemid_file" />
                                      </li>
                                     <li><label for="uploadfile">File: </label> <input type="file" id="uploadfile" name="uploadfile" /></li>
                                 </ol>
index 2d98836..01f5166 100644 (file)
@@ -101,7 +101,7 @@ function reloadPage(p) {
                                                    <li><label for="new_encoding">Encoding: </label>
                                                    <select name="encoding" id="new_encoding">
                                                        [% FOREACH encoding IN encodings %]
-                                                               [% IF ( encoding == 'utf8' ) %]
+                                [% IF ( encoding.encoding == 'utf8' ) %]
                                                                        <option selected="selected">[% encoding.encoding %]</option>
                                                                [% ELSE %]
                                                                        <option>[% encoding.encoding %]</option>
@@ -281,7 +281,7 @@ function reloadPage(p) {
                                                    <li><label for="encoding">Encoding: </label>
                                                    <select name="encoding" id="encoding">
                                                        [% FOREACH encoding IN encodings %]
-                                                           [% IF ( selected_encoding == encoding ) %]
+                                [% IF ( selected_encoding == encoding.encoding ) %]
                                                            <option selected="selected">[% encoding.encoding %]</option>
                                                            [% ELSE %]
                                                            <option>[% encoding.encoding %]</option>
index a9e0c96..2a9f25f 100644 (file)
@@ -2,10 +2,13 @@
 <title>Koha &rsaquo; Tools &rsaquo; [% branchname %] Calendar</title>
 [% INCLUDE 'doc-head-close.inc' %]
 [% INCLUDE 'calendar.inc' %]
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
+<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
 <script language="JavaScript" type="text/javascript">
 //<![CDATA[
-
+    [% IF (dateformat == 'metric') %]dt_add_type_uk_date();[% END %]
        var weekdays = new Array(_("Sundays"),_("Mondays"),_("Tuesdays"),_("Wednesdays"),_("Thursdays"),_("Fridays"),_("Saturdays"));
 
     /* Creates all the structures to deal with all diferents kinds of holidays */
 
        $(document).ready(function() {
 
-[% IF ( dateformat_metric ) %]         $.tablesorter.addParser({ // http://tablesorter.com/docs/example-parsers.html
-                       id: 'shortDates',
-                       is: function(s){
-                               return false;
-                       },
-                       format: function(s){
-                               var datepattern = new RegExp("[0-9]\/[0-9]");
-                               if( datepattern.test(s)){ // sorting a date without a year: "01/12"
-                                       var dateparts = s.split("/").reverse().join("-"); // build an ISO date to be sorted as text
-                                       s = "2000-" + dateparts; // use 2000 as the default year
-                               }
-                               return s;
-                       },
-                       type: 'text'
-               });
-[% END %]
                $(".hint").hide();
                $("#branch").change(function(){
                        changeBranch();
                });
-               $("#holidayexceptions").tablesorter({[% IF ( dateformat_metric ) %]
-                 dateFormat: 'uk',[% END %]
-                 sortList: [[0,0]], widgets: ['zebra']
-               });
-               $("#holidayweeklyrepeatable").tablesorter({[% IF ( dateformat_metric ) %]
-                 dateFormat: 'uk',[% END %]
-                 sortList: [[0,0]], widgets: ['zebra']
-               });
-               $("#holidaysyearlyrepeatable").tablesorter({[% IF ( dateformat_metric ) %]
-                       headers : {
-                               0: {
-                                       sorter : 'shortDates'
-                               }
-                       },[% END %]
-                       sortList: [[0,0]], widgets: ['zebra']
-               });
-               $("#holidaysunique").tablesorter({[% IF ( dateformat_metric ) %]
-                 dateFormat: 'uk',[% END %]
-                 sortList: [[0,0]], widgets: ['zebra']
-               });
+        $("#holidayexceptions,#holidayweeklyrepeatable,#holidaysunique").dataTable($.extend(true, {}, dataTablesDefaults, {
+            "sDom": 't',
+            "bPaginate": false
+        }));
+        $("#holidaysyearlyrepeatable").dataTable($.extend(true, {}, dataTablesDefaults, {
+            "sDom": 't',
+            "aoColumns": [
+                { "sType": "title-string" },null,null
+            ],
+            "bPaginate": false
+        }));
                $("a.helptext").click(function(){
                        $(this).parent().find(".hint").toggle(); return false;
                });
 .holiday {  background-color :  #ffaeae; color :  Black;  border : 1px solid #BCBCBC; }
 .repeatableweekly {  background-color :  #FFFF99; color :  Black;  border : 1px solid #BCBCBC; }
 .repeatableyearly {  background-color :  #FFCC66; color :  Black;  border : 1px solid #BCBCBC; }
-td.exception a.ui-state-default, .exception { background:  #b3d4ff none; color :  Black; border : 1px solid #BCBCBC; }
-td.holiday a.ui-state-default, .holiday {  background:  #ffaeae none; color :  Black;  border : 1px solid #BCBCBC; }
-td.repeatableweekly a.ui-state-default, .repeatableweekly {  background:  #D8EFB3 none; color :  Black;  border : 1px solid #BCBCBC; }
-td.repeatableyearly a.ui-state-default, .repeatableyearly {  background:  #FFFF99 none; color :  Black;  border : 1px solid #BCBCBC; }
+td.exception a.ui-state-default { background:  #b3d4ff none; color :  Black; border : 1px solid #BCBCBC; }
+td.holiday a.ui-state-default {  background:  #ffaeae none; color :  Black;  border : 1px solid #BCBCBC; }
+td.repeatableweekly a.ui-state-default {  background:  #D8EFB3 none; color :  Black;  border : 1px solid #BCBCBC; }
+td.repeatableyearly a.ui-state-default {  background:  #FFFF99 none; color :  Black;  border : 1px solid #BCBCBC; }
 .information { z-index : 1; background-color :  #DCD2F1; width : 300px; display : none; border : 1px solid #000000; color :  #000000; font-size :  8pt; font-weight :  bold; background-color :  #FFD700; cursor :  pointer; padding : 2px; }
 .panel { z-index : 1; display : none; border : 3px solid #CCC; padding : 3px; margin-top: .3em;  background-color: #FEFEFE; } fieldset.brief { border : 0; margin-top: 0; }
 #showHoliday { margin : .5em 0; } h1 select { width: 20em; } div.yui-b fieldset.brief ol { font-size:100%; } div.yui-b fieldset.brief li, div.yui-b fieldset.brief li.radio  { padding:0.2em 0; } .help { margin:.3em 0;border:1px solid #EEE;padding:.3em .7em; font-size : 90%; } #holidayweeklyrepeatable, #holidaysyearlyrepeatable, #holidaysunique, #holidayexceptions { font-size : 90%; margin-bottom : 1em;} .calendar td, .calendar th, .calendar .button, .calendar tbody .day { padding : .7em; font-size: 110%; } .calendar { width: auto; border : 0; }
@@ -465,7 +443,7 @@ td.repeatableyearly a.ui-state-default, .repeatableyearly {  background:  #FFFF9
 <tbody>
   [% FOREACH EXCEPTION_HOLIDAYS_LOO IN EXCEPTION_HOLIDAYS_LOOP %]
   <tr>
-  <td><a href="/cgi-bin/koha/tools/holidays.pl?branch=[% branch %]&amp;calendardate=[% EXCEPTION_HOLIDAYS_LOO.DATE %]">[% EXCEPTION_HOLIDAYS_LOO.DATE %]</a></td>
+  <td><a href="/cgi-bin/koha/tools/holidays.pl?branch=[% branch %]&amp;calendardate=[% EXCEPTION_HOLIDAYS_LOO.DATE %]"><span title="[% EXCEPTION_HOLIDAYS_LOO.DATE_SORT %]">[% EXCEPTION_HOLIDAYS_LOO.DATE %]</span></a></td>
   <td>[% EXCEPTION_HOLIDAYS_LOO.TITLE %]</td>
   <td>[% EXCEPTION_HOLIDAYS_LOO.DESCRIPTION %]</td> 
   </tr>
@@ -517,7 +495,7 @@ td.repeatableyearly a.ui-state-default, .repeatableyearly {  background:  #FFFF9
 <tbody>
   [% FOREACH DAY_MONTH_HOLIDAYS_LOO IN DAY_MONTH_HOLIDAYS_LOOP %]
   <tr>
-  <td>[% DAY_MONTH_HOLIDAYS_LOO.DATE %]</td>
+  <td><span title="[% DAY_MONTH_HOLIDAYS_LOO.DATE_SORT %]">[% DAY_MONTH_HOLIDAYS_LOO.DATE %]</span></td>
   <td>[% DAY_MONTH_HOLIDAYS_LOO.TITLE %]</td> 
   <td>[% DAY_MONTH_HOLIDAYS_LOO.DESCRIPTION %]</td> 
   </tr>
@@ -539,7 +517,7 @@ td.repeatableyearly a.ui-state-default, .repeatableyearly {  background:  #FFFF9
 <tbody>
     [% FOREACH HOLIDAYS_LOO IN HOLIDAYS_LOOP %]
 <tr>
-  <td><a href="/cgi-bin/koha/tools/holidays.pl?branch=[% branch %]&amp;calendardate=[% HOLIDAYS_LOO.DATE %]">[% HOLIDAYS_LOO.DATE %]</a></td>
+  <td><a href="/cgi-bin/koha/tools/holidays.pl?branch=[% branch %]&amp;calendardate=[% HOLIDAYS_LOO.DATE %]"><span title="[% HOLIDAYS_LOO.DATE_SORT %]">[% HOLIDAYS_LOO.DATE %]</span></a></td>
   <td>[% HOLIDAYS_LOO.TITLE %]</td>
   <td>[% HOLIDAYS_LOO.DESCRIPTION %]</td>
 </tr>
index b894369..6744faf 100644 (file)
 <ol>
     [% FOREACH columnkey IN columnkeys %]
        <li>
-               <label class="widelabel" for="[% columnkey.key %]">[% columnkey.key %]</label>
+        <label class="widelabel" for="[% columnkey.key %]">[% columnkey.key %]: </label>
                <input id="[% columnkey.key %]" name="[% columnkey.key %]" />
        </li>
     [% END %]
index a88ed84..424928f 100644 (file)
@@ -66,11 +66,11 @@ $(document).ready(function(){
         <fieldset class="rows">
         <legend>Select items you want to check</legend>
         <ol><li>
-        <label for="branch">Library</label>
+        <label for="branch">Library</label>
             <input type="radio" name="branch" value="homebranch"> Home library</input>
             <input type="radio" name="branch" value="holdingbranch"> Current location</input>
         </li><li>
-        <label for="branchloop">Library</label><select id="branchloop" name="branchcode" style="width:12em;">
+        <label for="branchloop">Library</label><select id="branchloop" name="branchcode" style="width:12em;">
             <option value="">All locations</option>
         [% FOREACH branchloo IN branchloop %]
             [% IF ( branchloo.selected ) %]
@@ -83,7 +83,7 @@ $(document).ready(function(){
         </li>
         [% IF ( authorised_values ) %]
         <li>
-            <label for="locationloop">Shelving location (items.location) is</label>
+            <label for="locationloop">Shelving location (items.location) is</label>
         <select id="locationloop" name="location">
                 <option value="">Filter location</option>
         [% FOREACH authorised_value IN authorised_values %]
@@ -105,7 +105,7 @@ $(document).ready(function(){
        </ol>
        </fieldset>
             <fieldset class="rows">
-            <legend>Item statuses:</legend>
+            <legend>Item statuses</legend>
             <div name="statuses" style="display: block;">
                   [% FOREACH statuse IN statuses %]
                       [% IF ( statuse.values ) %]
@@ -146,11 +146,11 @@ $(document).ready(function(){
             <input type="text" id="offset" name="offset" value="[% offset %]" size="5" maxlength="5" />
         </li>
         <li>
-           <label for="CSVexport">Export to CSV file</label>
+           <label for="CSVexport">Export to CSV file</label>
            <input type="checkbox" name="CSVexport" id="CSVexport" />
         </li>
         <li>
-            <label for="compareinv2barcd">Compare barcodes list to results</label>
+            <label for="compareinv2barcd">Compare barcodes list to results</label>
             <input type="checkbox" name="compareinv2barcd" id="compareinv2barcd" />
         </li>
         </ol>
index d84f8c5..8277132 100644 (file)
     //]]>
     </script>
 [% END %]
-<script type="text/javascript" src="[% themelang %]/js/tinymce/jscripts/tiny_mce/tiny_mce.js"></script>
+<script language="javascript" type="text/javascript" src="[% interface %]/lib/tiny_mce/tiny_mce.js"></script>
 <script type="text/javascript">//<![CDATA[
 tinyMCE.init({
     mode : "textareas",
     theme : "advanced",
     content_css : "[% themelang %]/css/tinymce.css",
-    plugins : "table,save,advhr,advlink,iespell,searchreplace,print,contextmenu",
+    plugins : "table,save,advhr,advlink,searchreplace,print,contextmenu",
     theme_advanced_buttons1 : "save,|,bold,italic,|,cut,copy,paste,|,search,replace,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,|,link,unlink,anchor,cleanup,help,code,advhr,|,print",
     theme_advanced_buttons2 : "tablecontrols,|,bullist,numlist,|,outdent,indent,|,undo,redo,|,removeformat,|,visualaid,|,sub,sup,|,charmap",
     theme_advanced_buttons3 : "",
@@ -42,6 +42,7 @@ tinyMCE.init({
     width : "700"
 //]]>
 });
+//]]>
 </script>
 </head>
 <body id="tools_koha-news" class="tools">
@@ -79,28 +80,28 @@ Edit News Item[% ELSE %]Add News Item[% END %][% ELSE %]News[% END %]</div>
             </select>
             </li>
             <li>
-                <label for="title">Title</label>
+                <label for="title">Title</label>
                 <input id="title" size="30" type="text" name="title" value="[% new_detail.title %]" />
             </li>
             <li>
-                <label for="from">Publication date</label>
+                <label for="from">Publication date</label>
                 <input id="from" type="text" name="timestamp" size="15" value="[% new_detail.timestamp %]" class="datepickerfrom" />
                                <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
             </li>
             <li>
-                <label for="to">Expiration date</label>
+                <label for="to">Expiration date</label>
                 <input id="to" type="text" name="expirationdate" size="15" value="[% new_detail.expirationdate %]" class="datepickerto" />
                                <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
             </li>
             <li>
-                <label for="number">Appear in position </label>
+                <label for="number">Appear in position: </label>
                 [% IF ( new_detail.number ) %]
                     <input id="number" size="3" name="number" type="text" checked="checked" value="[% new_detail.number %]" />
                 [% ELSE %]
                     <input id="number" size="3" name="number" type="text" />
                 [% END %]
             </li>
-            <li><label for="new">News</label>
+            <li><label for="new">News</label>
             <textarea name="new" id="new"  cols="75" rows="10">[% new_detail.new %]</textarea></li>
             </ol>
                        </fieldset>
index 1560acb..ec12042 100644 (file)
@@ -1554,6 +1554,11 @@ div.message {
      padding : 3px 5px;
 }
 
+strong em, em strong  {
+    font-weight: bold;
+    font-style: italic;
+}
+
 #opac-main-search #listsmenu a, #opac-main-search #listsmenu h4 {
         color : #000;
   font-weight : normal;
@@ -2417,6 +2422,48 @@ span.sep {
     margin: 5px;
 }
 
+#social_networks span {
+    color: #274D7F;
+    display : block;
+    float : left;
+    font-size: 85%;
+    font-weight: bold;
+    line-height: 2em;
+    margin : .5em 0 .5em .5em !important;
+}
+#social_networks a {
+    background: transparent url("../../images/social-sprite.png") no-repeat;
+    display: block;
+    height : 20px !important;
+    width : 20px;
+    text-indent : -999em;
+}
+
+#social_networks div {
+    float : left !important;
+    margin : .5em 0 .5em .2em !important;
+}
+
+#social_networks #facebook {
+    background-position : -7px -35px;
+}
+
+#social_networks #twitter {
+    background-position : -7px -5px;
+}
+
+#social_networks #linkedin {
+    background-position : -7px -95px;
+}
+
+#social_networks #delicious {
+    background-position : -7px -66px;
+}
+
+#social_networks #email {
+    background-position : -7px -126px;
+}
+
 /* jQuery UI standard tabs */
 .ui-tabs-nav .ui-tabs-selected a,
 .ui-tabs-nav a:hover,
@@ -2732,6 +2779,14 @@ a.reviewlink,a.reviewlink:visited {
     padding-right: 6px;
 }
 
+.highlight-row-results {
+    font-size: 120%;
+}
+
+.highlight-row-detail {
+    font-weight: bold;
+}
+
 .authorSearch {
     position: absolute;
     display: none;
index 1d8538e..fc29042 100644 (file)
         [% ELSE %]
             <div id="libraries" class="mobile-hidden">
         [% END %]
-      <select name="limit" id="select_library" class="left">
-         <option value="">All libraries</option>
-         [% FOREACH BranchesLoo IN BranchesLoop %]
-            [% IF ( BranchesLoo.selected ) %]<option selected="selected" value="branch:[% BranchesLoo.value %]">[% BranchesLoo.branchname %]</option>
-            [% ELSE %]<option value="branch:[% BranchesLoo.value %]">[% BranchesLoo.branchname %]</option>[% END %]
-         [% END %]
-      </select>
+
+        <select name="branch_group_limit" id="select_library" class="left">
+           <option value="">All libraries</option>
+           <optgroup label="Libraries">
+               [% FOREACH BranchesLoo IN BranchesLoop %]
+                  [% IF ( BranchesLoo.selected ) %]<option selected="selected" value="branch:[% BranchesLoo.value %]">[% BranchesLoo.branchname %]</option>
+                  [% ELSE %]<option value="branch:[% BranchesLoo.value %]">[% BranchesLoo.branchname %]</option>[% END %]
+               [% END %]
+           </optgroup>
+           [% IF BranchCategoriesLoop %]
+               <optgroup label="Groups">
+                   [% FOREACH bc IN BranchCategoriesLoop %]
+                       [% IF ( bc.selected ) %]
+                           <option selected="selected" value="multibranchlimit-[% bc.categorycode %]">[% bc.categoryname %]</option>
+                       [% ELSE %]
+                           <option value="multibranchlimit-[% bc.categorycode %]">[% bc.categoryname %]</option>
+                       [% END %]
+                   [% END %]
+               </optgroup>
+           [% END %]
+        </select>
+
     </div>
    [% ELSE %]
       [% IF ( opac_limit_override ) %]
 <div id="moresearches">
 <a href="/cgi-bin/koha/opac-search.pl">Advanced search</a>
 [% IF ( OpacBrowser ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-browser.pl">Browse by hierarchy</a>[% END %]
-[% IF ( OpacAuthorities ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-authorities-home.pl">Browse by author or subject</a>[% END %]
+[% IF ( OpacAuthorities ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-authorities-home.pl">Authority search</a>[% END %]
 [% IF ( opacuserlogin && reviewson && OpacShowRecentComments ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-showreviews.pl">Recent comments</a>[% END %]
 [% IF ( TagsEnabled ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-tags.pl">Tag cloud</a>[% END %]
 [% IF ( OpacCloud ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-tags_subject.pl">Subject cloud</a>[% END %]
index 99e8743..fcbbcba 100644 (file)
@@ -5,7 +5,7 @@
   [% IF ( OPACFinesTab ) %]
   [% IF ( accountview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/opac-account.pl">my fines</a></li>
   [% END %]
-  [% IF ( userupdateview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/opac-userupdate.pl">my personal details</a></li>
+  [% IF ( userupdateview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/opac-memberentry.pl">my personal details</a></li>
   [% IF ( TagsEnabled ) %]
     [% IF ( tagsview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/opac-tags.pl?mine=1">my tags</a></li>
   [% END %]
index c07ba3b..10a58dd 100644 (file)
@@ -51,7 +51,8 @@ KOHA.OpenLibrary = {
                         $(this).append(img);
                         $(this).append('<div class="results_summary">' + '<a href="' + book.url + '">Preview</a></div>');
                     } else {
-                        img.src = book.cover.small;
+                        img.src = book.cover.medium;
+                        img.height = '110';
                         $(this).append(img);
                     }
                 } else {
index c04eab6..45b6766 100644 (file)
@@ -11,7 +11,7 @@ $.datepicker.setDefaults({
         showOn: "both",
         changeMonth: true,
         changeYear: true,
-        buttonImage: '/opac-tmpl/prog/famfamfam/silk/calendar.png',
+        buttonImage: '/opac-tmpl/lib/famfamfam/silk/calendar.png',
         buttonImageOnly: true,
         showButtonPanel: true
     });
index 234b987..186a22f 100644 (file)
@@ -1,435 +1,5 @@
-/*!
- * jQuery UI CSS Framework 1.8.20
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Theming/API
- */
-
-/* Layout helpers
-----------------------------------*/
-.ui-helper-hidden { display: none; }
-.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); }
-.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
-.ui-helper-clearfix:before, .ui-helper-clearfix:after { content: ""; display: table; }
-.ui-helper-clearfix:after { clear: both; }
-.ui-helper-clearfix { zoom: 1; }
-.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
-
-
-/* Interaction Cues
-----------------------------------*/
-.ui-state-disabled { cursor: default !important; }
-
-
-/* Icons
-----------------------------------*/
-
-/* states and images */
-.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
-
-
-/* Misc visuals
-----------------------------------*/
-
-/* Overlays */
-.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
-
-
-/*!
- * jQuery UI CSS Framework 1.8.20
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Theming/API
- *
- * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
- */
-
-
-/* Component containers
-----------------------------------*/
-.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; }
-.ui-widget .ui-widget { font-size: 1em; }
-.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; }
-.ui-widget-content { border: 1px solid #B9D8D9; background: #ffffff; color: #222222; }
-.ui-widget-content a { color: #222222; }
-.ui-widget-header { border: 1px solid #B9D8D9; background: #E6F0F2 none; color: #222222; font-weight: bold; }
-.ui-widget-header a { color: #222222; }
-
-/* Interaction states
-----------------------------------*/
-.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #B9D8D9; background: #F4F8F9 none; font-weight: normal; color: #555555; }
-.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; }
-.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #B9D8D9; background: #E6F0F2 none; font-weight: normal; color: #212121; }
-.ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; }
-.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff none; font-weight: normal; color: #212121; }
-.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; text-decoration: none; }
-.ui-widget :active { outline: none; }
-
-/* Interaction Cues
-----------------------------------*/
-.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight  {border: 1px solid #fcefa1; background: #fbf9ee; color: #363636; }
-.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }
-.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec; color: #cd0a0a; }
-.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; }
-.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; }
-.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
-.ui-priority-secondary, .ui-widget-content .ui-priority-secondary,  .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
-.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
-
-/* Icons
-----------------------------------*/
-
-/* states and images */
-.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); }
-.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
-.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
-.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); }
-.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
-.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
-.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); }
-.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); }
-
-/* positioning */
-.ui-icon-carat-1-n { background-position: 0 0; }
-.ui-icon-carat-1-ne { background-position: -16px 0; }
-.ui-icon-carat-1-e { background-position: -32px 0; }
-.ui-icon-carat-1-se { background-position: -48px 0; }
-.ui-icon-carat-1-s { background-position: -64px 0; }
-.ui-icon-carat-1-sw { background-position: -80px 0; }
-.ui-icon-carat-1-w { background-position: -96px 0; }
-.ui-icon-carat-1-nw { background-position: -112px 0; }
-.ui-icon-carat-2-n-s { background-position: -128px 0; }
-.ui-icon-carat-2-e-w { background-position: -144px 0; }
-.ui-icon-triangle-1-n { background-position: 0 -16px; }
-.ui-icon-triangle-1-ne { background-position: -16px -16px; }
-.ui-icon-triangle-1-e { background-position: -32px -16px; }
-.ui-icon-triangle-1-se { background-position: -48px -16px; }
-.ui-icon-triangle-1-s { background-position: -64px -16px; }
-.ui-icon-triangle-1-sw { background-position: -80px -16px; }
-.ui-icon-triangle-1-w { background-position: -96px -16px; }
-.ui-icon-triangle-1-nw { background-position: -112px -16px; }
-.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
-.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
-.ui-icon-arrow-1-n { background-position: 0 -32px; }
-.ui-icon-arrow-1-ne { background-position: -16px -32px; }
-.ui-icon-arrow-1-e { background-position: -32px -32px; }
-.ui-icon-arrow-1-se { background-position: -48px -32px; }
-.ui-icon-arrow-1-s { background-position: -64px -32px; }
-.ui-icon-arrow-1-sw { background-position: -80px -32px; }
-.ui-icon-arrow-1-w { background-position: -96px -32px; }
-.ui-icon-arrow-1-nw { background-position: -112px -32px; }
-.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
-.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
-.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
-.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
-.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
-.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
-.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
-.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
-.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
-.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
-.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
-.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
-.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
-.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
-.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
-.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
-.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
-.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
-.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
-.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
-.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
-.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
-.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
-.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
-.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
-.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
-.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
-.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
-.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
-.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
-.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
-.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
-.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
-.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
-.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
-.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
-.ui-icon-arrow-4 { background-position: 0 -80px; }
-.ui-icon-arrow-4-diag { background-position: -16px -80px; }
-.ui-icon-extlink { background-position: -32px -80px; }
-.ui-icon-newwin { background-position: -48px -80px; }
-.ui-icon-refresh { background-position: -64px -80px; }
-.ui-icon-shuffle { background-position: -80px -80px; }
-.ui-icon-transfer-e-w { background-position: -96px -80px; }
-.ui-icon-transferthick-e-w { background-position: -112px -80px; }
-.ui-icon-folder-collapsed { background-position: 0 -96px; }
-.ui-icon-folder-open { background-position: -16px -96px; }
-.ui-icon-document { background-position: -32px -96px; }
-.ui-icon-document-b { background-position: -48px -96px; }
-.ui-icon-note { background-position: -64px -96px; }
-.ui-icon-mail-closed { background-position: -80px -96px; }
-.ui-icon-mail-open { background-position: -96px -96px; }
-.ui-icon-suitcase { background-position: -112px -96px; }
-.ui-icon-comment { background-position: -128px -96px; }
-.ui-icon-person { background-position: -144px -96px; }
-.ui-icon-print { background-position: -160px -96px; }
-.ui-icon-trash { background-position: -176px -96px; }
-.ui-icon-locked { background-position: -192px -96px; }
-.ui-icon-unlocked { background-position: -208px -96px; }
-.ui-icon-bookmark { background-position: -224px -96px; }
-.ui-icon-tag { background-position: -240px -96px; }
-.ui-icon-home { background-position: 0 -112px; }
-.ui-icon-flag { background-position: -16px -112px; }
-.ui-icon-calendar { background-position: -32px -112px; }
-.ui-icon-cart { background-position: -48px -112px; }
-.ui-icon-pencil { background-position: -64px -112px; }
-.ui-icon-clock { background-position: -80px -112px; }
-.ui-icon-disk { background-position: -96px -112px; }
-.ui-icon-calculator { background-position: -112px -112px; }
-.ui-icon-zoomin { background-position: -128px -112px; }
-.ui-icon-zoomout { background-position: -144px -112px; }
-.ui-icon-search { background-position: -160px -112px; }
-.ui-icon-wrench { background-position: -176px -112px; }
-.ui-icon-gear { background-position: -192px -112px; }
-.ui-icon-heart { background-position: -208px -112px; }
-.ui-icon-star { background-position: -224px -112px; }
-.ui-icon-link { background-position: -240px -112px; }
-.ui-icon-cancel { background-position: 0 -128px; }
-.ui-icon-plus { background-position: -16px -128px; }
-.ui-icon-plusthick { background-position: -32px -128px; }
-.ui-icon-minus { background-position: -48px -128px; }
-.ui-icon-minusthick { background-position: -64px -128px; }
-.ui-icon-close { background-position: -80px -128px; }
-.ui-icon-closethick { background-position: -96px -128px; }
-.ui-icon-key { background-position: -112px -128px; }
-.ui-icon-lightbulb { background-position: -128px -128px; }
-.ui-icon-scissors { background-position: -144px -128px; }
-.ui-icon-clipboard { background-position: -160px -128px; }
-.ui-icon-copy { background-position: -176px -128px; }
-.ui-icon-contact { background-position: -192px -128px; }
-.ui-icon-image { background-position: -208px -128px; }
-.ui-icon-video { background-position: -224px -128px; }
-.ui-icon-script { background-position: -240px -128px; }
-.ui-icon-alert { background-position: 0 -144px; }
-.ui-icon-info { background-position: -16px -144px; }
-.ui-icon-notice { background-position: -32px -144px; }
-.ui-icon-help { background-position: -48px -144px; }
-.ui-icon-check { background-position: -64px -144px; }
-.ui-icon-bullet { background-position: -80px -144px; }
-.ui-icon-radio-off { background-position: -96px -144px; }
-.ui-icon-radio-on { background-position: -112px -144px; }
-.ui-icon-pin-w { background-position: -128px -144px; }
-.ui-icon-pin-s { background-position: -144px -144px; }
-.ui-icon-play { background-position: 0 -160px; }
-.ui-icon-pause { background-position: -16px -160px; }
-.ui-icon-seek-next { background-position: -32px -160px; }
-.ui-icon-seek-prev { background-position: -48px -160px; }
-.ui-icon-seek-end { background-position: -64px -160px; }
-.ui-icon-seek-start { background-position: -80px -160px; }
-/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
-.ui-icon-seek-first { background-position: -80px -160px; }
-.ui-icon-stop { background-position: -96px -160px; }
-.ui-icon-eject { background-position: -112px -160px; }
-.ui-icon-volume-off { background-position: -128px -160px; }
-.ui-icon-volume-on { background-position: -144px -160px; }
-.ui-icon-power { background-position: 0 -176px; }
-.ui-icon-signal-diag { background-position: -16px -176px; }
-.ui-icon-signal { background-position: -32px -176px; }
-.ui-icon-battery-0 { background-position: -48px -176px; }
-.ui-icon-battery-1 { background-position: -64px -176px; }
-.ui-icon-battery-2 { background-position: -80px -176px; }
-.ui-icon-battery-3 { background-position: -96px -176px; }
-.ui-icon-circle-plus { background-position: 0 -192px; }
-.ui-icon-circle-minus { background-position: -16px -192px; }
-.ui-icon-circle-close { background-position: -32px -192px; }
-.ui-icon-circle-triangle-e { background-position: -48px -192px; }
-.ui-icon-circle-triangle-s { background-position: -64px -192px; }
-.ui-icon-circle-triangle-w { background-position: -80px -192px; }
-.ui-icon-circle-triangle-n { background-position: -96px -192px; }
-.ui-icon-circle-arrow-e { background-position: -112px -192px; }
-.ui-icon-circle-arrow-s { background-position: -128px -192px; }
-.ui-icon-circle-arrow-w { background-position: -144px -192px; }
-.ui-icon-circle-arrow-n { background-position: -160px -192px; }
-.ui-icon-circle-zoomin { background-position: -176px -192px; }
-.ui-icon-circle-zoomout { background-position: -192px -192px; }
-.ui-icon-circle-check { background-position: -208px -192px; }
-.ui-icon-circlesmall-plus { background-position: 0 -208px; }
-.ui-icon-circlesmall-minus { background-position: -16px -208px; }
-.ui-icon-circlesmall-close { background-position: -32px -208px; }
-.ui-icon-squaresmall-plus { background-position: -48px -208px; }
-.ui-icon-squaresmall-minus { background-position: -64px -208px; }
-.ui-icon-squaresmall-close { background-position: -80px -208px; }
-.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
-.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
-.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
-.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
-.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
-.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
-
-
-/* Misc visuals
-----------------------------------*/
-
-/* Corner radius */
-.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -khtml-border-top-left-radius: 4px; border-top-left-radius: 4px; }
-.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; -khtml-border-top-right-radius: 4px; border-top-right-radius: 4px; }
-.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; -khtml-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
-.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; -khtml-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
-
-/* Overlays */
-.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }
-.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -khtml-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }/*!
- * jQuery UI Autocomplete 1.8.20
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Autocomplete#theming
- */
-.ui-autocomplete { position: absolute; cursor: default; -webkit-box-shadow: 2px 2px 2px rgba(0,0,0,.3); -moz-box-shadow: 2px 2px 2px rgba(0,0,0,.3); box-shadow: 2px 2px 2px rgba(0,0,0,.3); }
-
-.ui-autocomplete.ui-widget-content .ui-state-hover { border: 1px solid #B9D8D9; background: #E6F0F2 none; font-weight: normal; color: #212121;
-}
-
-.ui-autocomplete-loading {
-    background: #FFF url("../../img/loading-small.gif") right center no-repeat;
-}
-
-/* workarounds */
-* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */
-
-/*
- * jQuery UI Menu 1.8.20
- *
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Menu#theming
- */
-.ui-menu {
-    list-style:none;
-    padding: 2px;
-    margin: 0;
-    display:block;
-    float: left;
-}
-.ui-menu li {
-    list-style:none;
-}
-.ui-menu .ui-menu {
-    margin-top: -3px;
-}
-.ui-menu .ui-menu-item {
-    margin:0;
-    padding: 0;
-    zoom: 1;
-    float: left;
-    clear: left;
-    width: 100%;
-}
-.ui-menu .ui-menu-item a {
-    text-decoration:none;
-    display:block;
-    padding:.2em .4em;
-    line-height:1.5;
-    zoom:1;
-}
-.ui-menu .ui-menu-item a.ui-state-hover,
-.ui-menu .ui-menu-item a.ui-state-active {
-    font-weight: normal;
-    margin: -1px;
-}
-/*!
- * jQuery UI Tabs 1.8.20
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Tabs#theming
- */
-.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
-.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
-.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
-.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
-.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
-.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
-.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
-.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
-.ui-tabs .ui-tabs-hide { display: none !important; }
-/*!
- * jQuery UI Datepicker 1.8.20
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Datepicker#theming
- */
-.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; }
-.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
-.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
-.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
-.ui-datepicker .ui-datepicker-prev { left:2px; }
-.ui-datepicker .ui-datepicker-next { right:2px; }
-.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
-.ui-datepicker .ui-datepicker-next-hover { right:1px; }
-.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }
-.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
-.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
-.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
-.ui-datepicker select.ui-datepicker-month,
-.ui-datepicker select.ui-datepicker-year { width: 49%;}
-.ui-datepicker table {width: 100%; font-size: .9em; border : 0; border-collapse: collapse; margin:0 0 .4em; }
-.ui-datepicker th { background : transparent none; padding: .7em .3em; text-align: center; font-weight: bold; border: 0;  }
-.ui-datepicker td { border: 0; padding: 1px; }
-.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
-.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
-.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
-.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
-
-/* with multiple calendars */
-.ui-datepicker.ui-datepicker-multi { width:auto; }
-.ui-datepicker-multi .ui-datepicker-group { float:left; }
-.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
-.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
-.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
-.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
-.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
-.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
-.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
-.ui-datepicker-row-break { clear:both; width:100%; font-size:0em; }
-
-/* RTL support */
-.ui-datepicker-rtl { direction: rtl; }
-.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
-.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
-.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
-.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
-.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
-.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
-.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
-.ui-datepicker-rtl .ui-datepicker-group { float:right; }
-.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
-.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
-
-/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
-.ui-datepicker-cover {
-    display: none; /*sorry for IE5*/
-    display/**/: block; /*sorry for IE5*/
-    position: absolute; /*must have*/
-    z-index: -1; /*must have*/
-    filter: mask(); /*must have*/
-    top: -4px; /*must have*/
-    left: -4px; /*must have*/
-    width: 200px; /*must have*/
-    height: 200px; /*must have*/
-}
\ No newline at end of file
+/*! jQuery UI - v1.9.2 - 2013-02-12
+* http://jqueryui.com
+* Includes: jquery.ui.core.css, jquery.ui.autocomplete.css, jquery.ui.datepicker.css, jquery.ui.menu.css, jquery.ui.slider.css, jquery.ui.tabs.css, jquery.ui.tooltip.css
+* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
+* Copyright (c) 2013 jQuery Foundation and other contributors Licensed MIT */.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{zoom:1}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}* html .ui-autocomplete{width:1px}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month-year{width:100%}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0em}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current{float:right}.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker-cover{position:absolute;z-index:-1;filter:mask();top:-4px;left:-4px;width:200px;height:200px}.ui-menu{list-style:none;padding:2px;margin:0;display:block;outline:none}.ui-menu .ui-menu{margin-top:-3px;position:absolute}.ui-menu .ui-menu-item{margin:0;padding:0;zoom:1;width:100%}.ui-menu .ui-menu-divider{margin:5px -2px 5px -2px;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-menu-item a{text-decoration:none;display:block;padding:2px .4em;line-height:1.5;zoom:1;font-weight:normal}.ui-menu .ui-menu-item a.ui-state-focus,.ui-menu .ui-menu-item a.ui-state-active{font-weight:normal;margin:-1px}.ui-menu .ui-state-disabled{font-weight:normal;margin:.4em 0 .2em;line-height:1.5}.ui-menu .ui-state-disabled a{cursor:default}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item a{position:relative;padding-left:2em}.ui-menu .ui-icon{position:absolute;top:.2em;left:.2em}.ui-menu .ui-menu-icon{position:static;float:right}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-tabs{position:relative;padding:.2em;zoom:1}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav li a{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active a,.ui-tabs .ui-tabs-nav li.ui-state-disabled a,.ui-tabs .ui-tabs-nav li.ui-tabs-loading a{cursor:text}.ui-tabs .ui-tabs-nav li a,.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}* html .ui-tooltip{background-image:none}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #aaa;background:#fff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px;background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-state-default .ui-icon{background-image:url(images/ui-icons_888888_256x240.png)}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-active .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_2e83ff_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_cd0a0a_256x240.png)}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;-khtml-border-top-right-radius:4px;border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{-moz-border-radius-bottomleft:4px;-webkit-border-bottom-left-radius:4px;-khtml-border-bottom-left-radius:4px;border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{-moz-border-radius-bottomright:4px;-webkit-border-bottom-right-radius:4px;-khtml-border-bottom-right-radius:4px;border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);-moz-border-radius:8px;-khtml-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}
\ No newline at end of file
index 6996eae..765f2c0 100644 (file)
@@ -1,29 +1,6 @@
-/*! jQuery UI - v1.8.21 - 2012-06-05
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.core.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;return!b.href||!g||f.nodeName.toLowerCase()!=="map"?!1:(h=a("img[usemap=#"+g+"]")[0],!!h&&d(h))}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.ui=a.ui||{};if(a.ui.version)return;a.extend(a.ui,{version:"1.8.21",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;return a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0),/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){return a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)}),c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){return c===b?g["inner"+d].call(this):this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){return typeof b!="number"?g["outer"+d].call(this,b):this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!d||!a.element[0].parentNode)return;for(var e=0;e<d.length;e++)a.options[d[e][0]]&&d[e][1].apply(a.element,c)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(b,c){if(a(b).css("overflow")==="hidden")return!1;var d=c&&c==="left"?"scrollLeft":"scrollTop",e=!1;return b[d]>0?!0:(b[d]=1,e=b[d]>0,b[d]=0,e)},isOverAxis:function(a,b,c){return a>b&&a<b+c},isOver:function(b,c,d,e,f,g){return a.ui.isOverAxis(b,d,f)&&a.ui.isOverAxis(c,e,g)}})})(jQuery);;/*! jQuery UI - v1.8.21 - 2012-06-05
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.widget.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){if(a.cleanData){var c=a.cleanData;a.cleanData=function(b){for(var d=0,e;(e=b[d])!=null;d++)try{a(e).triggerHandler("remove")}catch(f){}c(b)}}else{var d=a.fn.remove;a.fn.remove=function(b,c){return this.each(function(){return c||(!b||a.filter(b,[this]).length)&&a("*",this).add([this]).each(function(){try{a(this).triggerHandler("remove")}catch(b){}}),d.call(a(this),b,c)})}}a.widget=function(b,c,d){var e=b.split(".")[0],f;b=b.split(".")[1],f=e+"-"+b,d||(d=c,c=a.Widget),a.expr[":"][f]=function(c){return!!a.data(c,b)},a[e]=a[e]||{},a[e][b]=function(a,b){arguments.length&&this._createWidget(a,b)};var g=new c;g.options=a.extend(!0,{},g.options),a[e][b].prototype=a.extend(!0,g,{namespace:e,widgetName:b,widgetEventPrefix:a[e][b].prototype.widgetEventPrefix||b,widgetBaseClass:f},d),a.widget.bridge(b,a[e][b])},a.widget.bridge=function(c,d){a.fn[c]=function(e){var f=typeof e=="string",g=Array.prototype.slice.call(arguments,1),h=this;return e=!f&&g.length?a.extend.apply(null,[!0,e].concat(g)):e,f&&e.charAt(0)==="_"?h:(f?this.each(function(){var d=a.data(this,c),f=d&&a.isFunction(d[e])?d[e].apply(d,g):d;if(f!==d&&f!==b)return h=f,!1}):this.each(function(){var b=a.data(this,c);b?b.option(e||{})._init():a.data(this,c,new d(e,this))}),h)}},a.Widget=function(a,b){arguments.length&&this._createWidget(a,b)},a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:!1},_createWidget:function(b,c){a.data(c,this.widgetName,this),this.element=a(c),this.options=a.extend(!0,{},this.options,this._getCreateOptions(),b);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()}),this._create(),this._trigger("create"),this._init()},_getCreateOptions:function(){return a.metadata&&a.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName),this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled "+"ui-state-disabled")},widget:function(){return this.element},option:function(c,d){var e=c;if(arguments.length===0)return a.extend({},this.options);if(typeof c=="string"){if(d===b)return this.options[c];e={},e[c]=d}return this._setOptions(e),this},_setOptions:function(b){var c=this;return a.each(b,function(a,b){c._setOption(a,b)}),this},_setOption:function(a,b){return this.options[a]=b,a==="disabled"&&this.widget()[b?"addClass":"removeClass"](this.widgetBaseClass+"-disabled"+" "+"ui-state-disabled").attr("aria-disabled",b),this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_trigger:function(b,c,d){var e,f,g=this.options[b];d=d||{},c=a.Event(c),c.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase(),c.target=this.element[0],f=c.originalEvent;if(f)for(e in f)e in c||(c[e]=f[e]);return this.element.trigger(c,d),!(a.isFunction(g)&&g.call(this.element[0],c,d)===!1||c.isDefaultPrevented())}}})(jQuery);;/*! jQuery UI - v1.8.21 - 2012-06-05
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.mouse.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){var c=!1;a(document).mouseup(function(a){c=!1}),a.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var b=this;this.element.bind("mousedown."+this.widgetName,function(a){return b._mouseDown(a)}).bind("click."+this.widgetName,function(c){if(!0===a.data(c.target,b.widgetName+".preventClickEvent"))return a.removeData(c.target,b.widgetName+".preventClickEvent"),c.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(b){if(c)return;this._mouseStarted&&this._mouseUp(b),this._mouseDownEvent=b;var d=this,e=b.which==1,f=typeof this.options.cancel=="string"&&b.target.nodeName?a(b.target).closest(this.options.cancel).length:!1;if(!e||f||!this._mouseCapture(b))return!0;this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){d.mouseDelayMet=!0},this.options.delay));if(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)){this._mouseStarted=this._mouseStart(b)!==!1;if(!this._mouseStarted)return b.preventDefault(),!0}return!0===a.data(b.target,this.widgetName+".preventClickEvent")&&a.removeData(b.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(a){return d._mouseMove(a)},this._mouseUpDelegate=function(a){return d._mouseUp(a)},a(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),b.preventDefault(),c=!0,!0},_mouseMove:function(b){return!a.browser.msie||document.documentMode>=9||!!b.button?this._mouseStarted?(this._mouseDrag(b),b.preventDefault()):(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b)),!this._mouseStarted):this._mouseUp(b)},_mouseUp:function(b){return a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b)),!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery);;/*! jQuery UI - v1.8.21 - 2012-06-05
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.position.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){a.ui=a.ui||{};var c=/left|center|right/,d=/top|center|bottom/,e="center",f={},g=a.fn.position,h=a.fn.offset;a.fn.position=function(b){if(!b||!b.of)return g.apply(this,arguments);b=a.extend({},b);var h=a(b.of),i=h[0],j=(b.collision||"flip").split(" "),k=b.offset?b.offset.split(" "):[0,0],l,m,n;return i.nodeType===9?(l=h.width(),m=h.height(),n={top:0,left:0}):i.setTimeout?(l=h.width(),m=h.height(),n={top:h.scrollTop(),left:h.scrollLeft()}):i.preventDefault?(b.at="left top",l=m=0,n={top:b.of.pageY,left:b.of.pageX}):(l=h.outerWidth(),m=h.outerHeight(),n=h.offset()),a.each(["my","at"],function(){var a=(b[this]||"").split(" ");a.length===1&&(a=c.test(a[0])?a.concat([e]):d.test(a[0])?[e].concat(a):[e,e]),a[0]=c.test(a[0])?a[0]:e,a[1]=d.test(a[1])?a[1]:e,b[this]=a}),j.length===1&&(j[1]=j[0]),k[0]=parseInt(k[0],10)||0,k.length===1&&(k[1]=k[0]),k[1]=parseInt(k[1],10)||0,b.at[0]==="right"?n.left+=l:b.at[0]===e&&(n.left+=l/2),b.at[1]==="bottom"?n.top+=m:b.at[1]===e&&(n.top+=m/2),n.left+=k[0],n.top+=k[1],this.each(function(){var c=a(this),d=c.outerWidth(),g=c.outerHeight(),h=parseInt(a.curCSS(this,"marginLeft",!0))||0,i=parseInt(a.curCSS(this,"marginTop",!0))||0,o=d+h+(parseInt(a.curCSS(this,"marginRight",!0))||0),p=g+i+(parseInt(a.curCSS(this,"marginBottom",!0))||0),q=a.extend({},n),r;b.my[0]==="right"?q.left-=d:b.my[0]===e&&(q.left-=d/2),b.my[1]==="bottom"?q.top-=g:b.my[1]===e&&(q.top-=g/2),f.fractions||(q.left=Math.round(q.left),q.top=Math.round(q.top)),r={left:q.left-h,top:q.top-i},a.each(["left","top"],function(c,e){a.ui.position[j[c]]&&a.ui.position[j[c]][e](q,{targetWidth:l,targetHeight:m,elemWidth:d,elemHeight:g,collisionPosition:r,collisionWidth:o,collisionHeight:p,offset:k,my:b.my,at:b.at})}),a.fn.bgiframe&&c.bgiframe(),c.offset(a.extend(q,{using:b.using}))})},a.ui.position={fit:{left:function(b,c){var d=a(window),e=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft();b.left=e>0?b.left-e:Math.max(b.left-c.collisionPosition.left,b.left)},top:function(b,c){var d=a(window),e=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop();b.top=e>0?b.top-e:Math.max(b.top-c.collisionPosition.top,b.top)}},flip:{left:function(b,c){if(c.at[0]===e)return;var d=a(window),f=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft(),g=c.my[0]==="left"?-c.elemWidth:c.my[0]==="right"?c.elemWidth:0,h=c.at[0]==="left"?c.targetWidth:-c.targetWidth,i=-2*c.offset[0];b.left+=c.collisionPosition.left<0?g+h+i:f>0?g+h+i:0},top:function(b,c){if(c.at[1]===e)return;var d=a(window),f=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop(),g=c.my[1]==="top"?-c.elemHeight:c.my[1]==="bottom"?c.elemHeight:0,h=c.at[1]==="top"?c.targetHeight:-c.targetHeight,i=-2*c.offset[1];b.top+=c.collisionPosition.top<0?g+h+i:f>0?g+h+i:0}}},a.offset.setOffset||(a.offset.setOffset=function(b,c){/static/.test(a.curCSS(b,"position"))&&(b.style.position="relative");var d=a(b),e=d.offset(),f=parseInt(a.curCSS(b,"top",!0),10)||0,g=parseInt(a.curCSS(b,"left",!0),10)||0,h={top:c.top-e.top+f,left:c.left-e.left+g};"using"in c?c.using.call(b,h):d.css(h)},a.fn.offset=function(b){var c=this[0];return!c||!c.ownerDocument?null:b?a.isFunction(b)?this.each(function(c){a(this).offset(b.call(this,c,a(this).offset()))}):this.each(function(){a.offset.setOffset(this,b)}):h.call(this)}),function(){var b=document.getElementsByTagName("body")[0],c=document.createElement("div"),d,e,g,h,i;d=document.createElement(b?"div":"body"),g={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},b&&a.extend(g,{position:"absolute",left:"-1000px",top:"-1000px"});for(var j in g)d.style[j]=g[j];d.appendChild(c),e=b||document.documentElement,e.insertBefore(d,e.firstChild),c.style.cssText="position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;",h=a(c).offset(function(a,b){return b}).offset(),d.innerHTML="",e.removeChild(d),i=h.top+h.left+(b?2e3:0),f.fractions=i>21&&i<22}()})(jQuery);;/*! jQuery UI - v1.8.21 - 2012-06-05
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.autocomplete.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){var c=0;a.widget("ui.autocomplete",{options:{appendTo:"body",autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},pending:0,_create:function(){var b=this,c=this.element[0].ownerDocument,d;this.isMultiLine=this.element.is("textarea"),this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(b.options.disabled||b.element.propAttr("readOnly"))return;d=!1;var e=a.ui.keyCode;switch(c.keyCode){case e.PAGE_UP:b._move("previousPage",c);break;case e.PAGE_DOWN:b._move("nextPage",c);break;case e.UP:b._keyEvent("previous",c);break;case e.DOWN:b._keyEvent("next",c);break;case e.ENTER:case e.NUMPAD_ENTER:b.menu.active&&(d=!0,c.preventDefault());case e.TAB:if(!b.menu.active)return;b.menu.select(c);break;case e.ESCAPE:b.element.val(b.term),b.close(c);break;default:clearTimeout(b.searching),b.searching=setTimeout(function(){b.term!=b.element.val()&&(b.selectedItem=null,b.search(null,c))},b.options.delay)}}).bind("keypress.autocomplete",function(a){d&&(d=!1,a.preventDefault())}).bind("focus.autocomplete",function(){if(b.options.disabled)return;b.selectedItem=null,b.previous=b.element.val()}).bind("blur.autocomplete",function(a){if(b.options.disabled)return;clearTimeout(b.searching),b.closing=setTimeout(function(){b.close(a),b._change(a)},150)}),this._initSource(),this.menu=a("<ul></ul>").addClass("ui-autocomplete").appendTo(a(this.options.appendTo||"body",c)[0]).mousedown(function(c){var d=b.menu.element[0];a(c.target).closest(".ui-menu-item").length||setTimeout(function(){a(document).one("mousedown",function(c){c.target!==b.element[0]&&c.target!==d&&!a.ui.contains(d,c.target)&&b.close()})},1),setTimeout(function(){clearTimeout(b.closing)},13)}).menu({focus:function(a,c){var d=c.item.data("item.autocomplete");!1!==b._trigger("focus",a,{item:d})&&/^key/.test(a.originalEvent.type)&&b.element.val(d.value)},selected:function(a,d){var e=d.item.data("item.autocomplete"),f=b.previous;b.element[0]!==c.activeElement&&(b.element.focus(),b.previous=f,setTimeout(function(){b.previous=f,b.selectedItem=e},1)),!1!==b._trigger("select",a,{item:e})&&b.element.val(e.value),b.term=b.element.val(),b.close(a),b.selectedItem=e},blur:function(a,c){b.menu.element.is(":visible")&&b.element.val()!==b.term&&b.element.val(b.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu"),a.fn.bgiframe&&this.menu.element.bgiframe(),b.beforeunloadHandler=function(){b.element.removeAttr("autocomplete")},a(window).bind("beforeunload",b.beforeunloadHandler)},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup"),this.menu.element.remove(),a(window).unbind("beforeunload",this.beforeunloadHandler),a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments),b==="source"&&this._initSource(),b==="appendTo"&&this.menu.element.appendTo(a(c||"body",this.element[0].ownerDocument)[0]),b==="disabled"&&c&&this.xhr&&this.xhr.abort()},_initSource:function(){var b=this,c,d;a.isArray(this.options.source)?(c=this.options.source,this.source=function(b,d){d(a.ui.autocomplete.filter(c,b.term))}):typeof this.options.source=="string"?(d=this.options.source,this.source=function(c,e){b.xhr&&b.xhr.abort(),b.xhr=a.ajax({url:d,data:c,dataType:"json",success:function(a,b){e(a)},error:function(){e([])}})}):this.source=this.options.source},search:function(a,b){a=a!=null?a:this.element.val(),this.term=this.element.val();if(a.length<this.options.minLength)return this.close(b);clearTimeout(this.closing);if(this._trigger("search",b)===!1)return;return this._search(a)},_search:function(a){this.pending++,this.element.addClass("ui-autocomplete-loading"),this.source({term:a},this._response())},_response:function(){var a=this,b=++c;return function(d){b===c&&a.__response(d),a.pending--,a.pending||a.element.removeClass("ui-autocomplete-loading")}},__response:function(a){!this.options.disabled&&a&&a.length?(a=this._normalize(a),this._suggest(a),this._trigger("open")):this.close()},close:function(a){clearTimeout(this.closing),this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.deactivate(),this._trigger("close",a))},_change:function(a){this.previous!==this.element.val()&&this._trigger("change",a,{item:this.selectedItem})},_normalize:function(b){return b.length&&b[0].label&&b[0].value?b:a.map(b,function(b){return typeof b=="string"?{label:b,value:b}:a.extend({label:b.label||b.value,value:b.value||b.label},b)})},_suggest:function(b){var c=this.menu.element.empty().zIndex(this.element.zIndex()+1);this._renderMenu(c,b),this.menu.deactivate(),this.menu.refresh(),c.show(),this._resizeMenu(),c.position(a.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next(new a.Event("mouseover"))},_resizeMenu:function(){var a=this.menu.element;a.outerWidth(Math.max(a.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(b,c){var d=this;a.each(c,function(a,c){d._renderItem(b,c)})},_renderItem:function(b,c){return a("<li></li>").data("item.autocomplete",c).append(a("<a></a>").text(c.label)).appendTo(b)},_move:function(a,b){if(!this.menu.element.is(":visible")){this.search(null,b);return}if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term),this.menu.deactivate();return}this.menu[a](b)},widget:function(){return this.menu.element},_keyEvent:function(a,b){if(!this.isMultiLine||this.menu.element.is(":visible"))this._move(a,b),b.preventDefault()}}),a.extend(a.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},filter:function(b,c){var d=new RegExp(a.ui.autocomplete.escapeRegex(c),"i");return a.grep(b,function(a){return d.test(a.label||a.value||a)})}})})(jQuery),function(a){a.widget("ui.menu",{_create:function(){var b=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(c){if(!a(c.target).closest(".ui-menu-item a").length)return;c.preventDefault(),b.select(c)}),this.refresh()},refresh:function(){var b=this,c=this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem");c.children("a").addClass("ui-corner-all").attr("tabindex",-1).mouseenter(function(c){b.activate(c,a(this).parent())}).mouseleave(function(){b.deactivate()})},activate:function(a,b){this.deactivate();if(this.hasScroll()){var c=b.offset().top-this.element.offset().top,d=this.element.scrollTop(),e=this.element.height();c<0?this.element.scrollTop(d+c):c>=e&&this.element.scrollTop(d+c-e+b.height())}this.active=b.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end(),this._trigger("focus",a,{item:b})},deactivate:function(){if(!this.active)return;this.active.children("a").removeClass("ui-state-hover").removeAttr("id"),this._trigger("blur"),this.active=null},next:function(a){this.move("next",".ui-menu-item:first",a)},previous:function(a){this.move("prev",".ui-menu-item:last",a)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(a,b,c){if(!this.active){this.activate(c,this.element.children(b));return}var d=this.active[a+"All"](".ui-menu-item").eq(0);d.length?this.activate(c,d):this.activate(c,this.element.children(b))},nextPage:function(b){if(this.hasScroll()){if(!this.active||this.last()){this.activate(b,this.element.children(".ui-menu-item:first"));return}var c=this.active.offset().top,d=this.element.height(),e=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c-d+a(this).height();return b<10&&b>-10});e.length||(e=this.element.children(".ui-menu-item:last")),this.activate(b,e)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.last()?":first":":last"))},previousPage:function(b){if(this.hasScroll()){if(!this.active||this.first()){this.activate(b,this.element.children(".ui-menu-item:last"));return}var c=this.active.offset().top,d=this.element.height(),e=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c+d-a(this).height();return b<10&&b>-10});e.length||(e=this.element.children(".ui-menu-item:first")),this.activate(b,e)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.first()?":last":":first"))},hasScroll:function(){return this.element.height()<this.element[a.fn.prop?"prop":"attr"]("scrollHeight")},select:function(a){this._trigger("selected",a,{item:this.active})}})}(jQuery);;/*! jQuery UI - v1.8.21 - 2012-06-05
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.tabs.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){function e(){return++c}function f(){return++d}var c=0,d=0;a.widget("ui.tabs",{options:{add:null,ajaxOptions:null,cache:!1,cookie:null,collapsible:!1,disable:null,disabled:[],enable:null,event:"click",fx:null,idPrefix:"ui-tabs-",load:null,panelTemplate:"<div></div>",remove:null,select:null,show:null,spinner:"<em>Loading&#8230;</em>",tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},_create:function(){this._tabify(!0)},_setOption:function(a,b){if(a=="selected"){if(this.options.collapsible&&b==this.options.selected)return;this.select(b)}else this.options[a]=b,this._tabify()},_tabId:function(a){return a.title&&a.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+e()},_sanitizeSelector:function(a){return a.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+f());return a.cookie.apply(null,[b].concat(a.makeArray(arguments)))},_ui:function(a,b){return{tab:a,panel:b,index:this.anchors.index(a)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b=a(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(c){function m(b,c){b.css("display",""),!a.support.opacity&&c.opacity&&b[0].style.removeAttribute("filter")}var d=this,e=this.options,f=/^#.+/;this.list=this.element.find("ol,ul").eq(0),this.lis=a(" > li:has(a[href])",this.list),this.anchors=this.lis.map(function(){return a("a",this)[0]}),this.panels=a([]),this.anchors.each(function(b,c){var g=a(c).attr("href"),h=g.split("#")[0],i;h&&(h===location.toString().split("#")[0]||(i=a("base")[0])&&h===i.href)&&(g=c.hash,c.href=g);if(f.test(g))d.panels=d.panels.add(d.element.find(d._sanitizeSelector(g)));else if(g&&g!=="#"){a.data(c,"href.tabs",g),a.data(c,"load.tabs",g.replace(/#.*$/,""));var j=d._tabId(c);c.href="#"+j;var k=d.element.find("#"+j);k.length||(k=a(e.panelTemplate).attr("id",j).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(d.panels[b-1]||d.list),k.data("destroy.tabs",!0)),d.panels=d.panels.add(k)}else e.disabled.push(b)}),c?(this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all"),this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"),this.lis.addClass("ui-state-default ui-corner-top"),this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom"),e.selected===b?(location.hash&&this.anchors.each(function(a,b){if(b.hash==location.hash)return e.selected=a,!1}),typeof e.selected!="number"&&e.cookie&&(e.selected=parseInt(d._cookie(),10)),typeof e.selected!="number"&&this.lis.filter(".ui-tabs-selected").length&&(e.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))),e.selected=e.selected||(this.lis.length?0:-1)):e.selected===null&&(e.selected=-1),e.selected=e.selected>=0&&this.anchors[e.selected]||e.selected<0?e.selected:0,e.disabled=a.unique(e.disabled.concat(a.map(this.lis.filter(".ui-state-disabled"),function(a,b){return d.lis.index(a)}))).sort(),a.inArray(e.selected,e.disabled)!=-1&&e.disabled.splice(a.inArray(e.selected,e.disabled),1),this.panels.addClass("ui-tabs-hide"),this.lis.removeClass("ui-tabs-selected ui-state-active"),e.selected>=0&&this.anchors.length&&(d.element.find(d._sanitizeSelector(d.anchors[e.selected].hash)).removeClass("ui-tabs-hide"),this.lis.eq(e.selected).addClass("ui-tabs-selected ui-state-active"),d.element.queue("tabs",function(){d._trigger("show",null,d._ui(d.anchors[e.selected],d.element.find(d._sanitizeSelector(d.anchors[e.selected].hash))[0]))}),this.load(e.selected)),a(window).bind("unload",function(){d.lis.add(d.anchors).unbind(".tabs"),d.lis=d.anchors=d.panels=null})):e.selected=this.lis.index(this.lis.filter(".ui-tabs-selected")),this.element[e.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible"),e.cookie&&this._cookie(e.selected,e.cookie);for(var g=0,h;h=this.lis[g];g++)a(h)[a.inArray(g,e.disabled)!=-1&&!a(h).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");e.cache===!1&&this.anchors.removeData("cache.tabs"),this.lis.add(this.anchors).unbind(".tabs");if(e.event!=="mouseover"){var i=function(a,b){b.is(":not(.ui-state-disabled)")&&b.addClass("ui-state-"+a)},j=function(a,b){b.removeClass("ui-state-"+a)};this.lis.bind("mouseover.tabs",function(){i("hover",a(this))}),this.lis.bind("mouseout.tabs",function(){j("hover",a(this))}),this.anchors.bind("focus.tabs",function(){i("focus",a(this).closest("li"))}),this.anchors.bind("blur.tabs",function(){j("focus",a(this).closest("li"))})}var k,l;e.fx&&(a.isArray(e.fx)?(k=e.fx[0],l=e.fx[1]):k=l=e.fx);var n=l?function(b,c){a(b).closest("li").addClass("ui-tabs-selected ui-state-active"),c.hide().removeClass("ui-tabs-hide").animate(l,l.duration||"normal",function(){m(c,l),d._trigger("show",null,d._ui(b,c[0]))})}:function(b,c){a(b).closest("li").addClass("ui-tabs-selected ui-state-active"),c.removeClass("ui-tabs-hide"),d._trigger("show",null,d._ui(b,c[0]))},o=k?function(a,b){b.animate(k,k.duration||"normal",function(){d.lis.removeClass("ui-tabs-selected ui-state-active"),b.addClass("ui-tabs-hide"),m(b,k),d.element.dequeue("tabs")})}:function(a,b,c){d.lis.removeClass("ui-tabs-selected ui-state-active"),b.addClass("ui-tabs-hide"),d.element.dequeue("tabs")};this.anchors.bind(e.event+".tabs",function(){var b=this,c=a(b).closest("li"),f=d.panels.filter(":not(.ui-tabs-hide)"),g=d.element.find(d._sanitizeSelector(b.hash));if(c.hasClass("ui-tabs-selected")&&!e.collapsible||c.hasClass("ui-state-disabled")||c.hasClass("ui-state-processing")||d.panels.filter(":animated").length||d._trigger("select",null,d._ui(this,g[0]))===!1)return this.blur(),!1;e.selected=d.anchors.index(this),d.abort();if(e.collapsible){if(c.hasClass("ui-tabs-selected"))return e.selected=-1,e.cookie&&d._cookie(e.selected,e.cookie),d.element.queue("tabs",function(){o(b,f)}).dequeue("tabs"),this.blur(),!1;if(!f.length)return e.cookie&&d._cookie(e.selected,e.cookie),d.element.queue("tabs",function(){n(b,g)}),d.load(d.anchors.index(this)),this.blur(),!1}e.cookie&&d._cookie(e.selected,e.cookie);if(g.length)f.length&&d.element.queue("tabs",function(){o(b,f)}),d.element.queue("tabs",function(){n(b,g)}),d.load(d.anchors.index(this));else throw"jQuery UI Tabs: Mismatching fragment identifier.";a.browser.msie&&this.blur()}),this.anchors.bind("click.tabs",function(){return!1})},_getIndex:function(a){return typeof a=="string"&&(a=this.anchors.index(this.anchors.filter("[href$='"+a+"']"))),a},destroy:function(){var b=this.options;return this.abort(),this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs"),this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"),this.anchors.each(function(){var b=a.data(this,"href.tabs");b&&(this.href=b);var c=a(this).unbind(".tabs");a.each(["href","load","cache"],function(a,b){c.removeData(b+".tabs")})}),this.lis.unbind(".tabs").add(this.panels).each(function(){a.data(this,"destroy.tabs")?a(this).remove():a(this).removeClass(["ui-state-default","ui-corner-top","ui-tabs-selected","ui-state-active","ui-state-hover","ui-state-focus","ui-state-disabled","ui-tabs-panel","ui-widget-content","ui-corner-bottom","ui-tabs-hide"].join(" "))}),b.cookie&&this._cookie(null,b.cookie),this},add:function(c,d,e){e===b&&(e=this.anchors.length);var f=this,g=this.options,h=a(g.tabTemplate.replace(/#\{href\}/g,c).replace(/#\{label\}/g,d)),i=c.indexOf("#")?this._tabId(a("a",h)[0]):c.replace("#","");h.addClass("ui-state-default ui-corner-top").data("destroy.tabs",!0);var j=f.element.find("#"+i);return j.length||(j=a(g.panelTemplate).attr("id",i).data("destroy.tabs",!0)),j.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide"),e>=this.lis.length?(h.appendTo(this.list),j.appendTo(this.list[0].parentNode)):(h.insertBefore(this.lis[e]),j.insertBefore(this.panels[e])),g.disabled=a.map(g.disabled,function(a,b){return a>=e?++a:a}),this._tabify(),this.anchors.length==1&&(g.selected=0,h.addClass("ui-tabs-selected ui-state-active"),j.removeClass("ui-tabs-hide"),this.element.queue("tabs",function(){f._trigger("show",null,f._ui(f.anchors[0],f.panels[0]))}),this.load(0)),this._trigger("add",null,this._ui(this.anchors[e],this.panels[e])),this},remove:function(b){b=this._getIndex(b);var c=this.options,d=this.lis.eq(b).remove(),e=this.panels.eq(b).remove();return d.hasClass("ui-tabs-selected")&&this.anchors.length>1&&this.select(b+(b+1<this.anchors.length?1:-1)),c.disabled=a.map(a.grep(c.disabled,function(a,c){return a!=b}),function(a,c){return a>=b?--a:a}),this._tabify(),this._trigger("remove",null,this._ui(d.find("a")[0],e[0])),this},enable:function(b){b=this._getIndex(b);var c=this.options;if(a.inArray(b,c.disabled)==-1)return;return this.lis.eq(b).removeClass("ui-state-disabled"),c.disabled=a.grep(c.disabled,function(a,c){return a!=b}),this._trigger("enable",null,this._ui(this.anchors[b],this.panels[b])),this},disable:function(a){a=this._getIndex(a);var b=this,c=this.options;return a!=c.selected&&(this.lis.eq(a).addClass("ui-state-disabled"),c.disabled.push(a),c.disabled.sort(),this._trigger("disable",null,this._ui(this.anchors[a],this.panels[a]))),this},select:function(a){a=this._getIndex(a);if(a==-1)if(this.options.collapsible&&this.options.selected!=-1)a=this.options.selected;else return this;return this.anchors.eq(a).trigger(this.options.event+".tabs"),this},load:function(b){b=this._getIndex(b);var c=this,d=this.options,e=this.anchors.eq(b)[0],f=a.data(e,"load.tabs");this.abort();if(!f||this.element.queue("tabs").length!==0&&a.data(e,"cache.tabs")){this.element.dequeue("tabs");return}this.lis.eq(b).addClass("ui-state-processing");if(d.spinner){var g=a("span",e);g.data("label.tabs",g.html()).html(d.spinner)}return this.xhr=a.ajax(a.extend({},d.ajaxOptions,{url:f,success:function(f,g){c.element.find(c._sanitizeSelector(e.hash)).html(f),c._cleanup(),d.cache&&a.data(e,"cache.tabs",!0),c._trigger("load",null,c._ui(c.anchors[b],c.panels[b]));try{d.ajaxOptions.success(f,g)}catch(h){}},error:function(a,f,g){c._cleanup(),c._trigger("load",null,c._ui(c.anchors[b],c.panels[b]));try{d.ajaxOptions.error(a,f,b,e)}catch(g){}}})),c.element.dequeue("tabs"),this},abort:function(){return this.element.queue([]),this.panels.stop(!1,!0),this.element.queue("tabs",this.element.queue("tabs").splice(-2,2)),this.xhr&&(this.xhr.abort(),delete this.xhr),this._cleanup(),this},url:function(a,b){return this.anchors.eq(a).removeData("cache.tabs").data("load.tabs",b),this},length:function(){return this.anchors.length}}),a.extend(a.ui.tabs,{version:"1.8.21"}),a.extend(a.ui.tabs.prototype,{rotation:null,rotate:function(a,b){var c=this,d=this.options,e=c._rotate||(c._rotate=function(b){clearTimeout(c.rotation),c.rotation=setTimeout(function(){var a=d.selected;c.select(++a<c.anchors.length?a:0)},a),b&&b.stopPropagation()}),f=c._unrotate||(c._unrotate=b?function(a){e()}:function(a){a.clientX&&c.rotate(null)});return a?(this.element.bind("tabsshow",e),this.anchors.bind(d.event+".tabs",f),e()):(clearTimeout(c.rotation),this.element.unbind("tabsshow",e),this.anchors.unbind(d.event+".tabs",f),delete this._rotate,delete this._unrotate),this}})})(jQuery);;/*! jQuery UI - v1.8.21 - 2012-06-05
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.datepicker.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function($,undefined){function Datepicker(){this.debug=!1,this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},$.extend(this._defaults,this.regional[""]),this.dpDiv=bindHover($('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}function bindHover(a){var b="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return a.bind("mouseout",function(a){var c=$(a.target).closest(b);if(!c.length)return;c.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(c){var d=$(c.target).closest(b);if($.datepicker._isDisabledDatepicker(instActive.inline?a.parent()[0]:instActive.input[0])||!d.length)return;d.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),d.addClass("ui-state-hover"),d.hasClass("ui-datepicker-prev")&&d.addClass("ui-datepicker-prev-hover"),d.hasClass("ui-datepicker-next")&&d.addClass("ui-datepicker-next-hover")})}function extendRemove(a,b){$.extend(a,b);for(var c in b)if(b[c]==null||b[c]==undefined)a[c]=b[c];return a}function isArray(a){return a&&($.browser.safari&&typeof a=="object"&&a.length||a.constructor&&a.constructor.toString().match(/\Array\(\)/))}$.extend($.ui,{datepicker:{version:"1.8.21"}});var PROP_NAME="datepicker",dpuuid=(new Date).getTime(),instActive;$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){return extendRemove(this._defaults,a||{}),this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase(),inline=nodeName=="div"||nodeName=="span";target.id||(this.uuid+=1,target.id="dp"+this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{}),nodeName=="input"?this._connectDatepicker(target,inst):inline&&this._inlineDatepicker(target,inst)},_newInst:function(a,b){var c=a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1");return{id:c,input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:b?bindHover($('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')):this.dpDiv}},_connectDatepicker:function(a,b){var c=$(a);b.append=$([]),b.trigger=$([]);if(c.hasClass(this.markerClassName))return;this._attachments(c,b),c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function(a,c,d){b.settings[c]=d}).bind("getData.datepicker",function(a,c){return this._get(b,c)}),this._autoSize(b),$.data(a,PROP_NAME,b),b.settings.disabled&&this._disableDatepicker(a)},_attachments:function(a,b){var c=this._get(b,"appendText"),d=this._get(b,"isRTL");b.append&&b.append.remove(),c&&(b.append=$('<span class="'+this._appendClass+'">'+c+"</span>"),a[d?"before":"after"](b.append)),a.unbind("focus",this._showDatepicker),b.trigger&&b.trigger.remove();var e=this._get(b,"showOn");(e=="focus"||e=="both")&&a.focus(this._showDatepicker);if(e=="button"||e=="both"){var f=this._get(b,"buttonText"),g=this._get(b,"buttonImage");b.trigger=$(this._get(b,"buttonImageOnly")?$("<img/>").addClass(this._triggerClass).attr({src:g,alt:f,title:f}):$('<button type="button"></button>').addClass(this._triggerClass).html(g==""?f:$("<img/>").attr({src:g,alt:f,title:f}))),a[d?"before":"after"](b.trigger),b.trigger.click(function(){return $.datepicker._datepickerShowing&&$.datepicker._lastInput==a[0]?$.datepicker._hideDatepicker():$.datepicker._datepickerShowing&&$.datepicker._lastInput!=a[0]?($.datepicker._hideDatepicker(),$.datepicker._showDatepicker(a[0])):$.datepicker._showDatepicker(a[0]),!1})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var d=function(a){var b=0,c=0;for(var d=0;d<a.length;d++)a[d].length>b&&(b=a[d].length,c=d);return c};b.setMonth(d(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort"))),b.setDate(d(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a,b){var c=$(a);if(c.hasClass(this.markerClassName))return;c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(a,c,d){b.settings[c]=d}).bind("getData.datepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b),this._setDate(b,this._getDefaultDate(b),!0),this._updateDatepicker(b),this._updateAlternate(b),b.settings.disabled&&this._disableDatepicker(a),b.dpDiv.css("display","block")},_dialogDatepicker:function(a,b,c,d,e){var f=this._dialogInst;if(!f){this.uuid+=1;var g="dp"+this.uuid;this._dialogInput=$('<input type="text" id="'+g+'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>'),this._dialogInput.keydown(this._doKeyDown),$("body").append(this._dialogInput),f=this._dialogInst=this._newInst(this._dialogInput,!1),f.settings={},$.data(this._dialogInput[0],PROP_NAME,f)}extendRemove(f.settings,d||{}),b=b&&b.constructor==Date?this._formatDate(f,b):b,this._dialogInput.val(b),this._pos=e?e.length?e:[e.pageX,e.pageY]:null;if(!this._pos){var h=document.documentElement.clientWidth,i=document.documentElement.clientHeight,j=document.documentElement.scrollLeft||document.body.scrollLeft,k=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[h/2-100+j,i/2-150+k]}return this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),f.settings.onSelect=c,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),$.blockUI&&$.blockUI(this.dpDiv),$.data(this._dialogInput[0],PROP_NAME,f),this},_destroyDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!b.hasClass(this.markerClassName))return;var d=a.nodeName.toLowerCase();$.removeData(a,PROP_NAME),d=="input"?(c.append.remove(),c.trigger.remove(),b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):(d=="div"||d=="span")&&b.removeClass(this.markerClassName).empty()},_enableDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!b.hasClass(this.markerClassName))return;var d=a.nodeName.toLowerCase();if(d=="input")a.disabled=!1,c.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""});else if(d=="div"||d=="span"){var e=b.children("."+this._inlineClass);e.children().removeClass("ui-state-disabled"),e.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b})},_disableDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!b.hasClass(this.markerClassName))return;var d=a.nodeName.toLowerCase();if(d=="input")a.disabled=!0,c.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"});else if(d=="div"||d=="span"){var e=b.children("."+this._inlineClass);e.children().addClass("ui-state-disabled"),e.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b}),this._disabledInputs[this._disabledInputs.length]=a},_isDisabledDatepicker:function(a){if(!a)return!1;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return!0;return!1},_getInst:function(a){try{return $.data(a,PROP_NAME)}catch(b){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(a,b,c){var d=this._getInst(a);if(arguments.length==2&&typeof b=="string")return b=="defaults"?$.extend({},$.datepicker._defaults):d?b=="all"?$.extend({},d.settings):this._get(d,b):null;var e=b||{};typeof b=="string"&&(e={},e[b]=c);if(d){this._curInst==d&&this._hideDatepicker();var f=this._getDateDatepicker(a,!0),g=this._getMinMaxDate(d,"min"),h=this._getMinMaxDate(d,"max");extendRemove(d.settings,e),g!==null&&e.dateFormat!==undefined&&e.minDate===undefined&&(d.settings.minDate=this._formatDate(d,g)),h!==null&&e.dateFormat!==undefined&&e.maxDate===undefined&&(d.settings.maxDate=this._formatDate(d,h)),this._attachments($(a),d),this._autoSize(d),this._setDate(d,f),this._updateAlternate(d),this._updateDatepicker(d)}},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){var b=this._getInst(a);b&&this._updateDatepicker(b)},_setDateDatepicker:function(a,b){var c=this._getInst(a);c&&(this._setDate(c,b),this._updateDatepicker(c),this._updateAlternate(c))},_getDateDatepicker:function(a,b){var c=this._getInst(a);return c&&!c.inline&&this._setDateFromField(c,b),c?this._getDate(c):null},_doKeyDown:function(a){var b=$.datepicker._getInst(a.target),c=!0,d=b.dpDiv.is(".ui-datepicker-rtl");b._keyEvent=!0;if($.datepicker._datepickerShowing)switch(a.keyCode){case 9:$.datepicker._hideDatepicker(),c=!1;break;case 13:var e=$("td."+$.datepicker._dayOverClass+":not(."+$.datepicker._currentClass+")",b.dpDiv);e[0]&&$.datepicker._selectDay(a.target,b.selectedMonth,b.selectedYear,e[0]);var f=$.datepicker._get(b,"onSelect");if(f){var g=$.datepicker._formatDate(b);f.apply(b.input?b.input[0]:null,[g,b])}else $.datepicker._hideDatepicker();return!1;case 27:$.datepicker._hideDatepicker();break;case 33:$.datepicker._adjustDate(a.target,a.ctrlKey?-$.datepicker._get(b,"stepBigMonths"):-$.datepicker._get(b,"stepMonths"),"M");break;case 34:$.datepicker._adjustDate(a.target,a.ctrlKey?+$.datepicker._get(b,"stepBigMonths"):+$.datepicker._get(b,"stepMonths"),"M");break;case 35:(a.ctrlKey||a.metaKey)&&$.datepicker._clearDate(a.target),c=a.ctrlKey||a.metaKey;break;case 36:(a.ctrlKey||a.metaKey)&&$.datepicker._gotoToday(a.target),c=a.ctrlKey||a.metaKey;break;case 37:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,d?1:-1,"D"),c=a.ctrlKey||a.metaKey,a.originalEvent.altKey&&$.datepicker._adjustDate(a.target,a.ctrlKey?-$.datepicker._get(b,"stepBigMonths"):-$.datepicker._get(b,"stepMonths"),"M");break;case 38:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,-7,"D"),c=a.ctrlKey||a.metaKey;break;case 39:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,d?-1:1,"D"),c=a.ctrlKey||a.metaKey,a.originalEvent.altKey&&$.datepicker._adjustDate(a.target,a.ctrlKey?+$.datepicker._get(b,"stepBigMonths"):+$.datepicker._get(b,"stepMonths"),"M");break;case 40:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,7,"D"),c=a.ctrlKey||a.metaKey;break;default:c=!1}else a.keyCode==36&&a.ctrlKey?$.datepicker._showDatepicker(this):c=!1;c&&(a.preventDefault(),a.stopPropagation())},_doKeyPress:function(a){var b=$.datepicker._getInst(a.target);if($.datepicker._get(b,"constrainInput")){var c=$.datepicker._possibleChars($.datepicker._get(b,"dateFormat")),d=String.fromCharCode(a.charCode==undefined?a.keyCode:a.charCode);return a.ctrlKey||a.metaKey||d<" "||!c||c.indexOf(d)>-1}},_doKeyUp:function(a){var b=$.datepicker._getInst(a.target);if(b.input.val()!=b.lastVal)try{var c=$.datepicker.parseDate($.datepicker._get(b,"dateFormat"),b.input?b.input.val():null,$.datepicker._getFormatConfig(b));c&&($.datepicker._setDateFromField(b),$.datepicker._updateAlternate(b),$.datepicker._updateDatepicker(b))}catch(d){$.datepicker.log(d)}return!0},_showDatepicker:function(a){a=a.target||a,a.nodeName.toLowerCase()!="input"&&(a=$("input",a.parentNode)[0]);if($.datepicker._isDisabledDatepicker(a)||$.datepicker._lastInput==a)return;var b=$.datepicker._getInst(a);$.datepicker._curInst&&$.datepicker._curInst!=b&&($.datepicker._curInst.dpDiv.stop(!0,!0),b&&$.datepicker._datepickerShowing&&$.datepicker._hideDatepicker($.datepicker._curInst.input[0]));var c=$.datepicker._get(b,"beforeShow"),d=c?c.apply(a,[a,b]):{};if(d===!1)return;extendRemove(b.settings,d),b.lastVal=null,$.datepicker._lastInput=a,$.datepicker._setDateFromField(b),$.datepicker._inDialog&&(a.value=""),$.datepicker._pos||($.datepicker._pos=$.datepicker._findPos(a),$.datepicker._pos[1]+=a.offsetHeight);var e=!1;$(a).parents().each(function(){return e|=$(this).css("position")=="fixed",!e}),e&&$.browser.opera&&($.datepicker._pos[0]-=document.documentElement.scrollLeft,$.datepicker._pos[1]-=document.documentElement.scrollTop);var f={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null,b.dpDiv.empty(),b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.datepicker._updateDatepicker(b),f=$.datepicker._checkOffset(b,f,e),b.dpDiv.css({position:$.datepicker._inDialog&&$.blockUI?"static":e?"fixed":"absolute",display:"none",left:f.left+"px",top:f.top+"px"});if(!b.inline){var g=$.datepicker._get(b,"showAnim"),h=$.datepicker._get(b,"duration"),i=function(){var a=b.dpDiv.find("iframe.ui-datepicker-cover");if(!!a.length){var c=$.datepicker._getBorders(b.dpDiv);a.css({left:-c[0],top:-c[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex($(a).zIndex()+1),$.datepicker._datepickerShowing=!0,$.effects&&$.effects[g]?b.dpDiv.show(g,$.datepicker._get(b,"showOptions"),h,i):b.dpDiv[g||"show"](g?h:null,i),(!g||!h)&&i(),b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus(),$.datepicker._curInst=b}},_updateDatepicker:function(a){var b=this;b.maxRows=4;var c=$.datepicker._getBorders(a.dpDiv);instActive=a,a.dpDiv.empty().append(this._generateHTML(a));var d=a.dpDiv.find("iframe.ui-datepicker-cover");!d.length||d.css({left:-c[0],top:-c[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()}),a.dpDiv.find("."+this._dayOverClass+" a").mouseover();var e=this._getNumberOfMonths(a),f=e[1],g=17;a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),f>1&&a.dpDiv.addClass("ui-datepicker-multi-"+f).css("width",g*f+"em"),a.dpDiv[(e[0]!=1||e[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi"),a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),a==$.datepicker._curInst&&$.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&&!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var h=a.yearshtml;setTimeout(function(){h===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml),h=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(a){return{thin:1,medium:2,thick:3}[a]||a};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkOffset:function(a,b,c){var d=a.dpDiv.outerWidth(),e=a.dpDiv.outerHeight(),f=a.input?a.input.outerWidth():0,g=a.input?a.input.outerHeight():0,h=document.documentElement.clientWidth+$(document).scrollLeft(),i=document.documentElement.clientHeight+$(document).scrollTop();return b.left-=this._get(a,"isRTL")?d-f:0,b.left-=c&&b.left==a.input.offset().left?$(document).scrollLeft():0,b.top-=c&&b.top==a.input.offset().top+g?$(document).scrollTop():0,b.left-=Math.min(b.left,b.left+d>h&&h>d?Math.abs(b.left+d-h):0),b.top-=Math.min(b.top,b.top+e>i&&i>e?Math.abs(e+g):0),b},_findPos:function(a){var b=this._getInst(a),c=this._get(b,"isRTL");while(a&&(a.type=="hidden"||a.nodeType!=1||$.expr.filters.hidden(a)))a=a[c?"previousSibling":"nextSibling"];var d=$(a).offset();return[d.left,d.top]},_hideDatepicker:function(a){var b=this._curInst;if(!b||a&&b!=$.data(a,PROP_NAME))return;if(this._datepickerShowing){var c=this._get(b,"showAnim"),d=this._get(b,"duration"),e=function(){$.datepicker._tidyDialog(b)};$.effects&&$.effects[c]?b.dpDiv.hide(c,$.datepicker._get(b,"showOptions"),d,e):b.dpDiv[c=="slideDown"?"slideUp":c=="fadeIn"?"fadeOut":"hide"](c?d:null,e),c||e(),this._datepickerShowing=!1;var f=this._get(b,"onClose");f&&f.apply(b.input?b.input[0]:null,[b.input?b.input.val():"",b]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),$.blockUI&&($.unblockUI(),$("body").append(this.dpDiv))),this._inDialog=!1}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(a){if(!$.datepicker._curInst)return;var b=$(a.target),c=$.datepicker._getInst(b[0]);(b[0].id!=$.datepicker._mainDivId&&b.parents("#"+$.datepicker._mainDivId).length==0&&!b.hasClass($.datepicker.markerClassName)&&!b.closest("."+$.datepicker._triggerClass).length&&$.datepicker._datepickerShowing&&(!$.datepicker._inDialog||!$.blockUI)||b.hasClass($.datepicker.markerClassName)&&$.datepicker._curInst!=c)&&$.datepicker._hideDatepicker()},_adjustDate:function(a,b,c){var d=$(a),e=this._getInst(d[0]);if(this._isDisabledDatepicker(d[0]))return;this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"):0),c),this._updateDatepicker(e)},_gotoToday:function(a){var b=$(a),c=this._getInst(b[0]);if(this._get(c,"gotoCurrent")&&c.currentDay)c.selectedDay=c.currentDay,c.drawMonth=c.selectedMonth=c.currentMonth,c.drawYear=c.selectedYear=c.currentYear;else{var d=new Date;c.selectedDay=d.getDate(),c.drawMonth=c.selectedMonth=d.getMonth(),c.drawYear=c.selectedYear=d.getFullYear()}this._notifyChange(c),this._adjustDate(b)},_selectMonthYear:function(a,b,c){var d=$(a),e=this._getInst(d[0]);e["selected"+(c=="M"?"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10),this._notifyChange(e),this._adjustDate(d)},_selectDay:function(a,b,c,d){var e=$(a);if($(d).hasClass(this._unselectableClass)||this._isDisabledDatepicker(e[0]))return;var f=this._getInst(e[0]);f.selectedDay=f.currentDay=$("a",d).html(),f.selectedMonth=f.currentMonth=b,f.selectedYear=f.currentYear=c,this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))},_clearDate:function(a){var b=$(a),c=this._getInst(b[0]);this._selectDate(b,"")},_selectDate:function(a,b){var c=$(a),d=this._getInst(c[0]);b=b!=null?b:this._formatDate(d),d.input&&d.input.val(b),this._updateAlternate(d);var e=this._get(d,"onSelect");e?e.apply(d.input?d.input[0]:null,[b,d]):d.input&&d.input.trigger("change"),d.inline?this._updateDatepicker(d):(this._hideDatepicker(),this._lastInput=d.input[0],typeof d.input[0]!="object"&&d.input.focus(),this._lastInput=null)},_updateAlternate:function(a){var b=this._get(a,"altField");if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),d=this._getDate(a),e=this.formatDate(c,d,this._getFormatConfig(a));$(b).each(function(){$(this).val(e)})}},noWeekends:function(a){var b=a.getDay();return[b>0&&b<6,""]},iso8601Week:function(a){var b=new Date(a.getTime());b.setDate(b.getDate()+4-(b.getDay()||7));var c=b.getTime();return b.setMonth(0),b.setDate(1),Math.floor(Math.round((c-b)/864e5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b=="object"?b.toString():b+"";if(b=="")return null;var d=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;d=typeof d!="string"?d:(new Date).getFullYear()%100+parseInt(d,10);var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,g=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,h=(c?c.monthNames:null)||this._defaults.monthNames,i=-1,j=-1,k=-1,l=-1,m=!1,n=function(b){var c=s+1<a.length&&a.charAt(s+1)==b;return c&&s++,c},o=function(a){var c=n(a),d=a=="@"?14:a=="!"?20:a=="y"&&c?4:a=="o"?3:2,e=new RegExp("^\\d{1,"+d+"}"),f=b.substring(r).match(e);if(!f)throw"Missing number at position "+r;return r+=f[0].length,parseInt(f[0],10)},p=function(a,c,d){var e=$.map(n(a)?d:c,function(a,b){return[[b,a]]}).sort(function(a,b){return-(a[1].length-b[1].length)}),f=-1;$.each(e,function(a,c){var d=c[1];if(b.substr(r,d.length).toLowerCase()==d.toLowerCase())return f=c[0],r+=d.length,!1});if(f!=-1)return f+1;throw"Unknown name at position "+r},q=function(){if(b.charAt(r)!=a.charAt(s))throw"Unexpected literal at position "+r;r++},r=0;for(var s=0;s<a.length;s++)if(m)a.charAt(s)=="'"&&!n("'")?m=!1:q();else switch(a.charAt(s)){case"d":k=o("d");break;case"D":p("D",e,f);break;case"o":l=o("o");break;case"m":j=o("m");break;case"M":j=p("M",g,h);break;case"y":i=o("y");break;case"@":var t=new Date(o("@"));i=t.getFullYear(),j=t.getMonth()+1,k=t.getDate();break;case"!":var t=new Date((o("!")-this._ticksTo1970)/1e4);i=t.getFullYear(),j=t.getMonth()+1,k=t.getDate();break;case"'":n("'")?q():m=!0;break;default:q()}if(r<b.length)throw"Extra/unparsed characters found in date: "+b.substring(r);i==-1?i=(new Date).getFullYear():i<100&&(i+=(new Date).getFullYear()-(new Date).getFullYear()%100+(i<=d?0:-100));if(l>-1){j=1,k=l;do{var u=this._getDaysInMonth(i,j-1);if(k<=u)break;j++,k-=u}while(!0)}var t=this._daylightSavingAdjust(new Date(i,j-1,k));if(t.getFullYear()!=i||t.getMonth()+1!=j||t.getDate()!=k)throw"Invalid date";return t},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1e7,formatDate:function(a,b,c){if(!b)return"";var d=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,e=(c?c.dayNames:null)||this._defaults.dayNames,f=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,g=(c?c.monthNames:null)||this._defaults.monthNames,h=function(b){var c=m+1<a.length&&a.charAt(m+1)==b;return c&&m++,c},i=function(a,b,c){var d=""+b;if(h(a))while(d.length<c)d="0"+d;return d},j=function(a,b,c,d){return h(a)?d[b]:c[b]},k="",l=!1;if(b)for(var m=0;m<a.length;m++)if(l)a.charAt(m)=="'"&&!h("'")?l=!1:k+=a.charAt(m);else switch(a.charAt(m)){case"d":k+=i("d",b.getDate(),2);break;case"D":k+=j("D",b.getDay(),d,e);break;case"o":k+=i("o",Math.round(((new Date(b.getFullYear(),b.getMonth(),b.getDate())).getTime()-(new Date(b.getFullYear(),0,0)).getTime())/864e5),3);break;case"m":k+=i("m",b.getMonth()+1,2);break;case"M":k+=j("M",b.getMonth(),f,g);break;case"y":k+=h("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case"@":k+=b.getTime();break;case"!":k+=b.getTime()*1e4+this._ticksTo1970;break;case"'":h("'")?k+="'":l=!0;break;default:k+=a.charAt(m)}return k},_possibleChars:function(a){var b="",c=!1,d=function(b){var c=e+1<a.length&&a.charAt(e+1)==b;return c&&e++,c};for(var e=0;e<a.length;e++)if(c)a.charAt(e)=="'"&&!d("'")?c=!1:b+=a.charAt(e);else switch(a.charAt(e)){case"d":case"m":case"y":case"@":b+="0123456789";break;case"D":case"M":return null;case"'":d("'")?b+="'":c=!0;break;default:b+=a.charAt(e)}return b},_get:function(a,b){return a.settings[b]!==undefined?a.settings[b]:this._defaults[b]},_setDateFromField:function(a,b){if(a.input.val()==a.lastVal)return;var c=this._get(a,"dateFormat"),d=a.lastVal=a.input?a.input.val():null,e,f;e=f=this._getDefaultDate(a);var g=this._getFormatConfig(a);try{e=this.parseDate(c,d,g)||f}catch(h){this.log(h),d=b?"":d}a.selectedDay=e.getDate(),a.drawMonth=a.selectedMonth=e.getMonth(),a.drawYear=a.selectedYear=e.getFullYear(),a.currentDay=d?e.getDate():0,a.currentMonth=d?e.getMonth():0,a.currentYear=d?e.getFullYear():0,this._adjustInstDate(a)},_getDefaultDate:function(a){return this._restrictMinMax(a,this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(a,b,c){var d=function(a){var b=new Date;return b.setDate(b.getDate()+a),b},e=function(b){try{return $.datepicker.parseDate($.datepicker._get(a,"dateFormat"),b,$.datepicker._getFormatConfig(a))}catch(c){}var d=(b.toLowerCase().match(/^c/)?$.datepicker._getDate(a):null)||new Date,e=d.getFullYear(),f=d.getMonth(),g=d.getDate(),h=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,i=h.exec(b);while(i){switch(i[2]||"d"){case"d":case"D":g+=parseInt(i[1],10);break;case"w":case"W":g+=parseInt(i[1],10)*7;break;case"m":case"M":f+=parseInt(i[1],10),g=Math.min(g,$.datepicker._getDaysInMonth(e,f));break;case"y":case"Y":e+=parseInt(i[1],10),g=Math.min(g,$.datepicker._getDaysInMonth(e,f))}i=h.exec(b)}return new Date(e,f,g)},f=b==null||b===""?c:typeof b=="string"?e(b):typeof b=="number"?isNaN(b)?c:d(b):new Date(b.getTime());return f=f&&f.toString()=="Invalid Date"?c:f,f&&(f.setHours(0),f.setMinutes(0),f.setSeconds(0),f.setMilliseconds(0)),this._daylightSavingAdjust(f)},_daylightSavingAdjust:function(a){return a?(a.setHours(a.getHours()>12?a.getHours()+2:0),a):null},_setDate:function(a,b,c){var d=!b,e=a.selectedMonth,f=a.selectedYear,g=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=g.getDate(),a.drawMonth=a.selectedMonth=a.currentMonth=g.getMonth(),a.drawYear=a.selectedYear=a.currentYear=g.getFullYear(),(e!=a.selectedMonth||f!=a.selectedYear)&&!c&&this._notifyChange(a),this._adjustInstDate(a),a.input&&a.input.val(d?"":this._formatDate(a))},_getDate:function(a){var b=!a.currentYear||a.input&&a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return b},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),d=this._get(a,"showButtonPanel"),e=this._get(a,"hideIfNoPrevNext"),f=this._get(a,"navigationAsDateFormat"),g=this._getNumberOfMonths(a),h=this._get(a,"showCurrentAtPos"),i=this._get(a,"stepMonths"),j=g[0]!=1||g[1]!=1,k=this._daylightSavingAdjust(a.currentDay?new Date(a.currentYear,a.currentMonth,a.currentDay):new Date(9999,9,9)),l=this._getMinMaxDate(a,"min"),m=this._getMinMaxDate(a,"max"),n=a.drawMonth-h,o=a.drawYear;n<0&&(n+=12,o--);if(m){var p=this._daylightSavingAdjust(new Date(m.getFullYear(),m.getMonth()-g[0]*g[1]+1,m.getDate()));p=l&&p<l?l:p;while(this._daylightSavingAdjust(new Date(o,n,1))>p)n--,n<0&&(n=11,o--)}a.drawMonth=n,a.drawYear=o;var q=this._get(a,"prevText");q=f?this.formatDate(q,this._daylightSavingAdjust(new Date(o,n-i,1)),this._getFormatConfig(a)):q;var r=this._canAdjustMonth(a,-1,o,n)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._adjustDate('#"+a.id+"', -"+i+", 'M');\""+' title="'+q+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+q+"</span></a>":e?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+q+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+q+"</span></a>",s=this._get(a,"nextText");s=f?this.formatDate(s,this._daylightSavingAdjust(new Date(o,n+i,1)),this._getFormatConfig(a)):s;var t=this._canAdjustMonth(a,1,o,n)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._adjustDate('#"+a.id+"', +"+i+", 'M');\""+' title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>":e?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>",u=this._get(a,"currentText"),v=this._get(a,"gotoCurrent")&&a.currentDay?k:b;u=f?this.formatDate(u,v,this._getFormatConfig(a)):u;var w=a.inline?"":'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+dpuuid+'.datepicker._hideDatepicker();">'+this._get(a,"closeText")+"</button>",x=d?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(c?w:"")+(this._isInRange(a,v)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._gotoToday('#"+a.id+"');\""+">"+u+"</button>":"")+(c?"":w)+"</div>":"",y=parseInt(this._get(a,"firstDay"),10);y=isNaN(y)?0:y;var z=this._get(a,"showWeek"),A=this._get(a,"dayNames"),B=this._get(a,"dayNamesShort"),C=this._get(a,"dayNamesMin"),D=this._get(a,"monthNames"),E=this._get(a,"monthNamesShort"),F=this._get(a,"beforeShowDay"),G=this._get(a,"showOtherMonths"),H=this._get(a,"selectOtherMonths"),I=this._get(a,"calculateWeek")||this.iso8601Week,J=this._getDefaultDate(a),K="";for(var L=0;L<g[0];L++){var M="";this.maxRows=4;for(var N=0;N<g[1];N++){var O=this._daylightSavingAdjust(new Date(o,n,a.selectedDay)),P=" ui-corner-all",Q="";if(j){Q+='<div class="ui-datepicker-group';if(g[1]>1)switch(N){case 0:Q+=" ui-datepicker-group-first",P=" ui-corner-"+(c?"right":"left");break;case g[1]-1:Q+=" ui-datepicker-group-last",P=" ui-corner-"+(c?"left":"right");break;default:Q+=" ui-datepicker-group-middle",P=""}Q+='">'}Q+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+P+'">'+(/all|left/.test(P)&&L==0?c?t:r:"")+(/all|right/.test(P)&&L==0?c?r:t:"")+this._generateMonthYearHeader(a,n,o,l,m,L>0||N>0,D,E)+'</div><table class="ui-datepicker-calendar"><thead>'+"<tr>";var R=z?'<th class="ui-datepicker-week-col">'+this._get(a,"weekHeader")+"</th>":"";for(var S=0;S<7;S++){var T=(S+y)%7;R+="<th"+((S+y+6)%7>=5?' class="ui-datepicker-week-end"':"")+">"+'<span title="'+A[T]+'">'+C[T]+"</span></th>"}Q+=R+"</tr></thead><tbody>";var U=this._getDaysInMonth(o,n);o==a.selectedYear&&n==a.selectedMonth&&(a.selectedDay=Math.min(a.selectedDay,U));var V=(this._getFirstDayOfMonth(o,n)-y+7)%7,W=Math.ceil((V+U)/7),X=j?this.maxRows>W?this.maxRows:W:W;this.maxRows=X;var Y=this._daylightSavingAdjust(new Date(o,n,1-V));for(var Z=0;Z<X;Z++){Q+="<tr>";var _=z?'<td class="ui-datepicker-week-col">'+this._get(a,"calculateWeek")(Y)+"</td>":"";for(var S=0;S<7;S++){var ba=F?F.apply(a.input?a.input[0]:null,[Y]):[!0,""],bb=Y.getMonth()!=n,bc=bb&&!H||!ba[0]||l&&Y<l||m&&Y>m;_+='<td class="'+((S+y+6)%7>=5?" ui-datepicker-week-end":"")+(bb?" ui-datepicker-other-month":"")+(Y.getTime()==O.getTime()&&n==a.selectedMonth&&a._keyEvent||J.getTime()==Y.getTime()&&J.getTime()==O.getTime()?" "+this._dayOverClass:"")+(bc?" "+this._unselectableClass+" ui-state-disabled":"")+(bb&&!G?"":" "+ba[1]+(Y.getTime()==k.getTime()?" "+this._currentClass:"")+(Y.getTime()==b.getTime()?" ui-datepicker-today":""))+'"'+((!bb||G)&&ba[2]?' title="'+ba[2]+'"':"")+(bc?"":' onclick="DP_jQuery_'+dpuuid+".datepicker._selectDay('#"+a.id+"',"+Y.getMonth()+","+Y.getFullYear()+', this);return false;"')+">"+(bb&&!G?"&#xa0;":bc?'<span class="ui-state-default">'+Y.getDate()+"</span>":'<a class="ui-state-default'+(Y.getTime()==b.getTime()?" ui-state-highlight":"")+(Y.getTime()==k.getTime()?" ui-state-active":"")+(bb?" ui-priority-secondary":"")+'" href="#">'+Y.getDate()+"</a>")+"</td>",Y.setDate(Y.getDate()+1),Y=this._daylightSavingAdjust(Y)}Q+=_+"</tr>"}n++,n>11&&(n=0,o++),Q+="</tbody></table>"+(j?"</div>"+(g[0]>0&&N==g[1]-1?'<div class="ui-datepicker-row-break"></div>':""):""),M+=Q}K+=M}return K+=x+($.browser.msie&&parseInt($.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':""),a._keyEvent=!1,K},_generateMonthYearHeader:function(a,b,c,d,e,f,g,h){var i=this._get(a,"changeMonth"),j=this._get(a,"changeYear"),k=this._get(a,"showMonthAfterYear"),l='<div class="ui-datepicker-title">',m="";if(f||!i)m+='<span class="ui-datepicker-month">'+g[b]+"</span>";else{var n=d&&d.getFullYear()==c,o=e&&e.getFullYear()==c;m+='<select class="ui-datepicker-month" onchange="DP_jQuery_'+dpuuid+".datepicker._selectMonthYear('#"+a.id+"', this, 'M');\" "+">";for(var p=0;p<12;p++)(!n||p>=d.getMonth())&&(!o||p<=e.getMonth())&&(m+='<option value="'+p+'"'+(p==b?' selected="selected"':"")+">"+h[p]+"</option>");m+="</select>"}k||(l+=m+(f||!i||!j?"&#xa0;":""));if(!a.yearshtml){a.yearshtml="";if(f||!j)l+='<span class="ui-datepicker-year">'+c+"</span>";else{var q=this._get(a,"yearRange").split(":"),r=(new Date).getFullYear(),s=function(a){var b=a.match(/c[+-].*/)?c+parseInt(a.substring(1),10):a.match(/[+-].*/)?r+parseInt(a,10):parseInt(a,10);return isNaN(b)?r:b},t=s(q[0]),u=Math.max(t,s(q[1]||""));t=d?Math.max(t,d.getFullYear()):t,u=e?Math.min(u,e.getFullYear()):u,a.yearshtml+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+dpuuid+".datepicker._selectMonthYear('#"+a.id+"', this, 'Y');\" "+">";for(;t<=u;t++)a.yearshtml+='<option value="'+t+'"'+(t==c?' selected="selected"':"")+">"+t+"</option>";a.yearshtml+="</select>",l+=a.yearshtml,a.yearshtml=null}}return l+=this._get(a,"yearSuffix"),k&&(l+=(f||!i||!j?"&#xa0;":"")+m),l+="</div>",l},_adjustInstDate:function(a,b,c){var d=a.drawYear+(c=="Y"?b:0),e=a.drawMonth+(c=="M"?b:0),f=Math.min(a.selectedDay,this._getDaysInMonth(d,e))+(c=="D"?b:0),g=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(d,e,f)));a.selectedDay=g.getDate(),a.drawMonth=a.selectedMonth=g.getMonth(),a.drawYear=a.selectedYear=g.getFullYear(),(c=="M"||c=="Y")&&this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max"),e=c&&b<c?c:b;return e=d&&e>d?d:e,e},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");b&&b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){var b=this._get(a,"numberOfMonths");return b==null?[1,1]:typeof b=="number"?[1,b]:b},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,d){var e=this._getNumberOfMonths(a),f=this._daylightSavingAdjust(new Date(c,d+(b<0?b:e[0]*e[1]),1));return b<0&&f.setDate(this._getDaysInMonth(f.getFullYear(),f.getMonth())),this._isInRange(a,f)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!d||b.getTime()<=d.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");return b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10),{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,d){b||(a.currentDay=a.selectedDay,a.currentMonth=a.selectedMonth,a.currentYear=a.selectedYear);var e=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(d,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),e,this._getFormatConfig(a))}}),$.fn.datepicker=function(a){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv),$.datepicker.initialized=!0);var b=Array.prototype.slice.call(arguments,1);return typeof a!="string"||a!="isDisabled"&&a!="getDate"&&a!="widget"?a=="option"&&arguments.length==2&&typeof arguments[1]=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b)):this.each(function(){typeof a=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this].concat(b)):$.datepicker._attachDatepicker(this,a)}):$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b))},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="1.8.21",window["DP_jQuery_"+dpuuid]=$})(jQuery);;
\ No newline at end of file
+/*! jQuery UI - v1.9.2 - 2013-02-12
+* http://jqueryui.com
+* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.sortable.js, jquery.ui.autocomplete.js, jquery.ui.datepicker.js, jquery.ui.menu.js, jquery.ui.slider.js, jquery.ui.tabs.js, jquery.ui.tooltip.js
+* Copyright (c) 2013 jQuery Foundation and other contributors Licensed MIT */
+
+(function(e,t){function i(t,n){var r,i,o,u=t.nodeName.toLowerCase();return"area"===u?(r=t.parentNode,i=r.name,!t.href||!i||r.nodeName.toLowerCase()!=="map"?!1:(o=e("img[usemap=#"+i+"]")[0],!!o&&s(o))):(/input|select|textarea|button|object/.test(u)?!t.disabled:"a"===u?t.href||n:n)&&s(t)}function s(t){return e.expr.filters.visible(t)&&!e(t).parents().andSelf().filter(function(){return e.css(this,"visibility")==="hidden"}).length}var n=0,r=/^ui-id-\d+$/;e.ui=e.ui||{};if(e.ui.version)return;e.extend(e.ui,{version:"1.9.2",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({_focus:e.fn.focus,focus:function(t,n){return typeof t=="number"?this.each(function(){var r=this;setTimeout(function(){e(r).focus(),n&&n.call(r)},t)}):this._focus.apply(this,arguments)},scrollParent:function(){var t;return e.ui.ie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?t=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,"position"))&&/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0):t=this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0),/fixed/.test(this.css("position"))||!t.length?e(document):t},zIndex:function(n){if(n!==t)return this.css("zIndex",n);if(this.length){var r=e(this[0]),i,s;while(r.length&&r[0]!==document){i=r.css("position");if(i==="absolute"||i==="relative"||i==="fixed"){s=parseInt(r.css("zIndex"),10);if(!isNaN(s)&&s!==0)return s}r=r.parent()}}return 0},uniqueId:function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++n)})},removeUniqueId:function(){return this.each(function(){r.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(n){return!!e.data(n,t)}}):function(t,n,r){return!!e.data(t,r[3])},focusable:function(t){return i(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var n=e.attr(t,"tabindex"),r=isNaN(n);return(r||n>=0)&&i(t,!r)}}),e(function(){var t=document.body,n=t.appendChild(n=document.createElement("div"));n.offsetHeight,e.extend(n.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),e.support.minHeight=n.offsetHeight===100,e.support.selectstart="onselectstart"in n,t.removeChild(n).style.display="none"}),e("<a>").outerWidth(1).jquery||e.each(["Width","Height"],function(n,r){function u(t,n,r,s){return e.each(i,function(){n-=parseFloat(e.css(t,"padding"+this))||0,r&&(n-=parseFloat(e.css(t,"border"+this+"Width"))||0),s&&(n-=parseFloat(e.css(t,"margin"+this))||0)}),n}var i=r==="Width"?["Left","Right"]:["Top","Bottom"],s=r.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+r]=function(n){return n===t?o["inner"+r].call(this):this.each(function(){e(this).css(s,u(this,n)+"px")})},e.fn["outer"+r]=function(t,n){return typeof t!="number"?o["outer"+r].call(this,t):this.each(function(){e(this).css(s,u(this,t,!0,n)+"px")})}}),e("<a>").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(n){return arguments.length?t.call(this,e.camelCase(n)):t.call(this)}}(e.fn.removeData)),function(){var t=/msie ([\w.]+)/.exec(navigator.userAgent.toLowerCase())||[];e.ui.ie=t.length?!0:!1,e.ui.ie6=parseFloat(t[1],10)===6}(),e.fn.extend({disableSelection:function(){return this.bind((e.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),e.extend(e.ui,{plugin:{add:function(t,n,r){var i,s=e.ui[t].prototype;for(i in r)s.plugins[i]=s.plugins[i]||[],s.plugins[i].push([n,r[i]])},call:function(e,t,n){var r,i=e.plugins[t];if(!i||!e.element[0].parentNode||e.element[0].parentNode.nodeType===11)return;for(r=0;r<i.length;r++)e.options[i[r][0]]&&i[r][1].apply(e.element,n)}},contains:e.contains,hasScroll:function(t,n){if(e(t).css("overflow")==="hidden")return!1;var r=n&&n==="left"?"scrollLeft":"scrollTop",i=!1;return t[r]>0?!0:(t[r]=1,i=t[r]>0,t[r]=0,i)},isOverAxis:function(e,t,n){return e>t&&e<t+n},isOver:function(t,n,r,i,s,o){return e.ui.isOverAxis(t,r,s)&&e.ui.isOverAxis(n,i,o)}})})(jQuery);(function(e,t){var n=0,r=Array.prototype.slice,i=e.cleanData;e.cleanData=function(t){for(var n=0,r;(r=t[n])!=null;n++)try{e(r).triggerHandler("remove")}catch(s){}i(t)},e.widget=function(t,n,r){var i,s,o,u,a=t.split(".")[0];t=t.split(".")[1],i=a+"-"+t,r||(r=n,n=e.Widget),e.expr[":"][i.toLowerCase()]=function(t){return!!e.data(t,i)},e[a]=e[a]||{},s=e[a][t],o=e[a][t]=function(e,t){if(!this._createWidget)return new o(e,t);arguments.length&&this._createWidget(e,t)},e.extend(o,s,{version:r.version,_proto:e.extend({},r),_childConstructors:[]}),u=new n,u.options=e.widget.extend({},u.options),e.each(r,function(t,i){e.isFunction(i)&&(r[t]=function(){var e=function(){return n.prototype[t].apply(this,arguments)},r=function(e){return n.prototype[t].apply(this,e)};return function(){var t=this._super,n=this._superApply,s;return this._super=e,this._superApply=r,s=i.apply(this,arguments),this._super=t,this._superApply=n,s}}())}),o.prototype=e.widget.extend(u,{widgetEventPrefix:s?u.widgetEventPrefix:t},r,{constructor:o,namespace:a,widgetName:t,widgetBaseClass:i,widgetFullName:i}),s?(e.each(s._childConstructors,function(t,n){var r=n.prototype;e.widget(r.namespace+"."+r.widgetName,o,n._proto)}),delete s._childConstructors):n._childConstructors.push(o),e.widget.bridge(t,o)},e.widget.extend=function(n){var i=r.call(arguments,1),s=0,o=i.length,u,a;for(;s<o;s++)for(u in i[s])a=i[s][u],i[s].hasOwnProperty(u)&&a!==t&&(e.isPlainObject(a)?n[u]=e.isPlainObject(n[u])?e.widget.extend({},n[u],a):e.widget.extend({},a):n[u]=a);return n},e.widget.bridge=function(n,i){var s=i.prototype.widgetFullName||n;e.fn[n]=function(o){var u=typeof o=="string",a=r.call(arguments,1),f=this;return o=!u&&a.length?e.widget.extend.apply(null,[o].concat(a)):o,u?this.each(function(){var r,i=e.data(this,s);if(!i)return e.error("cannot call methods on "+n+" prior to initialization; "+"attempted to call method '"+o+"'");if(!e.isFunction(i[o])||o.charAt(0)==="_")return e.error("no such method '"+o+"' for "+n+" widget instance");r=i[o].apply(i,a);if(r!==i&&r!==t)return f=r&&r.jquery?f.pushStack(r.get()):r,!1}):this.each(function(){var t=e.data(this,s);t?t.option(o||{})._init():e.data(this,s,new i(o,this))}),f}},e.Widget=function(){},e.Widget._childConstructors=[],e.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(t,r){r=e(r||this.defaultElement||this)[0],this.element=e(r),this.uuid=n++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this.bindings=e(),this.hoverable=e(),this.focusable=e(),r!==this&&(e.data(r,this.widgetName,this),e.data(r,this.widgetFullName,this),this._on(!0,this.element,{remove:function(e){e.target===r&&this.destroy()}}),this.document=e(r.style?r.ownerDocument:r.document||r),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:e.noop,widget:function(){return this.element},option:function(n,r){var i=n,s,o,u;if(arguments.length===0)return e.widget.extend({},this.options);if(typeof n=="string"){i={},s=n.split("."),n=s.shift();if(s.length){o=i[n]=e.widget.extend({},this.options[n]);for(u=0;u<s.length-1;u++)o[s[u]]=o[s[u]]||{},o=o[s[u]];n=s.pop();if(r===t)return o[n]===t?null:o[n];o[n]=r}else{if(r===t)return this.options[n]===t?null:this.options[n];i[n]=r}}return this._setOptions(i),this},_setOptions:function(e){var t;for(t in e)this._setOption(t,e[t]);return this},_setOption:function(e,t){return this.options[e]=t,e==="disabled"&&(this.widget().toggleClass(this.widgetFullName+"-disabled ui-state-disabled",!!t).attr("aria-disabled",t),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")),this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_on:function(t,n,r){var i,s=this;typeof t!="boolean"&&(r=n,n=t,t=!1),r?(n=i=e(n),this.bindings=this.bindings.add(n)):(r=n,n=this.element,i=this.widget()),e.each(r,function(r,o){function u(){if(!t&&(s.options.disabled===!0||e(this).hasClass("ui-state-disabled")))return;return(typeof o=="string"?s[o]:o).apply(s,arguments)}typeof o!="string"&&(u.guid=o.guid=o.guid||u.guid||e.guid++);var a=r.match(/^(\w+)\s*(.*)$/),f=a[1]+s.eventNamespace,l=a[2];l?i.delegate(l,f,u):n.bind(f,u)})},_off:function(e,t){t=(t||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.unbind(t).undelegate(t)},_delay:function(e,t){function n(){return(typeof e=="string"?r[e]:e).apply(r,arguments)}var r=this;return setTimeout(n,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){e(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){e(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){e(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){e(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,n,r){var i,s,o=this.options[t];r=r||{},n=e.Event(n),n.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),n.target=this.element[0],s=n.originalEvent;if(s)for(i in s)i in n||(n[i]=s[i]);return this.element.trigger(n,r),!(e.isFunction(o)&&o.apply(this.element[0],[n].concat(r))===!1||n.isDefaultPrevented())}},e.each({show:"fadeIn",hide:"fadeOut"},function(t,n){e.Widget.prototype["_"+t]=function(r,i,s){typeof i=="string"&&(i={effect:i});var o,u=i?i===!0||typeof i=="number"?n:i.effect||n:t;i=i||{},typeof i=="number"&&(i={duration:i}),o=!e.isEmptyObject(i),i.complete=s,i.delay&&r.delay(i.delay),o&&e.effects&&(e.effects.effect[u]||e.uiBackCompat!==!1&&e.effects[u])?r[t](i):u!==t&&r[u]?r[u](i.duration,i.easing,s):r.queue(function(n){e(this)[t](),s&&s.call(r[0]),n()})}}),e.uiBackCompat!==!1&&(e.Widget.prototype._getCreateOptions=function(){return e.metadata&&e.metadata.get(this.element[0])[this.widgetName]})})(jQuery);(function(e,t){var n=!1;e(document).mouseup(function(e){n=!1}),e.widget("ui.mouse",{version:"1.9.2",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var t=this;this.element.bind("mousedown."+this.widgetName,function(e){return t._mouseDown(e)}).bind("click."+this.widgetName,function(n){if(!0===e.data(n.target,t.widgetName+".preventClickEvent"))return e.removeData(n.target,t.widgetName+".preventClickEvent"),n.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(n)return;this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t;var r=this,i=t.which===1,s=typeof this.options.cancel=="string"&&t.target.nodeName?e(t.target).closest(this.options.cancel).length:!1;if(!i||s||!this._mouseCapture(t))return!0;this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){r.mouseDelayMet=!0},this.options.delay));if(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)){this._mouseStarted=this._mouseStart(t)!==!1;if(!this._mouseStarted)return t.preventDefault(),!0}return!0===e.data(t.target,this.widgetName+".preventClickEvent")&&e.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(e){return r._mouseMove(e)},this._mouseUpDelegate=function(e){return r._mouseUp(e)},e(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),n=!0,!0},_mouseMove:function(t){return!e.ui.ie||document.documentMode>=9||!!t.button?this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted):this._mouseUp(t)},_mouseUp:function(t){return e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&e.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(e){return this.mouseDelayMet},_mouseStart:function(e){},_mouseDrag:function(e){},_mouseStop:function(e){},_mouseCapture:function(e){return!0}})})(jQuery);(function(e,t){function h(e,t,n){return[parseInt(e[0],10)*(l.test(e[0])?t/100:1),parseInt(e[1],10)*(l.test(e[1])?n/100:1)]}function p(t,n){return parseInt(e.css(t,n),10)||0}e.ui=e.ui||{};var n,r=Math.max,i=Math.abs,s=Math.round,o=/left|center|right/,u=/top|center|bottom/,a=/[\+\-]\d+%?/,f=/^\w+/,l=/%$/,c=e.fn.position;e.position={scrollbarWidth:function(){if(n!==t)return n;var r,i,s=e("<div style='display:block;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),o=s.children()[0];return e("body").append(s),r=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,r===i&&(i=s[0].clientWidth),s.remove(),n=r-i},getScrollInfo:function(t){var n=t.isWindow?"":t.element.css("overflow-x"),r=t.isWindow?"":t.element.css("overflow-y"),i=n==="scroll"||n==="auto"&&t.width<t.element[0].scrollWidth,s=r==="scroll"||r==="auto"&&t.height<t.element[0].scrollHeight;return{width:i?e.position.scrollbarWidth():0,height:s?e.position.scrollbarWidth():0}},getWithinInfo:function(t){var n=e(t||window),r=e.isWindow(n[0]);return{element:n,isWindow:r,offset:n.offset()||{left:0,top:0},scrollLeft:n.scrollLeft(),scrollTop:n.scrollTop(),width:r?n.width():n.outerWidth(),height:r?n.height():n.outerHeight()}}},e.fn.position=function(t){if(!t||!t.of)return c.apply(this,arguments);t=e.extend({},t);var n,l,d,v,m,g=e(t.of),y=e.position.getWithinInfo(t.within),b=e.position.getScrollInfo(y),w=g[0],E=(t.collision||"flip").split(" "),S={};return w.nodeType===9?(l=g.width(),d=g.height(),v={top:0,left:0}):e.isWindow(w)?(l=g.width(),d=g.height(),v={top:g.scrollTop(),left:g.scrollLeft()}):w.preventDefault?(t.at="left top",l=d=0,v={top:w.pageY,left:w.pageX}):(l=g.outerWidth(),d=g.outerHeight(),v=g.offset()),m=e.extend({},v),e.each(["my","at"],function(){var e=(t[this]||"").split(" "),n,r;e.length===1&&(e=o.test(e[0])?e.concat(["center"]):u.test(e[0])?["center"].concat(e):["center","center"]),e[0]=o.test(e[0])?e[0]:"center",e[1]=u.test(e[1])?e[1]:"center",n=a.exec(e[0]),r=a.exec(e[1]),S[this]=[n?n[0]:0,r?r[0]:0],t[this]=[f.exec(e[0])[0],f.exec(e[1])[0]]}),E.length===1&&(E[1]=E[0]),t.at[0]==="right"?m.left+=l:t.at[0]==="center"&&(m.left+=l/2),t.at[1]==="bottom"?m.top+=d:t.at[1]==="center"&&(m.top+=d/2),n=h(S.at,l,d),m.left+=n[0],m.top+=n[1],this.each(function(){var o,u,a=e(this),f=a.outerWidth(),c=a.outerHeight(),w=p(this,"marginLeft"),x=p(this,"marginTop"),T=f+w+p(this,"marginRight")+b.width,N=c+x+p(this,"marginBottom")+b.height,C=e.extend({},m),k=h(S.my,a.outerWidth(),a.outerHeight());t.my[0]==="right"?C.left-=f:t.my[0]==="center"&&(C.left-=f/2),t.my[1]==="bottom"?C.top-=c:t.my[1]==="center"&&(C.top-=c/2),C.left+=k[0],C.top+=k[1],e.support.offsetFractions||(C.left=s(C.left),C.top=s(C.top)),o={marginLeft:w,marginTop:x},e.each(["left","top"],function(r,i){e.ui.position[E[r]]&&e.ui.position[E[r]][i](C,{targetWidth:l,targetHeight:d,elemWidth:f,elemHeight:c,collisionPosition:o,collisionWidth:T,collisionHeight:N,offset:[n[0]+k[0],n[1]+k[1]],my:t.my,at:t.at,within:y,elem:a})}),e.fn.bgiframe&&a.bgiframe(),t.using&&(u=function(e){var n=v.left-C.left,s=n+l-f,o=v.top-C.top,u=o+d-c,h={target:{element:g,left:v.left,top:v.top,width:l,height:d},element:{element:a,left:C.left,top:C.top,width:f,height:c},horizontal:s<0?"left":n>0?"right":"center",vertical:u<0?"top":o>0?"bottom":"middle"};l<f&&i(n+s)<l&&(h.horizontal="center"),d<c&&i(o+u)<d&&(h.vertical="middle"),r(i(n),i(s))>r(i(o),i(u))?h.important="horizontal":h.important="vertical",t.using.call(this,e,h)}),a.offset(e.extend(C,{using:u}))})},e.ui.position={fit:{left:function(e,t){var n=t.within,i=n.isWindow?n.scrollLeft:n.offset.left,s=n.width,o=e.left-t.collisionPosition.marginLeft,u=i-o,a=o+t.collisionWidth-s-i,f;t.collisionWidth>s?u>0&&a<=0?(f=e.left+u+t.collisionWidth-s-i,e.left+=u-f):a>0&&u<=0?e.left=i:u>a?e.left=i+s-t.collisionWidth:e.left=i:u>0?e.left+=u:a>0?e.left-=a:e.left=r(e.left-o,e.left)},top:function(e,t){var n=t.within,i=n.isWindow?n.scrollTop:n.offset.top,s=t.within.height,o=e.top-t.collisionPosition.marginTop,u=i-o,a=o+t.collisionHeight-s-i,f;t.collisionHeight>s?u>0&&a<=0?(f=e.top+u+t.collisionHeight-s-i,e.top+=u-f):a>0&&u<=0?e.top=i:u>a?e.top=i+s-t.collisionHeight:e.top=i:u>0?e.top+=u:a>0?e.top-=a:e.top=r(e.top-o,e.top)}},flip:{left:function(e,t){var n=t.within,r=n.offset.left+n.scrollLeft,s=n.width,o=n.isWindow?n.scrollLeft:n.offset.left,u=e.left-t.collisionPosition.marginLeft,a=u-o,f=u+t.collisionWidth-s-o,l=t.my[0]==="left"?-t.elemWidth:t.my[0]==="right"?t.elemWidth:0,c=t.at[0]==="left"?t.targetWidth:t.at[0]==="right"?-t.targetWidth:0,h=-2*t.offset[0],p,d;if(a<0){p=e.left+l+c+h+t.collisionWidth-s-r;if(p<0||p<i(a))e.left+=l+c+h}else if(f>0){d=e.left-t.collisionPosition.marginLeft+l+c+h-o;if(d>0||i(d)<f)e.left+=l+c+h}},top:function(e,t){var n=t.within,r=n.offset.top+n.scrollTop,s=n.height,o=n.isWindow?n.scrollTop:n.offset.top,u=e.top-t.collisionPosition.marginTop,a=u-o,f=u+t.collisionHeight-s-o,l=t.my[1]==="top",c=l?-t.elemHeight:t.my[1]==="bottom"?t.elemHeight:0,h=t.at[1]==="top"?t.targetHeight:t.at[1]==="bottom"?-t.targetHeight:0,p=-2*t.offset[1],d,v;a<0?(v=e.top+c+h+p+t.collisionHeight-s-r,e.top+c+h+p>a&&(v<0||v<i(a))&&(e.top+=c+h+p)):f>0&&(d=e.top-t.collisionPosition.marginTop+c+h+p-o,e.top+c+h+p>f&&(d>0||i(d)<f)&&(e.top+=c+h+p))}},flipfit:{left:function(){e.ui.position.flip.left.apply(this,arguments),e.ui.position.fit.left.apply(this,arguments)},top:function(){e.ui.position.flip.top.apply(this,arguments),e.ui.position.fit.top.apply(this,arguments)}}},function(){var t,n,r,i,s,o=document.getElementsByTagName("body")[0],u=document.createElement("div");t=document.createElement(o?"div":"body"),r={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},o&&e.extend(r,{position:"absolute",left:"-1000px",top:"-1000px"});for(s in r)t.style[s]=r[s];t.appendChild(u),n=o||document.documentElement,n.insertBefore(t,n.firstChild),u.style.cssText="position: absolute; left: 10.7432222px;",i=e(u).offset().left,e.support.offsetFractions=i>10&&i<11,t.innerHTML="",n.removeChild(t)}(),e.uiBackCompat!==!1&&function(e){var n=e.fn.position;e.fn.position=function(r){if(!r||!r.offset)return n.call(this,r);var i=r.offset.split(" "),s=r.at.split(" ");return i.length===1&&(i[1]=i[0]),/^\d/.test(i[0])&&(i[0]="+"+i[0]),/^\d/.test(i[1])&&(i[1]="+"+i[1]),s.length===1&&(/left|center|right/.test(s[0])?s[1]="center":(s[1]=s[0],s[0]="center")),n.call(this,e.extend(r,{at:s[0]+i[0]+" "+s[1]+i[1],offset:t}))}}(jQuery)})(jQuery);(function(e,t){e.widget("ui.sortable",e.ui.mouse,{version:"1.9.2",widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3},_create:function(){var e=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?e.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):!1,this.offset=this.element.offset(),this._mouseInit(),this.ready=!0},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled"),this._mouseDestroy();for(var e=this.items.length-1;e>=0;e--)this.items[e].item.removeData(this.widgetName+"-item");return this},_setOption:function(t,n){t==="disabled"?(this.options[t]=n,this.widget().toggleClass("ui-sortable-disabled",!!n)):e.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(t,n){var r=this;if(this.reverting)return!1;if(this.options.disabled||this.options.type=="static")return!1;this._refreshItems(t);var i=null,s=e(t.target).parents().each(function(){if(e.data(this,r.widgetName+"-item")==r)return i=e(this),!1});e.data(t.target,r.widgetName+"-item")==r&&(i=e(t.target));if(!i)return!1;if(this.options.handle&&!n){var o=!1;e(this.options.handle,i).find("*").andSelf().each(function(){this==t.target&&(o=!0)});if(!o)return!1}return this.currentItem=i,this._removeCurrentsFromItems(),!0},_mouseStart:function(t,n,r){var i=this.options;this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(t),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!=this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),i.containment&&this._setContainment(),i.cursor&&(e("body").css("cursor")&&(this._storedCursor=e("body").css("cursor")),e("body").css("cursor",i.cursor)),i.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",i.opacity)),i.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",i.zIndex)),this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",t,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions();if(!r)for(var s=this.containers.length-1;s>=0;s--)this.containers[s]._trigger("activate",t,this._uiHash(this));return e.ui.ddmanager&&(e.ui.ddmanager.current=this),e.ui.ddmanager&&!i.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(t),!0},_mouseDrag:function(t){this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs);if(this.options.scroll){var n=this.options,r=!1;this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-t.pageY<n.scrollSensitivity?this.scrollParent[0].scrollTop=r=this.scrollParent[0].scrollTop+n.scrollSpeed:t.pageY-this.overflowOffset.top<n.scrollSensitivity&&(this.scrollParent[0].scrollTop=r=this.scrollParent[0].scrollTop-n.scrollSpeed),this.overflowOffset.left+this.scrollParent[0].offsetWidth-t.pageX<n.scrollSensitivity?this.scrollParent[0].scrollLeft=r=this.scrollParent[0].scrollLeft+n.scrollSpeed:t.pageX-this.overflowOffset.left<n.scrollSensitivity&&(this.scrollParent[0].scrollLeft=r=this.scrollParent[0].scrollLeft-n.scrollSpeed)):(t.pageY-e(document).scrollTop()<n.scrollSensitivity?r=e(document).scrollTop(e(document).scrollTop()-n.scrollSpeed):e(window).height()-(t.pageY-e(document).scrollTop())<n.scrollSensitivity&&(r=e(document).scrollTop(e(document).scrollTop()+n.scrollSpeed)),t.pageX-e(document).scrollLeft()<n.scrollSensitivity?r=e(document).scrollLeft(e(document).scrollLeft()-n.scrollSpeed):e(window).width()-(t.pageX-e(document).scrollLeft())<n.scrollSensitivity&&(r=e(document).scrollLeft(e(document).scrollLeft()+n.scrollSpeed))),r!==!1&&e.ui.ddmanager&&!n.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t)}this.positionAbs=this._convertPositionTo("absolute");if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";for(var i=this.items.length-1;i>=0;i--){var s=this.items[i],o=s.item[0],u=this._intersectsWithPointer(s);if(!u)continue;if(s.instance!==this.currentContainer)continue;if(o!=this.currentItem[0]&&this.placeholder[u==1?"next":"prev"]()[0]!=o&&!e.contains(this.placeholder[0],o)&&(this.options.type=="semi-dynamic"?!e.contains(this.element[0],o):!0)){this.direction=u==1?"down":"up";if(this.options.tolerance!="pointer"&&!this._intersectsWithSides(s))break;this._rearrange(t,s),this._trigger("change",t,this._uiHash());break}}return this._contactContainers(t),e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),this._trigger("sort",t,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(t,n){if(!t)return;e.ui.ddmanager&&!this.options.dropBehaviour&&e.ui.ddmanager.drop(this,t);if(this.options.revert){var r=this,i=this.placeholder.offset();this.reverting=!0,e(this.helper).animate({left:i.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:i.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){r._clear(t)})}else this._clear(t,n);return!1},cancel:function(){if(this.dragging){this._mouseUp({target:null}),this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var t=this.containers.length-1;t>=0;t--)this.containers[t]._trigger("deactivate",null,this._uiHash(this)),this.containers[t].containerCache.over&&(this.containers[t]._trigger("out",null,this._uiHash(this)),this.containers[t].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),e.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?e(this.domPosition.prev).after(this.currentItem):e(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(t){var n=this._getItemsAsjQuery(t&&t.connected),r=[];return t=t||{},e(n).each(function(){var n=(e(t.item||this).attr(t.attribute||"id")||"").match(t.expression||/(.+)[-=_](.+)/);n&&r.push((t.key||n[1]+"[]")+"="+(t.key&&t.expression?n[1]:n[2]))}),!r.length&&t.key&&r.push(t.key+"="),r.join("&")},toArray:function(t){var n=this._getItemsAsjQuery(t&&t.connected),r=[];return t=t||{},n.each(function(){r.push(e(t.item||this).attr(t.attribute||"id")||"")}),r},_intersectsWith:function(e){var t=this.positionAbs.left,n=t+this.helperProportions.width,r=this.positionAbs.top,i=r+this.helperProportions.height,s=e.left,o=s+e.width,u=e.top,a=u+e.height,f=this.offset.click.top,l=this.offset.click.left,c=r+f>u&&r+f<a&&t+l>s&&t+l<o;return this.options.tolerance=="pointer"||this.options.forcePointerForContainers||this.options.tolerance!="pointer"&&this.helperProportions[this.floating?"width":"height"]>e[this.floating?"width":"height"]?c:s<t+this.helperProportions.width/2&&n-this.helperProportions.width/2<o&&u<r+this.helperProportions.height/2&&i-this.helperProportions.height/2<a},_intersectsWithPointer:function(t){var n=this.options.axis==="x"||e.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,t.top,t.height),r=this.options.axis==="y"||e.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,t.left,t.width),i=n&&r,s=this._getDragVerticalDirection(),o=this._getDragHorizontalDirection();return i?this.floating?o&&o=="right"||s=="down"?2:1:s&&(s=="down"?2:1):!1},_intersectsWithSides:function(t){var n=e.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,t.top+t.height/2,t.height),r=e.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,t.left+t.width/2,t.width),i=this._getDragVerticalDirection(),s=this._getDragHorizontalDirection();return this.floating&&s?s=="right"&&r||s=="left"&&!r:i&&(i=="down"&&n||i=="up"&&!n)},_getDragVerticalDirection:function(){var e=this.positionAbs.top-this.lastPositionAbs.top;return e!=0&&(e>0?"down":"up")},_getDragHorizontalDirection:function(){var e=this.positionAbs.left-this.lastPositionAbs.left;return e!=0&&(e>0?"right":"left")},refresh:function(e){return this._refreshItems(e),this.refreshPositions(),this},_connectWith:function(){var e=this.options;return e.connectWith.constructor==String?[e.connectWith]:e.connectWith},_getItemsAsjQuery:function(t){var n=[],r=[],i=this._connectWith();if(i&&t)for(var s=i.length-1;s>=0;s--){var o=e(i[s]);for(var u=o.length-1;u>=0;u--){var a=e.data(o[u],this.widgetName);a&&a!=this&&!a.options.disabled&&r.push([e.isFunction(a.options.items)?a.options.items.call(a.element):e(a.options.items,a.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),a])}}r.push([e.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):e(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]);for(var s=r.length-1;s>=0;s--)r[s][0].each(function(){n.push(this)});return e(n)},_removeCurrentsFromItems:function(){var t=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=e.grep(this.items,function(e){for(var n=0;n<t.length;n++)if(t[n]==e.item[0])return!1;return!0})},_refreshItems:function(t){this.items=[],this.containers=[this];var n=this.items,r=[[e.isFunction(this.options.items)?this.options.items.call(this.element[0],t,{item:this.currentItem}):e(this.options.items,this.element),this]],i=this._connectWith();if(i&&this.ready)for(var s=i.length-1;s>=0;s--){var o=e(i[s]);for(var u=o.length-1;u>=0;u--){var a=e.data(o[u],this.widgetName);a&&a!=this&&!a.options.disabled&&(r.push([e.isFunction(a.options.items)?a.options.items.call(a.element[0],t,{item:this.currentItem}):e(a.options.items,a.element),a]),this.containers.push(a))}}for(var s=r.length-1;s>=0;s--){var f=r[s][1],l=r[s][0];for(var u=0,c=l.length;u<c;u++){var h=e(l[u]);h.data(this.widgetName+"-item",f),n.push({item:h,instance:f,width:0,height:0,left:0,top:0})}}},refreshPositions:function(t){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());for(var n=this.items.length-1;n>=0;n--){var r=this.items[n];if(r.instance!=this.currentContainer&&this.currentContainer&&r.item[0]!=this.currentItem[0])continue;var i=this.options.toleranceElement?e(this.options.toleranceElement,r.item):r.item;t||(r.width=i.outerWidth(),r.height=i.outerHeight());var s=i.offset();r.left=s.left,r.top=s.top}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(var n=this.containers.length-1;n>=0;n--){var s=this.containers[n].element.offset();this.containers[n].containerCache.left=s.left,this.containers[n].containerCache.top=s.top,this.containers[n].containerCache.width=this.containers[n].element.outerWidth(),this.containers[n].containerCache.height=this.containers[n].element.outerHeight()}return this},_createPlaceholder:function(t){t=t||this;var n=t.options;if(!n.placeholder||n.placeholder.constructor==String){var r=n.placeholder;n.placeholder={element:function(){var n=e(document.createElement(t.currentItem[0].nodeName)).addClass(r||t.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];return r||(n.style.visibility="hidden"),n},update:function(e,i){if(r&&!n.forcePlaceholderSize)return;i.height()||i.height(t.currentItem.innerHeight()-parseInt(t.currentItem.css("paddingTop")||0,10)-parseInt(t.currentItem.css("paddingBottom")||0,10)),i.width()||i.width(t.currentItem.innerWidth()-parseInt(t.currentItem.css("paddingLeft")||0,10)-parseInt(t.currentItem.css("paddingRight")||0,10))}}}t.placeholder=e(n.placeholder.element.call(t.element,t.currentItem)),t.currentItem.after(t.placeholder),n.placeholder.update(t,t.placeholder)},_contactContainers:function(t){var n=null,r=null;for(var i=this.containers.length-1;i>=0;i--){if(e.contains(this.currentItem[0],this.containers[i].element[0]))continue;if(this._intersectsWith(this.containers[i].containerCache)){if(n&&e.contains(this.containers[i].element[0],n.element[0]))continue;n=this.containers[i],r=i}else this.containers[i].containerCache.over&&(this.containers[i]._trigger("out",t,this._uiHash(this)),this.containers[i].containerCache.over=0)}if(!n)return;if(this.containers.length===1)this.containers[r]._trigger("over",t,this._uiHash(this)),this.containers[r].containerCache.over=1;else{var s=1e4,o=null,u=this.containers[r].floating?"left":"top",a=this.containers[r].floating?"width":"height",f=this.positionAbs[u]+this.offset.click[u];for(var l=this.items.length-1;l>=0;l--){if(!e.contains(this.containers[r].element[0],this.items[l].item[0]))continue;if(this.items[l].item[0]==this.currentItem[0])continue;var c=this.items[l].item.offset()[u],h=!1;Math.abs(c-f)>Math.abs(c+this.items[l][a]-f)&&(h=!0,c+=this.items[l][a]),Math.abs(c-f)<s&&(s=Math.abs(c-f),o=this.items[l],this.direction=h?"up":"down")}if(!o&&!this.options.dropOnEmpty)return;this.currentContainer=this.containers[r],o?this._rearrange(t,o,null,!0):this._rearrange(t,null,this.containers[r].element,!0),this._trigger("change",t,this._uiHash()),this.containers[r]._trigger("change",t,this._uiHash(this)),this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[r]._trigger("over",t,this._uiHash(this)),this.containers[r].containerCache.over=1}},_createHelper:function(t){var n=this.options,r=e.isFunction(n.helper)?e(n.helper.apply(this.element[0],[t,this.currentItem])):n.helper=="clone"?this.currentItem.clone():this.currentItem;return r.parents("body").length||e(n.appendTo!="parent"?n.appendTo:this.currentItem[0].parentNode)[0].appendChild(r[0]),r[0]==this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(r[0].style.width==""||n.forceHelperSize)&&r.width(this.currentItem.width()),(r[0].style.height==""||n.forceHelperSize)&&r.height(this.currentItem.height()),r},_adjustOffsetFromHelper:function(t){typeof t=="string"&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&e.ui.ie)t={top:0,left:0};return{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var e=this.currentItem.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t=this.options;t.containment=="parent"&&(t.containment=this.helper[0].parentNode);if(t.containment=="document"||t.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,e(t.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(e(t.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(t.containment)){var n=e(t.containment)[0],r=e(t.containment).offset(),i=e(n).css("overflow")!="hidden";this.containment=[r.left+(parseInt(e(n).css("borderLeftWidth"),10)||0)+(parseInt(e(n).css("paddingLeft"),10)||0)-this.margins.left,r.top+(parseInt(e(n).css("borderTopWidth"),10)||0)+(parseInt(e(n).css("paddingTop"),10)||0)-this.margins.top,r.left+(i?Math.max(n.scrollWidth,n.offsetWidth):n.offsetWidth)-(parseInt(e(n).css("borderLeftWidth"),10)||0)-(parseInt(e(n).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,r.top+(i?Math.max(n.scrollHeight,n.offsetHeight):n.offsetHeight)-(parseInt(e(n).css("borderTopWidth"),10)||0)-(parseInt(e(n).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}},_convertPositionTo:function(t,n){n||(n=this.position);var r=t=="absolute"?1:-1,i=this.options,s=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,o=/(html|body)/i.test(s[0].tagName);return{top:n.top+this.offset.relative.top*r+this.offset.parent.top*r-(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():o?0:s.scrollTop())*r,left:n.left+this.offset.relative.left*r+this.offset.parent.left*r-(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():o?0:s.scrollLeft())*r}},_generatePosition:function(t){var n=this.options,r=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,i=/(html|body)/i.test(r[0].tagName);this.cssPosition=="relative"&&(this.scrollParent[0]==document||this.scrollParent[0]==this.offsetParent[0])&&(this.offset.relative=this._getRelativeOffset());var s=t.pageX,o=t.pageY;if(this.originalPosition){this.containment&&(t.pageX-this.offset.click.left<this.containment[0]&&(s=this.containment[0]+this.offset.click.left),t.pageY-this.offset.click.top<this.containment[1]&&(o=this.containment[1]+this.offset.click.top),t.pageX-this.offset.click.left>this.containment[2]&&(s=this.containment[2]+this.offset.click.left),t.pageY-this.offset.click.top>this.containment[3]&&(o=this.containment[3]+this.offset.click.top));if(n.grid){var u=this.originalPageY+Math.round((o-this.originalPageY)/n.grid[1])*n.grid[1];o=this.containment?u-this.offset.click.top<this.containment[1]||u-this.offset.click.top>this.containment[3]?u-this.offset.click.top<this.containment[1]?u+n.grid[1]:u-n.grid[1]:u:u;var a=this.originalPageX+Math.round((s-this.originalPageX)/n.grid[0])*n.grid[0];s=this.containment?a-this.offset.click.left<this.containment[0]||a-this.offset.click.left>this.containment[2]?a-this.offset.click.left<this.containment[0]?a+n.grid[0]:a-n.grid[0]:a:a}}return{top:o-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():i?0:r.scrollTop()),left:s-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():i?0:r.scrollLeft())}},_rearrange:function(e,t,n,r){n?n[0].appendChild(this.placeholder[0]):t.item[0].parentNode.insertBefore(this.placeholder[0],this.direction=="down"?t.item[0]:t.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var i=this.counter;this._delay(function(){i==this.counter&&this.refreshPositions(!r)})},_clear:function(t,n){this.reverting=!1;var r=[];!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null;if(this.helper[0]==this.currentItem[0]){for(var i in this._storedCSS)if(this._storedCSS[i]=="auto"||this._storedCSS[i]=="static")this._storedCSS[i]="";this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();this.fromOutside&&!n&&r.push(function(e){this._trigger("receive",e,this._uiHash(this.fromOutside))}),(this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!n&&r.push(function(e){this._trigger("update",e,this._uiHash())}),this!==this.currentContainer&&(n||(r.push(function(e){this._trigger("remove",e,this._uiHash())}),r.push(function(e){return function(t){e._trigger("receive",t,this._uiHash(this))}}.call(this,this.currentContainer)),r.push(function(e){return function(t){e._trigger("update",t,this._uiHash(this))}}.call(this,this.currentContainer))));for(var i=this.containers.length-1;i>=0;i--)n||r.push(function(e){return function(t){e._trigger("deactivate",t,this._uiHash(this))}}.call(this,this.containers[i])),this.containers[i].containerCache.over&&(r.push(function(e){return function(t){e._trigger("out",t,this._uiHash(this))}}.call(this,this.containers[i])),this.containers[i].containerCache.over=0);this._storedCursor&&e("body").css("cursor",this._storedCursor),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex),this.dragging=!1;if(this.cancelHelperRemoval){if(!n){this._trigger("beforeStop",t,this._uiHash());for(var i=0;i<r.length;i++)r[i].call(this,t);this._trigger("stop",t,this._uiHash())}return this.fromOutside=!1,!1}n||this._trigger("beforeStop",t,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.helper[0]!=this.currentItem[0]&&this.helper.remove(),this.helper=null;if(!n){for(var i=0;i<r.length;i++)r[i].call(this,t);this._trigger("stop",t,this._uiHash())}return this.fromOutside=!1,!0},_trigger:function(){e.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(t){var n=t||this;return{helper:n.helper,placeholder:n.placeholder||e([]),position:n.position,originalPosition:n.originalPosition,offset:n.positionAbs,item:n.currentItem,sender:t?t.element:null}}})})(jQuery);(function(e,t){var n=0;e.widget("ui.autocomplete",{version:"1.9.2",defaultElement:"<input>",options:{appendTo:"body",autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},pending:0,_create:function(){var t,n,r;this.isMultiLine=this._isMultiLine(),this.valueMethod=this.element[this.element.is("input,textarea")?"val":"text"],this.isNewMenu=!0,this.element.addClass("ui-autocomplete-input").attr("autocomplete","off"),this._on(this.element,{keydown:function(i){if(this.element.prop("readOnly")){t=!0,r=!0,n=!0;return}t=!1,r=!1,n=!1;var s=e.ui.keyCode;switch(i.keyCode){case s.PAGE_UP:t=!0,this._move("previousPage",i);break;case s.PAGE_DOWN:t=!0,this._move("nextPage",i);break;case s.UP:t=!0,this._keyEvent("previous",i);break;case s.DOWN:t=!0,this._keyEvent("next",i);break;case s.ENTER:case s.NUMPAD_ENTER:this.menu.active&&(t=!0,i.preventDefault(),this.menu.select(i));break;case s.TAB:this.menu.active&&this.menu.select(i);break;case s.ESCAPE:this.menu.element.is(":visible")&&(this._value(this.term),this.close(i),i.preventDefault());break;default:n=!0,this._searchTimeout(i)}},keypress:function(r){if(t){t=!1,r.preventDefault();return}if(n)return;var i=e.ui.keyCode;switch(r.keyCode){case i.PAGE_UP:this._move("previousPage",r);break;case i.PAGE_DOWN:this._move("nextPage",r);break;case i.UP:this._keyEvent("previous",r);break;case i.DOWN:this._keyEvent("next",r)}},input:function(e){if(r){r=!1,e.preventDefault();return}this._searchTimeout(e)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(e){if(this.cancelBlur){delete this.cancelBlur;return}clearTimeout(this.searching),this.close(e),this._change(e)}}),this._initSource(),this.menu=e("<ul>").addClass("ui-autocomplete").appendTo(this.document.find(this.options.appendTo||"body")[0]).menu({input:e(),role:null}).zIndex(this.element.zIndex()+1).hide().data("menu"),this._on(this.menu.element,{mousedown:function(t){t.preventDefault(),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur});var n=this.menu.element[0];e(t.target).closest(".ui-menu-item").length||this._delay(function(){var t=this;this.document.one("mousedown",function(r){r.target!==t.element[0]&&r.target!==n&&!e.contains(n,r.target)&&t.close()})})},menufocus:function(t,n){if(this.isNewMenu){this.isNewMenu=!1;if(t.originalEvent&&/^mouse/.test(t.originalEvent.type)){this.menu.blur(),this.document.one("mousemove",function(){e(t.target).trigger(t.originalEvent)});return}}var r=n.item.data("ui-autocomplete-item")||n.item.data("item.autocomplete");!1!==this._trigger("focus",t,{item:r})?t.originalEvent&&/^key/.test(t.originalEvent.type)&&this._value(r.value):this.liveRegion.text(r.value)},menuselect:function(e,t){var n=t.item.data("ui-autocomplete-item")||t.item.data("item.autocomplete"),r=this.previous;this.element[0]!==this.document[0].activeElement&&(this.element.focus(),this.previous=r,this._delay(function(){this.previous=r,this.selectedItem=n})),!1!==this._trigger("select",e,{item:n})&&this._value(n.value),this.term=this._value(),this.close(e),this.selectedItem=n}}),this.liveRegion=e("<span>",{role:"status","aria-live":"polite"}).addClass("ui-helper-hidden-accessible").insertAfter(this.element),e.fn.bgiframe&&this.menu.element.bgiframe(),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_destroy:function(){clearTimeout(this.searching),this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete"),this.menu.element.remove(),this.liveRegion.remove()},_setOption:function(e,t){this._super(e,t),e==="source"&&this._initSource(),e==="appendTo"&&this.menu.element.appendTo(this.document.find(t||"body")[0]),e==="disabled"&&t&&this.xhr&&this.xhr.abort()},_isMultiLine:function(){return this.element.is("textarea")?!0:this.element.is("input")?!1:this.element.prop("isContentEditable")},_initSource:function(){var t,n,r=this;e.isArray(this.options.source)?(t=this.options.source,this.source=function(n,r){r(e.ui.autocomplete.filter(t,n.term))}):typeof this.options.source=="string"?(n=this.options.source,this.source=function(t,i){r.xhr&&r.xhr.abort(),r.xhr=e.ajax({url:n,data:t,dataType:"json",success:function(e){i(e)},error:function(){i([])}})}):this.source=this.options.source},_searchTimeout:function(e){clearTimeout(this.searching),this.searching=this._delay(function(){this.term!==this._value()&&(this.selectedItem=null,this.search(null,e))},this.options.delay)},search:function(e,t){e=e!=null?e:this._value(),this.term=this._value();if(e.length<this.options.minLength)return this.close(t);if(this._trigger("search",t)===!1)return;return this._search(e)},_search:function(e){this.pending++,this.element.addClass("ui-autocomplete-loading"),this.cancelSearch=!1,this.source({term:e},this._response())},_response:function(){var e=this,t=++n;return function(r){t===n&&e.__response(r),e.pending--,e.pending||e.element.removeClass("ui-autocomplete-loading")}},__response:function(e){e&&(e=this._normalize(e)),this._trigger("response",null,{content:e}),!this.options.disabled&&e&&e.length&&!this.cancelSearch?(this._suggest(e),this._trigger("open")):this._close()},close:function(e){this.cancelSearch=!0,this._close(e)},_close:function(e){this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.blur(),this.isNewMenu=!0,this._trigger("close",e))},_change:function(e){this.previous!==this._value()&&this._trigger("change",e,{item:this.selectedItem})},_normalize:function(t){return t.length&&t[0].label&&t[0].value?t:e.map(t,function(t){return typeof t=="string"?{label:t,value:t}:e.extend({label:t.label||t.value,value:t.value||t.label},t)})},_suggest:function(t){var n=this.menu.element.empty().zIndex(this.element.zIndex()+1);this._renderMenu(n,t),this.menu.refresh(),n.show(),this._resizeMenu(),n.position(e.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next()},_resizeMenu:function(){var e=this.menu.element;e.outerWidth(Math.max(e.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(t,n){var r=this;e.each(n,function(e,n){r._renderItemData(t,n)})},_renderItemData:function(e,t){return this._renderItem(e,t).data("ui-autocomplete-item",t)},_renderItem:function(t,n){return e("<li>").append(e("<a>").text(n.label)).appendTo(t)},_move:function(e,t){if(!this.menu.element.is(":visible")){this.search(null,t);return}if(this.menu.isFirstItem()&&/^previous/.test(e)||this.menu.isLastItem()&&/^next/.test(e)){this._value(this.term),this.menu.blur();return}this.menu[e](t)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(e,t){if(!this.isMultiLine||this.menu.element.is(":visible"))this._move(e,t),t.preventDefault()}}),e.extend(e.ui.autocomplete,{escapeRegex:function(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(t,n){var r=new RegExp(e.ui.autocomplete.escapeRegex(n),"i");return e.grep(t,function(e){return r.test(e.label||e.value||e)})}}),e.widget("ui.autocomplete",e.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(e){return e+(e>1?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(e){var t;this._superApply(arguments);if(this.options.disabled||this.cancelSearch)return;e&&e.length?t=this.options.messages.results(e.length):t=this.options.messages.noResults,this.liveRegion.text(t)}})})(jQuery);(function($,undefined){function Datepicker(){this.debug=!1,this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},$.extend(this._defaults,this.regional[""]),this.dpDiv=bindHover($('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}function bindHover(e){var t="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return e.delegate(t,"mouseout",function(){$(this).removeClass("ui-state-hover"),this.className.indexOf("ui-datepicker-prev")!=-1&&$(this).removeClass("ui-datepicker-prev-hover"),this.className.indexOf("ui-datepicker-next")!=-1&&$(this).removeClass("ui-datepicker-next-hover")}).delegate(t,"mouseover",function(){$.datepicker._isDisabledDatepicker(instActive.inline?e.parent()[0]:instActive.input[0])||($(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),$(this).addClass("ui-state-hover"),this.className.indexOf("ui-datepicker-prev")!=-1&&$(this).addClass("ui-datepicker-prev-hover"),this.className.indexOf("ui-datepicker-next")!=-1&&$(this).addClass("ui-datepicker-next-hover"))})}function extendRemove(e,t){$.extend(e,t);for(var n in t)if(t[n]==null||t[n]==undefined)e[n]=t[n];return e}$.extend($.ui,{datepicker:{version:"1.9.2"}});var PROP_NAME="datepicker",dpuuid=(new Date).getTime(),instActive;$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(e){return extendRemove(this._defaults,e||{}),this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase(),inline=nodeName=="div"||nodeName=="span";target.id||(this.uuid+=1,target.id="dp"+this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{}),nodeName=="input"?this._connectDatepicker(target,inst):inline&&this._inlineDatepicker(target,inst)},_newInst:function(e,t){var n=e[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1");return{id:n,input:e,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:t,dpDiv:t?bindHover($('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')):this.dpDiv}},_connectDatepicker:function(e,t){var n=$(e);t.append=$([]),t.trigger=$([]);if(n.hasClass(this.markerClassName))return;this._attachments(n,t),n.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function(e,n,r){t.settings[n]=r}).bind("getData.datepicker",function(e,n){return this._get(t,n)}),this._autoSize(t),$.data(e,PROP_NAME,t),t.settings.disabled&&this._disableDatepicker(e)},_attachments:function(e,t){var n=this._get(t,"appendText"),r=this._get(t,"isRTL");t.append&&t.append.remove(),n&&(t.append=$('<span class="'+this._appendClass+'">'+n+"</span>"),e[r?"before":"after"](t.append)),e.unbind("focus",this._showDatepicker),t.trigger&&t.trigger.remove();var i=this._get(t,"showOn");(i=="focus"||i=="both")&&e.focus(this._showDatepicker);if(i=="button"||i=="both"){var s=this._get(t,"buttonText"),o=this._get(t,"buttonImage");t.trigger=$(this._get(t,"buttonImageOnly")?$("<img/>").addClass(this._triggerClass).attr({src:o,alt:s,title:s}):$('<button type="button"></button>').addClass(this._triggerClass).html(o==""?s:$("<img/>").attr({src:o,alt:s,title:s}))),e[r?"before":"after"](t.trigger),t.trigger.click(function(){return $.datepicker._datepickerShowing&&$.datepicker._lastInput==e[0]?$.datepicker._hideDatepicker():$.datepicker._datepickerShowing&&$.datepicker._lastInput!=e[0]?($.datepicker._hideDatepicker(),$.datepicker._showDatepicker(e[0])):$.datepicker._showDatepicker(e[0]),!1})}},_autoSize:function(e){if(this._get(e,"autoSize")&&!e.inline){var t=new Date(2009,11,20),n=this._get(e,"dateFormat");if(n.match(/[DM]/)){var r=function(e){var t=0,n=0;for(var r=0;r<e.length;r++)e[r].length>t&&(t=e[r].length,n=r);return n};t.setMonth(r(this._get(e,n.match(/MM/)?"monthNames":"monthNamesShort"))),t.setDate(r(this._get(e,n.match(/DD/)?"dayNames":"dayNamesShort"))+20-t.getDay())}e.input.attr("size",this._formatDate(e,t).length)}},_inlineDatepicker:function(e,t){var n=$(e);if(n.hasClass(this.markerClassName))return;n.addClass(this.markerClassName).append(t.dpDiv).bind("setData.datepicker",function(e,n,r){t.settings[n]=r}).bind("getData.datepicker",function(e,n){return this._get(t,n)}),$.data(e,PROP_NAME,t),this._setDate(t,this._getDefaultDate(t),!0),this._updateDatepicker(t),this._updateAlternate(t),t.settings.disabled&&this._disableDatepicker(e),t.dpDiv.css("display","block")},_dialogDatepicker:function(e,t,n,r,i){var s=this._dialogInst;if(!s){this.uuid+=1;var o="dp"+this.uuid;this._dialogInput=$('<input type="text" id="'+o+'" style="position: absolute; top: -100px; width: 0px;"/>'),this._dialogInput.keydown(this._doKeyDown),$("body").append(this._dialogInput),s=this._dialogInst=this._newInst(this._dialogInput,!1),s.settings={},$.data(this._dialogInput[0],PROP_NAME,s)}extendRemove(s.settings,r||{}),t=t&&t.constructor==Date?this._formatDate(s,t):t,this._dialogInput.val(t),this._pos=i?i.length?i:[i.pageX,i.pageY]:null;if(!this._pos){var u=document.documentElement.clientWidth,a=document.documentElement.clientHeight,f=document.documentElement.scrollLeft||document.body.scrollLeft,l=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[u/2-100+f,a/2-150+l]}return this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),s.settings.onSelect=n,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),$.blockUI&&$.blockUI(this.dpDiv),$.data(this._dialogInput[0],PROP_NAME,s),this},_destroyDatepicker:function(e){var t=$(e),n=$.data(e,PROP_NAME);if(!t.hasClass(this.markerClassName))return;var r=e.nodeName.toLowerCase();$.removeData(e,PROP_NAME),r=="input"?(n.append.remove(),n.trigger.remove(),t.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):(r=="div"||r=="span")&&t.removeClass(this.markerClassName).empty()},_enableDatepicker:function(e){var t=$(e),n=$.data(e,PROP_NAME);if(!t.hasClass(this.markerClassName))return;var r=e.nodeName.toLowerCase();if(r=="input")e.disabled=!1,n.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""});else if(r=="div"||r=="span"){var i=t.children("."+this._inlineClass);i.children().removeClass("ui-state-disabled"),i.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)}this._disabledInputs=$.map(this._disabledInputs,function(t){return t==e?null:t})},_disableDatepicker:function(e){var t=$(e),n=$.data(e,PROP_NAME);if(!t.hasClass(this.markerClassName))return;var r=e.nodeName.toLowerCase();if(r=="input")e.disabled=!0,n.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"});else if(r=="div"||r=="span"){var i=t.children("."+this._inlineClass);i.children().addClass("ui-state-disabled"),i.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)}this._disabledInputs=$.map(this._disabledInputs,function(t){return t==e?null:t}),this._disabledInputs[this._disabledInputs.length]=e},_isDisabledDatepicker:function(e){if(!e)return!1;for(var t=0;t<this._disabledInputs.length;t++)if(this._disabledInputs[t]==e)return!0;return!1},_getInst:function(e){try{return $.data(e,PROP_NAME)}catch(t){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(e,t,n){var r=this._getInst(e);if(arguments.length==2&&typeof t=="string")return t=="defaults"?$.extend({},$.datepicker._defaults):r?t=="all"?$.extend({},r.settings):this._get(r,t):null;var i=t||{};typeof t=="string"&&(i={},i[t]=n);if(r){this._curInst==r&&this._hideDatepicker();var s=this._getDateDatepicker(e,!0),o=this._getMinMaxDate(r,"min"),u=this._getMinMaxDate(r,"max");extendRemove(r.settings,i),o!==null&&i.dateFormat!==undefined&&i.minDate===undefined&&(r.settings.minDate=this._formatDate(r,o)),u!==null&&i.dateFormat!==undefined&&i.maxDate===undefined&&(r.settings.maxDate=this._formatDate(r,u)),this._attachments($(e),r),this._autoSize(r),this._setDate(r,s),this._updateAlternate(r),this._updateDatepicker(r)}},_changeDatepicker:function(e,t,n){this._optionDatepicker(e,t,n)},_refreshDatepicker:function(e){var t=this._getInst(e);t&&this._updateDatepicker(t)},_setDateDatepicker:function(e,t){var n=this._getInst(e);n&&(this._setDate(n,t),this._updateDatepicker(n),this._updateAlternate(n))},_getDateDatepicker:function(e,t){var n=this._getInst(e);return n&&!n.inline&&this._setDateFromField(n,t),n?this._getDate(n):null},_doKeyDown:function(e){var t=$.datepicker._getInst(e.target),n=!0,r=t.dpDiv.is(".ui-datepicker-rtl");t._keyEvent=!0;if($.datepicker._datepickerShowing)switch(e.keyCode){case 9:$.datepicker._hideDatepicker(),n=!1;break;case 13:var i=$("td."+$.datepicker._dayOverClass+":not(."+$.datepicker._currentClass+")",t.dpDiv);i[0]&&$.datepicker._selectDay(e.target,t.selectedMonth,t.selectedYear,i[0]);var s=$.datepicker._get(t,"onSelect");if(s){var o=$.datepicker._formatDate(t);s.apply(t.input?t.input[0]:null,[o,t])}else $.datepicker._hideDatepicker();return!1;case 27:$.datepicker._hideDatepicker();break;case 33:$.datepicker._adjustDate(e.target,e.ctrlKey?-$.datepicker._get(t,"stepBigMonths"):-$.datepicker._get(t,"stepMonths"),"M");break;case 34:$.datepicker._adjustDate(e.target,e.ctrlKey?+$.datepicker._get(t,"stepBigMonths"):+$.datepicker._get(t,"stepMonths"),"M");break;case 35:(e.ctrlKey||e.metaKey)&&$.datepicker._clearDate(e.target),n=e.ctrlKey||e.metaKey;break;case 36:(e.ctrlKey||e.metaKey)&&$.datepicker._gotoToday(e.target),n=e.ctrlKey||e.metaKey;break;case 37:(e.ctrlKey||e.metaKey)&&$.datepicker._adjustDate(e.target,r?1:-1,"D"),n=e.ctrlKey||e.metaKey,e.originalEvent.altKey&&$.datepicker._adjustDate(e.target,e.ctrlKey?-$.datepicker._get(t,"stepBigMonths"):-$.datepicker._get(t,"stepMonths"),"M");break;case 38:(e.ctrlKey||e.metaKey)&&$.datepicker._adjustDate(e.target,-7,"D"),n=e.ctrlKey||e.metaKey;break;case 39:(e.ctrlKey||e.metaKey)&&$.datepicker._adjustDate(e.target,r?-1:1,"D"),n=e.ctrlKey||e.metaKey,e.originalEvent.altKey&&$.datepicker._adjustDate(e.target,e.ctrlKey?+$.datepicker._get(t,"stepBigMonths"):+$.datepicker._get(t,"stepMonths"),"M");break;case 40:(e.ctrlKey||e.metaKey)&&$.datepicker._adjustDate(e.target,7,"D"),n=e.ctrlKey||e.metaKey;break;default:n=!1}else e.keyCode==36&&e.ctrlKey?$.datepicker._showDatepicker(this):n=!1;n&&(e.preventDefault(),e.stopPropagation())},_doKeyPress:function(e){var t=$.datepicker._getInst(e.target);if($.datepicker._get(t,"constrainInput")){var n=$.datepicker._possibleChars($.datepicker._get(t,"dateFormat")),r=String.fromCharCode(e.charCode==undefined?e.keyCode:e.charCode);return e.ctrlKey||e.metaKey||r<" "||!n||n.indexOf(r)>-1}},_doKeyUp:function(e){var t=$.datepicker._getInst(e.target);if(t.input.val()!=t.lastVal)try{var n=$.datepicker.parseDate($.datepicker._get(t,"dateFormat"),t.input?t.input.val():null,$.datepicker._getFormatConfig(t));n&&($.datepicker._setDateFromField(t),$.datepicker._updateAlternate(t),$.datepicker._updateDatepicker(t))}catch(r){$.datepicker.log(r)}return!0},_showDatepicker:function(e){e=e.target||e,e.nodeName.toLowerCase()!="input"&&(e=$("input",e.parentNode)[0]);if($.datepicker._isDisabledDatepicker(e)||$.datepicker._lastInput==e)return;var t=$.datepicker._getInst(e);$.datepicker._curInst&&$.datepicker._curInst!=t&&($.datepicker._curInst.dpDiv.stop(!0,!0),t&&$.datepicker._datepickerShowing&&$.datepicker._hideDatepicker($.datepicker._curInst.input[0]));var n=$.datepicker._get(t,"beforeShow"),r=n?n.apply(e,[e,t]):{};if(r===!1)return;extendRemove(t.settings,r),t.lastVal=null,$.datepicker._lastInput=e,$.datepicker._setDateFromField(t),$.datepicker._inDialog&&(e.value=""),$.datepicker._pos||($.datepicker._pos=$.datepicker._findPos(e),$.datepicker._pos[1]+=e.offsetHeight);var i=!1;$(e).parents().each(function(){return i|=$(this).css("position")=="fixed",!i});var s={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null,t.dpDiv.empty(),t.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.datepicker._updateDatepicker(t),s=$.datepicker._checkOffset(t,s,i),t.dpDiv.css({position:$.datepicker._inDialog&&$.blockUI?"static":i?"fixed":"absolute",display:"none",left:s.left+"px",top:s.top+"px"});if(!t.inline){var o=$.datepicker._get(t,"showAnim"),u=$.datepicker._get(t,"duration"),a=function(){var e=t.dpDiv.find("iframe.ui-datepicker-cover");if(!!e.length){var n=$.datepicker._getBorders(t.dpDiv);e.css({left:-n[0],top:-n[1],width:t.dpDiv.outerWidth(),height:t.dpDiv.outerHeight()})}};t.dpDiv.zIndex($(e).zIndex()+1),$.datepicker._datepickerShowing=!0,$.effects&&($.effects.effect[o]||$.effects[o])?t.dpDiv.show(o,$.datepicker._get(t,"showOptions"),u,a):t.dpDiv[o||"show"](o?u:null,a),(!o||!u)&&a(),t.input.is(":visible")&&!t.input.is(":disabled")&&t.input.focus(),$.datepicker._curInst=t}},_updateDatepicker:function(e){this.maxRows=4;var t=$.datepicker._getBorders(e.dpDiv);instActive=e,e.dpDiv.empty().append(this._generateHTML(e)),this._attachHandlers(e);var n=e.dpDiv.find("iframe.ui-datepicker-cover");!n.length||n.css({left:-t[0],top:-t[1],width:e.dpDiv.outerWidth(),height:e.dpDiv.outerHeight()}),e.dpDiv.find("."+this._dayOverClass+" a").mouseover();var r=this._getNumberOfMonths(e),i=r[1],s=17;e.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),i>1&&e.dpDiv.addClass("ui-datepicker-multi-"+i).css("width",s*i+"em"),e.dpDiv[(r[0]!=1||r[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi"),e.dpDiv[(this._get(e,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),e==$.datepicker._curInst&&$.datepicker._datepickerShowing&&e.input&&e.input.is(":visible")&&!e.input.is(":disabled")&&e.input[0]!=document.activeElement&&e.input.focus();if(e.yearshtml){var o=e.yearshtml;setTimeout(function(){o===e.yearshtml&&e.yearshtml&&e.dpDiv.find("select.ui-datepicker-year:first").replaceWith(e.yearshtml),o=e.yearshtml=null},0)}},_getBorders:function(e){var t=function(e){return{thin:1,medium:2,thick:3}[e]||e};return[parseFloat(t(e.css("border-left-width"))),parseFloat(t(e.css("border-top-width")))]},_checkOffset:function(e,t,n){var r=e.dpDiv.outerWidth(),i=e.dpDiv.outerHeight(),s=e.input?e.input.outerWidth():0,o=e.input?e.input.outerHeight():0,u=document.documentElement.clientWidth+(n?0:$(document).scrollLeft()),a=document.documentElement.clientHeight+(n?0:$(document).scrollTop());return t.left-=this._get(e,"isRTL")?r-s:0,t.left-=n&&t.left==e.input.offset().left?$(document).scrollLeft():0,t.top-=n&&t.top==e.input.offset().top+o?$(document).scrollTop():0,t.left-=Math.min(t.left,t.left+r>u&&u>r?Math.abs(t.left+r-u):0),t.top-=Math.min(t.top,t.top+i>a&&a>i?Math.abs(i+o):0),t},_findPos:function(e){var t=this._getInst(e),n=this._get(t,"isRTL");while(e&&(e.type=="hidden"||e.nodeType!=1||$.expr.filters.hidden(e)))e=e[n?"previousSibling":"nextSibling"];var r=$(e).offset();return[r.left,r.top]},_hideDatepicker:function(e){var t=this._curInst;if(!t||e&&t!=$.data(e,PROP_NAME))return;if(this._datepickerShowing){var n=this._get(t,"showAnim"),r=this._get(t,"duration"),i=function(){$.datepicker._tidyDialog(t)};$.effects&&($.effects.effect[n]||$.effects[n])?t.dpDiv.hide(n,$.datepicker._get(t,"showOptions"),r,i):t.dpDiv[n=="slideDown"?"slideUp":n=="fadeIn"?"fadeOut":"hide"](n?r:null,i),n||i(),this._datepickerShowing=!1;var s=this._get(t,"onClose");s&&s.apply(t.input?t.input[0]:null,[t.input?t.input.val():"",t]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),$.blockUI&&($.unblockUI(),$("body").append(this.dpDiv))),this._inDialog=!1}},_tidyDialog:function(e){e.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(e){if(!$.datepicker._curInst)return;var t=$(e.target),n=$.datepicker._getInst(t[0]);(t[0].id!=$.datepicker._mainDivId&&t.parents("#"+$.datepicker._mainDivId).length==0&&!t.hasClass($.datepicker.markerClassName)&&!t.closest("."+$.datepicker._triggerClass).length&&$.datepicker._datepickerShowing&&(!$.datepicker._inDialog||!$.blockUI)||t.hasClass($.datepicker.markerClassName)&&$.datepicker._curInst!=n)&&$.datepicker._hideDatepicker()},_adjustDate:function(e,t,n){var r=$(e),i=this._getInst(r[0]);if(this._isDisabledDatepicker(r[0]))return;this._adjustInstDate(i,t+(n=="M"?this._get(i,"showCurrentAtPos"):0),n),this._updateDatepicker(i)},_gotoToday:function(e){var t=$(e),n=this._getInst(t[0]);if(this._get(n,"gotoCurrent")&&n.currentDay)n.selectedDay=n.currentDay,n.drawMonth=n.selectedMonth=n.currentMonth,n.drawYear=n.selectedYear=n.currentYear;else{var r=new Date;n.selectedDay=r.getDate(),n.drawMonth=n.selectedMonth=r.getMonth(),n.drawYear=n.selectedYear=r.getFullYear()}this._notifyChange(n),this._adjustDate(t)},_selectMonthYear:function(e,t,n){var r=$(e),i=this._getInst(r[0]);i["selected"+(n=="M"?"Month":"Year")]=i["draw"+(n=="M"?"Month":"Year")]=parseInt(t.options[t.selectedIndex].value,10),this._notifyChange(i),this._adjustDate(r)},_selectDay:function(e,t,n,r){var i=$(e);if($(r).hasClass(this._unselectableClass)||this._isDisabledDatepicker(i[0]))return;var s=this._getInst(i[0]);s.selectedDay=s.currentDay=$("a",r).html(),s.selectedMonth=s.currentMonth=t,s.selectedYear=s.currentYear=n,this._selectDate(e,this._formatDate(s,s.currentDay,s.currentMonth,s.currentYear))},_clearDate:function(e){var t=$(e),n=this._getInst(t[0]);this._selectDate(t,"")},_selectDate:function(e,t){var n=$(e),r=this._getInst(n[0]);t=t!=null?t:this._formatDate(r),r.input&&r.input.val(t),this._updateAlternate(r);var i=this._get(r,"onSelect");i?i.apply(r.input?r.input[0]:null,[t,r]):r.input&&r.input.trigger("change"),r.inline?this._updateDatepicker(r):(this._hideDatepicker(),this._lastInput=r.input[0],typeof r.input[0]!="object"&&r.input.focus(),this._lastInput=null)},_updateAlternate:function(e){var t=this._get(e,"altField");if(t){var n=this._get(e,"altFormat")||this._get(e,"dateFormat"),r=this._getDate(e),i=this.formatDate(n,r,this._getFormatConfig(e));$(t).each(function(){$(this).val(i)})}},noWeekends:function(e){var t=e.getDay();return[t>0&&t<6,""]},iso8601Week:function(e){var t=new Date(e.getTime());t.setDate(t.getDate()+4-(t.getDay()||7));var n=t.getTime();return t.setMonth(0),t.setDate(1),Math.floor(Math.round((n-t)/864e5)/7)+1},parseDate:function(e,t,n){if(e==null||t==null)throw"Invalid arguments";t=typeof t=="object"?t.toString():t+"";if(t=="")return null;var r=(n?n.shortYearCutoff:null)||this._defaults.shortYearCutoff;r=typeof r!="string"?r:(new Date).getFullYear()%100+parseInt(r,10);var i=(n?n.dayNamesShort:null)||this._defaults.dayNamesShort,s=(n?n.dayNames:null)||this._defaults.dayNames,o=(n?n.monthNamesShort:null)||this._defaults.monthNamesShort,u=(n?n.monthNames:null)||this._defaults.monthNames,a=-1,f=-1,l=-1,c=-1,h=!1,p=function(t){var n=y+1<e.length&&e.charAt(y+1)==t;return n&&y++,n},d=function(e){var n=p(e),r=e=="@"?14:e=="!"?20:e=="y"&&n?4:e=="o"?3:2,i=new RegExp("^\\d{1,"+r+"}"),s=t.substring(g).match(i);if(!s)throw"Missing number at position "+g;return g+=s[0].length,parseInt(s[0],10)},v=function(e,n,r){var i=$.map(p(e)?r:n,function(e,t){return[[t,e]]}).sort(function(e,t){return-(e[1].length-t[1].length)}),s=-1;$.each(i,function(e,n){var r=n[1];if(t.substr(g,r.length).toLowerCase()==r.toLowerCase())return s=n[0],g+=r.length,!1});if(s!=-1)return s+1;throw"Unknown name at position "+g},m=function(){if(t.charAt(g)!=e.charAt(y))throw"Unexpected literal at position "+g;g++},g=0;for(var y=0;y<e.length;y++)if(h)e.charAt(y)=="'"&&!p("'")?h=!1:m();else switch(e.charAt(y)){case"d":l=d("d");break;case"D":v("D",i,s);break;case"o":c=d("o");break;case"m":f=d("m");break;case"M":f=v("M",o,u);break;case"y":a=d("y");break;case"@":var b=new Date(d("@"));a=b.getFullYear(),f=b.getMonth()+1,l=b.getDate();break;case"!":var b=new Date((d("!")-this._ticksTo1970)/1e4);a=b.getFullYear(),f=b.getMonth()+1,l=b.getDate();break;case"'":p("'")?m():h=!0;break;default:m()}if(g<t.length){var w=t.substr(g);if(!/^\s+/.test(w))throw"Extra/unparsed characters found in date: "+w}a==-1?a=(new Date).getFullYear():a<100&&(a+=(new Date).getFullYear()-(new Date).getFullYear()%100+(a<=r?0:-100));if(c>-1){f=1,l=c;do{var E=this._getDaysInMonth(a,f-1);if(l<=E)break;f++,l-=E}while(!0)}var b=this._daylightSavingAdjust(new Date(a,f-1,l));if(b.getFullYear()!=a||b.getMonth()+1!=f||b.getDate()!=l)throw"Invalid date";return b},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1e7,formatDate:function(e,t,n){if(!t)return"";var r=(n?n.dayNamesShort:null)||this._defaults.dayNamesShort,i=(n?n.dayNames:null)||this._defaults.dayNames,s=(n?n.monthNamesShort:null)||this._defaults.monthNamesShort,o=(n?n.monthNames:null)||this._defaults.monthNames,u=function(t){var n=h+1<e.length&&e.charAt(h+1)==t;return n&&h++,n},a=function(e,t,n){var r=""+t;if(u(e))while(r.length<n)r="0"+r;return r},f=function(e,t,n,r){return u(e)?r[t]:n[t]},l="",c=!1;if(t)for(var h=0;h<e.length;h++)if(c)e.charAt(h)=="'"&&!u("'")?c=!1:l+=e.charAt(h);else switch(e.charAt(h)){case"d":l+=a("d",t.getDate(),2);break;case"D":l+=f("D",t.getDay(),r,i);break;case"o":l+=a("o",Math.round(((new Date(t.getFullYear(),t.getMonth(),t.getDate())).getTime()-(new Date(t.getFullYear(),0,0)).getTime())/864e5),3);break;case"m":l+=a("m",t.getMonth()+1,2);break;case"M":l+=f("M",t.getMonth(),s,o);break;case"y":l+=u("y")?t.getFullYear():(t.getYear()%100<10?"0":"")+t.getYear()%100;break;case"@":l+=t.getTime();break;case"!":l+=t.getTime()*1e4+this._ticksTo1970;break;case"'":u("'")?l+="'":c=!0;break;default:l+=e.charAt(h)}return l},_possibleChars:function(e){var t="",n=!1,r=function(t){var n=i+1<e.length&&e.charAt(i+1)==t;return n&&i++,n};for(var i=0;i<e.length;i++)if(n)e.charAt(i)=="'"&&!r("'")?n=!1:t+=e.charAt(i);else switch(e.charAt(i)){case"d":case"m":case"y":case"@":t+="0123456789";break;case"D":case"M":return null;case"'":r("'")?t+="'":n=!0;break;default:t+=e.charAt(i)}return t},_get:function(e,t){return e.settings[t]!==undefined?e.settings[t]:this._defaults[t]},_setDateFromField:function(e,t){if(e.input.val()==e.lastVal)return;var n=this._get(e,"dateFormat"),r=e.lastVal=e.input?e.input.val():null,i,s;i=s=this._getDefaultDate(e);var o=this._getFormatConfig(e);try{i=this.parseDate(n,r,o)||s}catch(u){this.log(u),r=t?"":r}e.selectedDay=i.getDate(),e.drawMonth=e.selectedMonth=i.getMonth(),e.drawYear=e.selectedYear=i.getFullYear(),e.currentDay=r?i.getDate():0,e.currentMonth=r?i.getMonth():0,e.currentYear=r?i.getFullYear():0,this._adjustInstDate(e)},_getDefaultDate:function(e){return this._restrictMinMax(e,this._determineDate(e,this._get(e,"defaultDate"),new Date))},_determineDate:function(e,t,n){var r=function(e){var t=new Date;return t.setDate(t.getDate()+e),t},i=function(t){try{return $.datepicker.parseDate($.datepicker._get(e,"dateFormat"),t,$.datepicker._getFormatConfig(e))}catch(n){}var r=(t.toLowerCase().match(/^c/)?$.datepicker._getDate(e):null)||new Date,i=r.getFullYear(),s=r.getMonth(),o=r.getDate(),u=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,a=u.exec(t);while(a){switch(a[2]||"d"){case"d":case"D":o+=parseInt(a[1],10);break;case"w":case"W":o+=parseInt(a[1],10)*7;break;case"m":case"M":s+=parseInt(a[1],10),o=Math.min(o,$.datepicker._getDaysInMonth(i,s));break;case"y":case"Y":i+=parseInt(a[1],10),o=Math.min(o,$.datepicker._getDaysInMonth(i,s))}a=u.exec(t)}return new Date(i,s,o)},s=t==null||t===""?n:typeof t=="string"?i(t):typeof t=="number"?isNaN(t)?n:r(t):new Date(t.getTime());return s=s&&s.toString()=="Invalid Date"?n:s,s&&(s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0)),this._daylightSavingAdjust(s)},_daylightSavingAdjust:function(e){return e?(e.setHours(e.getHours()>12?e.getHours()+2:0),e):null},_setDate:function(e,t,n){var r=!t,i=e.selectedMonth,s=e.selectedYear,o=this._restrictMinMax(e,this._determineDate(e,t,new Date));e.selectedDay=e.currentDay=o.getDate(),e.drawMonth=e.selectedMonth=e.currentMonth=o.getMonth(),e.drawYear=e.selectedYear=e.currentYear=o.getFullYear(),(i!=e.selectedMonth||s!=e.selectedYear)&&!n&&this._notifyChange(e),this._adjustInstDate(e),e.input&&e.input.val(r?"":this._formatDate(e))},_getDate:function(e){var t=!e.currentYear||e.input&&e.input.val()==""?null:this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return t},_attachHandlers:function(e){var t=this._get(e,"stepMonths"),n="#"+e.id.replace(/\\\\/g,"\\");e.dpDiv.find("[data-handler]").map(function(){var e={prev:function(){window["DP_jQuery_"+dpuuid].datepicker._adjustDate(n,-t,"M")},next:function(){window["DP_jQuery_"+dpuuid].datepicker._adjustDate(n,+t,"M")},hide:function(){window["DP_jQuery_"+dpuuid].datepicker._hideDatepicker()},today:function(){window["DP_jQuery_"+dpuuid].datepicker._gotoToday(n)},selectDay:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectDay(n,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectMonthYear(n,this,"M"),!1},selectYear:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectMonthYear(n,this,"Y"),!1}};$(this).bind(this.getAttribute("data-event"),e[this.getAttribute("data-handler")])})},_generateHTML:function(e){var t=new Date;t=this._daylightSavingAdjust(new Date(t.getFullYear(),t.getMonth(),t.getDate()));var n=this._get(e,"isRTL"),r=this._get(e,"showButtonPanel"),i=this._get(e,"hideIfNoPrevNext"),s=this._get(e,"navigationAsDateFormat"),o=this._getNumberOfMonths(e),u=this._get(e,"showCurrentAtPos"),a=this._get(e,"stepMonths"),f=o[0]!=1||o[1]!=1,l=this._daylightSavingAdjust(e.currentDay?new Date(e.currentYear,e.currentMonth,e.currentDay):new Date(9999,9,9)),c=this._getMinMaxDate(e,"min"),h=this._getMinMaxDate(e,"max"),p=e.drawMonth-u,d=e.drawYear;p<0&&(p+=12,d--);if(h){var v=this._daylightSavingAdjust(new Date(h.getFullYear(),h.getMonth()-o[0]*o[1]+1,h.getDate()));v=c&&v<c?c:v;while(this._daylightSavingAdjust(new Date(d,p,1))>v)p--,p<0&&(p=11,d--)}e.drawMonth=p,e.drawYear=d;var m=this._get(e,"prevText");m=s?this.formatDate(m,this._daylightSavingAdjust(new Date(d,p-a,1)),this._getFormatConfig(e)):m;var g=this._canAdjustMonth(e,-1,d,p)?'<a class="ui-datepicker-prev ui-corner-all" data-handler="prev" data-event="click" title="'+m+'"><span class="ui-icon ui-icon-circle-triangle-'+(n?"e":"w")+'">'+m+"</span></a>":i?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+m+'"><span class="ui-icon ui-icon-circle-triangle-'+(n?"e":"w")+'">'+m+"</span></a>",y=this._get(e,"nextText");y=s?this.formatDate(y,this._daylightSavingAdjust(new Date(d,p+a,1)),this._getFormatConfig(e)):y;var b=this._canAdjustMonth(e,1,d,p)?'<a class="ui-datepicker-next ui-corner-all" data-handler="next" data-event="click" title="'+y+'"><span class="ui-icon ui-icon-circle-triangle-'+(n?"w":"e")+'">'+y+"</span></a>":i?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+y+'"><span class="ui-icon ui-icon-circle-triangle-'+(n?"w":"e")+'">'+y+"</span></a>",w=this._get(e,"currentText"),E=this._get(e,"gotoCurrent")&&e.currentDay?l:t;w=s?this.formatDate(w,E,this._getFormatConfig(e)):w;var S=e.inline?"":'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" data-handler="hide" data-event="click">'+this._get(e,"closeText")+"</button>",x=r?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(n?S:"")+(this._isInRange(e,E)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" data-handler="today" data-event="click">'+w+"</button>":"")+(n?"":S)+"</div>":"",T=parseInt(this._get(e,"firstDay"),10);T=isNaN(T)?0:T;var N=this._get(e,"showWeek"),C=this._get(e,"dayNames"),k=this._get(e,"dayNamesShort"),L=this._get(e,"dayNamesMin"),A=this._get(e,"monthNames"),O=this._get(e,"monthNamesShort"),M=this._get(e,"beforeShowDay"),_=this._get(e,"showOtherMonths"),D=this._get(e,"selectOtherMonths"),P=this._get(e,"calculateWeek")||this.iso8601Week,H=this._getDefaultDate(e),B="";for(var j=0;j<o[0];j++){var F="";this.maxRows=4;for(var I=0;I<o[1];I++){var q=this._daylightSavingAdjust(new Date(d,p,e.selectedDay)),R=" ui-corner-all",U="";if(f){U+='<div class="ui-datepicker-group';if(o[1]>1)switch(I){case 0:U+=" ui-datepicker-group-first",R=" ui-corner-"+(n?"right":"left");break;case o[1]-1:U+=" ui-datepicker-group-last",R=" ui-corner-"+(n?"left":"right");break;default:U+=" ui-datepicker-group-middle",R=""}U+='">'}U+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+R+'">'+(/all|left/.test(R)&&j==0?n?b:g:"")+(/all|right/.test(R)&&j==0?n?g:b:"")+this._generateMonthYearHeader(e,p,d,c,h,j>0||I>0,A,O)+'</div><table class="ui-datepicker-calendar"><thead>'+"<tr>";var z=N?'<th class="ui-datepicker-week-col">'+this._get(e,"weekHeader")+"</th>":"";for(var W=0;W<7;W++){var X=(W+T)%7;z+="<th"+((W+T+6)%7>=5?' class="ui-datepicker-week-end"':"")+">"+'<span title="'+C[X]+'">'+L[X]+"</span></th>"}U+=z+"</tr></thead><tbody>";var V=this._getDaysInMonth(d,p);d==e.selectedYear&&p==e.selectedMonth&&(e.selectedDay=Math.min(e.selectedDay,V));var J=(this._getFirstDayOfMonth(d,p)-T+7)%7,K=Math.ceil((J+V)/7),Q=f?this.maxRows>K?this.maxRows:K:K;this.maxRows=Q;var G=this._daylightSavingAdjust(new Date(d,p,1-J));for(var Y=0;Y<Q;Y++){U+="<tr>";var Z=N?'<td class="ui-datepicker-week-col">'+this._get(e,"calculateWeek")(G)+"</td>":"";for(var W=0;W<7;W++){var et=M?M.apply(e.input?e.input[0]:null,[G]):[!0,""],tt=G.getMonth()!=p,nt=tt&&!D||!et[0]||c&&G<c||h&&G>h;Z+='<td class="'+((W+T+6)%7>=5?" ui-datepicker-week-end":"")+(tt?" ui-datepicker-other-month":"")+(G.getTime()==q.getTime()&&p==e.selectedMonth&&e._keyEvent||H.getTime()==G.getTime()&&H.getTime()==q.getTime()?" "+this._dayOverClass:"")+(nt?" "+this._unselectableClass+" ui-state-disabled":"")+(tt&&!_?"":" "+et[1]+(G.getTime()==l.getTime()?" "+this._currentClass:"")+(G.getTime()==t.getTime()?" ui-datepicker-today":""))+'"'+((!tt||_)&&et[2]?' title="'+et[2]+'"':"")+(nt?"":' data-handler="selectDay" data-event="click" data-month="'+G.getMonth()+'" data-year="'+G.getFullYear()+'"')+">"+(tt&&!_?"&#xa0;":nt?'<span class="ui-state-default">'+G.getDate()+"</span>":'<a class="ui-state-default'+(G.getTime()==t.getTime()?" ui-state-highlight":"")+(G.getTime()==l.getTime()?" ui-state-active":"")+(tt?" ui-priority-secondary":"")+'" href="#">'+G.getDate()+"</a>")+"</td>",G.setDate(G.getDate()+1),G=this._daylightSavingAdjust(G)}U+=Z+"</tr>"}p++,p>11&&(p=0,d++),U+="</tbody></table>"+(f?"</div>"+(o[0]>0&&I==o[1]-1?'<div class="ui-datepicker-row-break"></div>':""):""),F+=U}B+=F}return B+=x+($.ui.ie6&&!e.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':""),e._keyEvent=!1,B},_generateMonthYearHeader:function(e,t,n,r,i,s,o,u){var a=this._get(e,"changeMonth"),f=this._get(e,"changeYear"),l=this._get(e,"showMonthAfterYear"),c='<div class="ui-datepicker-title">',h="";if(s||!a)h+='<span class="ui-datepicker-month">'+o[t]+"</span>";else{var p=r&&r.getFullYear()==n,d=i&&i.getFullYear()==n;h+='<select class="ui-datepicker-month" data-handler="selectMonth" data-event="change">';for(var v=0;v<12;v++)(!p||v>=r.getMonth())&&(!d||v<=i.getMonth())&&(h+='<option value="'+v+'"'+(v==t?' selected="selected"':"")+">"+u[v]+"</option>");h+="</select>"}l||(c+=h+(s||!a||!f?"&#xa0;":""));if(!e.yearshtml){e.yearshtml="";if(s||!f)c+='<span class="ui-datepicker-year">'+n+"</span>";else{var m=this._get(e,"yearRange").split(":"),g=(new Date).getFullYear(),y=function(e){var t=e.match(/c[+-].*/)?n+parseInt(e.substring(1),10):e.match(/[+-].*/)?g+parseInt(e,10):parseInt(e,10);return isNaN(t)?g:t},b=y(m[0]),w=Math.max(b,y(m[1]||""));b=r?Math.max(b,r.getFullYear()):b,w=i?Math.min(w,i.getFullYear()):w,e.yearshtml+='<select class="ui-datepicker-year" data-handler="selectYear" data-event="change">';for(;b<=w;b++)e.yearshtml+='<option value="'+b+'"'+(b==n?' selected="selected"':"")+">"+b+"</option>";e.yearshtml+="</select>",c+=e.yearshtml,e.yearshtml=null}}return c+=this._get(e,"yearSuffix"),l&&(c+=(s||!a||!f?"&#xa0;":"")+h),c+="</div>",c},_adjustInstDate:function(e,t,n){var r=e.drawYear+(n=="Y"?t:0),i=e.drawMonth+(n=="M"?t:0),s=Math.min(e.selectedDay,this._getDaysInMonth(r,i))+(n=="D"?t:0),o=this._restrictMinMax(e,this._daylightSavingAdjust(new Date(r,i,s)));e.selectedDay=o.getDate(),e.drawMonth=e.selectedMonth=o.getMonth(),e.drawYear=e.selectedYear=o.getFullYear(),(n=="M"||n=="Y")&&this._notifyChange(e)},_restrictMinMax:function(e,t){var n=this._getMinMaxDate(e,"min"),r=this._getMinMaxDate(e,"max"),i=n&&t<n?n:t;return i=r&&i>r?r:i,i},_notifyChange:function(e){var t=this._get(e,"onChangeMonthYear");t&&t.apply(e.input?e.input[0]:null,[e.selectedYear,e.selectedMonth+1,e])},_getNumberOfMonths:function(e){var t=this._get(e,"numberOfMonths");return t==null?[1,1]:typeof t=="number"?[1,t]:t},_getMinMaxDate:function(e,t){return this._determineDate(e,this._get(e,t+"Date"),null)},_getDaysInMonth:function(e,t){return 32-this._daylightSavingAdjust(new Date(e,t,32)).getDate()},_getFirstDayOfMonth:function(e,t){return(new Date(e,t,1)).getDay()},_canAdjustMonth:function(e,t,n,r){var i=this._getNumberOfMonths(e),s=this._daylightSavingAdjust(new Date(n,r+(t<0?t:i[0]*i[1]),1));return t<0&&s.setDate(this._getDaysInMonth(s.getFullYear(),s.getMonth())),this._isInRange(e,s)},_isInRange:function(e,t){var n=this._getMinMaxDate(e,"min"),r=this._getMinMaxDate(e,"max");return(!n||t.getTime()>=n.getTime())&&(!r||t.getTime()<=r.getTime())},_getFormatConfig:function(e){var t=this._get(e,"shortYearCutoff");return t=typeof t!="string"?t:(new Date).getFullYear()%100+parseInt(t,10),{shortYearCutoff:t,dayNamesShort:this._get(e,"dayNamesShort"),dayNames:this._get(e,"dayNames"),monthNamesShort:this._get(e,"monthNamesShort"),monthNames:this._get(e,"monthNames")}},_formatDate:function(e,t,n,r){t||(e.currentDay=e.selectedDay,e.currentMonth=e.selectedMonth,e.currentYear=e.selectedYear);var i=t?typeof t=="object"?t:this._daylightSavingAdjust(new Date(r,n,t)):this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return this.formatDate(this._get(e,"dateFormat"),i,this._getFormatConfig(e))}}),$.fn.datepicker=function(e){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find(document.body).append($.datepicker.dpDiv),$.datepicker.initialized=!0);var t=Array.prototype.slice.call(arguments,1);return typeof e!="string"||e!="isDisabled"&&e!="getDate"&&e!="widget"?e=="option"&&arguments.length==2&&typeof arguments[1]=="string"?$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this[0]].concat(t)):this.each(function(){typeof e=="string"?$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this].concat(t)):$.datepicker._attachDatepicker(this,e)}):$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this[0]].concat(t))},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="1.9.2",window["DP_jQuery_"+dpuuid]=$})(jQuery);(function(e,t){var n=!1;e.widget("ui.menu",{version:"1.9.2",defaultElement:"<ul>",delay:300,options:{icons:{submenu:"ui-icon-carat-1-e"},menus:"ul",position:{my:"left top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.element.uniqueId().addClass("ui-menu ui-widget ui-widget-content ui-corner-all").toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length).attr({role:this.options.role,tabIndex:0}).bind("click"+this.eventNamespace,e.proxy(function(e){this.options.disabled&&e.preventDefault()},this)),this.options.disabled&&this.element.addClass("ui-state-disabled").attr("aria-disabled","true"),this._on({"mousedown .ui-menu-item > a":function(e){e.preventDefault()},"click .ui-state-disabled > a":function(e){e.preventDefault()},"click .ui-menu-item:has(a)":function(t){var r=e(t.target).closest(".ui-menu-item");!n&&r.not(".ui-state-disabled").length&&(n=!0,this.select(t),r.has(".ui-menu").length?this.expand(t):this.element.is(":focus")||(this.element.trigger("focus",[!0]),this.active&&this.active.parents(".ui-menu").length===1&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(t){var n=e(t.currentTarget);n.siblings().children(".ui-state-active").removeClass("ui-state-active"),this.focus(t,n)},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(e,t){var n=this.active||this.element.children(".ui-menu-item").eq(0);t||this.focus(e,n)},blur:function(t){this._delay(function(){e.contains(this.element[0],this.document[0].activeElement)||this.collapseAll(t)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(t){e(t.target).closest(".ui-menu").length||this.collapseAll(t),n=!1}})},_destroy:function(){this.element.removeAttr("aria-activedescendant").find(".ui-menu").andSelf().removeClass("ui-menu ui-widget ui-widget-content ui-corner-all ui-menu-icons").removeAttr("role").removeAttr("tabIndex").removeAttr("aria-labelledby").removeAttr("aria-expanded").removeAttr("aria-hidden").removeAttr("aria-disabled").removeUniqueId().show(),this.element.find(".ui-menu-item").removeClass("ui-menu-item").removeAttr("role").removeAttr("aria-disabled").children("a").removeUniqueId().removeClass("ui-corner-all ui-state-hover").removeAttr("tabIndex").removeAttr("role").removeAttr("aria-haspopup").children().each(function(){var t=e(this);t.data("ui-menu-submenu-carat")&&t.remove()}),this.element.find(".ui-menu-divider").removeClass("ui-menu-divider ui-widget-content")},_keydown:function(t){function a(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}var n,r,i,s,o,u=!0;switch(t.keyCode){case e.ui.keyCode.PAGE_UP:this.previousPage(t);break;case e.ui.keyCode.PAGE_DOWN:this.nextPage(t);break;case e.ui.keyCode.HOME:this._move("first","first",t);break;case e.ui.keyCode.END:this._move("last","last",t);break;case e.ui.keyCode.UP:this.previous(t);break;case e.ui.keyCode.DOWN:this.next(t);break;case e.ui.keyCode.LEFT:this.collapse(t);break;case e.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(t);break;case e.ui.keyCode.ENTER:case e.ui.keyCode.SPACE:this._activate(t);break;case e.ui.keyCode.ESCAPE:this.collapse(t);break;default:u=!1,r=this.previousFilter||"",i=String.fromCharCode(t.keyCode),s=!1,clearTimeout(this.filterTimer),i===r?s=!0:i=r+i,o=new RegExp("^"+a(i),"i"),n=this.activeMenu.children(".ui-menu-item").filter(function(){return o.test(e(this).children("a").text())}),n=s&&n.index(this.active.next())!==-1?this.active.nextAll(".ui-menu-item"):n,n.length||(i=String.fromCharCode(t.keyCode),o=new RegExp("^"+a(i),"i"),n=this.activeMenu.children(".ui-menu-item").filter(function(){return o.test(e(this).children("a").text())})),n.length?(this.focus(t,n),n.length>1?(this.previousFilter=i,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter):delete this.previousFilter}u&&t.preventDefault()},_activate:function(e){this.active.is(".ui-state-disabled")||(this.active.children("a[aria-haspopup='true']").length?this.expand(e):this.select(e))},refresh:function(){var t,n=this.options.icons.submenu,r=this.element.find(this.options.menus);r.filter(":not(.ui-menu)").addClass("ui-menu ui-widget ui-widget-content ui-corner-all").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var t=e(this),r=t.prev("a"),i=e("<span>").addClass("ui-menu-icon ui-icon "+n).data("ui-menu-submenu-carat",!0);r.attr("aria-haspopup","true").prepend(i),t.attr("aria-labelledby",r.attr("id"))}),t=r.add(this.element),t.children(":not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","presentation").children("a").uniqueId().addClass("ui-corner-all").attr({tabIndex:-1,role:this._itemRole()}),t.children(":not(.ui-menu-item)").each(function(){var t=e(this);/[^\-—–\s]/.test(t.text())||t.addClass("ui-widget-content ui-menu-divider")}),t.children(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!e.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},focus:function(e,t){var n,r;this.blur(e,e&&e.type==="focus"),this._scrollIntoView(t),this.active=t.first(),r=this.active.children("a").addClass("ui-state-focus"),this.options.role&&this.element.attr("aria-activedescendant",r.attr("id")),this.active.parent().closest(".ui-menu-item").children("a:first").addClass("ui-state-active"),e&&e.type==="keydown"?this._close():this.timer=this._delay(function(){this._close()},this.delay),n=t.children(".ui-menu"),n.length&&/^mouse/.test(e.type)&&this._startOpening(n),this.activeMenu=t.parent(),this._trigger("focus",e,{item:t})},_scrollIntoView:function(t){var n,r,i,s,o,u;this._hasScroll()&&(n=parseFloat(e.css(this.activeMenu[0],"borderTopWidth"))||0,r=parseFloat(e.css(this.activeMenu[0],"paddingTop"))||0,i=t.offset().top-this.activeMenu.offset().top-n-r,s=this.activeMenu.scrollTop(),o=this.activeMenu.height(),u=t.height(),i<0?this.activeMenu.scrollTop(s+i):i+u>o&&this.activeMenu.scrollTop(s+i-o+u))},blur:function(e,t){t||clearTimeout(this.timer);if(!this.active)return;this.active.children("a").removeClass("ui-state-focus"),this.active=null,this._trigger("blur",e,{item:this.active})},_startOpening:function(e){clearTimeout(this.timer);if(e.attr("aria-hidden")!=="true")return;this.timer=this._delay(function(){this._close(),this._open(e)},this.delay)},_open:function(t){var n=e.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(t.parents(".ui-menu")).hide().attr("aria-hidden","true"),t.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(n)},collapseAll:function(t,n){clearTimeout(this.timer),this.timer=this._delay(function(){var r=n?this.element:e(t&&t.target).closest(this.element.find(".ui-menu"));r.length||(r=this.element),this._close(r),this.blur(t),this.activeMenu=r},this.delay)},_close:function(e){e||(e=this.active?this.active.parent():this.element),e.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false").end().find("a.ui-state-active").removeClass("ui-state-active")},collapse:function(e){var t=this.active&&this.active.parent().closest(".ui-menu-item",this.element);t&&t.length&&(this._close(),this.focus(e,t))},expand:function(e){var t=this.active&&this.active.children(".ui-menu ").children(".ui-menu-item").first();t&&t.length&&(this._open(t.parent()),this._delay(function(){this.focus(e,t)}))},next:function(e){this._move("next","first",e)},previous:function(e){this._move("prev","last",e)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(e,t,n){var r;this.active&&(e==="first"||e==="last"?r=this.active[e==="first"?"prevAll":"nextAll"](".ui-menu-item").eq(-1):r=this.active[e+"All"](".ui-menu-item").eq(0));if(!r||!r.length||!this.active)r=this.activeMenu.children(".ui-menu-item")[t]();this.focus(n,r)},nextPage:function(t){var n,r,i;if(!this.active){this.next(t);return}if(this.isLastItem())return;this._hasScroll()?(r=this.active.offset().top,i=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return n=e(this),n.offset().top-r-i<0}),this.focus(t,n)):this.focus(t,this.activeMenu.children(".ui-menu-item")[this.active?"last":"first"]())},previousPage:function(t){var n,r,i;if(!this.active){this.next(t);return}if(this.isFirstItem())return;this._hasScroll()?(r=this.active.offset().top,i=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return n=e(this),n.offset().top-r+i>0}),this.focus(t,n)):this.focus(t,this.activeMenu.children(".ui-menu-item").first())},_hasScroll:function(){return this.element.outerHeight()<this.element.prop("scrollHeight")},select:function(t){this.active=this.active||e(t.target).closest(".ui-menu-item");var n={item:this.active};this.active.has(".ui-menu").length||this.collapseAll(t,!0),this._trigger("select",t,n)}})})(jQuery);(function(e,t){var n=5;e.widget("ui.slider",e.ui.mouse,{version:"1.9.2",widgetEventPrefix:"slide",options:{animate:!1,distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null},_create:function(){var t,r,i=this.options,s=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),o="<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>",u=[];this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget"+" ui-widget-content"+" ui-corner-all"+(i.disabled?" ui-slider-disabled ui-disabled":"")),this.range=e([]),i.range&&(i.range===!0&&(i.values||(i.values=[this._valueMin(),this._valueMin()]),i.values.length&&i.values.length!==2&&(i.values=[i.values[0],i.values[0]])),this.range=e("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(i.range==="min"||i.range==="max"?" ui-slider-range-"+i.range:""))),r=i.values&&i.values.length||1;for(t=s.length;t<r;t++)u.push(o);this.handles=s.add(e(u.join("")).appendTo(this.element)),this.handle=this.handles.eq(0),this.handles.add(this.range).filter("a").click(function(e){e.preventDefault()}).mouseenter(function(){i.disabled||e(this).addClass("ui-state-hover")}).mouseleave(function(){e(this).removeClass("ui-state-hover")}).focus(function(){i.disabled?e(this).blur():(e(".ui-slider .ui-state-focus").removeClass("ui-state-focus"),e(this).addClass("ui-state-focus"))}).blur(function(){e(this).removeClass("ui-state-focus")}),this.handles.each(function(t){e(this).data("ui-slider-handle-index",t)}),this._on(this.handles,{keydown:function(t){var r,i,s,o,u=e(t.target).data("ui-slider-handle-index");switch(t.keyCode){case e.ui.keyCode.HOME:case e.ui.keyCode.END:case e.ui.keyCode.PAGE_UP:case e.ui.keyCode.PAGE_DOWN:case e.ui.keyCode.UP:case e.ui.keyCode.RIGHT:case e.ui.keyCode.DOWN:case e.ui.keyCode.LEFT:t.preventDefault();if(!this._keySliding){this._keySliding=!0,e(t.target).addClass("ui-state-active"),r=this._start(t,u);if(r===!1)return}}o=this.options.step,this.options.values&&this.options.values.length?i=s=this.values(u):i=s=this.value();switch(t.keyCode){case e.ui.keyCode.HOME:s=this._valueMin();break;case e.ui.keyCode.END:s=this._valueMax();break;case e.ui.keyCode.PAGE_UP:s=this._trimAlignValue(i+(this._valueMax()-this._valueMin())/n);break;case e.ui.keyCode.PAGE_DOWN:s=this._trimAlignValue(i-(this._valueMax()-this._valueMin())/n);break;case e.ui.keyCode.UP:case e.ui.keyCode.RIGHT:if(i===this._valueMax())return;s=this._trimAlignValue(i+o);break;case e.ui.keyCode.DOWN:case e.ui.keyCode.LEFT:if(i===this._valueMin())return;s=this._trimAlignValue(i-o)}this._slide(t,u,s)},keyup:function(t){var n=e(t.target).data("ui-slider-handle-index");this._keySliding&&(this._keySliding=!1,this._stop(t,n),this._change(t,n),e(t.target).removeClass("ui-state-active"))}}),this._refreshValue(),this._animateOff=!1},_destroy:function(){this.handles.remove(),this.range.remove(),this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all"),this._mouseDestroy()},_mouseCapture:function(t){var n,r,i,s,o,u,a,f,l=this,c=this.options;return c.disabled?!1:(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),n={x:t.pageX,y:t.pageY},r=this._normValueFromMouse(n),i=this._valueMax()-this._valueMin()+1,this.handles.each(function(t){var n=Math.abs(r-l.values(t));i>n&&(i=n,s=e(this),o=t)}),c.range===!0&&this.values(1)===c.min&&(o+=1,s=e(this.handles[o])),u=this._start(t,o),u===!1?!1:(this._mouseSliding=!0,this._handleIndex=o,s.addClass("ui-state-active").focus(),a=s.offset(),f=!e(t.target).parents().andSelf().is(".ui-slider-handle"),this._clickOffset=f?{left:0,top:0}:{left:t.pageX-a.left-s.width()/2,top:t.pageY-a.top-s.height()/2-(parseInt(s.css("borderTopWidth"),10)||0)-(parseInt(s.css("borderBottomWidth"),10)||0)+(parseInt(s.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(t,o,r),this._animateOff=!0,!0))},_mouseStart:function(){return!0},_mouseDrag:function(e){var t={x:e.pageX,y:e.pageY},n=this._normValueFromMouse(t);return this._slide(e,this._handleIndex,n),!1},_mouseStop:function(e){return this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(e,this._handleIndex),this._change(e,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(e){var t,n,r,i,s;return this.orientation==="horizontal"?(t=this.elementSize.width,n=e.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(t=this.elementSize.height,n=e.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),r=n/t,r>1&&(r=1),r<0&&(r=0),this.orientation==="vertical"&&(r=1-r),i=this._valueMax()-this._valueMin(),s=this._valueMin()+r*i,this._trimAlignValue(s)},_start:function(e,t){var n={handle:this.handles[t],value:this.value()};return this.options.values&&this.options.values.length&&(n.value=this.values(t),n.values=this.values()),this._trigger("start",e,n)},_slide:function(e,t,n){var r,i,s;this.options.values&&this.options.values.length?(r=this.values(t?0:1),this.options.values.length===2&&this.options.range===!0&&(t===0&&n>r||t===1&&n<r)&&(n=r),n!==this.values(t)&&(i=this.values(),i[t]=n,s=this._trigger("slide",e,{handle:this.handles[t],value:n,values:i}),r=this.values(t?0:1),s!==!1&&this.values(t,n,!0))):n!==this.value()&&(s=this._trigger("slide",e,{handle:this.handles[t],value:n}),s!==!1&&this.value(n))},_stop:function(e,t){var n={handle:this.handles[t],value:this.value()};this.options.values&&this.options.values.length&&(n.value=this.values(t),n.values=this.values()),this._trigger("stop",e,n)},_change:function(e,t){if(!this._keySliding&&!this._mouseSliding){var n={handle:this.handles[t],value:this.value()};this.options.values&&this.options.values.length&&(n.value=this.values(t),n.values=this.values()),this._trigger("change",e,n)}},value:function(e){if(arguments.length){this.options.value=this._trimAlignValue(e),this._refreshValue(),this._change(null,0);return}return this._value()},values:function(t,n){var r,i,s;if(arguments.length>1){this.options.values[t]=this._trimAlignValue(n),this._refreshValue(),this._change(null,t);return}if(!arguments.length)return this._values();if(!e.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(t):this.value();r=this.options.values,i=arguments[0];for(s=0;s<r.length;s+=1)r[s]=this._trimAlignValue(i[s]),this._change(null,s);this._refreshValue()},_setOption:function(t,n){var r,i=0;e.isArray(this.options.values)&&(i=this.options.values.length),e.Widget.prototype._setOption.apply(this,arguments);switch(t){case"disabled":n?(this.handles.filter(".ui-state-focus").blur(),this.handles.removeClass("ui-state-hover"),this.handles.prop("disabled",!0),this.element.addClass("ui-disabled")):(this.handles.prop("disabled",!1),this.element.removeClass("ui-disabled"));break;case"orientation":this._detectOrientation(),this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation),this._refreshValue();break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":this._animateOff=!0,this._refreshValue();for(r=0;r<i;r+=1)this._change(null,r);this._animateOff=!1;break;case"min":case"max":this._animateOff=!0,this._refreshValue(),this._animateOff=!1}},_value:function(){var e=this.options.value;return e=this._trimAlignValue(e),e},_values:function(e){var t,n,r;if(arguments.length)return t=this.options.values[e],t=this._trimAlignValue(t),t;n=this.options.values.slice();for(r=0;r<n.length;r+=1)n[r]=this._trimAlignValue(n[r]);return n},_trimAlignValue:function(e){if(e<=this._valueMin())return this._valueMin();if(e>=this._valueMax())return this._valueMax();var t=this.options.step>0?this.options.step:1,n=(e-this._valueMin())%t,r=e-n;return Math.abs(n)*2>=t&&(r+=n>0?t:-t),parseFloat(r.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var t,n,r,i,s,o=this.options.range,u=this.options,a=this,f=this._animateOff?!1:u.animate,l={};this.options.values&&this.options.values.length?this.handles.each(function(r){n=(a.values(r)-a._valueMin())/(a._valueMax()-a._valueMin())*100,l[a.orientation==="horizontal"?"left":"bottom"]=n+"%",e(this).stop(1,1)[f?"animate":"css"](l,u.animate),a.options.range===!0&&(a.orientation==="horizontal"?(r===0&&a.range.stop(1,1)[f?"animate":"css"]({left:n+"%"},u.animate),r===1&&a.range[f?"animate":"css"]({width:n-t+"%"},{queue:!1,duration:u.animate})):(r===0&&a.range.stop(1,1)[f?"animate":"css"]({bottom:n+"%"},u.animate),r===1&&a.range[f?"animate":"css"]({height:n-t+"%"},{queue:!1,duration:u.animate}))),t=n}):(r=this.value(),i=this._valueMin(),s=this._valueMax(),n=s!==i?(r-i)/(s-i)*100:0,l[this.orientation==="horizontal"?"left":"bottom"]=n+"%",this.handle.stop(1,1)[f?"animate":"css"](l,u.animate),o==="min"&&this.orientation==="horizontal"&&this.range.stop(1,1)[f?"animate":"css"]({width:n+"%"},u.animate),o==="max"&&this.orientation==="horizontal"&&this.range[f?"animate":"css"]({width:100-n+"%"},{queue:!1,duration:u.animate}),o==="min"&&this.orientation==="vertical"&&this.range.stop(1,1)[f?"animate":"css"]({height:n+"%"},u.animate),o==="max"&&this.orientation==="vertical"&&this.range[f?"animate":"css"]({height:100-n+"%"},{queue:!1,duration:u.animate}))}})})(jQuery);(function(e,t){function i(){return++n}function s(e){return e.hash.length>1&&e.href.replace(r,"")===location.href.replace(r,"").replace(/\s/g,"%20")}var n=0,r=/#.*$/;e.widget("ui.tabs",{version:"1.9.2",delay:300,options:{active:null,collapsible:!1,event:"click",heightStyle:"content",hide:null,show:null,activate:null,beforeActivate:null,beforeLoad:null,load:null},_create:function(){var t=this,n=this.options,r=n.active,i=location.hash.substring(1);this.running=!1,this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all").toggleClass("ui-tabs-collapsible",n.collapsible).delegate(".ui-tabs-nav > li","mousedown"+this.eventNamespace,function(t){e(this).is(".ui-state-disabled")&&t.preventDefault()}).delegate(".ui-tabs-anchor","focus"+this.eventNamespace,function(){e(this).closest("li").is(".ui-state-disabled")&&this.blur()}),this._processTabs();if(r===null){i&&this.tabs.each(function(t,n){if(e(n).attr("aria-controls")===i)return r=t,!1}),r===null&&(r=this.tabs.index(this.tabs.filter(".ui-tabs-active")));if(r===null||r===-1)r=this.tabs.length?0:!1}r!==!1&&(r=this.tabs.index(this.tabs.eq(r)),r===-1&&(r=n.collapsible?!1:0)),n.active=r,!n.collapsible&&n.active===!1&&this.anchors.length&&(n.active=0),e.isArray(n.disabled)&&(n.disabled=e.unique(n.disabled.concat(e.map(this.tabs.filter(".ui-state-disabled"),function(e){return t.tabs.index(e)}))).sort()),this.options.active!==!1&&this.anchors.length?this.active=this._findActive(this.options.active):this.active=e(),this._refresh(),this.active.length&&this.load(n.active)},_getCreateEventData:function(){return{tab:this.active,panel:this.active.length?this._getPanelForTab(this.active):e()}},_tabKeydown:function(t){var n=e(this.document[0].activeElement).closest("li"),r=this.tabs.index(n),i=!0;if(this._handlePageNav(t))return;switch(t.keyCode){case e.ui.keyCode.RIGHT:case e.ui.keyCode.DOWN:r++;break;case e.ui.keyCode.UP:case e.ui.keyCode.LEFT:i=!1,r--;break;case e.ui.keyCode.END:r=this.anchors.length-1;break;case e.ui.keyCode.HOME:r=0;break;case e.ui.keyCode.SPACE:t.preventDefault(),clearTimeout(this.activating),this._activate(r);return;case e.ui.keyCode.ENTER:t.preventDefault(),clearTimeout(this.activating),this._activate(r===this.options.active?!1:r);return;default:return}t.preventDefault(),clearTimeout(this.activating),r=this._focusNextTab(r,i),t.ctrlKey||(n.attr("aria-selected","false"),this.tabs.eq(r).attr("aria-selected","true"),this.activating=this._delay(function(){this.option("active",r)},this.delay))},_panelKeydown:function(t){if(this._handlePageNav(t))return;t.ctrlKey&&t.keyCode===e.ui.keyCode.UP&&(t.preventDefault(),this.active.focus())},_handlePageNav:function(t){if(t.altKey&&t.keyCode===e.ui.keyCode.PAGE_UP)return this._activate(this._focusNextTab(this.options.active-1,!1)),!0;if(t.altKey&&t.keyCode===e.ui.keyCode.PAGE_DOWN)return this._activate(this._focusNextTab(this.options.active+1,!0)),!0},_findNextTab:function(t,n){function i(){return t>r&&(t=0),t<0&&(t=r),t}var r=this.tabs.length-1;while(e.inArray(i(),this.options.disabled)!==-1)t=n?t+1:t-1;return t},_focusNextTab:function(e,t){return e=this._findNextTab(e,t),this.tabs.eq(e).focus(),e},_setOption:function(e,t){if(e==="active"){this._activate(t);return}if(e==="disabled"){this._setupDisabled(t);return}this._super(e,t),e==="collapsible"&&(this.element.toggleClass("ui-tabs-collapsible",t),!t&&this.options.active===!1&&this._activate(0)),e==="event"&&this._setupEvents(t),e==="heightStyle"&&this._setupHeightStyle(t)},_tabId:function(e){return e.attr("aria-controls")||"ui-tabs-"+i()},_sanitizeSelector:function(e){return e?e.replace(/[!"$%&'()*+,.\/:;<=>?@\[\]\^`{|}~]/g,"\\$&"):""},refresh:function(){var t=this.options,n=this.tablist.children(":has(a[href])");t.disabled=e.map(n.filter(".ui-state-disabled"),function(e){return n.index(e)}),this._processTabs(),t.active===!1||!this.anchors.length?(t.active=!1,this.active=e()):this.active.length&&!e.contains(this.tablist[0],this.active[0])?this.tabs.length===t.disabled.length?(t.active=!1,this.active=e()):this._activate(this._findNextTab(Math.max(0,t.active-1),!1)):t.active=this.tabs.index(this.active),this._refresh()},_refresh:function(){this._setupDisabled(this.options.disabled),this._setupEvents(this.options.event),this._setupHeightStyle(this.options.heightStyle),this.tabs.not(this.active).attr({"aria-selected":"false",tabIndex:-1}),this.panels.not(this._getPanelForTab(this.active)).hide().attr({"aria-expanded":"false","aria-hidden":"true"}),this.active.length?(this.active.addClass("ui-tabs-active ui-state-active").attr({"aria-selected":"true",tabIndex:0}),this._getPanelForTab(this.active).show().attr({"aria-expanded":"true","aria-hidden":"false"})):this.tabs.eq(0).attr("tabIndex",0)},_processTabs:function(){var t=this;this.tablist=this._getList().addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").attr("role","tablist"),this.tabs=this.tablist.find("> li:has(a[href])").addClass("ui-state-default ui-corner-top").attr({role:"tab",tabIndex:-1}),this.anchors=this.tabs.map(function(){return e("a",this)[0]}).addClass("ui-tabs-anchor").attr({role:"presentation",tabIndex:-1}),this.panels=e(),this.anchors.each(function(n,r){var i,o,u,a=e(r).uniqueId().attr("id"),f=e(r).closest("li"),l=f.attr("aria-controls");s(r)?(i=r.hash,o=t.element.find(t._sanitizeSelector(i))):(u=t._tabId(f),i="#"+u,o=t.element.find(i),o.length||(o=t._createPanel(u),o.insertAfter(t.panels[n-1]||t.tablist)),o.attr("aria-live","polite")),o.length&&(t.panels=t.panels.add(o)),l&&f.data("ui-tabs-aria-controls",l),f.attr({"aria-controls":i.substring(1),"aria-labelledby":a}),o.attr("aria-labelledby",a)}),this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").attr("role","tabpanel")},_getList:function(){return this.element.find("ol,ul").eq(0)},_createPanel:function(t){return e("<div>").attr("id",t).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").data("ui-tabs-destroy",!0)},_setupDisabled:function(t){e.isArray(t)&&(t.length?t.length===this.anchors.length&&(t=!0):t=!1);for(var n=0,r;r=this.tabs[n];n++)t===!0||e.inArray(n,t)!==-1?e(r).addClass("ui-state-disabled").attr("aria-disabled","true"):e(r).removeClass("ui-state-disabled").removeAttr("aria-disabled");this.options.disabled=t},_setupEvents:function(t){var n={click:function(e){e.preventDefault()}};t&&e.each(t.split(" "),function(e,t){n[t]="_eventHandler"}),this._off(this.anchors.add(this.tabs).add(this.panels)),this._on(this.anchors,n),this._on(this.tabs,{keydown:"_tabKeydown"}),this._on(this.panels,{keydown:"_panelKeydown"}),this._focusable(this.tabs),this._hoverable(this.tabs)},_setupHeightStyle:function(t){var n,r,i=this.element.parent();t==="fill"?(e.support.minHeight||(r=i.css("overflow"),i.css("overflow","hidden")),n=i.height(),this.element.siblings(":visible").each(function(){var t=e(this),r=t.css("position");if(r==="absolute"||r==="fixed")return;n-=t.outerHeight(!0)}),r&&i.css("overflow",r),this.element.children().not(this.panels).each(function(){n-=e(this).outerHeight(!0)}),this.panels.each(function(){e(this).height(Math.max(0,n-e(this).innerHeight()+e(this).height()))}).css("overflow","auto")):t==="auto"&&(n=0,this.panels.each(function(){n=Math.max(n,e(this).height("").height())}).height(n))},_eventHandler:function(t){var n=this.options,r=this.active,i=e(t.currentTarget),s=i.closest("li"),o=s[0]===r[0],u=o&&n.collapsible,a=u?e():this._getPanelForTab(s),f=r.length?this._getPanelForTab(r):e(),l={oldTab:r,oldPanel:f,newTab:u?e():s,newPanel:a};t.preventDefault();if(s.hasClass("ui-state-disabled")||s.hasClass("ui-tabs-loading")||this.running||o&&!n.collapsible||this._trigger("beforeActivate",t,l)===!1)return;n.active=u?!1:this.tabs.index(s),this.active=o?e():s,this.xhr&&this.xhr.abort(),!f.length&&!a.length&&e.error("jQuery UI Tabs: Mismatching fragment identifier."),a.length&&this.load(this.tabs.index(s),t),this._toggle(t,l)},_toggle:function(t,n){function o(){r.running=!1,r._trigger("activate",t,n)}function u(){n.newTab.closest("li").addClass("ui-tabs-active ui-state-active"),i.length&&r.options.show?r._show(i,r.options.show,o):(i.show(),o())}var r=this,i=n.newPanel,s=n.oldPanel;this.running=!0,s.length&&this.options.hide?this._hide(s,this.options.hide,function(){n.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),u()}):(n.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),s.hide(),u()),s.attr({"aria-expanded":"false","aria-hidden":"true"}),n.oldTab.attr("aria-selected","false"),i.length&&s.length?n.oldTab.attr("tabIndex",-1):i.length&&this.tabs.filter(function(){return e(this).attr("tabIndex")===0}).attr("tabIndex",-1),i.attr({"aria-expanded":"true","aria-hidden":"false"}),n.newTab.attr({"aria-selected":"true",tabIndex:0})},_activate:function(t){var n,r=this._findActive(t);if(r[0]===this.active[0])return;r.length||(r=this.active),n=r.find(".ui-tabs-anchor")[0],this._eventHandler({target:n,currentTarget:n,preventDefault:e.noop})},_findActive:function(t){return t===!1?e():this.tabs.eq(t)},_getIndex:function(e){return typeof e=="string"&&(e=this.anchors.index(this.anchors.filter("[href$='"+e+"']"))),e},_destroy:function(){this.xhr&&this.xhr.abort(),this.element.removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible"),this.tablist.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").removeAttr("role"),this.anchors.removeClass("ui-tabs-anchor").removeAttr("role").removeAttr("tabIndex").removeData("href.tabs").removeData("load.tabs").removeUniqueId(),this.tabs.add(this.panels).each(function(){e.data(this,"ui-tabs-destroy")?e(this).remove():e(this).removeClass("ui-state-default ui-state-active ui-state-disabled ui-corner-top ui-corner-bottom ui-widget-content ui-tabs-active ui-tabs-panel").removeAttr("tabIndex").removeAttr("aria-live").removeAttr("aria-busy").removeAttr("aria-selected").removeAttr("aria-labelledby").removeAttr("aria-hidden").removeAttr("aria-expanded").removeAttr("role")}),this.tabs.each(function(){var t=e(this),n=t.data("ui-tabs-aria-controls");n?t.attr("aria-controls",n):t.removeAttr("aria-controls")}),this.panels.show(),this.options.heightStyle!=="content"&&this.panels.css("height","")},enable:function(n){var r=this.options.disabled;if(r===!1)return;n===t?r=!1:(n=this._getIndex(n),e.isArray(r)?r=e.map(r,function(e){return e!==n?e:null}):r=e.map(this.tabs,function(e,t){return t!==n?t:null})),this._setupDisabled(r)},disable:function(n){var r=this.options.disabled;if(r===!0)return;if(n===t)r=!0;else{n=this._getIndex(n);if(e.inArray(n,r)!==-1)return;e.isArray(r)?r=e.merge([n],r).sort():r=[n]}this._setupDisabled(r)},load:function(t,n){t=this._getIndex(t);var r=this,i=this.tabs.eq(t),o=i.find(".ui-tabs-anchor"),u=this._getPanelForTab(i),a={tab:i,panel:u};if(s(o[0]))return;this.xhr=e.ajax(this._ajaxSettings(o,n,a)),this.xhr&&this.xhr.statusText!=="canceled"&&(i.addClass("ui-tabs-loading"),u.attr("aria-busy","true"),this.xhr.success(function(e){setTimeout(function(){u.html(e),r._trigger("load",n,a)},1)}).complete(function(e,t){setTimeout(function(){t==="abort"&&r.panels.stop(!1,!0),i.removeClass("ui-tabs-loading"),u.removeAttr("aria-busy"),e===r.xhr&&delete r.xhr},1)}))},_ajaxSettings:function(t,n,r){var i=this;return{url:t.attr("href"),beforeSend:function(t,s){return i._trigger("beforeLoad",n,e.extend({jqXHR:t,ajaxSettings:s},r))}}},_getPanelForTab:function(t){var n=e(t).attr("aria-controls");return this.element.find(this._sanitizeSelector("#"+n))}}),e.uiBackCompat!==!1&&(e.ui.tabs.prototype._ui=function(e,t){return{tab:e,panel:t,index:this.anchors.index(e)}},e.widget("ui.tabs",e.ui.tabs,{url:function(e,t){this.anchors.eq(e).attr("href",t)}}),e.widget("ui.tabs",e.ui.tabs,{options:{ajaxOptions:null,cache:!1},_create:function(){this._super();var t=this;this._on({tabsbeforeload:function(n,r){if(e.data(r.tab[0],"cache.tabs")){n.preventDefault();return}r.jqXHR.success(function(){t.options.cache&&e.data(r.tab[0],"cache.tabs",!0)})}})},_ajaxSettings:function(t,n,r){var i=this.options.ajaxOptions;return e.extend({},i,{error:function(e,t){try{i.error(e,t,r.tab.closest("li").index(),r.tab[0])}catch(n){}}},this._superApply(arguments))},_setOption:function(e,t){e==="cache"&&t===!1&&this.anchors.removeData("cache.tabs"),this._super(e,t)},_destroy:function(){this.anchors.removeData("cache.tabs"),this._super()},url:function(e){this.anchors.eq(e).removeData("cache.tabs"),this._superApply(arguments)}}),e.widget("ui.tabs",e.ui.tabs,{abort:function(){this.xhr&&this.xhr.abort()}}),e.widget("ui.tabs",e.ui.tabs,{options:{spinner:"<em>Loading&#8230;</em>"},_create:function(){this._super(),this._on({tabsbeforeload:function(e,t){if(e.target!==this.element[0]||!this.options.spinner)return;var n=t.tab.find("span"),r=n.html();n.html(this.options.spinner),t.jqXHR.complete(function(){n.html(r)})}})}}),e.widget("ui.tabs",e.ui.tabs,{options:{enable:null,disable:null},enable:function(t){var n=this.options,r;if(t&&n.disabled===!0||e.isArray(n.disabled)&&e.inArray(t,n.disabled)!==-1)r=!0;this._superApply(arguments),r&&this._trigger("enable",null,this._ui(this.anchors[t],this.panels[t]))},disable:function(t){var n=this.options,r;if(t&&n.disabled===!1||e.isArray(n.disabled)&&e.inArray(t,n.disabled)===-1)r=!0;this._superApply(arguments),r&&this._trigger("disable",null,this._ui(this.anchors[t],this.panels[t]))}}),e.widget("ui.tabs",e.ui.tabs,{options:{add:null,remove:null,tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},add:function(n,r,i){i===t&&(i=this.anchors.length);var s,o,u=this.options,a=e(u.tabTemplate.replace(/#\{href\}/g,n).replace(/#\{label\}/g,r)),f=n.indexOf("#")?this._tabId(a):n.replace("#","");return a.addClass("ui-state-default ui-corner-top").data("ui-tabs-destroy",!0),a.attr("aria-controls",f),s=i>=this.tabs.length,o=this.element.find("#"+f),o.length||(o=this._createPanel(f),s?i>0?o.insertAfter(this.panels.eq(-1)):o.appendTo(this.element):o.insertBefore(this.panels[i])),o.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").hide(),s?a.appendTo(this.tablist):a.insertBefore(this.tabs[i]),u.disabled=e.map(u.disabled,function(e){return e>=i?++e:e}),this.refresh(),this.tabs.length===1&&u.active===!1&&this.option("active",0),this._trigger("add",null,this._ui(this.anchors[i],this.panels[i])),this},remove:function(t){t=this._getIndex(t);var n=this.options,r=this.tabs.eq(t).remove(),i=this._getPanelForTab(r).remove();return r.hasClass("ui-tabs-active")&&this.anchors.length>2&&this._activate(t+(t+1<this.anchors.length?1:-1)),n.disabled=e.map(e.grep(n.disabled,function(e){return e!==t}),function(e){return e>=t?--e:e}),this.refresh(),this._trigger("remove",null,this._ui(r.find("a")[0],i[0])),this}}),e.widget("ui.tabs",e.ui.tabs,{length:function(){return this.anchors.length}}),e.widget("ui.tabs",e.ui.tabs,{options:{idPrefix:"ui-tabs-"},_tabId:function(t){var n=t.is("li")?t.find("a[href]"):t;return n=n[0],e(n).closest("li").attr("aria-controls")||n.title&&n.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF\-]/g,"")||this.options.idPrefix+i()}}),e.widget("ui.tabs",e.ui.tabs,{options:{panelTemplate:"<div></div>"},_createPanel:function(t){return e(this.options.panelTemplate).attr("id",t).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").data("ui-tabs-destroy",!0)}}),e.widget("ui.tabs",e.ui.tabs,{_create:function(){var e=this.options;e.active===null&&e.selected!==t&&(e.active=e.selected===-1?!1:e.selected),this._super(),e.selected=e.active,e.selected===!1&&(e.selected=-1)},_setOption:function(e,t){if(e!=="selected")return this._super(e,t);var n=this.options;this._super("active",t===-1?!1:t),n.selected=n.active,n.selected===!1&&(n.selected=-1)},_eventHandler:function(){this._superApply(arguments),this.options.selected=this.options.active,this.options.selected===!1&&(this.options.selected=-1)}}),e.widget("ui.tabs",e.ui.tabs,{options:{show:null,select:null},_create:function(){this._super(),this.options.active!==!1&&this._trigger("show",null,this._ui(this.active.find(".ui-tabs-anchor")[0],this._getPanelForTab(this.active)[0]))},_trigger:function(e,t,n){var r,i,s=this._superApply(arguments);return s?(e==="beforeActivate"?(r=n.newTab.length?n.newTab:n.oldTab,i=n.newPanel.length?n.newPanel:n.oldPanel,s=this._super("select",t,{tab:r.find(".ui-tabs-anchor")[0],panel:i[0],index:r.closest("li").index()})):e==="activate"&&n.newTab.length&&(s=this._super("show",t,{tab:n.newTab.find(".ui-tabs-anchor")[0],panel:n.newPanel[0],index:n.newTab.closest("li").index()})),s):!1}}),e.widget("ui.tabs",e.ui.tabs,{select:function(e){e=this._getIndex(e);if(e===-1){if(!this.options.collapsible||this.options.selected===-1)return;e=this.options.selected}this.anchors.eq(e).trigger(this.options.event+this.eventNamespace)}}),function(){var t=0;e.widget("ui.tabs",e.ui.tabs,{options:{cookie:null},_create:function(){var e=this.options,t;e.active==null&&e.cookie&&(t=parseInt(this._cookie(),10),t===-1&&(t=!1),e.active=t),this._super()},_cookie:function(n){var r=[this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+ ++t)];return arguments.length&&(r.push(n===!1?-1:n),r.push(this.options.cookie)),e.cookie.apply(null,r)},_refresh:function(){this._super(),this.options.cookie&&this._cookie(this.options.active,this.options.cookie)},_eventHandler:function(){this._superApply(arguments),this.options.cookie&&this._cookie(this.options.active,this.options.cookie)},_destroy:function(){this._super(),this.options.cookie&&this._cookie(null,this.options.cookie)}})}(),e.widget("ui.tabs",e.ui.tabs,{_trigger:function(t,n,r){var i=e.extend({},r);return t==="load"&&(i.panel=i.panel[0],i.tab=i.tab.find(".ui-tabs-anchor")[0]),this._super(t,n,i)}}),e.widget("ui.tabs",e.ui.tabs,{options:{fx:null},_getFx:function(){var t,n,r=this.options.fx;return r&&(e.isArray(r)?(t=r[0],n=r[1]):t=n=r),r?{show:n,hide:t}:null},_toggle:function(e,t){function o(){n.running=!1,n._trigger("activate",e,t)}function u(){t.newTab.closest("li").addClass("ui-tabs-active ui-state-active"),r.length&&s.show?r.animate(s.show,s.show.duration,function(){o()}):(r.show(),o())}var n=this,r=t.newPanel,i=t.oldPanel,s=this._getFx();if(!s)return this._super(e,t);n.running=!0,i.length&&s.hide?i.animate(s.hide,s.hide.duration,function(){t.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),u()}):(t.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),i.hide(),u())}}))})(jQuery);(function(e){function n(t,n){var r=(t.attr("aria-describedby")||"").split(/\s+/);r.push(n),t.data("ui-tooltip-id",n).attr("aria-describedby",e.trim(r.join(" ")))}function r(t){var n=t.data("ui-tooltip-id"),r=(t.attr("aria-describedby")||"").split(/\s+/),i=e.inArray(n,r);i!==-1&&r.splice(i,1),t.removeData("ui-tooltip-id"),r=e.trim(r.join(" ")),r?t.attr("aria-describedby",r):t.removeAttr("aria-describedby")}var t=0;e.widget("ui.tooltip",{version:"1.9.2",options:{content:function(){return e(this).attr("title")},hide:!0,items:"[title]:not([disabled])",position:{my:"left top+15",at:"left bottom",collision:"flipfit flip"},show:!0,tooltipClass:null,track:!1,close:null,open:null},_create:function(){this._on({mouseover:"open",focusin:"open"}),this.tooltips={},this.parents={},this.options.disabled&&this._disable()},_setOption:function(t,n){var r=this;if(t==="disabled"){this[n?"_disable":"_enable"](),this.options[t]=n;return}this._super(t,n),t==="content"&&e.each(this.tooltips,function(e,t){r._updateContent(t)})},_disable:function(){var t=this;e.each(this.tooltips,function(n,r){var i=e.Event("blur");i.target=i.currentTarget=r[0],t.close(i,!0)}),this.element.find(this.options.items).andSelf().each(function(){var t=e(this);t.is("[title]")&&t.data("ui-tooltip-title",t.attr("title")).attr("title","")})},_enable:function(){this.element.find(this.options.items).andSelf().each(function(){var t=e(this);t.data("ui-tooltip-title")&&t.attr("title",t.data("ui-tooltip-title"))})},open:function(t){var n=this,r=e(t?t.target:this.element).closest(this.options.items);if(!r.length||r.data("ui-tooltip-id"))return;r.attr("title")&&r.data("ui-tooltip-title",r.attr("title")),r.data("ui-tooltip-open",!0),t&&t.type==="mouseover"&&r.parents().each(function(){var t=e(this),r;t.data("ui-tooltip-open")&&(r=e.Event("blur"),r.target=r.currentTarget=this,n.close(r,!0)),t.attr("title")&&(t.uniqueId(),n.parents[this.id]={element:this,title:t.attr("title")},t.attr("title",""))}),this._updateContent(r,t)},_updateContent:function(e,t){var n,r=this.options.content,i=this,s=t?t.type:null;if(typeof r=="string")return this._open(t,e,r);n=r.call(e[0],function(n){if(!e.data("ui-tooltip-open"))return;i._delay(function(){t&&(t.type=s),this._open(t,e,n)})}),n&&this._open(t,e,n)},_open:function(t,r,i){function f(e){a.of=e;if(s.is(":hidden"))return;s.position(a)}var s,o,u,a=e.extend({},this.options.position);if(!i)return;s=this._find(r);if(s.length){s.find(".ui-tooltip-content").html(i);return}r.is("[title]")&&(t&&t.type==="mouseover"?r.attr("title",""):r.removeAttr("title")),s=this._tooltip(r),n(r,s.attr("id")),s.find(".ui-tooltip-content").html(i),this.options.track&&t&&/^mouse/.test(t.type)?(this._on(this.document,{mousemove:f}),f(t)):s.position(e.extend({of:r},this.options.position)),s.hide(),this._show(s,this.options.show),this.options.show&&this.options.show.delay&&(u=setInterval(function(){s.is(":visible")&&(f(a.of),clearInterval(u))},e.fx.interval)),this._trigger("open",t,{tooltip:s}),o={keyup:function(t){if(t.keyCode===e.ui.keyCode.ESCAPE){var n=e.Event(t);n.currentTarget=r[0],this.close(n,!0)}},remove:function(){this._removeTooltip(s)}};if(!t||t.type==="mouseover")o.mouseleave="close";if(!t||t.type==="focusin")o.focusout="close";this._on(!0,r,o)},close:function(t){var n=this,i=e(t?t.currentTarget:this.element),s=this._find(i);if(this.closing)return;i.data("ui-tooltip-title")&&i.attr("title",i.data("ui-tooltip-title")),r(i),s.stop(!0),this._hide(s,this.options.hide,function(){n._removeTooltip(e(this))}),i.removeData("ui-tooltip-open"),this._off(i,"mouseleave focusout keyup"),i[0]!==this.element[0]&&this._off(i,"remove"),this._off(this.document,"mousemove"),t&&t.type==="mouseleave"&&e.each(this.parents,function(t,r){e(r.element).attr("title",r.title),delete n.parents[t]}),this.closing=!0,this._trigger("close",t,{tooltip:s}),this.closing=!1},_tooltip:function(n){var r="ui-tooltip-"+t++,i=e("<div>").attr({id:r,role:"tooltip"}).addClass("ui-tooltip ui-widget ui-corner-all ui-widget-content "+(this.options.tooltipClass||""));return e("<div>").addClass("ui-tooltip-content").appendTo(i),i.appendTo(this.document[0].body),e.fn.bgiframe&&i.bgiframe(),this.tooltips[r]=n,i},_find:function(t){var n=t.data("ui-tooltip-id");return n?e("#"+n):e()},_removeTooltip:function(e){e.remove(),delete this.tooltips[e.attr("id")]},_destroy:function(){var t=this;e.each(this.tooltips,function(n,r){var i=e.Event("blur");i.target=i.currentTarget=r[0],t.close(i,!0),e("#"+n).remove(),r.data("ui-tooltip-title")&&(r.attr("title",r.data("ui-tooltip-title")),r.removeData("ui-tooltip-title"))})}})})(jQuery);
\ No newline at end of file
diff --git a/koha-tmpl/opac-tmpl/ccsr/en/lib/jquery/plugins/jquery.tools.min.js b/koha-tmpl/opac-tmpl/ccsr/en/lib/jquery/plugins/jquery.tools.min.js
deleted file mode 100644 (file)
index d55c776..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-/*!
- * jQuery Tools v1.2.6 - The missing UI library for the Web
- *
- * tooltip/tooltip.js
- *
- * NO COPYRIGHTS OR LICENSES. DO WHAT YOU LIKE.
- *
- * http://flowplayer.org/tools/
- *
- */
-(function(a){a.tools=a.tools||{version:"v1.2.6"},a.tools.tooltip={conf:{effect:"toggle",fadeOutSpeed:"fast",predelay:0,delay:30,opacity:1,tip:0,fadeIE:!1,position:["top","center"],offset:[0,0],relative:!1,cancelDefault:!0,events:{def:"mouseenter,mouseleave",input:"focus,blur",widget:"focus mouseenter,blur mouseleave",tooltip:"mouseenter,mouseleave"},layout:"<div/>",tipClass:"tooltip"},addEffect:function(a,c,d){b[a]=[c,d]}};var b={toggle:[function(a){var b=this.getConf(),c=this.getTip(),d=b.opacity;d<1&&c.css({opacity:d}),c.show(),a.call()},function(a){this.getTip().hide(),a.call()}],fade:[function(b){var c=this.getConf();!a.browser.msie||c.fadeIE?this.getTip().fadeTo(c.fadeInSpeed,c.opacity,b):(this.getTip().show(),b())},function(b){var c=this.getConf();!a.browser.msie||c.fadeIE?this.getTip().fadeOut(c.fadeOutSpeed,b):(this.getTip().hide(),b())}]};function c(b,c,d){var e=d.relative?b.position().top:b.offset().top,f=d.relative?b.position().left:b.offset().left,g=d.position[0];e-=c.outerHeight()-d.offset[0],f+=b.outerWidth()+d.offset[1],/iPad/i.test(navigator.userAgent)&&(e-=a(window).scrollTop());var h=c.outerHeight()+b.outerHeight();g=="center"&&(e+=h/2),g=="bottom"&&(e+=h),g=d.position[1];var i=c.outerWidth()+b.outerWidth();g=="center"&&(f-=i/2),g=="left"&&(f-=i);return{top:e,left:f}}function d(d,e){var f=this,g=d.add(f),h,i=0,j=0,k=d.attr("title"),l=d.attr("data-tooltip"),m=b[e.effect],n,o=d.is(":input"),p=o&&d.is(":checkbox, :radio, select, :button, :submit"),q=d.attr("type"),r=e.events[q]||e.events[o?p?"widget":"input":"def"];if(!m)throw"Nonexistent effect \""+e.effect+"\"";r=r.split(/,\s*/);if(r.length!=2)throw"Tooltip: bad events configuration for "+q;d.bind(r[0],function(a){clearTimeout(i),e.predelay?j=setTimeout(function(){f.show(a)},e.predelay):f.show(a)}).bind(r[1],function(a){clearTimeout(j),e.delay?i=setTimeout(function(){f.hide(a)},e.delay):f.hide(a)}),k&&e.cancelDefault&&(d.removeAttr("title"),d.data("title",k)),a.extend(f,{show:function(b){if(!h){l?h=a(l):e.tip?h=a(e.tip).eq(0):k?h=a(e.layout).addClass(e.tipClass).appendTo(document.body).hide().append(k):(h=d.next(),h.length||(h=d.parent().next()));if(!h.length)throw"Cannot find tooltip for "+d}if(f.isShown())return f;h.stop(!0,!0);var o=c(d,h,e);e.tip&&h.html(d.data("title")),b=a.Event(),b.type="onBeforeShow",g.trigger(b,[o]);if(b.isDefaultPrevented())return f;o=c(d,h,e),h.css({position:"absolute",top:o.top,left:o.left}),n=!0,m[0].call(f,function(){b.type="onShow",n="full",g.trigger(b)});var p=e.events.tooltip.split(/,\s*/);h.data("__set")||(h.unbind(p[0]).bind(p[0],function(){clearTimeout(i),clearTimeout(j)}),p[1]&&!d.is("input:not(:checkbox, :radio), textarea")&&h.unbind(p[1]).bind(p[1],function(a){a.relatedTarget!=d[0]&&d.trigger(r[1].split(" ")[0])}),e.tip||h.data("__set",!0));return f},hide:function(c){if(!h||!f.isShown())return f;c=a.Event(),c.type="onBeforeHide",g.trigger(c);if(!c.isDefaultPrevented()){n=!1,b[e.effect][1].call(f,function(){c.type="onHide",g.trigger(c)});return f}},isShown:function(a){return a?n=="full":n},getConf:function(){return e},getTip:function(){return h},getTrigger:function(){return d}}),a.each("onHide,onBeforeShow,onShow,onBeforeHide".split(","),function(b,c){a.isFunction(e[c])&&a(f).bind(c,e[c]),f[c]=function(b){b&&a(f).bind(c,b);return f}})}a.fn.tooltip=function(b){var c=this.data("tooltip");if(c)return c;b=a.extend(!0,{},a.tools.tooltip.conf,b),typeof b.position=="string"&&(b.position=b.position.split(/,?\s/)),this.each(function(){c=new d(a(this),b),a(this).data("tooltip",c)});return b.api?c:this}})(jQuery);
diff --git a/koha-tmpl/opac-tmpl/ccsr/images/social-sprite.png b/koha-tmpl/opac-tmpl/ccsr/images/social-sprite.png
new file mode 100644 (file)
index 0000000..63d6b74
Binary files /dev/null and b/koha-tmpl/opac-tmpl/ccsr/images/social-sprite.png differ
index 95406ec..9ada707 100644 (file)
@@ -83,12 +83,27 @@ So: it should not be removed from Koha !
   content : '> ';
 }
 
+#BW_podcasts {
+  border: 1px solid #E8E8E8;
+  margin-top: 10px;
+  min-width: 100%;
+  float: left;
+  /*width: 49%;*/
+  visibility: hidden;
+  visibility: visible\9;
+}
+
+#BW_podcasts > iframe {
+  margin: -20px 0 10px 20px;
+}
+
 #BW_videos {
-  clear : both;
+  clear :left;
   border: 1px solid #E8E8E8;
-  padding-bottom: 140px;
   margin-top: 10px;
-  max-width: 100%;
+  min-width: 100%;
+  /*width: 49%;*/
+  float: left;
   visibility: hidden;
   visibility: visible\9;
 }
@@ -97,7 +112,11 @@ So: it should not be removed from Koha !
   visibility: visible;
 }
 
-#BW_videos h2 {
+#BW_podcasts:not(:empty) {
+  visibility: visible;
+}
+
+#BW_videos h2, #BW_podcasts h2 {
   background-color: #E8E8E8;
   margin: 5px 10px;
   padding: 0 5px;
index cc6666e..c081075 100644 (file)
@@ -1573,6 +1573,11 @@ div.message {
        padding : 3px 5px;
 }
 
+strong em, em strong  {
+    font-weight: bold;
+    font-style: italic;
+}
+
 #opac-main-search #listsmenu a, #opac-main-search #listsmenu h4 {
        color : #000;
        font-weight : normal;
@@ -1677,6 +1682,10 @@ ul#i18nMenu li.more ul li a {
        background-image : none;
        padding: 0 1.3em;
 }
+.morelang,
+li.more {
+float:left
+}
 
 span.lang{
        float:left;
@@ -2486,10 +2495,10 @@ span.sep {
 
 /* jQueryUI Core */
 
-.ui-widget-content { border: 1px solid #B9D8D9; background: #ffffff none; color: #222222; }
-.ui-widget-header { border: 1px solid #B9D8D9; background: #E6F0F2 none; color: #222222; font-weight: bold; }
-.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #B9D8D9; background: #F4F8F9 none; font-weight: normal; color: #555555; }
-.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #B9D8D9; background: #E6F0F2 none; font-weight: normal; color: #212121; }
+.ui-widget-content { border: 1px solid #AAA; background: #ffffff none; color: #222222; }
+.ui-widget-header { border: 1px solid #AAA; background: #E6F0F2 none; color: #222222; font-weight: bold; }
+.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #AAA; background: #F4F8F9 none; font-weight: normal; color: #555555; }
+.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #AAA; background: #E6F0F2 none; font-weight: normal; color: #212121; }
 .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff none; font-weight: normal; color: #212121; }
 .ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight  {border: 1px solid #fcefa1; background: #fbf9ee; color: #363636; }
 .ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec; color: #cd0a0a; }
@@ -2497,7 +2506,7 @@ span.sep {
 /* jQueryUI autocomplete */
 
 .ui-autocomplete { position: absolute; cursor: default; -webkit-box-shadow: 2px 2px 2px rgba(0,0,0,.3); -moz-box-shadow: 2px 2px 2px rgba(0,0,0,.3); box-shadow: 2px 2px 2px rgba(0,0,0,.3); }
-.ui-autocomplete.ui-widget-content .ui-state-hover { border: 1px solid #B9D8D9; background: #E6F0F2 none; font-weight: normal; color: #212121; }
+.ui-autocomplete.ui-widget-content .ui-state-hover { border: 1px solid #AAA; background: #E6F0F2 none; font-weight: normal; color: #212121; }
 .ui-autocomplete-loading { background: #FFF url("../../img/loading-small.gif") right center no-repeat; }
 .ui-menu li { list-style:none; }
 
@@ -2544,7 +2553,7 @@ span.sep {
 }
 
 /* jQuery UI standard tabs */
-.ui-tabs-nav .ui-tabs-selected a,
+.ui-tabs-nav .ui-tabs-active a,
 .ui-tabs-nav a:hover,
 .ui-tabs-nav a:focus,
 .ui-tabs-nav a:active,
@@ -2553,11 +2562,6 @@ span.sep {
     outline: 0 none;
 }
 
-.ui-tabs .ui-tabs-nav li.ui-tabs-selected {
-    background-color : #FFF;
-    border : 1px solid #D8D8D8;
-}
-
 .ui-widget,
 .ui-widget input,
 .ui-widget select,
@@ -2584,10 +2588,16 @@ ul.ui-tabs-nav li {
 }
 .ui-tabs .ui-tabs-nav li {
     background: #F3F3F3 none;
-    border: 1px solid #D8D8D8;
+    border-color: #D8D8D8;
     margin-right : .4em;
 }
-.ui-tabs .ui-tabs-nav li.ui-tabs-selected a {
+
+.ui-tabs .ui-tabs-nav li.ui-tabs-active {
+    background-color : #FFF;
+    border : 1px solid #D8D8D8;
+    border-bottom: 0;
+}
+.ui-tabs .ui-tabs-nav li.ui-tabs-active a {
     color : #000;
     font-weight : bold;
 }
@@ -2596,7 +2606,7 @@ ul.ui-tabs-nav li {
     background : #F3F3F3 none;
 }
 
-.ui-tabs .ui-tabs-nav li.ui-tabs-selected.ui-state-hover {
+.ui-tabs .ui-tabs-nav li.ui-tabs-active.ui-state-hover {
     background : #FFF none;
 }
 
@@ -2920,3 +2930,19 @@ a.reviewlink,a.reviewlink:visited {
 .idbresult img {
     padding-right: 6px;
 }
+
+.highlight-row-results {
+    font-size: 120%;
+}
+
+.highlight-row-detail {
+    font-weight: bold;
+}
+
+.branch-info-tooltip {
+    display: none;
+}
+.lang {
+float:left;
+padding: 0.1em 0;
+}
diff --git a/koha-tmpl/opac-tmpl/prog/en/css/right-to-left.css b/koha-tmpl/opac-tmpl/prog/en/css/right-to-left.css
new file mode 100644 (file)
index 0000000..57a2cfd
--- /dev/null
@@ -0,0 +1,237 @@
+/* Adjust text directions */
+body,
+body #doc,
+#doc2,
+#doc3,
+#doc4,
+.yui-t1,
+.yui-t2,
+.yui-t3,
+.yui-t4,
+.yui-t5,
+.yui-t6,
+.yui-t7
+{
+   text-align:right;
+   direction: rtl;
+}
+
+caption,
+table#marc th
+{
+   text-align: right;
+}
+
+/* Swap floats */
+
+
+body#advsearch #cartmenulink,
+body#advsearch #listsmenulink,
+#renewcontrols,
+.commentline .avatar,
+.resort,
+.yui-t1 #yui-main,
+.yui-t2 #yui-main,
+.yui-t3 #yui-main
+{
+   float: left;
+}
+.ui-tabs .ui-tabs-nav li,
+div.lang,
+fieldset.rows label,
+fieldset.rows span.label,
+#auth,
+#bookcover,
+.left,
+.nav_results ul.pg_menu li,
+.ui-tabs-nav li,
+.yui-g div.first,
+.yui-gc div.first,
+.yui-gc div.first div.first,
+.yui-gd div.first,
+.yui-ge div.first,
+.yui-gf div.first,
+.yui-t1 .yui-b
+{
+   float: right;
+}
+
+h1#libraryname
+{
+   float: right !important;
+}
+
+#fluid-offset
+{
+   float: none;
+}
+
+/* Adjust margins, padding, alignment and table-element widths */
+
+div#menu li a
+{
+   margin-left: -1px;
+}
+
+.yui-t1 #yui-main,
+.yui-t1 #yui-main .yui-b,
+.yui-t2 #yui-main,
+.yui-t3 #yui-main
+{
+   margin-left: 0;
+}
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6
+{
+   margin-left: 0.5em;
+}
+
+.results_summary .label
+{
+   margin-left: 0.5em;
+}
+
+
+ul.pg_menu li,
+.author,
+.nav_results
+{
+   margin-right: 0.5em;
+}
+
+#usershowreviews
+{
+   margin-right: 15em;
+}
+
+#moresearches
+{
+   margin: .6em 10em .3em 0;
+}
+
+#menu ul
+{
+   padding-left:0;
+}
+
+#custom-doc,
+#opac-main-search
+{
+   padding-right: 2em;
+}
+
+.nav_results .l_Results a
+{
+   padding: 8px 3px 8px 28px;
+}
+
+body#advsearch #moresearches
+{
+   clear:none;
+}
+
+span.koha_url
+{
+   left: 2em;
+   right:auto;
+}
+
+.yui-u first
+{
+   right: 15em;
+}
+
+table#marc td:first-child
+{
+   width: 15em;
+}
+
+.yui-t1 #yui-main,
+.yui-t2 #yui-main,
+.yui-t3 #yui-main {
+   width: 80%;
+}
+
+/* Borders */
+
+div#menu {
+   border-right: 0;
+   border-left: 1px solid #979797;
+}
+
+#menu ul li.active a {
+   border-left: 0;
+   border-right: 1px solid #979797;
+}
+
+/* flip over breadcrumb image */
+
+h3 img {
+        -moz-transform: scaleX(-1);
+        -o-transform: scaleX(-1);
+        -webkit-transform: scaleX(-1);
+        transform: scaleX(-1);
+        filter: FlipH;
+        -ms-filter: "FlipH";
+}
+
+
+#moresearches {
+    clear: right;
+}
+
+#cartmenulink, #listsmenulink {
+    float: right;
+    margin-right: 1em;
+    margin-left: 0em;
+}
+
+#listsmenulink {
+
+    background-image: url("../../images/sprite.png"), -moz-linear-gradient(center top , rgb(215, 229, 255) 0%, rgb(177, 203, 255) 50%, rgb(159, 191, 255) 100%);
+
+    background-position: -5px -287px, left top;
+
+    padding-left: 20px;
+}
+#listsmenulink:hover {
+    background-position: -5px -287px, left top;
+}
+
+#cartmenulink {
+    padding-right: 30px;
+    background-position: 20px -256px, left top;
+    padding-left: 13px;
+}
+#cartmenulink:hover {
+    background-position: 20px -256px, left top;
+}
+.lang {
+float:right;
+
+}
+.morelang,
+li.more {
+float:right;
+}
+
+ul#i18nMenu li {
+    border-right: 1px solid rgb(204, 204, 204);
+}
+div.rating-cancel, div.star-rating {
+    float: right;
+}
+
+
+#shelfbrowser #browser_previous {
+    background-position: -9px -1051px;
+}
+
+#shelfbrowser #browser_next {
+    background-position: -9px -1001px;
+}
index 45424e8..147b82c 100644 (file)
@@ -24,6 +24,9 @@
  <link rel="stylesheet" type="text/css" href="[% themelang %]/css/persona-buttons.css" />
 [% END %]
 [% IF ( OPACMobileUserCSS ) %]<style type="text/css" media="screen and (max-width:700px)">[% OPACMobileUserCSS %]</style>[% END %]
+[% IF ( bidi ) %]
+    <link rel="stylesheet" type="text/css" href="[% themelang %]/css/right-to-left.css" />
+[% END %]
 [% IF ( OPACUserCSS ) %]<style type="text/css">[% OPACUserCSS %]</style>[% END %]
 <!-- yui js --> 
 <script type="text/javascript" src="[% yuipath %]/utilities/utilities.js"></script> 
index aa8c281..668ac0a 100644 (file)
         <input type="text" title="Type search term" id = "transl1" name="q" class="left" style="width: 35%; font-size: 111%;"/><div id="translControl"></div>
 [% END %]
    [% IF ( OpacAddMastheadLibraryPulldown ) %]
-      <select name="limit" id="select_library" class="left">
+      <select name="branch_group_limit" id="select_library" class="left">
          <option value="">All libraries</option>
-         [% FOREACH BranchesLoo IN BranchesLoop %]
-            [% IF ( BranchesLoo.selected ) %]<option selected="selected" value="branch:[% BranchesLoo.value %]">[% BranchesLoo.branchname %]</option>
-            [% ELSE %]<option value="branch:[% BranchesLoo.value %]">[% BranchesLoo.branchname %]</option>[% END %]
+         <optgroup label="Libraries">
+             [% FOREACH BranchesLoo IN BranchesLoop %]
+                [% IF ( BranchesLoo.selected ) %]<option selected="selected" value="branch:[% BranchesLoo.value %]">[% BranchesLoo.branchname %]</option>
+                [% ELSE %]<option value="branch:[% BranchesLoo.value %]">[% BranchesLoo.branchname %]</option>[% END %]
+             [% END %]
+         </optgroup>
+         [% IF BranchCategoriesLoop %]
+             <optgroup label="Groups">
+                 [% FOREACH bc IN BranchCategoriesLoop %]
+                     [% IF ( bc.selected ) %]
+                         <option selected="selected" value="multibranchlimit-[% bc.categorycode %]">[% bc.categoryname %]</option>
+                     [% ELSE %]
+                         <option value="multibranchlimit-[% bc.categorycode %]">[% bc.categoryname %]</option>
+                     [% END %]
+                 [% END %]
+             </optgroup>
          [% END %]
       </select>
    [% ELSE %]
 <div id="moresearches">
 <a href="/cgi-bin/koha/opac-search.pl">Advanced search</a>
 [% IF ( OpacBrowser ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-browser.pl">Browse by hierarchy</a>[% END %]
-[% IF ( OpacAuthorities ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-authorities-home.pl">Browse by author or subject</a>[% END %]
+[% IF ( OpacAuthorities ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-authorities-home.pl">Authority search</a>[% END %]
 [% IF ( opacuserlogin && reviewson && OpacShowRecentComments ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-showreviews.pl">Recent comments</a>[% END %]
 [% IF ( TagsEnabled ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-tags.pl">Tag cloud</a>[% END %]
 [% IF ( OpacCloud ) %]<span class="pipe"> | </span><a href="/cgi-bin/koha/opac-tags_subject.pl">Subject cloud</a>[% END %]
index b7495f9..7020673 100644 (file)
@@ -9,13 +9,13 @@
     [% IF ( languages_loop && opaclanguagesdisplay ) %]
         [% UNLESS ( one_language_enabled ) %]
             <div id="changelanguage" class="ft">
-            <div class="lang" style="float:left;padding: 0.1em 0;"><strong>Languages:&nbsp;</strong></div>
+            <div class="lang"><strong>Languages:&nbsp;</strong></div>
             <ul id="i18nMenu" class="footermenu">
             [% FOREACH languages_loo IN languages_loop %]
 
                 [% IF ( languages_loo.group_enabled ) %]
                 [% IF ( languages_loo.plural ) %]
-                <li class="more" style="float:left;"><a class="sublangs" id="show[% languages_loo.rfc4646_subtag %]" href="#">[% IF ( languages_loo.native_description ) %][% languages_loo.native_description %][% ELSE %][% languages_loo.rfc4646_subtag %][% END %]</a><div id="sub[% languages_loo.rfc4646_subtag %]">
+                <li class="more"><a class="sublangs" id="show[% languages_loo.rfc4646_subtag %]" href="#">[% IF ( languages_loo.native_description ) %][% languages_loo.native_description %][% ELSE %][% languages_loo.rfc4646_subtag %][% END %]</a><div id="sub[% languages_loo.rfc4646_subtag %]">
                 <div class="bd"><ul>
                 [% FOREACH sublanguages_loo IN languages_loo.sublanguages_loop %]
             [% IF ( sublanguages_loo.enabled ) %]
@@ -32,9 +32,9 @@
                 [% ELSE %]
                 [% IF ( languages_loo.group_enabled ) %]
                     [% IF ( languages_loo.current ) %]
-                        <li style="float:left;">[% IF ( languages_loo.native_description ) %][% languages_loo.native_description %][% ELSE %][% languages_loo.rfc4646_subtag %][% END %]</li>
+                        <li class="morelang">[% IF ( languages_loo.native_description ) %][% languages_loo.native_description %][% ELSE %][% languages_loo.rfc4646_subtag %][% END %]</li>
                     [% ELSE %]
-                        <li style="float:left;"><a href="/cgi-bin/koha/opac-changelanguage.pl?language=[% languages_loo.rfc4646_subtag %]">[% IF ( languages_loo.native_description ) %][% languages_loo.native_description %][% ELSE %][% languages_loo.rfc4646_subtag %][% END %]</a></li>
+                        <li class="morelang"><a href="/cgi-bin/koha/opac-changelanguage.pl?language=[% languages_loo.rfc4646_subtag %]">[% IF ( languages_loo.native_description ) %][% languages_loo.native_description %][% ELSE %][% languages_loo.rfc4646_subtag %][% END %]</a></li>
                     [% END %]
             [% END %]
                 [% END %]
index c07ba3b..10a58dd 100644 (file)
@@ -51,7 +51,8 @@ KOHA.OpenLibrary = {
                         $(this).append(img);
                         $(this).append('<div class="results_summary">' + '<a href="' + book.url + '">Preview</a></div>');
                     } else {
-                        img.src = book.cover.small;
+                        img.src = book.cover.medium;
+                        img.height = '110';
                         $(this).append(img);
                     }
                 } else {
index fe76cd3..186a22f 100644 (file)
@@ -1,446 +1,5 @@
-/*!
- * jQuery UI CSS Framework 1.8.23
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Theming/API
- */
-
-/* Layout helpers
-----------------------------------*/
-.ui-helper-hidden { display: none; }
-.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); }
-.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
-.ui-helper-clearfix:before, .ui-helper-clearfix:after { content: ""; display: table; }
-.ui-helper-clearfix:after { clear: both; }
-.ui-helper-clearfix { zoom: 1; }
-.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
-
-
-/* Interaction Cues
-----------------------------------*/
-.ui-state-disabled { cursor: default !important; }
-
-
-/* Icons
-----------------------------------*/
-
-/* states and images */
-.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
-
-
-/* Misc visuals
-----------------------------------*/
-
-/* Overlays */
-.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
-
-
-/*!
- * jQuery UI CSS Framework 1.8.23
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Theming/API
- *
- * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
- */
-
-
-/* Component containers
-----------------------------------*/
-.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; }
-.ui-widget .ui-widget { font-size: 1em; }
-.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; }
-.ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; }
-.ui-widget-content a { color: #222222; }
-.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; }
-.ui-widget-header a { color: #222222; }
-
-/* Interaction states
-----------------------------------*/
-.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; }
-.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; }
-.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999; background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
-.ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; }
-.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
-.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; text-decoration: none; }
-.ui-widget :active { outline: none; }
-
-/* Interaction Cues
-----------------------------------*/
-.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight  {border: 1px solid #fcefa1; background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; }
-.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }
-.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; }
-.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; }
-.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; }
-.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
-.ui-priority-secondary, .ui-widget-content .ui-priority-secondary,  .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
-.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
-
-/* Icons
-----------------------------------*/
-
-/* states and images */
-.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); }
-.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
-.ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
-.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); }
-.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
-.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
-.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); }
-.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); }
-
-/* positioning */
-.ui-icon-carat-1-n { background-position: 0 0; }
-.ui-icon-carat-1-ne { background-position: -16px 0; }
-.ui-icon-carat-1-e { background-position: -32px 0; }
-.ui-icon-carat-1-se { background-position: -48px 0; }
-.ui-icon-carat-1-s { background-position: -64px 0; }
-.ui-icon-carat-1-sw { background-position: -80px 0; }
-.ui-icon-carat-1-w { background-position: -96px 0; }
-.ui-icon-carat-1-nw { background-position: -112px 0; }
-.ui-icon-carat-2-n-s { background-position: -128px 0; }
-.ui-icon-carat-2-e-w { background-position: -144px 0; }
-.ui-icon-triangle-1-n { background-position: 0 -16px; }
-.ui-icon-triangle-1-ne { background-position: -16px -16px; }
-.ui-icon-triangle-1-e { background-position: -32px -16px; }
-.ui-icon-triangle-1-se { background-position: -48px -16px; }
-.ui-icon-triangle-1-s { background-position: -64px -16px; }
-.ui-icon-triangle-1-sw { background-position: -80px -16px; }
-.ui-icon-triangle-1-w { background-position: -96px -16px; }
-.ui-icon-triangle-1-nw { background-position: -112px -16px; }
-.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
-.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
-.ui-icon-arrow-1-n { background-position: 0 -32px; }
-.ui-icon-arrow-1-ne { background-position: -16px -32px; }
-.ui-icon-arrow-1-e { background-position: -32px -32px; }
-.ui-icon-arrow-1-se { background-position: -48px -32px; }
-.ui-icon-arrow-1-s { background-position: -64px -32px; }
-.ui-icon-arrow-1-sw { background-position: -80px -32px; }
-.ui-icon-arrow-1-w { background-position: -96px -32px; }
-.ui-icon-arrow-1-nw { background-position: -112px -32px; }
-.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
-.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
-.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
-.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
-.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
-.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
-.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
-.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
-.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
-.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
-.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
-.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
-.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
-.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
-.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
-.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
-.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
-.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
-.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
-.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
-.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
-.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
-.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
-.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
-.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
-.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
-.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
-.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
-.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
-.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
-.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
-.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
-.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
-.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
-.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
-.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
-.ui-icon-arrow-4 { background-position: 0 -80px; }
-.ui-icon-arrow-4-diag { background-position: -16px -80px; }
-.ui-icon-extlink { background-position: -32px -80px; }
-.ui-icon-newwin { background-position: -48px -80px; }
-.ui-icon-refresh { background-position: -64px -80px; }
-.ui-icon-shuffle { background-position: -80px -80px; }
-.ui-icon-transfer-e-w { background-position: -96px -80px; }
-.ui-icon-transferthick-e-w { background-position: -112px -80px; }
-.ui-icon-folder-collapsed { background-position: 0 -96px; }
-.ui-icon-folder-open { background-position: -16px -96px; }
-.ui-icon-document { background-position: -32px -96px; }
-.ui-icon-document-b { background-position: -48px -96px; }
-.ui-icon-note { background-position: -64px -96px; }
-.ui-icon-mail-closed { background-position: -80px -96px; }
-.ui-icon-mail-open { background-position: -96px -96px; }
-.ui-icon-suitcase { background-position: -112px -96px; }
-.ui-icon-comment { background-position: -128px -96px; }
-.ui-icon-person { background-position: -144px -96px; }
-.ui-icon-print { background-position: -160px -96px; }
-.ui-icon-trash { background-position: -176px -96px; }
-.ui-icon-locked { background-position: -192px -96px; }
-.ui-icon-unlocked { background-position: -208px -96px; }
-.ui-icon-bookmark { background-position: -224px -96px; }
-.ui-icon-tag { background-position: -240px -96px; }
-.ui-icon-home { background-position: 0 -112px; }
-.ui-icon-flag { background-position: -16px -112px; }
-.ui-icon-calendar { background-position: -32px -112px; }
-.ui-icon-cart { background-position: -48px -112px; }
-.ui-icon-pencil { background-position: -64px -112px; }
-.ui-icon-clock { background-position: -80px -112px; }
-.ui-icon-disk { background-position: -96px -112px; }
-.ui-icon-calculator { background-position: -112px -112px; }
-.ui-icon-zoomin { background-position: -128px -112px; }
-.ui-icon-zoomout { background-position: -144px -112px; }
-.ui-icon-search { background-position: -160px -112px; }
-.ui-icon-wrench { background-position: -176px -112px; }
-.ui-icon-gear { background-position: -192px -112px; }
-.ui-icon-heart { background-position: -208px -112px; }
-.ui-icon-star { background-position: -224px -112px; }
-.ui-icon-link { background-position: -240px -112px; }
-.ui-icon-cancel { background-position: 0 -128px; }
-.ui-icon-plus { background-position: -16px -128px; }
-.ui-icon-plusthick { background-position: -32px -128px; }
-.ui-icon-minus { background-position: -48px -128px; }
-.ui-icon-minusthick { background-position: -64px -128px; }
-.ui-icon-close { background-position: -80px -128px; }
-.ui-icon-closethick { background-position: -96px -128px; }
-.ui-icon-key { background-position: -112px -128px; }
-.ui-icon-lightbulb { background-position: -128px -128px; }
-.ui-icon-scissors { background-position: -144px -128px; }
-.ui-icon-clipboard { background-position: -160px -128px; }
-.ui-icon-copy { background-position: -176px -128px; }
-.ui-icon-contact { background-position: -192px -128px; }
-.ui-icon-image { background-position: -208px -128px; }
-.ui-icon-video { background-position: -224px -128px; }
-.ui-icon-script { background-position: -240px -128px; }
-.ui-icon-alert { background-position: 0 -144px; }
-.ui-icon-info { background-position: -16px -144px; }
-.ui-icon-notice { background-position: -32px -144px; }
-.ui-icon-help { background-position: -48px -144px; }
-.ui-icon-check { background-position: -64px -144px; }
-.ui-icon-bullet { background-position: -80px -144px; }
-.ui-icon-radio-off { background-position: -96px -144px; }
-.ui-icon-radio-on { background-position: -112px -144px; }
-.ui-icon-pin-w { background-position: -128px -144px; }
-.ui-icon-pin-s { background-position: -144px -144px; }
-.ui-icon-play { background-position: 0 -160px; }
-.ui-icon-pause { background-position: -16px -160px; }
-.ui-icon-seek-next { background-position: -32px -160px; }
-.ui-icon-seek-prev { background-position: -48px -160px; }
-.ui-icon-seek-end { background-position: -64px -160px; }
-.ui-icon-seek-start { background-position: -80px -160px; }
-/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
-.ui-icon-seek-first { background-position: -80px -160px; }
-.ui-icon-stop { background-position: -96px -160px; }
-.ui-icon-eject { background-position: -112px -160px; }
-.ui-icon-volume-off { background-position: -128px -160px; }
-.ui-icon-volume-on { background-position: -144px -160px; }
-.ui-icon-power { background-position: 0 -176px; }
-.ui-icon-signal-diag { background-position: -16px -176px; }
-.ui-icon-signal { background-position: -32px -176px; }
-.ui-icon-battery-0 { background-position: -48px -176px; }
-.ui-icon-battery-1 { background-position: -64px -176px; }
-.ui-icon-battery-2 { background-position: -80px -176px; }
-.ui-icon-battery-3 { background-position: -96px -176px; }
-.ui-icon-circle-plus { background-position: 0 -192px; }
-.ui-icon-circle-minus { background-position: -16px -192px; }
-.ui-icon-circle-close { background-position: -32px -192px; }
-.ui-icon-circle-triangle-e { background-position: -48px -192px; }
-.ui-icon-circle-triangle-s { background-position: -64px -192px; }
-.ui-icon-circle-triangle-w { background-position: -80px -192px; }
-.ui-icon-circle-triangle-n { background-position: -96px -192px; }
-.ui-icon-circle-arrow-e { background-position: -112px -192px; }
-.ui-icon-circle-arrow-s { background-position: -128px -192px; }
-.ui-icon-circle-arrow-w { background-position: -144px -192px; }
-.ui-icon-circle-arrow-n { background-position: -160px -192px; }
-.ui-icon-circle-zoomin { background-position: -176px -192px; }
-.ui-icon-circle-zoomout { background-position: -192px -192px; }
-.ui-icon-circle-check { background-position: -208px -192px; }
-.ui-icon-circlesmall-plus { background-position: 0 -208px; }
-.ui-icon-circlesmall-minus { background-position: -16px -208px; }
-.ui-icon-circlesmall-close { background-position: -32px -208px; }
-.ui-icon-squaresmall-plus { background-position: -48px -208px; }
-.ui-icon-squaresmall-minus { background-position: -64px -208px; }
-.ui-icon-squaresmall-close { background-position: -80px -208px; }
-.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
-.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
-.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
-.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
-.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
-.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
-
-
-/* Misc visuals
-----------------------------------*/
-
-/* Corner radius */
-.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -khtml-border-top-left-radius: 4px; border-top-left-radius: 4px; }
-.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; -khtml-border-top-right-radius: 4px; border-top-right-radius: 4px; }
-.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; -khtml-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
-.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; -khtml-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
-
-/* Overlays */
-.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }
-.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -khtml-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }/*!
- * jQuery UI Autocomplete 1.8.23
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Autocomplete#theming
- */
-.ui-autocomplete { position: absolute; cursor: default; }
-
-/* workarounds */
-* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */
-
-/*
- * jQuery UI Menu 1.8.23
- *
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Menu#theming
- */
-.ui-menu {
-       list-style:none;
-       padding: 2px;
-  margin: 0;
-     display:block;
- float: left;
-}
-.ui-menu .ui-menu {
-     margin-top: -3px;
-}
-.ui-menu .ui-menu-item {
-   margin:0;
-      padding: 0;
-    zoom: 1;
-       float: left;
-   clear: left;
-   width: 100%;
-}
-.ui-menu .ui-menu-item a {
-      text-decoration:none;
-  display:block;
- padding:.2em .4em;
-     line-height:1.5;
-       zoom:1;
-}
-.ui-menu .ui-menu-item a.ui-state-hover,
-.ui-menu .ui-menu-item a.ui-state-active {
-  font-weight: normal;
-   margin: -1px;
-}
-/*!
- * jQuery UI Slider 1.8.23
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Slider#theming
- */
-.ui-slider { position: relative; text-align: left; }
-.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
-.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; }
-
-.ui-slider-horizontal { height: .8em; }
-.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
-.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
-.ui-slider-horizontal .ui-slider-range-min { left: 0; }
-.ui-slider-horizontal .ui-slider-range-max { right: 0; }
-
-.ui-slider-vertical { width: .8em; height: 100px; }
-.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
-.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
-.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
-.ui-slider-vertical .ui-slider-range-max { top: 0; }/*!
- * jQuery UI Tabs 1.8.23
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Tabs#theming
- */
-.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
-.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
-.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
-.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
-.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
-.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
-.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
-.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
-.ui-tabs .ui-tabs-hide { display: none !important; }
-/*!
- * jQuery UI Datepicker 1.8.23
- *
- * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Datepicker#theming
- */
-.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; }
-.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
-.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
-.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
-.ui-datepicker .ui-datepicker-prev { left:2px; }
-.ui-datepicker .ui-datepicker-next { right:2px; }
-.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
-.ui-datepicker .ui-datepicker-next-hover { right:1px; }
-.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }
-.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
-.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
-.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
-.ui-datepicker select.ui-datepicker-month,
-.ui-datepicker select.ui-datepicker-year { width: 49%;}
-.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
-.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0;  }
-.ui-datepicker td { border: 0; padding: 1px; }
-.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
-.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
-.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
-.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
-
-/* with multiple calendars */
-.ui-datepicker.ui-datepicker-multi { width:auto; }
-.ui-datepicker-multi .ui-datepicker-group { float:left; }
-.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
-.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
-.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
-.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
-.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
-.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
-.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
-.ui-datepicker-row-break { clear:both; width:100%; font-size:0em; }
-
-/* RTL support */
-.ui-datepicker-rtl { direction: rtl; }
-.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
-.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
-.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
-.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
-.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
-.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
-.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
-.ui-datepicker-rtl .ui-datepicker-group { float:right; }
-.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
-.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
-
-/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
-.ui-datepicker-cover {
-    position: absolute; /*must have*/
-    z-index: -1; /*must have*/
-    filter: mask(); /*must have*/
-    top: -4px; /*must have*/
-    left: -4px; /*must have*/
-    width: 200px; /*must have*/
-    height: 200px; /*must have*/
-}
\ No newline at end of file
+/*! jQuery UI - v1.9.2 - 2013-02-12
+* http://jqueryui.com
+* Includes: jquery.ui.core.css, jquery.ui.autocomplete.css, jquery.ui.datepicker.css, jquery.ui.menu.css, jquery.ui.slider.css, jquery.ui.tabs.css, jquery.ui.tooltip.css
+* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
+* Copyright (c) 2013 jQuery Foundation and other contributors Licensed MIT */.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{zoom:1}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}* html .ui-autocomplete{width:1px}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month-year{width:100%}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0em}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current{float:right}.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker-cover{position:absolute;z-index:-1;filter:mask();top:-4px;left:-4px;width:200px;height:200px}.ui-menu{list-style:none;padding:2px;margin:0;display:block;outline:none}.ui-menu .ui-menu{margin-top:-3px;position:absolute}.ui-menu .ui-menu-item{margin:0;padding:0;zoom:1;width:100%}.ui-menu .ui-menu-divider{margin:5px -2px 5px -2px;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-menu-item a{text-decoration:none;display:block;padding:2px .4em;line-height:1.5;zoom:1;font-weight:normal}.ui-menu .ui-menu-item a.ui-state-focus,.ui-menu .ui-menu-item a.ui-state-active{font-weight:normal;margin:-1px}.ui-menu .ui-state-disabled{font-weight:normal;margin:.4em 0 .2em;line-height:1.5}.ui-menu .ui-state-disabled a{cursor:default}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item a{position:relative;padding-left:2em}.ui-menu .ui-icon{position:absolute;top:.2em;left:.2em}.ui-menu .ui-menu-icon{position:static;float:right}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-tabs{position:relative;padding:.2em;zoom:1}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav li a{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active a,.ui-tabs .ui-tabs-nav li.ui-state-disabled a,.ui-tabs .ui-tabs-nav li.ui-tabs-loading a{cursor:text}.ui-tabs .ui-tabs-nav li a,.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}* html .ui-tooltip{background-image:none}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #aaa;background:#fff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px;background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-state-default .ui-icon{background-image:url(images/ui-icons_888888_256x240.png)}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-active .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_2e83ff_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_cd0a0a_256x240.png)}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;-khtml-border-top-right-radius:4px;border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{-moz-border-radius-bottomleft:4px;-webkit-border-bottom-left-radius:4px;-khtml-border-bottom-left-radius:4px;border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{-moz-border-radius-bottomright:4px;-webkit-border-bottom-right-radius:4px;-khtml-border-bottom-right-radius:4px;border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);-moz-border-radius:8px;-khtml-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}
\ No newline at end of file
index 635f4c6..765f2c0 100644 (file)
@@ -1,37 +1,6 @@
-/*! jQuery UI - v1.8.23 - 2012-08-15
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.core.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;return!b.href||!g||f.nodeName.toLowerCase()!=="map"?!1:(h=a("img[usemap=#"+g+"]")[0],!!h&&d(h))}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.ui=a.ui||{};if(a.ui.version)return;a.extend(a.ui,{version:"1.8.23",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;return a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0),/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a("<a>").outerWidth(1).jquery||a.each(["Width","Height"],function(c,d){function h(b,c,d,f){return a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)}),c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){return c===b?g["inner"+d].call(this):this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){return typeof b!="number"?g["outer"+d].call(this,b):this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:a.expr.createPseudo?a.expr.createPseudo(function(b){return function(c){return!!a.data(c,b)}}):function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.curCSS||(a.curCSS=a.css),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!d||!a.element[0].parentNode)return;for(var e=0;e<d.length;e++)a.options[d[e][0]]&&d[e][1].apply(a.element,c)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(b,c){if(a(b).css("overflow")==="hidden")return!1;var d=c&&c==="left"?"scrollLeft":"scrollTop",e=!1;return b[d]>0?!0:(b[d]=1,e=b[d]>0,b[d]=0,e)},isOverAxis:function(a,b,c){return a>b&&a<b+c},isOver:function(b,c,d,e,f,g){return a.ui.isOverAxis(b,d,f)&&a.ui.isOverAxis(c,e,g)}})})(jQuery);;/*! jQuery UI - v1.8.23 - 2012-08-15
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.widget.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){if(a.cleanData){var c=a.cleanData;a.cleanData=function(b){for(var d=0,e;(e=b[d])!=null;d++)try{a(e).triggerHandler("remove")}catch(f){}c(b)}}else{var d=a.fn.remove;a.fn.remove=function(b,c){return this.each(function(){return c||(!b||a.filter(b,[this]).length)&&a("*",this).add([this]).each(function(){try{a(this).triggerHandler("remove")}catch(b){}}),d.call(a(this),b,c)})}}a.widget=function(b,c,d){var e=b.split(".")[0],f;b=b.split(".")[1],f=e+"-"+b,d||(d=c,c=a.Widget),a.expr[":"][f]=function(c){return!!a.data(c,b)},a[e]=a[e]||{},a[e][b]=function(a,b){arguments.length&&this._createWidget(a,b)};var g=new c;g.options=a.extend(!0,{},g.options),a[e][b].prototype=a.extend(!0,g,{namespace:e,widgetName:b,widgetEventPrefix:a[e][b].prototype.widgetEventPrefix||b,widgetBaseClass:f},d),a.widget.bridge(b,a[e][b])},a.widget.bridge=function(c,d){a.fn[c]=function(e){var f=typeof e=="string",g=Array.prototype.slice.call(arguments,1),h=this;return e=!f&&g.length?a.extend.apply(null,[!0,e].concat(g)):e,f&&e.charAt(0)==="_"?h:(f?this.each(function(){var d=a.data(this,c),f=d&&a.isFunction(d[e])?d[e].apply(d,g):d;if(f!==d&&f!==b)return h=f,!1}):this.each(function(){var b=a.data(this,c);b?b.option(e||{})._init():a.data(this,c,new d(e,this))}),h)}},a.Widget=function(a,b){arguments.length&&this._createWidget(a,b)},a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:!1},_createWidget:function(b,c){a.data(c,this.widgetName,this),this.element=a(c),this.options=a.extend(!0,{},this.options,this._getCreateOptions(),b);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()}),this._create(),this._trigger("create"),this._init()},_getCreateOptions:function(){return a.metadata&&a.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName),this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled "+"ui-state-disabled")},widget:function(){return this.element},option:function(c,d){var e=c;if(arguments.length===0)return a.extend({},this.options);if(typeof c=="string"){if(d===b)return this.options[c];e={},e[c]=d}return this._setOptions(e),this},_setOptions:function(b){var c=this;return a.each(b,function(a,b){c._setOption(a,b)}),this},_setOption:function(a,b){return this.options[a]=b,a==="disabled"&&this.widget()[b?"addClass":"removeClass"](this.widgetBaseClass+"-disabled"+" "+"ui-state-disabled").attr("aria-disabled",b),this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_trigger:function(b,c,d){var e,f,g=this.options[b];d=d||{},c=a.Event(c),c.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase(),c.target=this.element[0],f=c.originalEvent;if(f)for(e in f)e in c||(c[e]=f[e]);return this.element.trigger(c,d),!(a.isFunction(g)&&g.call(this.element[0],c,d)===!1||c.isDefaultPrevented())}}})(jQuery);;/*! jQuery UI - v1.8.23 - 2012-08-15
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.mouse.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){var c=!1;a(document).mouseup(function(a){c=!1}),a.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var b=this;this.element.bind("mousedown."+this.widgetName,function(a){return b._mouseDown(a)}).bind("click."+this.widgetName,function(c){if(!0===a.data(c.target,b.widgetName+".preventClickEvent"))return a.removeData(c.target,b.widgetName+".preventClickEvent"),c.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(b){if(c)return;this._mouseStarted&&this._mouseUp(b),this._mouseDownEvent=b;var d=this,e=b.which==1,f=typeof this.options.cancel=="string"&&b.target.nodeName?a(b.target).closest(this.options.cancel).length:!1;if(!e||f||!this._mouseCapture(b))return!0;this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){d.mouseDelayMet=!0},this.options.delay));if(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)){this._mouseStarted=this._mouseStart(b)!==!1;if(!this._mouseStarted)return b.preventDefault(),!0}return!0===a.data(b.target,this.widgetName+".preventClickEvent")&&a.removeData(b.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(a){return d._mouseMove(a)},this._mouseUpDelegate=function(a){return d._mouseUp(a)},a(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),b.preventDefault(),c=!0,!0},_mouseMove:function(b){return!a.browser.msie||document.documentMode>=9||!!b.button?this._mouseStarted?(this._mouseDrag(b),b.preventDefault()):(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b)),!this._mouseStarted):this._mouseUp(b)},_mouseUp:function(b){return a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b)),!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery);;/*! jQuery UI - v1.8.23 - 2012-08-15
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.position.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){a.ui=a.ui||{};var c=/left|center|right/,d=/top|center|bottom/,e="center",f={},g=a.fn.position,h=a.fn.offset;a.fn.position=function(b){if(!b||!b.of)return g.apply(this,arguments);b=a.extend({},b);var h=a(b.of),i=h[0],j=(b.collision||"flip").split(" "),k=b.offset?b.offset.split(" "):[0,0],l,m,n;return i.nodeType===9?(l=h.width(),m=h.height(),n={top:0,left:0}):i.setTimeout?(l=h.width(),m=h.height(),n={top:h.scrollTop(),left:h.scrollLeft()}):i.preventDefault?(b.at="left top",l=m=0,n={top:b.of.pageY,left:b.of.pageX}):(l=h.outerWidth(),m=h.outerHeight(),n=h.offset()),a.each(["my","at"],function(){var a=(b[this]||"").split(" ");a.length===1&&(a=c.test(a[0])?a.concat([e]):d.test(a[0])?[e].concat(a):[e,e]),a[0]=c.test(a[0])?a[0]:e,a[1]=d.test(a[1])?a[1]:e,b[this]=a}),j.length===1&&(j[1]=j[0]),k[0]=parseInt(k[0],10)||0,k.length===1&&(k[1]=k[0]),k[1]=parseInt(k[1],10)||0,b.at[0]==="right"?n.left+=l:b.at[0]===e&&(n.left+=l/2),b.at[1]==="bottom"?n.top+=m:b.at[1]===e&&(n.top+=m/2),n.left+=k[0],n.top+=k[1],this.each(function(){var c=a(this),d=c.outerWidth(),g=c.outerHeight(),h=parseInt(a.curCSS(this,"marginLeft",!0))||0,i=parseInt(a.curCSS(this,"marginTop",!0))||0,o=d+h+(parseInt(a.curCSS(this,"marginRight",!0))||0),p=g+i+(parseInt(a.curCSS(this,"marginBottom",!0))||0),q=a.extend({},n),r;b.my[0]==="right"?q.left-=d:b.my[0]===e&&(q.left-=d/2),b.my[1]==="bottom"?q.top-=g:b.my[1]===e&&(q.top-=g/2),f.fractions||(q.left=Math.round(q.left),q.top=Math.round(q.top)),r={left:q.left-h,top:q.top-i},a.each(["left","top"],function(c,e){a.ui.position[j[c]]&&a.ui.position[j[c]][e](q,{targetWidth:l,targetHeight:m,elemWidth:d,elemHeight:g,collisionPosition:r,collisionWidth:o,collisionHeight:p,offset:k,my:b.my,at:b.at})}),a.fn.bgiframe&&c.bgiframe(),c.offset(a.extend(q,{using:b.using}))})},a.ui.position={fit:{left:function(b,c){var d=a(window),e=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft();b.left=e>0?b.left-e:Math.max(b.left-c.collisionPosition.left,b.left)},top:function(b,c){var d=a(window),e=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop();b.top=e>0?b.top-e:Math.max(b.top-c.collisionPosition.top,b.top)}},flip:{left:function(b,c){if(c.at[0]===e)return;var d=a(window),f=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft(),g=c.my[0]==="left"?-c.elemWidth:c.my[0]==="right"?c.elemWidth:0,h=c.at[0]==="left"?c.targetWidth:-c.targetWidth,i=-2*c.offset[0];b.left+=c.collisionPosition.left<0?g+h+i:f>0?g+h+i:0},top:function(b,c){if(c.at[1]===e)return;var d=a(window),f=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop(),g=c.my[1]==="top"?-c.elemHeight:c.my[1]==="bottom"?c.elemHeight:0,h=c.at[1]==="top"?c.targetHeight:-c.targetHeight,i=-2*c.offset[1];b.top+=c.collisionPosition.top<0?g+h+i:f>0?g+h+i:0}}},a.offset.setOffset||(a.offset.setOffset=function(b,c){/static/.test(a.curCSS(b,"position"))&&(b.style.position="relative");var d=a(b),e=d.offset(),f=parseInt(a.curCSS(b,"top",!0),10)||0,g=parseInt(a.curCSS(b,"left",!0),10)||0,h={top:c.top-e.top+f,left:c.left-e.left+g};"using"in c?c.using.call(b,h):d.css(h)},a.fn.offset=function(b){var c=this[0];return!c||!c.ownerDocument?null:b?a.isFunction(b)?this.each(function(c){a(this).offset(b.call(this,c,a(this).offset()))}):this.each(function(){a.offset.setOffset(this,b)}):h.call(this)}),a.curCSS||(a.curCSS=a.css),function(){var b=document.getElementsByTagName("body")[0],c=document.createElement("div"),d,e,g,h,i;d=document.createElement(b?"div":"body"),g={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},b&&a.extend(g,{position:"absolute",left:"-1000px",top:"-1000px"});for(var j in g)d.style[j]=g[j];d.appendChild(c),e=b||document.documentElement,e.insertBefore(d,e.firstChild),c.style.cssText="position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;",h=a(c).offset(function(a,b){return b}).offset(),d.innerHTML="",e.removeChild(d),i=h.top+h.left+(b?2e3:0),f.fractions=i>21&&i<22}()})(jQuery);;/*! jQuery UI - v1.8.23 - 2012-08-15
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.sortable.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){a.widget("ui.sortable",a.ui.mouse,{widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3},_create:function(){var a=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?a.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):!1,this.offset=this.element.offset(),this._mouseInit(),this.ready=!0},destroy:function(){a.Widget.prototype.destroy.call(this),this.element.removeClass("ui-sortable ui-sortable-disabled"),this._mouseDestroy();for(var b=this.items.length-1;b>=0;b--)this.items[b].item.removeData(this.widgetName+"-item");return this},_setOption:function(b,c){b==="disabled"?(this.options[b]=c,this.widget()[c?"addClass":"removeClass"]("ui-sortable-disabled")):a.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(b,c){var d=this;if(this.reverting)return!1;if(this.options.disabled||this.options.type=="static")return!1;this._refreshItems(b);var e=null,f=this,g=a(b.target).parents().each(function(){if(a.data(this,d.widgetName+"-item")==f)return e=a(this),!1});a.data(b.target,d.widgetName+"-item")==f&&(e=a(b.target));if(!e)return!1;if(this.options.handle&&!c){var h=!1;a(this.options.handle,e).find("*").andSelf().each(function(){this==b.target&&(h=!0)});if(!h)return!1}return this.currentItem=e,this._removeCurrentsFromItems(),!0},_mouseStart:function(b,c,d){var e=this.options,f=this;this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(b),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(b),this.originalPageX=b.pageX,this.originalPageY=b.pageY,e.cursorAt&&this._adjustOffsetFromHelper(e.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!=this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),e.containment&&this._setContainment(),e.cursor&&(a("body").css("cursor")&&(this._storedCursor=a("body").css("cursor")),a("body").css("cursor",e.cursor)),e.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",e.opacity)),e.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",e.zIndex)),this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",b,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions();if(!d)for(var g=this.containers.length-1;g>=0;g--)this.containers[g]._trigger("activate",b,f._uiHash(this));return a.ui.ddmanager&&(a.ui.ddmanager.current=this),a.ui.ddmanager&&!e.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(b),!0},_mouseDrag:function(b){this.position=this._generatePosition(b),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs);if(this.options.scroll){var c=this.options,d=!1;this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-b.pageY<c.scrollSensitivity?this.scrollParent[0].scrollTop=d=this.scrollParent[0].scrollTop+c.scrollSpeed:b.pageY-this.overflowOffset.top<c.scrollSensitivity&&(this.scrollParent[0].scrollTop=d=this.scrollParent[0].scrollTop-c.scrollSpeed),this.overflowOffset.left+this.scrollParent[0].offsetWidth-b.pageX<c.scrollSensitivity?this.scrollParent[0].scrollLeft=d=this.scrollParent[0].scrollLeft+c.scrollSpeed:b.pageX-this.overflowOffset.left<c.scrollSensitivity&&(this.scrollParent[0].scrollLeft=d=this.scrollParent[0].scrollLeft-c.scrollSpeed)):(b.pageY-a(document).scrollTop()<c.scrollSensitivity?d=a(document).scrollTop(a(document).scrollTop()-c.scrollSpeed):a(window).height()-(b.pageY-a(document).scrollTop())<c.scrollSensitivity&&(d=a(document).scrollTop(a(document).scrollTop()+c.scrollSpeed)),b.pageX-a(document).scrollLeft()<c.scrollSensitivity?d=a(document).scrollLeft(a(document).scrollLeft()-c.scrollSpeed):a(window).width()-(b.pageX-a(document).scrollLeft())<c.scrollSensitivity&&(d=a(document).scrollLeft(a(document).scrollLeft()+c.scrollSpeed))),d!==!1&&a.ui.ddmanager&&!c.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b)}this.positionAbs=this._convertPositionTo("absolute");if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";for(var e=this.items.length-1;e>=0;e--){var f=this.items[e],g=f.item[0],h=this._intersectsWithPointer(f);if(!h)continue;if(g!=this.currentItem[0]&&this.placeholder[h==1?"next":"prev"]()[0]!=g&&!a.ui.contains(this.placeholder[0],g)&&(this.options.type=="semi-dynamic"?!a.ui.contains(this.element[0],g):!0)){this.direction=h==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(f))this._rearrange(b,f);else break;this._trigger("change",b,this._uiHash());break}}return this._contactContainers(b),a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),this._trigger("sort",b,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(b,c){if(!b)return;a.ui.ddmanager&&!this.options.dropBehaviour&&a.ui.ddmanager.drop(this,b);if(this.options.revert){var d=this,e=d.placeholder.offset();d.reverting=!0,a(this.helper).animate({left:e.left-this.offset.parent.left-d.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:e.top-this.offset.parent.top-d.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){d._clear(b)})}else this._clear(b,c);return!1},cancel:function(){var b=this;if(this.dragging){this._mouseUp({target:null}),this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("deactivate",null,b._uiHash(this)),this.containers[c].containerCache.over&&(this.containers[c]._trigger("out",null,b._uiHash(this)),this.containers[c].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),a.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?a(this.domPosition.prev).after(this.currentItem):a(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];return b=b||{},a(c).each(function(){var c=(a(b.item||this).attr(b.attribute||"id")||"").match(b.expression||/(.+)[-=_](.+)/);c&&d.push((b.key||c[1]+"[]")+"="+(b.key&&b.expression?c[1]:c[2]))}),!d.length&&b.key&&d.push(b.key+"="),d.join("&")},toArray:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];return b=b||{},c.each(function(){d.push(a(b.item||this).attr(b.attribute||"id")||"")}),d},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,d=this.positionAbs.top,e=d+this.helperProportions.height,f=a.left,g=f+a.width,h=a.top,i=h+a.height,j=this.offset.click.top,k=this.offset.click.left,l=d+j>h&&d+j<i&&b+k>f&&b+k<g;return this.options.tolerance=="pointer"||this.options.forcePointerForContainers||this.options.tolerance!="pointer"&&this.helperProportions[this.floating?"width":"height"]>a[this.floating?"width":"height"]?l:f<b+this.helperProportions.width/2&&c-this.helperProportions.width/2<g&&h<d+this.helperProportions.height/2&&e-this.helperProportions.height/2<i},_intersectsWithPointer:function(b){var c=this.options.axis==="x"||a.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,b.top,b.height),d=this.options.axis==="y"||a.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,b.left,b.width),e=c&&d,f=this._getDragVerticalDirection(),g=this._getDragHorizontalDirection();return e?this.floating?g&&g=="right"||f=="down"?2:1:f&&(f=="down"?2:1):!1},_intersectsWithSides:function(b){var c=a.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,b.top+b.height/2,b.height),d=a.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,b.left+b.width/2,b.width),e=this._getDragVerticalDirection(),f=this._getDragHorizontalDirection();return this.floating&&f?f=="right"&&d||f=="left"&&!d:e&&(e=="down"&&c||e=="up"&&!c)},_getDragVerticalDirection:function(){var a=this.positionAbs.top-this.lastPositionAbs.top;return a!=0&&(a>0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){return this._refreshItems(a),this.refreshPositions(),this},_connectWith:function(){var a=this.options;return a.connectWith.constructor==String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(b){var c=this,d=[],e=[],f=this._connectWith();if(f&&b)for(var g=f.length-1;g>=0;g--){var h=a(f[g]);for(var i=h.length-1;i>=0;i--){var j=a.data(h[i],this.widgetName);j&&j!=this&&!j.options.disabled&&e.push([a.isFunction(j.options.items)?j.options.items.call(j.element):a(j.options.items,j.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),j])}}e.push([a.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):a(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]);for(var g=e.length-1;g>=0;g--)e[g][0].each(function(){d.push(this)});return a(d)},_removeCurrentsFromItems:function(){var a=this.currentItem.find(":data("+this.widgetName+"-item)");for(var b=0;b<this.items.length;b++)for(var c=0;c<a.length;c++)a[c]==this.items[b].item[0]&&this.items.splice(b,1)},_refreshItems:function(b){this.items=[],this.containers=[this];var c=this.items,d=this,e=[[a.isFunction(this.options.items)?this.options.items.call(this.element[0],b,{item:this.currentItem}):a(this.options.items,this.element),this]],f=this._connectWith();if(f&&this.ready)for(var g=f.length-1;g>=0;g--){var h=a(f[g]);for(var i=h.length-1;i>=0;i--){var j=a.data(h[i],this.widgetName);j&&j!=this&&!j.options.disabled&&(e.push([a.isFunction(j.options.items)?j.options.items.call(j.element[0],b,{item:this.currentItem}):a(j.options.items,j.element),j]),this.containers.push(j))}}for(var g=e.length-1;g>=0;g--){var k=e[g][1],l=e[g][0];for(var i=0,m=l.length;i<m;i++){var n=a(l[i]);n.data(this.widgetName+"-item",k),c.push({item:n,instance:k,width:0,height:0,left:0,top:0})}}},refreshPositions:function(b){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());for(var c=this.items.length-1;c>=0;c--){var d=this.items[c];if(d.instance!=this.currentContainer&&this.currentContainer&&d.item[0]!=this.currentItem[0])continue;var e=this.options.toleranceElement?a(this.options.toleranceElement,d.item):d.item;b||(d.width=e.outerWidth(),d.height=e.outerHeight());var f=e.offset();d.left=f.left,d.top=f.top}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(var c=this.containers.length-1;c>=0;c--){var f=this.containers[c].element.offset();this.containers[c].containerCache.left=f.left,this.containers[c].containerCache.top=f.top,this.containers[c].containerCache.width=this.containers[c].element.outerWidth(),this.containers[c].containerCache.height=this.containers[c].element.outerHeight()}return this},_createPlaceholder:function(b){var c=b||this,d=c.options;if(!d.placeholder||d.placeholder.constructor==String){var e=d.placeholder;d.placeholder={element:function(){var b=a(document.createElement(c.currentItem[0].nodeName)).addClass(e||c.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];return e||(b.style.visibility="hidden"),b},update:function(a,b){if(e&&!d.forcePlaceholderSize)return;b.height()||b.height(c.currentItem.innerHeight()-parseInt(c.currentItem.css("paddingTop")||0,10)-parseInt(c.currentItem.css("paddingBottom")||0,10)),b.width()||b.width(c.currentItem.innerWidth()-parseInt(c.currentItem.css("paddingLeft")||0,10)-parseInt(c.currentItem.css("paddingRight")||0,10))}}}c.placeholder=a(d.placeholder.element.call(c.element,c.currentItem)),c.currentItem.after(c.placeholder),d.placeholder.update(c,c.placeholder)},_contactContainers:function(b){var c=null,d=null;for(var e=this.containers.length-1;e>=0;e--){if(a.ui.contains(this.currentItem[0],this.containers[e].element[0]))continue;if(this._intersectsWith(this.containers[e].containerCache)){if(c&&a.ui.contains(this.containers[e].element[0],c.element[0]))continue;c=this.containers[e],d=e}else this.containers[e].containerCache.over&&(this.containers[e]._trigger("out",b,this._uiHash(this)),this.containers[e].containerCache.over=0)}if(!c)return;if(this.containers.length===1)this.containers[d]._trigger("over",b,this._uiHash(this)),this.containers[d].containerCache.over=1;else if(this.currentContainer!=this.containers[d]){var f=1e4,g=null,h=this.positionAbs[this.containers[d].floating?"left":"top"];for(var i=this.items.length-1;i>=0;i--){if(!a.ui.contains(this.containers[d].element[0],this.items[i].item[0]))continue;var j=this.containers[d].floating?this.items[i].item.offset().left:this.items[i].item.offset().top;Math.abs(j-h)<f&&(f=Math.abs(j-h),g=this.items[i],this.direction=j-h>0?"down":"up")}if(!g&&!this.options.dropOnEmpty)return;this.currentContainer=this.containers[d],g?this._rearrange(b,g,null,!0):this._rearrange(b,null,this.containers[d].element,!0),this._trigger("change",b,this._uiHash()),this.containers[d]._trigger("change",b,this._uiHash(this)),this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[d]._trigger("over",b,this._uiHash(this)),this.containers[d].containerCache.over=1}},_createHelper:function(b){var c=this.options,d=a.isFunction(c.helper)?a(c.helper.apply(this.element[0],[b,this.currentItem])):c.helper=="clone"?this.currentItem.clone():this.currentItem;return d.parents("body").length||a(c.appendTo!="parent"?c.appendTo:this.currentItem[0].parentNode)[0].appendChild(d[0]),d[0]==this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(d[0].style.width==""||c.forceHelperSize)&&d.width(this.currentItem.width()),(d[0].style.height==""||c.forceHelperSize)&&d.height(this.currentItem.height()),d},_adjustOffsetFromHelper:function(b){typeof b=="string"&&(b=b.split(" ")),a.isArray(b)&&(b={left:+b[0],top:+b[1]||0}),"left"in b&&(this.offset.click.left=b.left+this.margins.left),"right"in b&&(this.offset.click.left=this.helperProportions.width-b.right+this.margins.left),"top"in b&&(this.offset.click.top=b.top+this.margins.top),"bottom"in b&&(this.offset.click.top=this.helperProportions.height-b.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var b=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0])&&(b.left+=this.scrollParent.scrollLeft(),b.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&a.browser.msie)b={top:0,left:0};return{top:b.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:b.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.currentItem.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var b=this.options;b.containment=="parent"&&(b.containment=this.helper[0].parentNode);if(b.containment=="document"||b.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,a(b.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a(b.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(b.containment)){var c=a(b.containment)[0],d=a(b.containment).offset(),e=a(c).css("overflow")!="hidden";this.containment=[d.left+(parseInt(a(c).css("borderLeftWidth"),10)||0)+(parseInt(a(c).css("paddingLeft"),10)||0)-this.margins.left,d.top+(parseInt(a(c).css("borderTopWidth"),10)||0)+(parseInt(a(c).css("paddingTop"),10)||0)-this.margins.top,d.left+(e?Math.max(c.scrollWidth,c.offsetWidth):c.offsetWidth)-(parseInt(a(c).css("borderLeftWidth"),10)||0)-(parseInt(a(c).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,d.top+(e?Math.max(c.scrollHeight,c.offsetHeight):c.offsetHeight)-(parseInt(a(c).css("borderTopWidth"),10)||0)-(parseInt(a(c).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}},_convertPositionTo:function(b,c){c||(c=this.position);var d=b=="absolute"?1:-1,e=this.options,f=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,g=/(html|body)/i.test(f[0].tagName);return{top:c.top+this.offset.relative.top*d+this.offset.parent.top*d-(a.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():g?0:f.scrollTop())*d),left:c.left+this.offset.relative.left*d+this.offset.parent.left*d-(a.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():g?0:f.scrollLeft())*d)}},_generatePosition:function(b){var c=this.options,d=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(d[0].tagName);this.cssPosition=="relative"&&(this.scrollParent[0]==document||this.scrollParent[0]==this.offsetParent[0])&&(this.offset.relative=this._getRelativeOffset());var f=b.pageX,g=b.pageY;if(this.originalPosition){this.containment&&(b.pageX-this.offset.click.left<this.containment[0]&&(f=this.containment[0]+this.offset.click.left),b.pageY-this.offset.click.top<this.containment[1]&&(g=this.containment[1]+this.offset.click.top),b.pageX-this.offset.click.left>this.containment[2]&&(f=this.containment[2]+this.offset.click.left),b.pageY-this.offset.click.top>this.containment[3]&&(g=this.containment[3]+this.offset.click.top));if(c.grid){var h=this.originalPageY+Math.round((g-this.originalPageY)/c.grid[1])*c.grid[1];g=this.containment?h-this.offset.click.top<this.containment[1]||h-this.offset.click.top>this.containment[3]?h-this.offset.click.top<this.containment[1]?h+c.grid[1]:h-c.grid[1]:h:h;var i=this.originalPageX+Math.round((f-this.originalPageX)/c.grid[0])*c.grid[0];f=this.containment?i-this.offset.click.left<this.containment[0]||i-this.offset.click.left>this.containment[2]?i-this.offset.click.left<this.containment[0]?i+c.grid[0]:i-c.grid[0]:i:i}}return{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(a.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:d.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(a.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:d.scrollLeft())}},_rearrange:function(a,b,c,d){c?c[0].appendChild(this.placeholder[0]):b.item[0].parentNode.insertBefore(this.placeholder[0],this.direction=="down"?b.item[0]:b.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var e=this,f=this.counter;window.setTimeout(function(){f==e.counter&&e.refreshPositions(!d)},0)},_clear:function(b,c){this.reverting=!1;var d=[],e=this;!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null;if(this.helper[0]==this.currentItem[0]){for(var f in this._storedCSS)if(this._storedCSS[f]=="auto"||this._storedCSS[f]=="static")this._storedCSS[f]="";this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();this.fromOutside&&!c&&d.push(function(a){this._trigger("receive",a,this._uiHash(this.fromOutside))}),(this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!c&&d.push(function(a){this._trigger("update",a,this._uiHash())});if(!a.ui.contains(this.element[0],this.currentItem[0])){c||d.push(function(a){this._trigger("remove",a,this._uiHash())});for(var f=this.containers.length-1;f>=0;f--)a.ui.contains(this.containers[f].element[0],this.currentItem[0])&&!c&&(d.push(function(a){return function(b){a._trigger("receive",b,this._uiHash(this))}}.call(this,this.containers[f])),d.push(function(a){return function(b){a._trigger("update",b,this._uiHash(this))}}.call(this,this.containers[f])))}for(var f=this.containers.length-1;f>=0;f--)c||d.push(function(a){return function(b){a._trigger("deactivate",b,this._uiHash(this))}}.call(this,this.containers[f])),this.containers[f].containerCache.over&&(d.push(function(a){return function(b){a._trigger("out",b,this._uiHash(this))}}.call(this,this.containers[f])),this.containers[f].containerCache.over=0);this._storedCursor&&a("body").css("cursor",this._storedCursor),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex),this.dragging=!1;if(this.cancelHelperRemoval){if(!c){this._trigger("beforeStop",b,this._uiHash());for(var f=0;f<d.length;f++)d[f].call(this,b);this._trigger("stop",b,this._uiHash())}return this.fromOutside=!1,!1}c||this._trigger("beforeStop",b,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.helper[0]!=this.currentItem[0]&&this.helper.remove(),this.helper=null;if(!c){for(var f=0;f<d.length;f++)d[f].call(this,b);this._trigger("stop",b,this._uiHash())}return this.fromOutside=!1,!0},_trigger:function(){a.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(b){var c=b||this;return{helper:c.helper,placeholder:c.placeholder||a([]),position:c.position,originalPosition:c.originalPosition,offset:c.positionAbs,item:c.currentItem,sender:b?b.element:null}}}),a.extend(a.ui.sortable,{version:"1.8.23"})})(jQuery);;/*! jQuery UI - v1.8.23 - 2012-08-15
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.autocomplete.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){var c=0;a.widget("ui.autocomplete",{options:{appendTo:"body",autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},pending:0,_create:function(){var b=this,c=this.element[0].ownerDocument,d;this.isMultiLine=this.element.is("textarea"),this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(b.options.disabled||b.element.propAttr("readOnly"))return;d=!1;var e=a.ui.keyCode;switch(c.keyCode){case e.PAGE_UP:b._move("previousPage",c);break;case e.PAGE_DOWN:b._move("nextPage",c);break;case e.UP:b._keyEvent("previous",c);break;case e.DOWN:b._keyEvent("next",c);break;case e.ENTER:case e.NUMPAD_ENTER:b.menu.active&&(d=!0,c.preventDefault());case e.TAB:if(!b.menu.active)return;b.menu.select(c);break;case e.ESCAPE:b.element.val(b.term),b.close(c);break;default:clearTimeout(b.searching),b.searching=setTimeout(function(){b.term!=b.element.val()&&(b.selectedItem=null,b.search(null,c))},b.options.delay)}}).bind("keypress.autocomplete",function(a){d&&(d=!1,a.preventDefault())}).bind("focus.autocomplete",function(){if(b.options.disabled)return;b.selectedItem=null,b.previous=b.element.val()}).bind("blur.autocomplete",function(a){if(b.options.disabled)return;clearTimeout(b.searching),b.closing=setTimeout(function(){b.close(a),b._change(a)},150)}),this._initSource(),this.menu=a("<ul></ul>").addClass("ui-autocomplete").appendTo(a(this.options.appendTo||"body",c)[0]).mousedown(function(c){var d=b.menu.element[0];a(c.target).closest(".ui-menu-item").length||setTimeout(function(){a(document).one("mousedown",function(c){c.target!==b.element[0]&&c.target!==d&&!a.ui.contains(d,c.target)&&b.close()})},1),setTimeout(function(){clearTimeout(b.closing)},13)}).menu({focus:function(a,c){var d=c.item.data("item.autocomplete");!1!==b._trigger("focus",a,{item:d})&&/^key/.test(a.originalEvent.type)&&b.element.val(d.value)},selected:function(a,d){var e=d.item.data("item.autocomplete"),f=b.previous;b.element[0]!==c.activeElement&&(b.element.focus(),b.previous=f,setTimeout(function(){b.previous=f,b.selectedItem=e},1)),!1!==b._trigger("select",a,{item:e})&&b.element.val(e.value),b.term=b.element.val(),b.close(a),b.selectedItem=e},blur:function(a,c){b.menu.element.is(":visible")&&b.element.val()!==b.term&&b.element.val(b.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu"),a.fn.bgiframe&&this.menu.element.bgiframe(),b.beforeunloadHandler=function(){b.element.removeAttr("autocomplete")},a(window).bind("beforeunload",b.beforeunloadHandler)},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup"),this.menu.element.remove(),a(window).unbind("beforeunload",this.beforeunloadHandler),a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments),b==="source"&&this._initSource(),b==="appendTo"&&this.menu.element.appendTo(a(c||"body",this.element[0].ownerDocument)[0]),b==="disabled"&&c&&this.xhr&&this.xhr.abort()},_initSource:function(){var b=this,c,d;a.isArray(this.options.source)?(c=this.options.source,this.source=function(b,d){d(a.ui.autocomplete.filter(c,b.term))}):typeof this.options.source=="string"?(d=this.options.source,this.source=function(c,e){b.xhr&&b.xhr.abort(),b.xhr=a.ajax({url:d,data:c,dataType:"json",success:function(a,b){e(a)},error:function(){e([])}})}):this.source=this.options.source},search:function(a,b){a=a!=null?a:this.element.val(),this.term=this.element.val();if(a.length<this.options.minLength)return this.close(b);clearTimeout(this.closing);if(this._trigger("search",b)===!1)return;return this._search(a)},_search:function(a){this.pending++,this.element.addClass("ui-autocomplete-loading"),this.source({term:a},this._response())},_response:function(){var a=this,b=++c;return function(d){b===c&&a.__response(d),a.pending--,a.pending||a.element.removeClass("ui-autocomplete-loading")}},__response:function(a){!this.options.disabled&&a&&a.length?(a=this._normalize(a),this._suggest(a),this._trigger("open")):this.close()},close:function(a){clearTimeout(this.closing),this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.deactivate(),this._trigger("close",a))},_change:function(a){this.previous!==this.element.val()&&this._trigger("change",a,{item:this.selectedItem})},_normalize:function(b){return b.length&&b[0].label&&b[0].value?b:a.map(b,function(b){return typeof b=="string"?{label:b,value:b}:a.extend({label:b.label||b.value,value:b.value||b.label},b)})},_suggest:function(b){var c=this.menu.element.empty().zIndex(this.element.zIndex()+1);this._renderMenu(c,b),this.menu.deactivate(),this.menu.refresh(),c.show(),this._resizeMenu(),c.position(a.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next(new a.Event("mouseover"))},_resizeMenu:function(){var a=this.menu.element;a.outerWidth(Math.max(a.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(b,c){var d=this;a.each(c,function(a,c){d._renderItem(b,c)})},_renderItem:function(b,c){return a("<li></li>").data("item.autocomplete",c).append(a("<a></a>").text(c.label)).appendTo(b)},_move:function(a,b){if(!this.menu.element.is(":visible")){this.search(null,b);return}if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term),this.menu.deactivate();return}this.menu[a](b)},widget:function(){return this.menu.element},_keyEvent:function(a,b){if(!this.isMultiLine||this.menu.element.is(":visible"))this._move(a,b),b.preventDefault()}}),a.extend(a.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},filter:function(b,c){var d=new RegExp(a.ui.autocomplete.escapeRegex(c),"i");return a.grep(b,function(a){return d.test(a.label||a.value||a)})}})})(jQuery),function(a){a.widget("ui.menu",{_create:function(){var b=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(c){if(!a(c.target).closest(".ui-menu-item a").length)return;c.preventDefault(),b.select(c)}),this.refresh()},refresh:function(){var b=this,c=this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem");c.children("a").addClass("ui-corner-all").attr("tabindex",-1).mouseenter(function(c){b.activate(c,a(this).parent())}).mouseleave(function(){b.deactivate()})},activate:function(a,b){this.deactivate();if(this.hasScroll()){var c=b.offset().top-this.element.offset().top,d=this.element.scrollTop(),e=this.element.height();c<0?this.element.scrollTop(d+c):c>=e&&this.element.scrollTop(d+c-e+b.height())}this.active=b.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end(),this._trigger("focus",a,{item:b})},deactivate:function(){if(!this.active)return;this.active.children("a").removeClass("ui-state-hover").removeAttr("id"),this._trigger("blur"),this.active=null},next:function(a){this.move("next",".ui-menu-item:first",a)},previous:function(a){this.move("prev",".ui-menu-item:last",a)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(a,b,c){if(!this.active){this.activate(c,this.element.children(b));return}var d=this.active[a+"All"](".ui-menu-item").eq(0);d.length?this.activate(c,d):this.activate(c,this.element.children(b))},nextPage:function(b){if(this.hasScroll()){if(!this.active||this.last()){this.activate(b,this.element.children(".ui-menu-item:first"));return}var c=this.active.offset().top,d=this.element.height(),e=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c-d+a(this).height();return b<10&&b>-10});e.length||(e=this.element.children(".ui-menu-item:last")),this.activate(b,e)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.last()?":first":":last"))},previousPage:function(b){if(this.hasScroll()){if(!this.active||this.first()){this.activate(b,this.element.children(".ui-menu-item:last"));return}var c=this.active.offset().top,d=this.element.height(),e=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c+d-a(this).height();return b<10&&b>-10});e.length||(e=this.element.children(".ui-menu-item:first")),this.activate(b,e)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.first()?":last":":first"))},hasScroll:function(){return this.element.height()<this.element[a.fn.prop?"prop":"attr"]("scrollHeight")},select:function(a){this._trigger("selected",a,{item:this.active})}})}(jQuery);;/*! jQuery UI - v1.8.23 - 2012-08-15
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.slider.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){var c=5;a.widget("ui.slider",a.ui.mouse,{widgetEventPrefix:"slide",options:{animate:!1,distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null},_create:function(){var b=this,d=this.options,e=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),f="<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>",g=d.values&&d.values.length||1,h=[];this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget"+" ui-widget-content"+" ui-corner-all"+(d.disabled?" ui-slider-disabled ui-disabled":"")),this.range=a([]),d.range&&(d.range===!0&&(d.values||(d.values=[this._valueMin(),this._valueMin()]),d.values.length&&d.values.length!==2&&(d.values=[d.values[0],d.values[0]])),this.range=a("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(d.range==="min"||d.range==="max"?" ui-slider-range-"+d.range:"")));for(var i=e.length;i<g;i+=1)h.push(f);this.handles=e.add(a(h.join("")).appendTo(b.element)),this.handle=this.handles.eq(0),this.handles.add(this.range).filter("a").click(function(a){a.preventDefault()}).hover(function(){d.disabled||a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")}).focus(function(){d.disabled?a(this).blur():(a(".ui-slider .ui-state-focus").removeClass("ui-state-focus"),a(this).addClass("ui-state-focus"))}).blur(function(){a(this).removeClass("ui-state-focus")}),this.handles.each(function(b){a(this).data("index.ui-slider-handle",b)}),this.handles.keydown(function(d){var e=a(this).data("index.ui-slider-handle"),f,g,h,i;if(b.options.disabled)return;switch(d.keyCode){case a.ui.keyCode.HOME:case a.ui.keyCode.END:case a.ui.keyCode.PAGE_UP:case a.ui.keyCode.PAGE_DOWN:case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:d.preventDefault();if(!b._keySliding){b._keySliding=!0,a(this).addClass("ui-state-active"),f=b._start(d,e);if(f===!1)return}}i=b.options.step,b.options.values&&b.options.values.length?g=h=b.values(e):g=h=b.value();switch(d.keyCode){case a.ui.keyCode.HOME:h=b._valueMin();break;case a.ui.keyCode.END:h=b._valueMax();break;case a.ui.keyCode.PAGE_UP:h=b._trimAlignValue(g+(b._valueMax()-b._valueMin())/c);break;case a.ui.keyCode.PAGE_DOWN:h=b._trimAlignValue(g-(b._valueMax()-b._valueMin())/c);break;case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:if(g===b._valueMax())return;h=b._trimAlignValue(g+i);break;case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(g===b._valueMin())return;h=b._trimAlignValue(g-i)}b._slide(d,e,h)}).keyup(function(c){var d=a(this).data("index.ui-slider-handle");b._keySliding&&(b._keySliding=!1,b._stop(c,d),b._change(c,d),a(this).removeClass("ui-state-active"))}),this._refreshValue(),this._animateOff=!1},destroy:function(){return this.handles.remove(),this.range.remove(),this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider"),this._mouseDestroy(),this},_mouseCapture:function(b){var c=this.options,d,e,f,g,h,i,j,k,l;return c.disabled?!1:(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),d={x:b.pageX,y:b.pageY},e=this._normValueFromMouse(d),f=this._valueMax()-this._valueMin()+1,h=this,this.handles.each(function(b){var c=Math.abs(e-h.values(b));f>c&&(f=c,g=a(this),i=b)}),c.range===!0&&this.values(1)===c.min&&(i+=1,g=a(this.handles[i])),j=this._start(b,i),j===!1?!1:(this._mouseSliding=!0,h._handleIndex=i,g.addClass("ui-state-active").focus(),k=g.offset(),l=!a(b.target).parents().andSelf().is(".ui-slider-handle"),this._clickOffset=l?{left:0,top:0}:{left:b.pageX-k.left-g.width()/2,top:b.pageY-k.top-g.height()/2-(parseInt(g.css("borderTopWidth"),10)||0)-(parseInt(g.css("borderBottomWidth"),10)||0)+(parseInt(g.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(b,i,e),this._animateOff=!0,!0))},_mouseStart:function(a){return!0},_mouseDrag:function(a){var b={x:a.pageX,y:a.pageY},c=this._normValueFromMouse(b);return this._slide(a,this._handleIndex,c),!1},_mouseStop:function(a){return this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(a,this._handleIndex),this._change(a,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(a){var b,c,d,e,f;return this.orientation==="horizontal"?(b=this.elementSize.width,c=a.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(b=this.elementSize.height,c=a.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),d=c/b,d>1&&(d=1),d<0&&(d=0),this.orientation==="vertical"&&(d=1-d),e=this._valueMax()-this._valueMin(),f=this._valueMin()+d*e,this._trimAlignValue(f)},_start:function(a,b){var c={handle:this.handles[b],value:this.value()};return this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("start",a,c)},_slide:function(a,b,c){var d,e,f;this.options.values&&this.options.values.length?(d=this.values(b?0:1),this.options.values.length===2&&this.options.range===!0&&(b===0&&c>d||b===1&&c<d)&&(c=d),c!==this.values(b)&&(e=this.values(),e[b]=c,f=this._trigger("slide",a,{handle:this.handles[b],value:c,values:e}),d=this.values(b?0:1),f!==!1&&this.values(b,c,!0))):c!==this.value()&&(f=this._trigger("slide",a,{handle:this.handles[b],value:c}),f!==!1&&this.value(c))},_stop:function(a,b){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("stop",a,c)},_change:function(a,b){if(!this._keySliding&&!this._mouseSliding){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("change",a,c)}},value:function(a){if(arguments.length){this.options.value=this._trimAlignValue(a),this._refreshValue(),this._change(null,0);return}return this._value()},values:function(b,c){var d,e,f;if(arguments.length>1){this.options.values[b]=this._trimAlignValue(c),this._refreshValue(),this._change(null,b);return}if(!arguments.length)return this._values();if(!a.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(b):this.value();d=this.options.values,e=arguments[0];for(f=0;f<d.length;f+=1)d[f]=this._trimAlignValue(e[f]),this._change(null,f);this._refreshValue()},_setOption:function(b,c){var d,e=0;a.isArray(this.options.values)&&(e=this.options.values.length),a.Widget.prototype._setOption.apply(this,arguments);switch(b){case"disabled":c?(this.handles.filter(".ui-state-focus").blur(),this.handles.removeClass("ui-state-hover"),this.handles.propAttr("disabled",!0),this.element.addClass("ui-disabled")):(this.handles.propAttr("disabled",!1),this.element.removeClass("ui-disabled"));break;case"orientation":this._detectOrientation(),this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation),this._refreshValue();break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":this._animateOff=!0,this._refreshValue();for(d=0;d<e;d+=1)this._change(null,d);this._animateOff=!1}},_value:function(){var a=this.options.value;return a=this._trimAlignValue(a),a},_values:function(a){var b,c,d;if(arguments.length)return b=this.options.values[a],b=this._trimAlignValue(b),b;c=this.options.values.slice();for(d=0;d<c.length;d+=1)c[d]=this._trimAlignValue(c[d]);return c},_trimAlignValue:function(a){if(a<=this._valueMin())return this._valueMin();if(a>=this._valueMax())return this._valueMax();var b=this.options.step>0?this.options.step:1,c=(a-this._valueMin())%b,d=a-c;return Math.abs(c)*2>=b&&(d+=c>0?b:-b),parseFloat(d.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var b=this.options.range,c=this.options,d=this,e=this._animateOff?!1:c.animate,f,g={},h,i,j,k;this.options.values&&this.options.values.length?this.handles.each(function(b,i){f=(d.values(b)-d._valueMin())/(d._valueMax()-d._valueMin())*100,g[d.orientation==="horizontal"?"left":"bottom"]=f+"%",a(this).stop(1,1)[e?"animate":"css"](g,c.animate),d.options.range===!0&&(d.orientation==="horizontal"?(b===0&&d.range.stop(1,1)[e?"animate":"css"]({left:f+"%"},c.animate),b===1&&d.range[e?"animate":"css"]({width:f-h+"%"},{queue:!1,duration:c.animate})):(b===0&&d.range.stop(1,1)[e?"animate":"css"]({bottom:f+"%"},c.animate),b===1&&d.range[e?"animate":"css"]({height:f-h+"%"},{queue:!1,duration:c.animate}))),h=f}):(i=this.value(),j=this._valueMin(),k=this._valueMax(),f=k!==j?(i-j)/(k-j)*100:0,g[d.orientation==="horizontal"?"left":"bottom"]=f+"%",this.handle.stop(1,1)[e?"animate":"css"](g,c.animate),b==="min"&&this.orientation==="horizontal"&&this.range.stop(1,1)[e?"animate":"css"]({width:f+"%"},c.animate),b==="max"&&this.orientation==="horizontal"&&this.range[e?"animate":"css"]({width:100-f+"%"},{queue:!1,duration:c.animate}),b==="min"&&this.orientation==="vertical"&&this.range.stop(1,1)[e?"animate":"css"]({height:f+"%"},c.animate),b==="max"&&this.orientation==="vertical"&&this.range[e?"animate":"css"]({height:100-f+"%"},{queue:!1,duration:c.animate}))}}),a.extend(a.ui.slider,{version:"1.8.23"})})(jQuery);;/*! jQuery UI - v1.8.23 - 2012-08-15
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.tabs.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function(a,b){function e(){return++c}function f(){return++d}var c=0,d=0;a.widget("ui.tabs",{options:{add:null,ajaxOptions:null,cache:!1,cookie:null,collapsible:!1,disable:null,disabled:[],enable:null,event:"click",fx:null,idPrefix:"ui-tabs-",load:null,panelTemplate:"<div></div>",remove:null,select:null,show:null,spinner:"<em>Loading&#8230;</em>",tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},_create:function(){this._tabify(!0)},_setOption:function(a,b){if(a=="selected"){if(this.options.collapsible&&b==this.options.selected)return;this.select(b)}else this.options[a]=b,this._tabify()},_tabId:function(a){return a.title&&a.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+e()},_sanitizeSelector:function(a){return a.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+f());return a.cookie.apply(null,[b].concat(a.makeArray(arguments)))},_ui:function(a,b){return{tab:a,panel:b,index:this.anchors.index(a)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b=a(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(c){function m(b,c){b.css("display",""),!a.support.opacity&&c.opacity&&b[0].style.removeAttribute("filter")}var d=this,e=this.options,f=/^#.+/;this.list=this.element.find("ol,ul").eq(0),this.lis=a(" > li:has(a[href])",this.list),this.anchors=this.lis.map(function(){return a("a",this)[0]}),this.panels=a([]),this.anchors.each(function(b,c){var g=a(c).attr("href"),h=g.split("#")[0],i;h&&(h===location.toString().split("#")[0]||(i=a("base")[0])&&h===i.href)&&(g=c.hash,c.href=g);if(f.test(g))d.panels=d.panels.add(d.element.find(d._sanitizeSelector(g)));else if(g&&g!=="#"){a.data(c,"href.tabs",g),a.data(c,"load.tabs",g.replace(/#.*$/,""));var j=d._tabId(c);c.href="#"+j;var k=d.element.find("#"+j);k.length||(k=a(e.panelTemplate).attr("id",j).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(d.panels[b-1]||d.list),k.data("destroy.tabs",!0)),d.panels=d.panels.add(k)}else e.disabled.push(b)}),c?(this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all"),this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"),this.lis.addClass("ui-state-default ui-corner-top"),this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom"),e.selected===b?(location.hash&&this.anchors.each(function(a,b){if(b.hash==location.hash)return e.selected=a,!1}),typeof e.selected!="number"&&e.cookie&&(e.selected=parseInt(d._cookie(),10)),typeof e.selected!="number"&&this.lis.filter(".ui-tabs-selected").length&&(e.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))),e.selected=e.selected||(this.lis.length?0:-1)):e.selected===null&&(e.selected=-1),e.selected=e.selected>=0&&this.anchors[e.selected]||e.selected<0?e.selected:0,e.disabled=a.unique(e.disabled.concat(a.map(this.lis.filter(".ui-state-disabled"),function(a,b){return d.lis.index(a)}))).sort(),a.inArray(e.selected,e.disabled)!=-1&&e.disabled.splice(a.inArray(e.selected,e.disabled),1),this.panels.addClass("ui-tabs-hide"),this.lis.removeClass("ui-tabs-selected ui-state-active"),e.selected>=0&&this.anchors.length&&(d.element.find(d._sanitizeSelector(d.anchors[e.selected].hash)).removeClass("ui-tabs-hide"),this.lis.eq(e.selected).addClass("ui-tabs-selected ui-state-active"),d.element.queue("tabs",function(){d._trigger("show",null,d._ui(d.anchors[e.selected],d.element.find(d._sanitizeSelector(d.anchors[e.selected].hash))[0]))}),this.load(e.selected)),a(window).bind("unload",function(){d.lis.add(d.anchors).unbind(".tabs"),d.lis=d.anchors=d.panels=null})):e.selected=this.lis.index(this.lis.filter(".ui-tabs-selected")),this.element[e.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible"),e.cookie&&this._cookie(e.selected,e.cookie);for(var g=0,h;h=this.lis[g];g++)a(h)[a.inArray(g,e.disabled)!=-1&&!a(h).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");e.cache===!1&&this.anchors.removeData("cache.tabs"),this.lis.add(this.anchors).unbind(".tabs");if(e.event!=="mouseover"){var i=function(a,b){b.is(":not(.ui-state-disabled)")&&b.addClass("ui-state-"+a)},j=function(a,b){b.removeClass("ui-state-"+a)};this.lis.bind("mouseover.tabs",function(){i("hover",a(this))}),this.lis.bind("mouseout.tabs",function(){j("hover",a(this))}),this.anchors.bind("focus.tabs",function(){i("focus",a(this).closest("li"))}),this.anchors.bind("blur.tabs",function(){j("focus",a(this).closest("li"))})}var k,l;e.fx&&(a.isArray(e.fx)?(k=e.fx[0],l=e.fx[1]):k=l=e.fx);var n=l?function(b,c){a(b).closest("li").addClass("ui-tabs-selected ui-state-active"),c.hide().removeClass("ui-tabs-hide").animate(l,l.duration||"normal",function(){m(c,l),d._trigger("show",null,d._ui(b,c[0]))})}:function(b,c){a(b).closest("li").addClass("ui-tabs-selected ui-state-active"),c.removeClass("ui-tabs-hide"),d._trigger("show",null,d._ui(b,c[0]))},o=k?function(a,b){b.animate(k,k.duration||"normal",function(){d.lis.removeClass("ui-tabs-selected ui-state-active"),b.addClass("ui-tabs-hide"),m(b,k),d.element.dequeue("tabs")})}:function(a,b,c){d.lis.removeClass("ui-tabs-selected ui-state-active"),b.addClass("ui-tabs-hide"),d.element.dequeue("tabs")};this.anchors.bind(e.event+".tabs",function(){var b=this,c=a(b).closest("li"),f=d.panels.filter(":not(.ui-tabs-hide)"),g=d.element.find(d._sanitizeSelector(b.hash));if(c.hasClass("ui-tabs-selected")&&!e.collapsible||c.hasClass("ui-state-disabled")||c.hasClass("ui-state-processing")||d.panels.filter(":animated").length||d._trigger("select",null,d._ui(this,g[0]))===!1)return this.blur(),!1;e.selected=d.anchors.index(this),d.abort();if(e.collapsible){if(c.hasClass("ui-tabs-selected"))return e.selected=-1,e.cookie&&d._cookie(e.selected,e.cookie),d.element.queue("tabs",function(){o(b,f)}).dequeue("tabs"),this.blur(),!1;if(!f.length)return e.cookie&&d._cookie(e.selected,e.cookie),d.element.queue("tabs",function(){n(b,g)}),d.load(d.anchors.index(this)),this.blur(),!1}e.cookie&&d._cookie(e.selected,e.cookie);if(g.length)f.length&&d.element.queue("tabs",function(){o(b,f)}),d.element.queue("tabs",function(){n(b,g)}),d.load(d.anchors.index(this));else throw"jQuery UI Tabs: Mismatching fragment identifier.";a.browser.msie&&this.blur()}),this.anchors.bind("click.tabs",function(){return!1})},_getIndex:function(a){return typeof a=="string"&&(a=this.anchors.index(this.anchors.filter("[href$='"+a+"']"))),a},destroy:function(){var b=this.options;return this.abort(),this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs"),this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"),this.anchors.each(function(){var b=a.data(this,"href.tabs");b&&(this.href=b);var c=a(this).unbind(".tabs");a.each(["href","load","cache"],function(a,b){c.removeData(b+".tabs")})}),this.lis.unbind(".tabs").add(this.panels).each(function(){a.data(this,"destroy.tabs")?a(this).remove():a(this).removeClass(["ui-state-default","ui-corner-top","ui-tabs-selected","ui-state-active","ui-state-hover","ui-state-focus","ui-state-disabled","ui-tabs-panel","ui-widget-content","ui-corner-bottom","ui-tabs-hide"].join(" "))}),b.cookie&&this._cookie(null,b.cookie),this},add:function(c,d,e){e===b&&(e=this.anchors.length);var f=this,g=this.options,h=a(g.tabTemplate.replace(/#\{href\}/g,c).replace(/#\{label\}/g,d)),i=c.indexOf("#")?this._tabId(a("a",h)[0]):c.replace("#","");h.addClass("ui-state-default ui-corner-top").data("destroy.tabs",!0);var j=f.element.find("#"+i);return j.length||(j=a(g.panelTemplate).attr("id",i).data("destroy.tabs",!0)),j.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide"),e>=this.lis.length?(h.appendTo(this.list),j.appendTo(this.list[0].parentNode)):(h.insertBefore(this.lis[e]),j.insertBefore(this.panels[e])),g.disabled=a.map(g.disabled,function(a,b){return a>=e?++a:a}),this._tabify(),this.anchors.length==1&&(g.selected=0,h.addClass("ui-tabs-selected ui-state-active"),j.removeClass("ui-tabs-hide"),this.element.queue("tabs",function(){f._trigger("show",null,f._ui(f.anchors[0],f.panels[0]))}),this.load(0)),this._trigger("add",null,this._ui(this.anchors[e],this.panels[e])),this},remove:function(b){b=this._getIndex(b);var c=this.options,d=this.lis.eq(b).remove(),e=this.panels.eq(b).remove();return d.hasClass("ui-tabs-selected")&&this.anchors.length>1&&this.select(b+(b+1<this.anchors.length?1:-1)),c.disabled=a.map(a.grep(c.disabled,function(a,c){return a!=b}),function(a,c){return a>=b?--a:a}),this._tabify(),this._trigger("remove",null,this._ui(d.find("a")[0],e[0])),this},enable:function(b){b=this._getIndex(b);var c=this.options;if(a.inArray(b,c.disabled)==-1)return;return this.lis.eq(b).removeClass("ui-state-disabled"),c.disabled=a.grep(c.disabled,function(a,c){return a!=b}),this._trigger("enable",null,this._ui(this.anchors[b],this.panels[b])),this},disable:function(a){a=this._getIndex(a);var b=this,c=this.options;return a!=c.selected&&(this.lis.eq(a).addClass("ui-state-disabled"),c.disabled.push(a),c.disabled.sort(),this._trigger("disable",null,this._ui(this.anchors[a],this.panels[a]))),this},select:function(a){a=this._getIndex(a);if(a==-1)if(this.options.collapsible&&this.options.selected!=-1)a=this.options.selected;else return this;return this.anchors.eq(a).trigger(this.options.event+".tabs"),this},load:function(b){b=this._getIndex(b);var c=this,d=this.options,e=this.anchors.eq(b)[0],f=a.data(e,"load.tabs");this.abort();if(!f||this.element.queue("tabs").length!==0&&a.data(e,"cache.tabs")){this.element.dequeue("tabs");return}this.lis.eq(b).addClass("ui-state-processing");if(d.spinner){var g=a("span",e);g.data("label.tabs",g.html()).html(d.spinner)}return this.xhr=a.ajax(a.extend({},d.ajaxOptions,{url:f,success:function(f,g){c.element.find(c._sanitizeSelector(e.hash)).html(f),c._cleanup(),d.cache&&a.data(e,"cache.tabs",!0),c._trigger("load",null,c._ui(c.anchors[b],c.panels[b]));try{d.ajaxOptions.success(f,g)}catch(h){}},error:function(a,f,g){c._cleanup(),c._trigger("load",null,c._ui(c.anchors[b],c.panels[b]));try{d.ajaxOptions.error(a,f,b,e)}catch(g){}}})),c.element.dequeue("tabs"),this},abort:function(){return this.element.queue([]),this.panels.stop(!1,!0),this.element.queue("tabs",this.element.queue("tabs").splice(-2,2)),this.xhr&&(this.xhr.abort(),delete this.xhr),this._cleanup(),this},url:function(a,b){return this.anchors.eq(a).removeData("cache.tabs").data("load.tabs",b),this},length:function(){return this.anchors.length}}),a.extend(a.ui.tabs,{version:"1.8.23"}),a.extend(a.ui.tabs.prototype,{rotation:null,rotate:function(a,b){var c=this,d=this.options,e=c._rotate||(c._rotate=function(b){clearTimeout(c.rotation),c.rotation=setTimeout(function(){var a=d.selected;c.select(++a<c.anchors.length?a:0)},a),b&&b.stopPropagation()}),f=c._unrotate||(c._unrotate=b?function(a){e()}:function(a){a.clientX&&c.rotate(null)});return a?(this.element.bind("tabsshow",e),this.anchors.bind(d.event+".tabs",f),e()):(clearTimeout(c.rotation),this.element.unbind("tabsshow",e),this.anchors.unbind(d.event+".tabs",f),delete this._rotate,delete this._unrotate),this}})})(jQuery);;/*! jQuery UI - v1.8.23 - 2012-08-15
-* https://github.com/jquery/jquery-ui
-* Includes: jquery.ui.datepicker.js
-* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
-(function($,undefined){function Datepicker(){this.debug=!1,this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},$.extend(this._defaults,this.regional[""]),this.dpDiv=bindHover($('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}function bindHover(a){var b="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return a.bind("mouseout",function(a){var c=$(a.target).closest(b);if(!c.length)return;c.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(c){var d=$(c.target).closest(b);if($.datepicker._isDisabledDatepicker(instActive.inline?a.parent()[0]:instActive.input[0])||!d.length)return;d.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),d.addClass("ui-state-hover"),d.hasClass("ui-datepicker-prev")&&d.addClass("ui-datepicker-prev-hover"),d.hasClass("ui-datepicker-next")&&d.addClass("ui-datepicker-next-hover")})}function extendRemove(a,b){$.extend(a,b);for(var c in b)if(b[c]==null||b[c]==undefined)a[c]=b[c];return a}function isArray(a){return a&&($.browser.safari&&typeof a=="object"&&a.length||a.constructor&&a.constructor.toString().match(/\Array\(\)/))}$.extend($.ui,{datepicker:{version:"1.8.23"}});var PROP_NAME="datepicker",dpuuid=(new Date).getTime(),instActive;$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){return extendRemove(this._defaults,a||{}),this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase(),inline=nodeName=="div"||nodeName=="span";target.id||(this.uuid+=1,target.id="dp"+this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{}),nodeName=="input"?this._connectDatepicker(target,inst):inline&&this._inlineDatepicker(target,inst)},_newInst:function(a,b){var c=a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1");return{id:c,input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:b?bindHover($('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')):this.dpDiv}},_connectDatepicker:function(a,b){var c=$(a);b.append=$([]),b.trigger=$([]);if(c.hasClass(this.markerClassName))return;this._attachments(c,b),c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function(a,c,d){b.settings[c]=d}).bind("getData.datepicker",function(a,c){return this._get(b,c)}),this._autoSize(b),$.data(a,PROP_NAME,b),b.settings.disabled&&this._disableDatepicker(a)},_attachments:function(a,b){var c=this._get(b,"appendText"),d=this._get(b,"isRTL");b.append&&b.append.remove(),c&&(b.append=$('<span class="'+this._appendClass+'">'+c+"</span>"),a[d?"before":"after"](b.append)),a.unbind("focus",this._showDatepicker),b.trigger&&b.trigger.remove();var e=this._get(b,"showOn");(e=="focus"||e=="both")&&a.focus(this._showDatepicker);if(e=="button"||e=="both"){var f=this._get(b,"buttonText"),g=this._get(b,"buttonImage");b.trigger=$(this._get(b,"buttonImageOnly")?$("<img/>").addClass(this._triggerClass).attr({src:g,alt:f,title:f}):$('<button type="button"></button>').addClass(this._triggerClass).html(g==""?f:$("<img/>").attr({src:g,alt:f,title:f}))),a[d?"before":"after"](b.trigger),b.trigger.click(function(){return $.datepicker._datepickerShowing&&$.datepicker._lastInput==a[0]?$.datepicker._hideDatepicker():$.datepicker._datepickerShowing&&$.datepicker._lastInput!=a[0]?($.datepicker._hideDatepicker(),$.datepicker._showDatepicker(a[0])):$.datepicker._showDatepicker(a[0]),!1})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var d=function(a){var b=0,c=0;for(var d=0;d<a.length;d++)a[d].length>b&&(b=a[d].length,c=d);return c};b.setMonth(d(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort"))),b.setDate(d(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a,b){var c=$(a);if(c.hasClass(this.markerClassName))return;c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(a,c,d){b.settings[c]=d}).bind("getData.datepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b),this._setDate(b,this._getDefaultDate(b),!0),this._updateDatepicker(b),this._updateAlternate(b),b.settings.disabled&&this._disableDatepicker(a),b.dpDiv.css("display","block")},_dialogDatepicker:function(a,b,c,d,e){var f=this._dialogInst;if(!f){this.uuid+=1;var g="dp"+this.uuid;this._dialogInput=$('<input type="text" id="'+g+'" style="position: absolute; top: -100px; width: 0px;"/>'),this._dialogInput.keydown(this._doKeyDown),$("body").append(this._dialogInput),f=this._dialogInst=this._newInst(this._dialogInput,!1),f.settings={},$.data(this._dialogInput[0],PROP_NAME,f)}extendRemove(f.settings,d||{}),b=b&&b.constructor==Date?this._formatDate(f,b):b,this._dialogInput.val(b),this._pos=e?e.length?e:[e.pageX,e.pageY]:null;if(!this._pos){var h=document.documentElement.clientWidth,i=document.documentElement.clientHeight,j=document.documentElement.scrollLeft||document.body.scrollLeft,k=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[h/2-100+j,i/2-150+k]}return this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),f.settings.onSelect=c,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),$.blockUI&&$.blockUI(this.dpDiv),$.data(this._dialogInput[0],PROP_NAME,f),this},_destroyDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!b.hasClass(this.markerClassName))return;var d=a.nodeName.toLowerCase();$.removeData(a,PROP_NAME),d=="input"?(c.append.remove(),c.trigger.remove(),b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):(d=="div"||d=="span")&&b.removeClass(this.markerClassName).empty()},_enableDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!b.hasClass(this.markerClassName))return;var d=a.nodeName.toLowerCase();if(d=="input")a.disabled=!1,c.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""});else if(d=="div"||d=="span"){var e=b.children("."+this._inlineClass);e.children().removeClass("ui-state-disabled"),e.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b})},_disableDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!b.hasClass(this.markerClassName))return;var d=a.nodeName.toLowerCase();if(d=="input")a.disabled=!0,c.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"});else if(d=="div"||d=="span"){var e=b.children("."+this._inlineClass);e.children().addClass("ui-state-disabled"),e.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b}),this._disabledInputs[this._disabledInputs.length]=a},_isDisabledDatepicker:function(a){if(!a)return!1;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return!0;return!1},_getInst:function(a){try{return $.data(a,PROP_NAME)}catch(b){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(a,b,c){var d=this._getInst(a);if(arguments.length==2&&typeof b=="string")return b=="defaults"?$.extend({},$.datepicker._defaults):d?b=="all"?$.extend({},d.settings):this._get(d,b):null;var e=b||{};typeof b=="string"&&(e={},e[b]=c);if(d){this._curInst==d&&this._hideDatepicker();var f=this._getDateDatepicker(a,!0),g=this._getMinMaxDate(d,"min"),h=this._getMinMaxDate(d,"max");extendRemove(d.settings,e),g!==null&&e.dateFormat!==undefined&&e.minDate===undefined&&(d.settings.minDate=this._formatDate(d,g)),h!==null&&e.dateFormat!==undefined&&e.maxDate===undefined&&(d.settings.maxDate=this._formatDate(d,h)),this._attachments($(a),d),this._autoSize(d),this._setDate(d,f),this._updateAlternate(d),this._updateDatepicker(d)}},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){var b=this._getInst(a);b&&this._updateDatepicker(b)},_setDateDatepicker:function(a,b){var c=this._getInst(a);c&&(this._setDate(c,b),this._updateDatepicker(c),this._updateAlternate(c))},_getDateDatepicker:function(a,b){var c=this._getInst(a);return c&&!c.inline&&this._setDateFromField(c,b),c?this._getDate(c):null},_doKeyDown:function(a){var b=$.datepicker._getInst(a.target),c=!0,d=b.dpDiv.is(".ui-datepicker-rtl");b._keyEvent=!0;if($.datepicker._datepickerShowing)switch(a.keyCode){case 9:$.datepicker._hideDatepicker(),c=!1;break;case 13:var e=$("td."+$.datepicker._dayOverClass+":not(."+$.datepicker._currentClass+")",b.dpDiv);e[0]&&$.datepicker._selectDay(a.target,b.selectedMonth,b.selectedYear,e[0]);var f=$.datepicker._get(b,"onSelect");if(f){var g=$.datepicker._formatDate(b);f.apply(b.input?b.input[0]:null,[g,b])}else $.datepicker._hideDatepicker();return!1;case 27:$.datepicker._hideDatepicker();break;case 33:$.datepicker._adjustDate(a.target,a.ctrlKey?-$.datepicker._get(b,"stepBigMonths"):-$.datepicker._get(b,"stepMonths"),"M");break;case 34:$.datepicker._adjustDate(a.target,a.ctrlKey?+$.datepicker._get(b,"stepBigMonths"):+$.datepicker._get(b,"stepMonths"),"M");break;case 35:(a.ctrlKey||a.metaKey)&&$.datepicker._clearDate(a.target),c=a.ctrlKey||a.metaKey;break;case 36:(a.ctrlKey||a.metaKey)&&$.datepicker._gotoToday(a.target),c=a.ctrlKey||a.metaKey;break;case 37:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,d?1:-1,"D"),c=a.ctrlKey||a.metaKey,a.originalEvent.altKey&&$.datepicker._adjustDate(a.target,a.ctrlKey?-$.datepicker._get(b,"stepBigMonths"):-$.datepicker._get(b,"stepMonths"),"M");break;case 38:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,-7,"D"),c=a.ctrlKey||a.metaKey;break;case 39:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,d?-1:1,"D"),c=a.ctrlKey||a.metaKey,a.originalEvent.altKey&&$.datepicker._adjustDate(a.target,a.ctrlKey?+$.datepicker._get(b,"stepBigMonths"):+$.datepicker._get(b,"stepMonths"),"M");break;case 40:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,7,"D"),c=a.ctrlKey||a.metaKey;break;default:c=!1}else a.keyCode==36&&a.ctrlKey?$.datepicker._showDatepicker(this):c=!1;c&&(a.preventDefault(),a.stopPropagation())},_doKeyPress:function(a){var b=$.datepicker._getInst(a.target);if($.datepicker._get(b,"constrainInput")){var c=$.datepicker._possibleChars($.datepicker._get(b,"dateFormat")),d=String.fromCharCode(a.charCode==undefined?a.keyCode:a.charCode);return a.ctrlKey||a.metaKey||d<" "||!c||c.indexOf(d)>-1}},_doKeyUp:function(a){var b=$.datepicker._getInst(a.target);if(b.input.val()!=b.lastVal)try{var c=$.datepicker.parseDate($.datepicker._get(b,"dateFormat"),b.input?b.input.val():null,$.datepicker._getFormatConfig(b));c&&($.datepicker._setDateFromField(b),$.datepicker._updateAlternate(b),$.datepicker._updateDatepicker(b))}catch(d){$.datepicker.log(d)}return!0},_showDatepicker:function(a){a=a.target||a,a.nodeName.toLowerCase()!="input"&&(a=$("input",a.parentNode)[0]);if($.datepicker._isDisabledDatepicker(a)||$.datepicker._lastInput==a)return;var b=$.datepicker._getInst(a);$.datepicker._curInst&&$.datepicker._curInst!=b&&($.datepicker._curInst.dpDiv.stop(!0,!0),b&&$.datepicker._datepickerShowing&&$.datepicker._hideDatepicker($.datepicker._curInst.input[0]));var c=$.datepicker._get(b,"beforeShow"),d=c?c.apply(a,[a,b]):{};if(d===!1)return;extendRemove(b.settings,d),b.lastVal=null,$.datepicker._lastInput=a,$.datepicker._setDateFromField(b),$.datepicker._inDialog&&(a.value=""),$.datepicker._pos||($.datepicker._pos=$.datepicker._findPos(a),$.datepicker._pos[1]+=a.offsetHeight);var e=!1;$(a).parents().each(function(){return e|=$(this).css("position")=="fixed",!e}),e&&$.browser.opera&&($.datepicker._pos[0]-=document.documentElement.scrollLeft,$.datepicker._pos[1]-=document.documentElement.scrollTop);var f={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null,b.dpDiv.empty(),b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.datepicker._updateDatepicker(b),f=$.datepicker._checkOffset(b,f,e),b.dpDiv.css({position:$.datepicker._inDialog&&$.blockUI?"static":e?"fixed":"absolute",display:"none",left:f.left+"px",top:f.top+"px"});if(!b.inline){var g=$.datepicker._get(b,"showAnim"),h=$.datepicker._get(b,"duration"),i=function(){var a=b.dpDiv.find("iframe.ui-datepicker-cover");if(!!a.length){var c=$.datepicker._getBorders(b.dpDiv);a.css({left:-c[0],top:-c[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex($(a).zIndex()+1),$.datepicker._datepickerShowing=!0,$.effects&&$.effects[g]?b.dpDiv.show(g,$.datepicker._get(b,"showOptions"),h,i):b.dpDiv[g||"show"](g?h:null,i),(!g||!h)&&i(),b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus(),$.datepicker._curInst=b}},_updateDatepicker:function(a){var b=this;b.maxRows=4;var c=$.datepicker._getBorders(a.dpDiv);instActive=a,a.dpDiv.empty().append(this._generateHTML(a)),this._attachHandlers(a);var d=a.dpDiv.find("iframe.ui-datepicker-cover");!d.length||d.css({left:-c[0],top:-c[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()}),a.dpDiv.find("."+this._dayOverClass+" a").mouseover();var e=this._getNumberOfMonths(a),f=e[1],g=17;a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),f>1&&a.dpDiv.addClass("ui-datepicker-multi-"+f).css("width",g*f+"em"),a.dpDiv[(e[0]!=1||e[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi"),a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),a==$.datepicker._curInst&&$.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&&!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var h=a.yearshtml;setTimeout(function(){h===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml),h=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(a){return{thin:1,medium:2,thick:3}[a]||a};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkOffset:function(a,b,c){var d=a.dpDiv.outerWidth(),e=a.dpDiv.outerHeight(),f=a.input?a.input.outerWidth():0,g=a.input?a.input.outerHeight():0,h=document.documentElement.clientWidth+(c?0:$(document).scrollLeft()),i=document.documentElement.clientHeight+(c?0:$(document).scrollTop());return b.left-=this._get(a,"isRTL")?d-f:0,b.left-=c&&b.left==a.input.offset().left?$(document).scrollLeft():0,b.top-=c&&b.top==a.input.offset().top+g?$(document).scrollTop():0,b.left-=Math.min(b.left,b.left+d>h&&h>d?Math.abs(b.left+d-h):0),b.top-=Math.min(b.top,b.top+e>i&&i>e?Math.abs(e+g):0),b},_findPos:function(a){var b=this._getInst(a),c=this._get(b,"isRTL");while(a&&(a.type=="hidden"||a.nodeType!=1||$.expr.filters.hidden(a)))a=a[c?"previousSibling":"nextSibling"];var d=$(a).offset();return[d.left,d.top]},_hideDatepicker:function(a){var b=this._curInst;if(!b||a&&b!=$.data(a,PROP_NAME))return;if(this._datepickerShowing){var c=this._get(b,"showAnim"),d=this._get(b,"duration"),e=function(){$.datepicker._tidyDialog(b)};$.effects&&$.effects[c]?b.dpDiv.hide(c,$.datepicker._get(b,"showOptions"),d,e):b.dpDiv[c=="slideDown"?"slideUp":c=="fadeIn"?"fadeOut":"hide"](c?d:null,e),c||e(),this._datepickerShowing=!1;var f=this._get(b,"onClose");f&&f.apply(b.input?b.input[0]:null,[b.input?b.input.val():"",b]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),$.blockUI&&($.unblockUI(),$("body").append(this.dpDiv))),this._inDialog=!1}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(a){if(!$.datepicker._curInst)return;var b=$(a.target),c=$.datepicker._getInst(b[0]);(b[0].id!=$.datepicker._mainDivId&&b.parents("#"+$.datepicker._mainDivId).length==0&&!b.hasClass($.datepicker.markerClassName)&&!b.closest("."+$.datepicker._triggerClass).length&&$.datepicker._datepickerShowing&&(!$.datepicker._inDialog||!$.blockUI)||b.hasClass($.datepicker.markerClassName)&&$.datepicker._curInst!=c)&&$.datepicker._hideDatepicker()},_adjustDate:function(a,b,c){var d=$(a),e=this._getInst(d[0]);if(this._isDisabledDatepicker(d[0]))return;this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"):0),c),this._updateDatepicker(e)},_gotoToday:function(a){var b=$(a),c=this._getInst(b[0]);if(this._get(c,"gotoCurrent")&&c.currentDay)c.selectedDay=c.currentDay,c.drawMonth=c.selectedMonth=c.currentMonth,c.drawYear=c.selectedYear=c.currentYear;else{var d=new Date;c.selectedDay=d.getDate(),c.drawMonth=c.selectedMonth=d.getMonth(),c.drawYear=c.selectedYear=d.getFullYear()}this._notifyChange(c),this._adjustDate(b)},_selectMonthYear:function(a,b,c){var d=$(a),e=this._getInst(d[0]);e["selected"+(c=="M"?"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10),this._notifyChange(e),this._adjustDate(d)},_selectDay:function(a,b,c,d){var e=$(a);if($(d).hasClass(this._unselectableClass)||this._isDisabledDatepicker(e[0]))return;var f=this._getInst(e[0]);f.selectedDay=f.currentDay=$("a",d).html(),f.selectedMonth=f.currentMonth=b,f.selectedYear=f.currentYear=c,this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))},_clearDate:function(a){var b=$(a),c=this._getInst(b[0]);this._selectDate(b,"")},_selectDate:function(a,b){var c=$(a),d=this._getInst(c[0]);b=b!=null?b:this._formatDate(d),d.input&&d.input.val(b),this._updateAlternate(d);var e=this._get(d,"onSelect");e?e.apply(d.input?d.input[0]:null,[b,d]):d.input&&d.input.trigger("change"),d.inline?this._updateDatepicker(d):(this._hideDatepicker(),this._lastInput=d.input[0],typeof d.input[0]!="object"&&d.input.focus(),this._lastInput=null)},_updateAlternate:function(a){var b=this._get(a,"altField");if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),d=this._getDate(a),e=this.formatDate(c,d,this._getFormatConfig(a));$(b).each(function(){$(this).val(e)})}},noWeekends:function(a){var b=a.getDay();return[b>0&&b<6,""]},iso8601Week:function(a){var b=new Date(a.getTime());b.setDate(b.getDate()+4-(b.getDay()||7));var c=b.getTime();return b.setMonth(0),b.setDate(1),Math.floor(Math.round((c-b)/864e5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b=="object"?b.toString():b+"";if(b=="")return null;var d=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;d=typeof d!="string"?d:(new Date).getFullYear()%100+parseInt(d,10);var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,g=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,h=(c?c.monthNames:null)||this._defaults.monthNames,i=-1,j=-1,k=-1,l=-1,m=!1,n=function(b){var c=s+1<a.length&&a.charAt(s+1)==b;return c&&s++,c},o=function(a){var c=n(a),d=a=="@"?14:a=="!"?20:a=="y"&&c?4:a=="o"?3:2,e=new RegExp("^\\d{1,"+d+"}"),f=b.substring(r).match(e);if(!f)throw"Missing number at position "+r;return r+=f[0].length,parseInt(f[0],10)},p=function(a,c,d){var e=$.map(n(a)?d:c,function(a,b){return[[b,a]]}).sort(function(a,b){return-(a[1].length-b[1].length)}),f=-1;$.each(e,function(a,c){var d=c[1];if(b.substr(r,d.length).toLowerCase()==d.toLowerCase())return f=c[0],r+=d.length,!1});if(f!=-1)return f+1;throw"Unknown name at position "+r},q=function(){if(b.charAt(r)!=a.charAt(s))throw"Unexpected literal at position "+r;r++},r=0;for(var s=0;s<a.length;s++)if(m)a.charAt(s)=="'"&&!n("'")?m=!1:q();else switch(a.charAt(s)){case"d":k=o("d");break;case"D":p("D",e,f);break;case"o":l=o("o");break;case"m":j=o("m");break;case"M":j=p("M",g,h);break;case"y":i=o("y");break;case"@":var t=new Date(o("@"));i=t.getFullYear(),j=t.getMonth()+1,k=t.getDate();break;case"!":var t=new Date((o("!")-this._ticksTo1970)/1e4);i=t.getFullYear(),j=t.getMonth()+1,k=t.getDate();break;case"'":n("'")?q():m=!0;break;default:q()}if(r<b.length)throw"Extra/unparsed characters found in date: "+b.substring(r);i==-1?i=(new Date).getFullYear():i<100&&(i+=(new Date).getFullYear()-(new Date).getFullYear()%100+(i<=d?0:-100));if(l>-1){j=1,k=l;do{var u=this._getDaysInMonth(i,j-1);if(k<=u)break;j++,k-=u}while(!0)}var t=this._daylightSavingAdjust(new Date(i,j-1,k));if(t.getFullYear()!=i||t.getMonth()+1!=j||t.getDate()!=k)throw"Invalid date";return t},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1e7,formatDate:function(a,b,c){if(!b)return"";var d=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,e=(c?c.dayNames:null)||this._defaults.dayNames,f=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,g=(c?c.monthNames:null)||this._defaults.monthNames,h=function(b){var c=m+1<a.length&&a.charAt(m+1)==b;return c&&m++,c},i=function(a,b,c){var d=""+b;if(h(a))while(d.length<c)d="0"+d;return d},j=function(a,b,c,d){return h(a)?d[b]:c[b]},k="",l=!1;if(b)for(var m=0;m<a.length;m++)if(l)a.charAt(m)=="'"&&!h("'")?l=!1:k+=a.charAt(m);else switch(a.charAt(m)){case"d":k+=i("d",b.getDate(),2);break;case"D":k+=j("D",b.getDay(),d,e);break;case"o":k+=i("o",Math.round(((new Date(b.getFullYear(),b.getMonth(),b.getDate())).getTime()-(new Date(b.getFullYear(),0,0)).getTime())/864e5),3);break;case"m":k+=i("m",b.getMonth()+1,2);break;case"M":k+=j("M",b.getMonth(),f,g);break;case"y":k+=h("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case"@":k+=b.getTime();break;case"!":k+=b.getTime()*1e4+this._ticksTo1970;break;case"'":h("'")?k+="'":l=!0;break;default:k+=a.charAt(m)}return k},_possibleChars:function(a){var b="",c=!1,d=function(b){var c=e+1<a.length&&a.charAt(e+1)==b;return c&&e++,c};for(var e=0;e<a.length;e++)if(c)a.charAt(e)=="'"&&!d("'")?c=!1:b+=a.charAt(e);else switch(a.charAt(e)){case"d":case"m":case"y":case"@":b+="0123456789";break;case"D":case"M":return null;case"'":d("'")?b+="'":c=!0;break;default:b+=a.charAt(e)}return b},_get:function(a,b){return a.settings[b]!==undefined?a.settings[b]:this._defaults[b]},_setDateFromField:function(a,b){if(a.input.val()==a.lastVal)return;var c=this._get(a,"dateFormat"),d=a.lastVal=a.input?a.input.val():null,e,f;e=f=this._getDefaultDate(a);var g=this._getFormatConfig(a);try{e=this.parseDate(c,d,g)||f}catch(h){this.log(h),d=b?"":d}a.selectedDay=e.getDate(),a.drawMonth=a.selectedMonth=e.getMonth(),a.drawYear=a.selectedYear=e.getFullYear(),a.currentDay=d?e.getDate():0,a.currentMonth=d?e.getMonth():0,a.currentYear=d?e.getFullYear():0,this._adjustInstDate(a)},_getDefaultDate:function(a){return this._restrictMinMax(a,this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(a,b,c){var d=function(a){var b=new Date;return b.setDate(b.getDate()+a),b},e=function(b){try{return $.datepicker.parseDate($.datepicker._get(a,"dateFormat"),b,$.datepicker._getFormatConfig(a))}catch(c){}var d=(b.toLowerCase().match(/^c/)?$.datepicker._getDate(a):null)||new Date,e=d.getFullYear(),f=d.getMonth(),g=d.getDate(),h=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,i=h.exec(b);while(i){switch(i[2]||"d"){case"d":case"D":g+=parseInt(i[1],10);break;case"w":case"W":g+=parseInt(i[1],10)*7;break;case"m":case"M":f+=parseInt(i[1],10),g=Math.min(g,$.datepicker._getDaysInMonth(e,f));break;case"y":case"Y":e+=parseInt(i[1],10),g=Math.min(g,$.datepicker._getDaysInMonth(e,f))}i=h.exec(b)}return new Date(e,f,g)},f=b==null||b===""?c:typeof b=="string"?e(b):typeof b=="number"?isNaN(b)?c:d(b):new Date(b.getTime());return f=f&&f.toString()=="Invalid Date"?c:f,f&&(f.setHours(0),f.setMinutes(0),f.setSeconds(0),f.setMilliseconds(0)),this._daylightSavingAdjust(f)},_daylightSavingAdjust:function(a){return a?(a.setHours(a.getHours()>12?a.getHours()+2:0),a):null},_setDate:function(a,b,c){var d=!b,e=a.selectedMonth,f=a.selectedYear,g=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=g.getDate(),a.drawMonth=a.selectedMonth=a.currentMonth=g.getMonth(),a.drawYear=a.selectedYear=a.currentYear=g.getFullYear(),(e!=a.selectedMonth||f!=a.selectedYear)&&!c&&this._notifyChange(a),this._adjustInstDate(a),a.input&&a.input.val(d?"":this._formatDate(a))},_getDate:function(a){var b=!a.currentYear||a.input&&a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return b},_attachHandlers:function(a){var b=this._get(a,"stepMonths"),c="#"+a.id.replace(/\\\\/g,"\\");a.dpDiv.find("[data-handler]").map(function(){var a={prev:function(){window["DP_jQuery_"+dpuuid].datepicker._adjustDate(c,-b,"M")},next:function(){window["DP_jQuery_"+dpuuid].datepicker._adjustDate(c,+b,"M")},hide:function(){window["DP_jQuery_"+dpuuid].datepicker._hideDatepicker()},today:function(){window["DP_jQuery_"+dpuuid].datepicker._gotoToday(c)},selectDay:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectDay(c,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectMonthYear(c,this,"M"),!1},selectYear:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectMonthYear(c,this,"Y"),!1}};$(this).bind(this.getAttribute("data-event"),a[this.getAttribute("data-handler")])})},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),d=this._get(a,"showButtonPanel"),e=this._get(a,"hideIfNoPrevNext"),f=this._get(a,"navigationAsDateFormat"),g=this._getNumberOfMonths(a),h=this._get(a,"showCurrentAtPos"),i=this._get(a,"stepMonths"),j=g[0]!=1||g[1]!=1,k=this._daylightSavingAdjust(a.currentDay?new Date(a.currentYear,a.currentMonth,a.currentDay):new Date(9999,9,9)),l=this._getMinMaxDate(a,"min"),m=this._getMinMaxDate(a,"max"),n=a.drawMonth-h,o=a.drawYear;n<0&&(n+=12,o--);if(m){var p=this._daylightSavingAdjust(new Date(m.getFullYear(),m.getMonth()-g[0]*g[1]+1,m.getDate()));p=l&&p<l?l:p;while(this._daylightSavingAdjust(new Date(o,n,1))>p)n--,n<0&&(n=11,o--)}a.drawMonth=n,a.drawYear=o;var q=this._get(a,"prevText");q=f?this.formatDate(q,this._daylightSavingAdjust(new Date(o,n-i,1)),this._getFormatConfig(a)):q;var r=this._canAdjustMonth(a,-1,o,n)?'<a class="ui-datepicker-prev ui-corner-all" data-handler="prev" data-event="click" title="'+q+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+q+"</span></a>":e?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+q+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+q+"</span></a>",s=this._get(a,"nextText");s=f?this.formatDate(s,this._daylightSavingAdjust(new Date(o,n+i,1)),this._getFormatConfig(a)):s;var t=this._canAdjustMonth(a,1,o,n)?'<a class="ui-datepicker-next ui-corner-all" data-handler="next" data-event="click" title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>":e?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>",u=this._get(a,"currentText"),v=this._get(a,"gotoCurrent")&&a.currentDay?k:b;u=f?this.formatDate(u,v,this._getFormatConfig(a)):u;var w=a.inline?"":'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" data-handler="hide" data-event="click">'+this._get(a,"closeText")+"</button>",x=d?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(c?w:"")+(this._isInRange(a,v)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" data-handler="today" data-event="click">'+u+"</button>":"")+(c?"":w)+"</div>":"",y=parseInt(this._get(a,"firstDay"),10);y=isNaN(y)?0:y;var z=this._get(a,"showWeek"),A=this._get(a,"dayNames"),B=this._get(a,"dayNamesShort"),C=this._get(a,"dayNamesMin"),D=this._get(a,"monthNames"),E=this._get(a,"monthNamesShort"),F=this._get(a,"beforeShowDay"),G=this._get(a,"showOtherMonths"),H=this._get(a,"selectOtherMonths"),I=this._get(a,"calculateWeek")||this.iso8601Week,J=this._getDefaultDate(a),K="";for(var L=0;L<g[0];L++){var M="";this.maxRows=4;for(var N=0;N<g[1];N++){var O=this._daylightSavingAdjust(new Date(o,n,a.selectedDay)),P=" ui-corner-all",Q="";if(j){Q+='<div class="ui-datepicker-group';if(g[1]>1)switch(N){case 0:Q+=" ui-datepicker-group-first",P=" ui-corner-"+(c?"right":"left");break;case g[1]-1:Q+=" ui-datepicker-group-last",P=" ui-corner-"+(c?"left":"right");break;default:Q+=" ui-datepicker-group-middle",P=""}Q+='">'}Q+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+P+'">'+(/all|left/.test(P)&&L==0?c?t:r:"")+(/all|right/.test(P)&&L==0?c?r:t:"")+this._generateMonthYearHeader(a,n,o,l,m,L>0||N>0,D,E)+'</div><table class="ui-datepicker-calendar"><thead>'+"<tr>";var R=z?'<th class="ui-datepicker-week-col">'+this._get(a,"weekHeader")+"</th>":"";for(var S=0;S<7;S++){var T=(S+y)%7;R+="<th"+((S+y+6)%7>=5?' class="ui-datepicker-week-end"':"")+">"+'<span title="'+A[T]+'">'+C[T]+"</span></th>"}Q+=R+"</tr></thead><tbody>";var U=this._getDaysInMonth(o,n);o==a.selectedYear&&n==a.selectedMonth&&(a.selectedDay=Math.min(a.selectedDay,U));var V=(this._getFirstDayOfMonth(o,n)-y+7)%7,W=Math.ceil((V+U)/7),X=j?this.maxRows>W?this.maxRows:W:W;this.maxRows=X;var Y=this._daylightSavingAdjust(new Date(o,n,1-V));for(var Z=0;Z<X;Z++){Q+="<tr>";var _=z?'<td class="ui-datepicker-week-col">'+this._get(a,"calculateWeek")(Y)+"</td>":"";for(var S=0;S<7;S++){var ba=F?F.apply(a.input?a.input[0]:null,[Y]):[!0,""],bb=Y.getMonth()!=n,bc=bb&&!H||!ba[0]||l&&Y<l||m&&Y>m;_+='<td class="'+((S+y+6)%7>=5?" ui-datepicker-week-end":"")+(bb?" ui-datepicker-other-month":"")+(Y.getTime()==O.getTime()&&n==a.selectedMonth&&a._keyEvent||J.getTime()==Y.getTime()&&J.getTime()==O.getTime()?" "+this._dayOverClass:"")+(bc?" "+this._unselectableClass+" ui-state-disabled":"")+(bb&&!G?"":" "+ba[1]+(Y.getTime()==k.getTime()?" "+this._currentClass:"")+(Y.getTime()==b.getTime()?" ui-datepicker-today":""))+'"'+((!bb||G)&&ba[2]?' title="'+ba[2]+'"':"")+(bc?"":' data-handler="selectDay" data-event="click" data-month="'+Y.getMonth()+'" data-year="'+Y.getFullYear()+'"')+">"+(bb&&!G?"&#xa0;":bc?'<span class="ui-state-default">'+Y.getDate()+"</span>":'<a class="ui-state-default'+(Y.getTime()==b.getTime()?" ui-state-highlight":"")+(Y.getTime()==k.getTime()?" ui-state-active":"")+(bb?" ui-priority-secondary":"")+'" href="#">'+Y.getDate()+"</a>")+"</td>",Y.setDate(Y.getDate()+1),Y=this._daylightSavingAdjust(Y)}Q+=_+"</tr>"}n++,n>11&&(n=0,o++),Q+="</tbody></table>"+(j?"</div>"+(g[0]>0&&N==g[1]-1?'<div class="ui-datepicker-row-break"></div>':""):""),M+=Q}K+=M}return K+=x+($.browser.msie&&parseInt($.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':""),a._keyEvent=!1,K},_generateMonthYearHeader:function(a,b,c,d,e,f,g,h){var i=this._get(a,"changeMonth"),j=this._get(a,"changeYear"),k=this._get(a,"showMonthAfterYear"),l='<div class="ui-datepicker-title">',m="";if(f||!i)m+='<span class="ui-datepicker-month">'+g[b]+"</span>";else{var n=d&&d.getFullYear()==c,o=e&&e.getFullYear()==c;m+='<select class="ui-datepicker-month" data-handler="selectMonth" data-event="change">';for(var p=0;p<12;p++)(!n||p>=d.getMonth())&&(!o||p<=e.getMonth())&&(m+='<option value="'+p+'"'+(p==b?' selected="selected"':"")+">"+h[p]+"</option>");m+="</select>"}k||(l+=m+(f||!i||!j?"&#xa0;":""));if(!a.yearshtml){a.yearshtml="";if(f||!j)l+='<span class="ui-datepicker-year">'+c+"</span>";else{var q=this._get(a,"yearRange").split(":"),r=(new Date).getFullYear(),s=function(a){var b=a.match(/c[+-].*/)?c+parseInt(a.substring(1),10):a.match(/[+-].*/)?r+parseInt(a,10):parseInt(a,10);return isNaN(b)?r:b},t=s(q[0]),u=Math.max(t,s(q[1]||""));t=d?Math.max(t,d.getFullYear()):t,u=e?Math.min(u,e.getFullYear()):u,a.yearshtml+='<select class="ui-datepicker-year" data-handler="selectYear" data-event="change">';for(;t<=u;t++)a.yearshtml+='<option value="'+t+'"'+(t==c?' selected="selected"':"")+">"+t+"</option>";a.yearshtml+="</select>",l+=a.yearshtml,a.yearshtml=null}}return l+=this._get(a,"yearSuffix"),k&&(l+=(f||!i||!j?"&#xa0;":"")+m),l+="</div>",l},_adjustInstDate:function(a,b,c){var d=a.drawYear+(c=="Y"?b:0),e=a.drawMonth+(c=="M"?b:0),f=Math.min(a.selectedDay,this._getDaysInMonth(d,e))+(c=="D"?b:0),g=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(d,e,f)));a.selectedDay=g.getDate(),a.drawMonth=a.selectedMonth=g.getMonth(),a.drawYear=a.selectedYear=g.getFullYear(),(c=="M"||c=="Y")&&this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max"),e=c&&b<c?c:b;return e=d&&e>d?d:e,e},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");b&&b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){var b=this._get(a,"numberOfMonths");return b==null?[1,1]:typeof b=="number"?[1,b]:b},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,d){var e=this._getNumberOfMonths(a),f=this._daylightSavingAdjust(new Date(c,d+(b<0?b:e[0]*e[1]),1));return b<0&&f.setDate(this._getDaysInMonth(f.getFullYear(),f.getMonth())),this._isInRange(a,f)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!d||b.getTime()<=d.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");return b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10),{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,d){b||(a.currentDay=a.selectedDay,a.currentMonth=a.selectedMonth,a.currentYear=a.selectedYear);var e=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(d,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),e,this._getFormatConfig(a))}}),$.fn.datepicker=function(a){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv),$.datepicker.initialized=!0);var b=Array.prototype.slice.call(arguments,1);return typeof a!="string"||a!="isDisabled"&&a!="getDate"&&a!="widget"?a=="option"&&arguments.length==2&&typeof arguments[1]=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b)):this.each(function(){typeof a=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this].concat(b)):$.datepicker._attachDatepicker(this,a)}):$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b))},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="1.8.23",window["DP_jQuery_"+dpuuid]=$})(jQuery);;
\ No newline at end of file
+/*! jQuery UI - v1.9.2 - 2013-02-12
+* http://jqueryui.com
+* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.sortable.js, jquery.ui.autocomplete.js, jquery.ui.datepicker.js, jquery.ui.menu.js, jquery.ui.slider.js, jquery.ui.tabs.js, jquery.ui.tooltip.js
+* Copyright (c) 2013 jQuery Foundation and other contributors Licensed MIT */
+
+(function(e,t){function i(t,n){var r,i,o,u=t.nodeName.toLowerCase();return"area"===u?(r=t.parentNode,i=r.name,!t.href||!i||r.nodeName.toLowerCase()!=="map"?!1:(o=e("img[usemap=#"+i+"]")[0],!!o&&s(o))):(/input|select|textarea|button|object/.test(u)?!t.disabled:"a"===u?t.href||n:n)&&s(t)}function s(t){return e.expr.filters.visible(t)&&!e(t).parents().andSelf().filter(function(){return e.css(this,"visibility")==="hidden"}).length}var n=0,r=/^ui-id-\d+$/;e.ui=e.ui||{};if(e.ui.version)return;e.extend(e.ui,{version:"1.9.2",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({_focus:e.fn.focus,focus:function(t,n){return typeof t=="number"?this.each(function(){var r=this;setTimeout(function(){e(r).focus(),n&&n.call(r)},t)}):this._focus.apply(this,arguments)},scrollParent:function(){var t;return e.ui.ie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?t=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,"position"))&&/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0):t=this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0),/fixed/.test(this.css("position"))||!t.length?e(document):t},zIndex:function(n){if(n!==t)return this.css("zIndex",n);if(this.length){var r=e(this[0]),i,s;while(r.length&&r[0]!==document){i=r.css("position");if(i==="absolute"||i==="relative"||i==="fixed"){s=parseInt(r.css("zIndex"),10);if(!isNaN(s)&&s!==0)return s}r=r.parent()}}return 0},uniqueId:function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++n)})},removeUniqueId:function(){return this.each(function(){r.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(n){return!!e.data(n,t)}}):function(t,n,r){return!!e.data(t,r[3])},focusable:function(t){return i(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var n=e.attr(t,"tabindex"),r=isNaN(n);return(r||n>=0)&&i(t,!r)}}),e(function(){var t=document.body,n=t.appendChild(n=document.createElement("div"));n.offsetHeight,e.extend(n.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),e.support.minHeight=n.offsetHeight===100,e.support.selectstart="onselectstart"in n,t.removeChild(n).style.display="none"}),e("<a>").outerWidth(1).jquery||e.each(["Width","Height"],function(n,r){function u(t,n,r,s){return e.each(i,function(){n-=parseFloat(e.css(t,"padding"+this))||0,r&&(n-=parseFloat(e.css(t,"border"+this+"Width"))||0),s&&(n-=parseFloat(e.css(t,"margin"+this))||0)}),n}var i=r==="Width"?["Left","Right"]:["Top","Bottom"],s=r.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+r]=function(n){return n===t?o["inner"+r].call(this):this.each(function(){e(this).css(s,u(this,n)+"px")})},e.fn["outer"+r]=function(t,n){return typeof t!="number"?o["outer"+r].call(this,t):this.each(function(){e(this).css(s,u(this,t,!0,n)+"px")})}}),e("<a>").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(n){return arguments.length?t.call(this,e.camelCase(n)):t.call(this)}}(e.fn.removeData)),function(){var t=/msie ([\w.]+)/.exec(navigator.userAgent.toLowerCase())||[];e.ui.ie=t.length?!0:!1,e.ui.ie6=parseFloat(t[1],10)===6}(),e.fn.extend({disableSelection:function(){return this.bind((e.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),e.extend(e.ui,{plugin:{add:function(t,n,r){var i,s=e.ui[t].prototype;for(i in r)s.plugins[i]=s.plugins[i]||[],s.plugins[i].push([n,r[i]])},call:function(e,t,n){var r,i=e.plugins[t];if(!i||!e.element[0].parentNode||e.element[0].parentNode.nodeType===11)return;for(r=0;r<i.length;r++)e.options[i[r][0]]&&i[r][1].apply(e.element,n)}},contains:e.contains,hasScroll:function(t,n){if(e(t).css("overflow")==="hidden")return!1;var r=n&&n==="left"?"scrollLeft":"scrollTop",i=!1;return t[r]>0?!0:(t[r]=1,i=t[r]>0,t[r]=0,i)},isOverAxis:function(e,t,n){return e>t&&e<t+n},isOver:function(t,n,r,i,s,o){return e.ui.isOverAxis(t,r,s)&&e.ui.isOverAxis(n,i,o)}})})(jQuery);(function(e,t){var n=0,r=Array.prototype.slice,i=e.cleanData;e.cleanData=function(t){for(var n=0,r;(r=t[n])!=null;n++)try{e(r).triggerHandler("remove")}catch(s){}i(t)},e.widget=function(t,n,r){var i,s,o,u,a=t.split(".")[0];t=t.split(".")[1],i=a+"-"+t,r||(r=n,n=e.Widget),e.expr[":"][i.toLowerCase()]=function(t){return!!e.data(t,i)},e[a]=e[a]||{},s=e[a][t],o=e[a][t]=function(e,t){if(!this._createWidget)return new o(e,t);arguments.length&&this._createWidget(e,t)},e.extend(o,s,{version:r.version,_proto:e.extend({},r),_childConstructors:[]}),u=new n,u.options=e.widget.extend({},u.options),e.each(r,function(t,i){e.isFunction(i)&&(r[t]=function(){var e=function(){return n.prototype[t].apply(this,arguments)},r=function(e){return n.prototype[t].apply(this,e)};return function(){var t=this._super,n=this._superApply,s;return this._super=e,this._superApply=r,s=i.apply(this,arguments),this._super=t,this._superApply=n,s}}())}),o.prototype=e.widget.extend(u,{widgetEventPrefix:s?u.widgetEventPrefix:t},r,{constructor:o,namespace:a,widgetName:t,widgetBaseClass:i,widgetFullName:i}),s?(e.each(s._childConstructors,function(t,n){var r=n.prototype;e.widget(r.namespace+"."+r.widgetName,o,n._proto)}),delete s._childConstructors):n._childConstructors.push(o),e.widget.bridge(t,o)},e.widget.extend=function(n){var i=r.call(arguments,1),s=0,o=i.length,u,a;for(;s<o;s++)for(u in i[s])a=i[s][u],i[s].hasOwnProperty(u)&&a!==t&&(e.isPlainObject(a)?n[u]=e.isPlainObject(n[u])?e.widget.extend({},n[u],a):e.widget.extend({},a):n[u]=a);return n},e.widget.bridge=function(n,i){var s=i.prototype.widgetFullName||n;e.fn[n]=function(o){var u=typeof o=="string",a=r.call(arguments,1),f=this;return o=!u&&a.length?e.widget.extend.apply(null,[o].concat(a)):o,u?this.each(function(){var r,i=e.data(this,s);if(!i)return e.error("cannot call methods on "+n+" prior to initialization; "+"attempted to call method '"+o+"'");if(!e.isFunction(i[o])||o.charAt(0)==="_")return e.error("no such method '"+o+"' for "+n+" widget instance");r=i[o].apply(i,a);if(r!==i&&r!==t)return f=r&&r.jquery?f.pushStack(r.get()):r,!1}):this.each(function(){var t=e.data(this,s);t?t.option(o||{})._init():e.data(this,s,new i(o,this))}),f}},e.Widget=function(){},e.Widget._childConstructors=[],e.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(t,r){r=e(r||this.defaultElement||this)[0],this.element=e(r),this.uuid=n++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this.bindings=e(),this.hoverable=e(),this.focusable=e(),r!==this&&(e.data(r,this.widgetName,this),e.data(r,this.widgetFullName,this),this._on(!0,this.element,{remove:function(e){e.target===r&&this.destroy()}}),this.document=e(r.style?r.ownerDocument:r.document||r),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:e.noop,widget:function(){return this.element},option:function(n,r){var i=n,s,o,u;if(arguments.length===0)return e.widget.extend({},this.options);if(typeof n=="string"){i={},s=n.split("."),n=s.shift();if(s.length){o=i[n]=e.widget.extend({},this.options[n]);for(u=0;u<s.length-1;u++)o[s[u]]=o[s[u]]||{},o=o[s[u]];n=s.pop();if(r===t)return o[n]===t?null:o[n];o[n]=r}else{if(r===t)return this.options[n]===t?null:this.options[n];i[n]=r}}return this._setOptions(i),this},_setOptions:function(e){var t;for(t in e)this._setOption(t,e[t]);return this},_setOption:function(e,t){return this.options[e]=t,e==="disabled"&&(this.widget().toggleClass(this.widgetFullName+"-disabled ui-state-disabled",!!t).attr("aria-disabled",t),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")),this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_on:function(t,n,r){var i,s=this;typeof t!="boolean"&&(r=n,n=t,t=!1),r?(n=i=e(n),this.bindings=this.bindings.add(n)):(r=n,n=this.element,i=this.widget()),e.each(r,function(r,o){function u(){if(!t&&(s.options.disabled===!0||e(this).hasClass("ui-state-disabled")))return;return(typeof o=="string"?s[o]:o).apply(s,arguments)}typeof o!="string"&&(u.guid=o.guid=o.guid||u.guid||e.guid++);var a=r.match(/^(\w+)\s*(.*)$/),f=a[1]+s.eventNamespace,l=a[2];l?i.delegate(l,f,u):n.bind(f,u)})},_off:function(e,t){t=(t||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.unbind(t).undelegate(t)},_delay:function(e,t){function n(){return(typeof e=="string"?r[e]:e).apply(r,arguments)}var r=this;return setTimeout(n,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){e(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){e(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){e(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){e(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,n,r){var i,s,o=this.options[t];r=r||{},n=e.Event(n),n.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),n.target=this.element[0],s=n.originalEvent;if(s)for(i in s)i in n||(n[i]=s[i]);return this.element.trigger(n,r),!(e.isFunction(o)&&o.apply(this.element[0],[n].concat(r))===!1||n.isDefaultPrevented())}},e.each({show:"fadeIn",hide:"fadeOut"},function(t,n){e.Widget.prototype["_"+t]=function(r,i,s){typeof i=="string"&&(i={effect:i});var o,u=i?i===!0||typeof i=="number"?n:i.effect||n:t;i=i||{},typeof i=="number"&&(i={duration:i}),o=!e.isEmptyObject(i),i.complete=s,i.delay&&r.delay(i.delay),o&&e.effects&&(e.effects.effect[u]||e.uiBackCompat!==!1&&e.effects[u])?r[t](i):u!==t&&r[u]?r[u](i.duration,i.easing,s):r.queue(function(n){e(this)[t](),s&&s.call(r[0]),n()})}}),e.uiBackCompat!==!1&&(e.Widget.prototype._getCreateOptions=function(){return e.metadata&&e.metadata.get(this.element[0])[this.widgetName]})})(jQuery);(function(e,t){var n=!1;e(document).mouseup(function(e){n=!1}),e.widget("ui.mouse",{version:"1.9.2",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var t=this;this.element.bind("mousedown."+this.widgetName,function(e){return t._mouseDown(e)}).bind("click."+this.widgetName,function(n){if(!0===e.data(n.target,t.widgetName+".preventClickEvent"))return e.removeData(n.target,t.widgetName+".preventClickEvent"),n.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(n)return;this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t;var r=this,i=t.which===1,s=typeof this.options.cancel=="string"&&t.target.nodeName?e(t.target).closest(this.options.cancel).length:!1;if(!i||s||!this._mouseCapture(t))return!0;this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){r.mouseDelayMet=!0},this.options.delay));if(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)){this._mouseStarted=this._mouseStart(t)!==!1;if(!this._mouseStarted)return t.preventDefault(),!0}return!0===e.data(t.target,this.widgetName+".preventClickEvent")&&e.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(e){return r._mouseMove(e)},this._mouseUpDelegate=function(e){return r._mouseUp(e)},e(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),n=!0,!0},_mouseMove:function(t){return!e.ui.ie||document.documentMode>=9||!!t.button?this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted):this._mouseUp(t)},_mouseUp:function(t){return e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&e.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(e){return this.mouseDelayMet},_mouseStart:function(e){},_mouseDrag:function(e){},_mouseStop:function(e){},_mouseCapture:function(e){return!0}})})(jQuery);(function(e,t){function h(e,t,n){return[parseInt(e[0],10)*(l.test(e[0])?t/100:1),parseInt(e[1],10)*(l.test(e[1])?n/100:1)]}function p(t,n){return parseInt(e.css(t,n),10)||0}e.ui=e.ui||{};var n,r=Math.max,i=Math.abs,s=Math.round,o=/left|center|right/,u=/top|center|bottom/,a=/[\+\-]\d+%?/,f=/^\w+/,l=/%$/,c=e.fn.position;e.position={scrollbarWidth:function(){if(n!==t)return n;var r,i,s=e("<div style='display:block;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),o=s.children()[0];return e("body").append(s),r=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,r===i&&(i=s[0].clientWidth),s.remove(),n=r-i},getScrollInfo:function(t){var n=t.isWindow?"":t.element.css("overflow-x"),r=t.isWindow?"":t.element.css("overflow-y"),i=n==="scroll"||n==="auto"&&t.width<t.element[0].scrollWidth,s=r==="scroll"||r==="auto"&&t.height<t.element[0].scrollHeight;return{width:i?e.position.scrollbarWidth():0,height:s?e.position.scrollbarWidth():0}},getWithinInfo:function(t){var n=e(t||window),r=e.isWindow(n[0]);return{element:n,isWindow:r,offset:n.offset()||{left:0,top:0},scrollLeft:n.scrollLeft(),scrollTop:n.scrollTop(),width:r?n.width():n.outerWidth(),height:r?n.height():n.outerHeight()}}},e.fn.position=function(t){if(!t||!t.of)return c.apply(this,arguments);t=e.extend({},t);var n,l,d,v,m,g=e(t.of),y=e.position.getWithinInfo(t.within),b=e.position.getScrollInfo(y),w=g[0],E=(t.collision||"flip").split(" "),S={};return w.nodeType===9?(l=g.width(),d=g.height(),v={top:0,left:0}):e.isWindow(w)?(l=g.width(),d=g.height(),v={top:g.scrollTop(),left:g.scrollLeft()}):w.preventDefault?(t.at="left top",l=d=0,v={top:w.pageY,left:w.pageX}):(l=g.outerWidth(),d=g.outerHeight(),v=g.offset()),m=e.extend({},v),e.each(["my","at"],function(){var e=(t[this]||"").split(" "),n,r;e.length===1&&(e=o.test(e[0])?e.concat(["center"]):u.test(e[0])?["center"].concat(e):["center","center"]),e[0]=o.test(e[0])?e[0]:"center",e[1]=u.test(e[1])?e[1]:"center",n=a.exec(e[0]),r=a.exec(e[1]),S[this]=[n?n[0]:0,r?r[0]:0],t[this]=[f.exec(e[0])[0],f.exec(e[1])[0]]}),E.length===1&&(E[1]=E[0]),t.at[0]==="right"?m.left+=l:t.at[0]==="center"&&(m.left+=l/2),t.at[1]==="bottom"?m.top+=d:t.at[1]==="center"&&(m.top+=d/2),n=h(S.at,l,d),m.left+=n[0],m.top+=n[1],this.each(function(){var o,u,a=e(this),f=a.outerWidth(),c=a.outerHeight(),w=p(this,"marginLeft"),x=p(this,"marginTop"),T=f+w+p(this,"marginRight")+b.width,N=c+x+p(this,"marginBottom")+b.height,C=e.extend({},m),k=h(S.my,a.outerWidth(),a.outerHeight());t.my[0]==="right"?C.left-=f:t.my[0]==="center"&&(C.left-=f/2),t.my[1]==="bottom"?C.top-=c:t.my[1]==="center"&&(C.top-=c/2),C.left+=k[0],C.top+=k[1],e.support.offsetFractions||(C.left=s(C.left),C.top=s(C.top)),o={marginLeft:w,marginTop:x},e.each(["left","top"],function(r,i){e.ui.position[E[r]]&&e.ui.position[E[r]][i](C,{targetWidth:l,targetHeight:d,elemWidth:f,elemHeight:c,collisionPosition:o,collisionWidth:T,collisionHeight:N,offset:[n[0]+k[0],n[1]+k[1]],my:t.my,at:t.at,within:y,elem:a})}),e.fn.bgiframe&&a.bgiframe(),t.using&&(u=function(e){var n=v.left-C.left,s=n+l-f,o=v.top-C.top,u=o+d-c,h={target:{element:g,left:v.left,top:v.top,width:l,height:d},element:{element:a,left:C.left,top:C.top,width:f,height:c},horizontal:s<0?"left":n>0?"right":"center",vertical:u<0?"top":o>0?"bottom":"middle"};l<f&&i(n+s)<l&&(h.horizontal="center"),d<c&&i(o+u)<d&&(h.vertical="middle"),r(i(n),i(s))>r(i(o),i(u))?h.important="horizontal":h.important="vertical",t.using.call(this,e,h)}),a.offset(e.extend(C,{using:u}))})},e.ui.position={fit:{left:function(e,t){var n=t.within,i=n.isWindow?n.scrollLeft:n.offset.left,s=n.width,o=e.left-t.collisionPosition.marginLeft,u=i-o,a=o+t.collisionWidth-s-i,f;t.collisionWidth>s?u>0&&a<=0?(f=e.left+u+t.collisionWidth-s-i,e.left+=u-f):a>0&&u<=0?e.left=i:u>a?e.left=i+s-t.collisionWidth:e.left=i:u>0?e.left+=u:a>0?e.left-=a:e.left=r(e.left-o,e.left)},top:function(e,t){var n=t.within,i=n.isWindow?n.scrollTop:n.offset.top,s=t.within.height,o=e.top-t.collisionPosition.marginTop,u=i-o,a=o+t.collisionHeight-s-i,f;t.collisionHeight>s?u>0&&a<=0?(f=e.top+u+t.collisionHeight-s-i,e.top+=u-f):a>0&&u<=0?e.top=i:u>a?e.top=i+s-t.collisionHeight:e.top=i:u>0?e.top+=u:a>0?e.top-=a:e.top=r(e.top-o,e.top)}},flip:{left:function(e,t){var n=t.within,r=n.offset.left+n.scrollLeft,s=n.width,o=n.isWindow?n.scrollLeft:n.offset.left,u=e.left-t.collisionPosition.marginLeft,a=u-o,f=u+t.collisionWidth-s-o,l=t.my[0]==="left"?-t.elemWidth:t.my[0]==="right"?t.elemWidth:0,c=t.at[0]==="left"?t.targetWidth:t.at[0]==="right"?-t.targetWidth:0,h=-2*t.offset[0],p,d;if(a<0){p=e.left+l+c+h+t.collisionWidth-s-r;if(p<0||p<i(a))e.left+=l+c+h}else if(f>0){d=e.left-t.collisionPosition.marginLeft+l+c+h-o;if(d>0||i(d)<f)e.left+=l+c+h}},top:function(e,t){var n=t.within,r=n.offset.top+n.scrollTop,s=n.height,o=n.isWindow?n.scrollTop:n.offset.top,u=e.top-t.collisionPosition.marginTop,a=u-o,f=u+t.collisionHeight-s-o,l=t.my[1]==="top",c=l?-t.elemHeight:t.my[1]==="bottom"?t.elemHeight:0,h=t.at[1]==="top"?t.targetHeight:t.at[1]==="bottom"?-t.targetHeight:0,p=-2*t.offset[1],d,v;a<0?(v=e.top+c+h+p+t.collisionHeight-s-r,e.top+c+h+p>a&&(v<0||v<i(a))&&(e.top+=c+h+p)):f>0&&(d=e.top-t.collisionPosition.marginTop+c+h+p-o,e.top+c+h+p>f&&(d>0||i(d)<f)&&(e.top+=c+h+p))}},flipfit:{left:function(){e.ui.position.flip.left.apply(this,arguments),e.ui.position.fit.left.apply(this,arguments)},top:function(){e.ui.position.flip.top.apply(this,arguments),e.ui.position.fit.top.apply(this,arguments)}}},function(){var t,n,r,i,s,o=document.getElementsByTagName("body")[0],u=document.createElement("div");t=document.createElement(o?"div":"body"),r={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},o&&e.extend(r,{position:"absolute",left:"-1000px",top:"-1000px"});for(s in r)t.style[s]=r[s];t.appendChild(u),n=o||document.documentElement,n.insertBefore(t,n.firstChild),u.style.cssText="position: absolute; left: 10.7432222px;",i=e(u).offset().left,e.support.offsetFractions=i>10&&i<11,t.innerHTML="",n.removeChild(t)}(),e.uiBackCompat!==!1&&function(e){var n=e.fn.position;e.fn.position=function(r){if(!r||!r.offset)return n.call(this,r);var i=r.offset.split(" "),s=r.at.split(" ");return i.length===1&&(i[1]=i[0]),/^\d/.test(i[0])&&(i[0]="+"+i[0]),/^\d/.test(i[1])&&(i[1]="+"+i[1]),s.length===1&&(/left|center|right/.test(s[0])?s[1]="center":(s[1]=s[0],s[0]="center")),n.call(this,e.extend(r,{at:s[0]+i[0]+" "+s[1]+i[1],offset:t}))}}(jQuery)})(jQuery);(function(e,t){e.widget("ui.sortable",e.ui.mouse,{version:"1.9.2",widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3},_create:function(){var e=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?e.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):!1,this.offset=this.element.offset(),this._mouseInit(),this.ready=!0},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled"),this._mouseDestroy();for(var e=this.items.length-1;e>=0;e--)this.items[e].item.removeData(this.widgetName+"-item");return this},_setOption:function(t,n){t==="disabled"?(this.options[t]=n,this.widget().toggleClass("ui-sortable-disabled",!!n)):e.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(t,n){var r=this;if(this.reverting)return!1;if(this.options.disabled||this.options.type=="static")return!1;this._refreshItems(t);var i=null,s=e(t.target).parents().each(function(){if(e.data(this,r.widgetName+"-item")==r)return i=e(this),!1});e.data(t.target,r.widgetName+"-item")==r&&(i=e(t.target));if(!i)return!1;if(this.options.handle&&!n){var o=!1;e(this.options.handle,i).find("*").andSelf().each(function(){this==t.target&&(o=!0)});if(!o)return!1}return this.currentItem=i,this._removeCurrentsFromItems(),!0},_mouseStart:function(t,n,r){var i=this.options;this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(t),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!=this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),i.containment&&this._setContainment(),i.cursor&&(e("body").css("cursor")&&(this._storedCursor=e("body").css("cursor")),e("body").css("cursor",i.cursor)),i.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",i.opacity)),i.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",i.zIndex)),this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",t,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions();if(!r)for(var s=this.containers.length-1;s>=0;s--)this.containers[s]._trigger("activate",t,this._uiHash(this));return e.ui.ddmanager&&(e.ui.ddmanager.current=this),e.ui.ddmanager&&!i.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(t),!0},_mouseDrag:function(t){this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs);if(this.options.scroll){var n=this.options,r=!1;this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-t.pageY<n.scrollSensitivity?this.scrollParent[0].scrollTop=r=this.scrollParent[0].scrollTop+n.scrollSpeed:t.pageY-this.overflowOffset.top<n.scrollSensitivity&&(this.scrollParent[0].scrollTop=r=this.scrollParent[0].scrollTop-n.scrollSpeed),this.overflowOffset.left+this.scrollParent[0].offsetWidth-t.pageX<n.scrollSensitivity?this.scrollParent[0].scrollLeft=r=this.scrollParent[0].scrollLeft+n.scrollSpeed:t.pageX-this.overflowOffset.left<n.scrollSensitivity&&(this.scrollParent[0].scrollLeft=r=this.scrollParent[0].scrollLeft-n.scrollSpeed)):(t.pageY-e(document).scrollTop()<n.scrollSensitivity?r=e(document).scrollTop(e(document).scrollTop()-n.scrollSpeed):e(window).height()-(t.pageY-e(document).scrollTop())<n.scrollSensitivity&&(r=e(document).scrollTop(e(document).scrollTop()+n.scrollSpeed)),t.pageX-e(document).scrollLeft()<n.scrollSensitivity?r=e(document).scrollLeft(e(document).scrollLeft()-n.scrollSpeed):e(window).width()-(t.pageX-e(document).scrollLeft())<n.scrollSensitivity&&(r=e(document).scrollLeft(e(document).scrollLeft()+n.scrollSpeed))),r!==!1&&e.ui.ddmanager&&!n.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t)}this.positionAbs=this._convertPositionTo("absolute");if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";for(var i=this.items.length-1;i>=0;i--){var s=this.items[i],o=s.item[0],u=this._intersectsWithPointer(s);if(!u)continue;if(s.instance!==this.currentContainer)continue;if(o!=this.currentItem[0]&&this.placeholder[u==1?"next":"prev"]()[0]!=o&&!e.contains(this.placeholder[0],o)&&(this.options.type=="semi-dynamic"?!e.contains(this.element[0],o):!0)){this.direction=u==1?"down":"up";if(this.options.tolerance!="pointer"&&!this._intersectsWithSides(s))break;this._rearrange(t,s),this._trigger("change",t,this._uiHash());break}}return this._contactContainers(t),e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),this._trigger("sort",t,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(t,n){if(!t)return;e.ui.ddmanager&&!this.options.dropBehaviour&&e.ui.ddmanager.drop(this,t);if(this.options.revert){var r=this,i=this.placeholder.offset();this.reverting=!0,e(this.helper).animate({left:i.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:i.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){r._clear(t)})}else this._clear(t,n);return!1},cancel:function(){if(this.dragging){this._mouseUp({target:null}),this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var t=this.containers.length-1;t>=0;t--)this.containers[t]._trigger("deactivate",null,this._uiHash(this)),this.containers[t].containerCache.over&&(this.containers[t]._trigger("out",null,this._uiHash(this)),this.containers[t].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),e.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?e(this.domPosition.prev).after(this.currentItem):e(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(t){var n=this._getItemsAsjQuery(t&&t.connected),r=[];return t=t||{},e(n).each(function(){var n=(e(t.item||this).attr(t.attribute||"id")||"").match(t.expression||/(.+)[-=_](.+)/);n&&r.push((t.key||n[1]+"[]")+"="+(t.key&&t.expression?n[1]:n[2]))}),!r.length&&t.key&&r.push(t.key+"="),r.join("&")},toArray:function(t){var n=this._getItemsAsjQuery(t&&t.connected),r=[];return t=t||{},n.each(function(){r.push(e(t.item||this).attr(t.attribute||"id")||"")}),r},_intersectsWith:function(e){var t=this.positionAbs.left,n=t+this.helperProportions.width,r=this.positionAbs.top,i=r+this.helperProportions.height,s=e.left,o=s+e.width,u=e.top,a=u+e.height,f=this.offset.click.top,l=this.offset.click.left,c=r+f>u&&r+f<a&&t+l>s&&t+l<o;return this.options.tolerance=="pointer"||this.options.forcePointerForContainers||this.options.tolerance!="pointer"&&this.helperProportions[this.floating?"width":"height"]>e[this.floating?"width":"height"]?c:s<t+this.helperProportions.width/2&&n-this.helperProportions.width/2<o&&u<r+this.helperProportions.height/2&&i-this.helperProportions.height/2<a},_intersectsWithPointer:function(t){var n=this.options.axis==="x"||e.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,t.top,t.height),r=this.options.axis==="y"||e.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,t.left,t.width),i=n&&r,s=this._getDragVerticalDirection(),o=this._getDragHorizontalDirection();return i?this.floating?o&&o=="right"||s=="down"?2:1:s&&(s=="down"?2:1):!1},_intersectsWithSides:function(t){var n=e.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,t.top+t.height/2,t.height),r=e.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,t.left+t.width/2,t.width),i=this._getDragVerticalDirection(),s=this._getDragHorizontalDirection();return this.floating&&s?s=="right"&&r||s=="left"&&!r:i&&(i=="down"&&n||i=="up"&&!n)},_getDragVerticalDirection:function(){var e=this.positionAbs.top-this.lastPositionAbs.top;return e!=0&&(e>0?"down":"up")},_getDragHorizontalDirection:function(){var e=this.positionAbs.left-this.lastPositionAbs.left;return e!=0&&(e>0?"right":"left")},refresh:function(e){return this._refreshItems(e),this.refreshPositions(),this},_connectWith:function(){var e=this.options;return e.connectWith.constructor==String?[e.connectWith]:e.connectWith},_getItemsAsjQuery:function(t){var n=[],r=[],i=this._connectWith();if(i&&t)for(var s=i.length-1;s>=0;s--){var o=e(i[s]);for(var u=o.length-1;u>=0;u--){var a=e.data(o[u],this.widgetName);a&&a!=this&&!a.options.disabled&&r.push([e.isFunction(a.options.items)?a.options.items.call(a.element):e(a.options.items,a.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),a])}}r.push([e.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):e(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]);for(var s=r.length-1;s>=0;s--)r[s][0].each(function(){n.push(this)});return e(n)},_removeCurrentsFromItems:function(){var t=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=e.grep(this.items,function(e){for(var n=0;n<t.length;n++)if(t[n]==e.item[0])return!1;return!0})},_refreshItems:function(t){this.items=[],this.containers=[this];var n=this.items,r=[[e.isFunction(this.options.items)?this.options.items.call(this.element[0],t,{item:this.currentItem}):e(this.options.items,this.element),this]],i=this._connectWith();if(i&&this.ready)for(var s=i.length-1;s>=0;s--){var o=e(i[s]);for(var u=o.length-1;u>=0;u--){var a=e.data(o[u],this.widgetName);a&&a!=this&&!a.options.disabled&&(r.push([e.isFunction(a.options.items)?a.options.items.call(a.element[0],t,{item:this.currentItem}):e(a.options.items,a.element),a]),this.containers.push(a))}}for(var s=r.length-1;s>=0;s--){var f=r[s][1],l=r[s][0];for(var u=0,c=l.length;u<c;u++){var h=e(l[u]);h.data(this.widgetName+"-item",f),n.push({item:h,instance:f,width:0,height:0,left:0,top:0})}}},refreshPositions:function(t){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());for(var n=this.items.length-1;n>=0;n--){var r=this.items[n];if(r.instance!=this.currentContainer&&this.currentContainer&&r.item[0]!=this.currentItem[0])continue;var i=this.options.toleranceElement?e(this.options.toleranceElement,r.item):r.item;t||(r.width=i.outerWidth(),r.height=i.outerHeight());var s=i.offset();r.left=s.left,r.top=s.top}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(var n=this.containers.length-1;n>=0;n--){var s=this.containers[n].element.offset();this.containers[n].containerCache.left=s.left,this.containers[n].containerCache.top=s.top,this.containers[n].containerCache.width=this.containers[n].element.outerWidth(),this.containers[n].containerCache.height=this.containers[n].element.outerHeight()}return this},_createPlaceholder:function(t){t=t||this;var n=t.options;if(!n.placeholder||n.placeholder.constructor==String){var r=n.placeholder;n.placeholder={element:function(){var n=e(document.createElement(t.currentItem[0].nodeName)).addClass(r||t.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];return r||(n.style.visibility="hidden"),n},update:function(e,i){if(r&&!n.forcePlaceholderSize)return;i.height()||i.height(t.currentItem.innerHeight()-parseInt(t.currentItem.css("paddingTop")||0,10)-parseInt(t.currentItem.css("paddingBottom")||0,10)),i.width()||i.width(t.currentItem.innerWidth()-parseInt(t.currentItem.css("paddingLeft")||0,10)-parseInt(t.currentItem.css("paddingRight")||0,10))}}}t.placeholder=e(n.placeholder.element.call(t.element,t.currentItem)),t.currentItem.after(t.placeholder),n.placeholder.update(t,t.placeholder)},_contactContainers:function(t){var n=null,r=null;for(var i=this.containers.length-1;i>=0;i--){if(e.contains(this.currentItem[0],this.containers[i].element[0]))continue;if(this._intersectsWith(this.containers[i].containerCache)){if(n&&e.contains(this.containers[i].element[0],n.element[0]))continue;n=this.containers[i],r=i}else this.containers[i].containerCache.over&&(this.containers[i]._trigger("out",t,this._uiHash(this)),this.containers[i].containerCache.over=0)}if(!n)return;if(this.containers.length===1)this.containers[r]._trigger("over",t,this._uiHash(this)),this.containers[r].containerCache.over=1;else{var s=1e4,o=null,u=this.containers[r].floating?"left":"top",a=this.containers[r].floating?"width":"height",f=this.positionAbs[u]+this.offset.click[u];for(var l=this.items.length-1;l>=0;l--){if(!e.contains(this.containers[r].element[0],this.items[l].item[0]))continue;if(this.items[l].item[0]==this.currentItem[0])continue;var c=this.items[l].item.offset()[u],h=!1;Math.abs(c-f)>Math.abs(c+this.items[l][a]-f)&&(h=!0,c+=this.items[l][a]),Math.abs(c-f)<s&&(s=Math.abs(c-f),o=this.items[l],this.direction=h?"up":"down")}if(!o&&!this.options.dropOnEmpty)return;this.currentContainer=this.containers[r],o?this._rearrange(t,o,null,!0):this._rearrange(t,null,this.containers[r].element,!0),this._trigger("change",t,this._uiHash()),this.containers[r]._trigger("change",t,this._uiHash(this)),this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[r]._trigger("over",t,this._uiHash(this)),this.containers[r].containerCache.over=1}},_createHelper:function(t){var n=this.options,r=e.isFunction(n.helper)?e(n.helper.apply(this.element[0],[t,this.currentItem])):n.helper=="clone"?this.currentItem.clone():this.currentItem;return r.parents("body").length||e(n.appendTo!="parent"?n.appendTo:this.currentItem[0].parentNode)[0].appendChild(r[0]),r[0]==this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(r[0].style.width==""||n.forceHelperSize)&&r.width(this.currentItem.width()),(r[0].style.height==""||n.forceHelperSize)&&r.height(this.currentItem.height()),r},_adjustOffsetFromHelper:function(t){typeof t=="string"&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&e.ui.ie)t={top:0,left:0};return{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var e=this.currentItem.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t=this.options;t.containment=="parent"&&(t.containment=this.helper[0].parentNode);if(t.containment=="document"||t.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,e(t.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(e(t.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(t.containment)){var n=e(t.containment)[0],r=e(t.containment).offset(),i=e(n).css("overflow")!="hidden";this.containment=[r.left+(parseInt(e(n).css("borderLeftWidth"),10)||0)+(parseInt(e(n).css("paddingLeft"),10)||0)-this.margins.left,r.top+(parseInt(e(n).css("borderTopWidth"),10)||0)+(parseInt(e(n).css("paddingTop"),10)||0)-this.margins.top,r.left+(i?Math.max(n.scrollWidth,n.offsetWidth):n.offsetWidth)-(parseInt(e(n).css("borderLeftWidth"),10)||0)-(parseInt(e(n).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,r.top+(i?Math.max(n.scrollHeight,n.offsetHeight):n.offsetHeight)-(parseInt(e(n).css("borderTopWidth"),10)||0)-(parseInt(e(n).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}},_convertPositionTo:function(t,n){n||(n=this.position);var r=t=="absolute"?1:-1,i=this.options,s=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,o=/(html|body)/i.test(s[0].tagName);return{top:n.top+this.offset.relative.top*r+this.offset.parent.top*r-(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():o?0:s.scrollTop())*r,left:n.left+this.offset.relative.left*r+this.offset.parent.left*r-(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():o?0:s.scrollLeft())*r}},_generatePosition:function(t){var n=this.options,r=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,i=/(html|body)/i.test(r[0].tagName);this.cssPosition=="relative"&&(this.scrollParent[0]==document||this.scrollParent[0]==this.offsetParent[0])&&(this.offset.relative=this._getRelativeOffset());var s=t.pageX,o=t.pageY;if(this.originalPosition){this.containment&&(t.pageX-this.offset.click.left<this.containment[0]&&(s=this.containment[0]+this.offset.click.left),t.pageY-this.offset.click.top<this.containment[1]&&(o=this.containment[1]+this.offset.click.top),t.pageX-this.offset.click.left>this.containment[2]&&(s=this.containment[2]+this.offset.click.left),t.pageY-this.offset.click.top>this.containment[3]&&(o=this.containment[3]+this.offset.click.top));if(n.grid){var u=this.originalPageY+Math.round((o-this.originalPageY)/n.grid[1])*n.grid[1];o=this.containment?u-this.offset.click.top<this.containment[1]||u-this.offset.click.top>this.containment[3]?u-this.offset.click.top<this.containment[1]?u+n.grid[1]:u-n.grid[1]:u:u;var a=this.originalPageX+Math.round((s-this.originalPageX)/n.grid[0])*n.grid[0];s=this.containment?a-this.offset.click.left<this.containment[0]||a-this.offset.click.left>this.containment[2]?a-this.offset.click.left<this.containment[0]?a+n.grid[0]:a-n.grid[0]:a:a}}return{top:o-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():i?0:r.scrollTop()),left:s-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():i?0:r.scrollLeft())}},_rearrange:function(e,t,n,r){n?n[0].appendChild(this.placeholder[0]):t.item[0].parentNode.insertBefore(this.placeholder[0],this.direction=="down"?t.item[0]:t.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var i=this.counter;this._delay(function(){i==this.counter&&this.refreshPositions(!r)})},_clear:function(t,n){this.reverting=!1;var r=[];!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null;if(this.helper[0]==this.currentItem[0]){for(var i in this._storedCSS)if(this._storedCSS[i]=="auto"||this._storedCSS[i]=="static")this._storedCSS[i]="";this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();this.fromOutside&&!n&&r.push(function(e){this._trigger("receive",e,this._uiHash(this.fromOutside))}),(this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!n&&r.push(function(e){this._trigger("update",e,this._uiHash())}),this!==this.currentContainer&&(n||(r.push(function(e){this._trigger("remove",e,this._uiHash())}),r.push(function(e){return function(t){e._trigger("receive",t,this._uiHash(this))}}.call(this,this.currentContainer)),r.push(function(e){return function(t){e._trigger("update",t,this._uiHash(this))}}.call(this,this.currentContainer))));for(var i=this.containers.length-1;i>=0;i--)n||r.push(function(e){return function(t){e._trigger("deactivate",t,this._uiHash(this))}}.call(this,this.containers[i])),this.containers[i].containerCache.over&&(r.push(function(e){return function(t){e._trigger("out",t,this._uiHash(this))}}.call(this,this.containers[i])),this.containers[i].containerCache.over=0);this._storedCursor&&e("body").css("cursor",this._storedCursor),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex),this.dragging=!1;if(this.cancelHelperRemoval){if(!n){this._trigger("beforeStop",t,this._uiHash());for(var i=0;i<r.length;i++)r[i].call(this,t);this._trigger("stop",t,this._uiHash())}return this.fromOutside=!1,!1}n||this._trigger("beforeStop",t,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.helper[0]!=this.currentItem[0]&&this.helper.remove(),this.helper=null;if(!n){for(var i=0;i<r.length;i++)r[i].call(this,t);this._trigger("stop",t,this._uiHash())}return this.fromOutside=!1,!0},_trigger:function(){e.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(t){var n=t||this;return{helper:n.helper,placeholder:n.placeholder||e([]),position:n.position,originalPosition:n.originalPosition,offset:n.positionAbs,item:n.currentItem,sender:t?t.element:null}}})})(jQuery);(function(e,t){var n=0;e.widget("ui.autocomplete",{version:"1.9.2",defaultElement:"<input>",options:{appendTo:"body",autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},pending:0,_create:function(){var t,n,r;this.isMultiLine=this._isMultiLine(),this.valueMethod=this.element[this.element.is("input,textarea")?"val":"text"],this.isNewMenu=!0,this.element.addClass("ui-autocomplete-input").attr("autocomplete","off"),this._on(this.element,{keydown:function(i){if(this.element.prop("readOnly")){t=!0,r=!0,n=!0;return}t=!1,r=!1,n=!1;var s=e.ui.keyCode;switch(i.keyCode){case s.PAGE_UP:t=!0,this._move("previousPage",i);break;case s.PAGE_DOWN:t=!0,this._move("nextPage",i);break;case s.UP:t=!0,this._keyEvent("previous",i);break;case s.DOWN:t=!0,this._keyEvent("next",i);break;case s.ENTER:case s.NUMPAD_ENTER:this.menu.active&&(t=!0,i.preventDefault(),this.menu.select(i));break;case s.TAB:this.menu.active&&this.menu.select(i);break;case s.ESCAPE:this.menu.element.is(":visible")&&(this._value(this.term),this.close(i),i.preventDefault());break;default:n=!0,this._searchTimeout(i)}},keypress:function(r){if(t){t=!1,r.preventDefault();return}if(n)return;var i=e.ui.keyCode;switch(r.keyCode){case i.PAGE_UP:this._move("previousPage",r);break;case i.PAGE_DOWN:this._move("nextPage",r);break;case i.UP:this._keyEvent("previous",r);break;case i.DOWN:this._keyEvent("next",r)}},input:function(e){if(r){r=!1,e.preventDefault();return}this._searchTimeout(e)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(e){if(this.cancelBlur){delete this.cancelBlur;return}clearTimeout(this.searching),this.close(e),this._change(e)}}),this._initSource(),this.menu=e("<ul>").addClass("ui-autocomplete").appendTo(this.document.find(this.options.appendTo||"body")[0]).menu({input:e(),role:null}).zIndex(this.element.zIndex()+1).hide().data("menu"),this._on(this.menu.element,{mousedown:function(t){t.preventDefault(),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur});var n=this.menu.element[0];e(t.target).closest(".ui-menu-item").length||this._delay(function(){var t=this;this.document.one("mousedown",function(r){r.target!==t.element[0]&&r.target!==n&&!e.contains(n,r.target)&&t.close()})})},menufocus:function(t,n){if(this.isNewMenu){this.isNewMenu=!1;if(t.originalEvent&&/^mouse/.test(t.originalEvent.type)){this.menu.blur(),this.document.one("mousemove",function(){e(t.target).trigger(t.originalEvent)});return}}var r=n.item.data("ui-autocomplete-item")||n.item.data("item.autocomplete");!1!==this._trigger("focus",t,{item:r})?t.originalEvent&&/^key/.test(t.originalEvent.type)&&this._value(r.value):this.liveRegion.text(r.value)},menuselect:function(e,t){var n=t.item.data("ui-autocomplete-item")||t.item.data("item.autocomplete"),r=this.previous;this.element[0]!==this.document[0].activeElement&&(this.element.focus(),this.previous=r,this._delay(function(){this.previous=r,this.selectedItem=n})),!1!==this._trigger("select",e,{item:n})&&this._value(n.value),this.term=this._value(),this.close(e),this.selectedItem=n}}),this.liveRegion=e("<span>",{role:"status","aria-live":"polite"}).addClass("ui-helper-hidden-accessible").insertAfter(this.element),e.fn.bgiframe&&this.menu.element.bgiframe(),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_destroy:function(){clearTimeout(this.searching),this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete"),this.menu.element.remove(),this.liveRegion.remove()},_setOption:function(e,t){this._super(e,t),e==="source"&&this._initSource(),e==="appendTo"&&this.menu.element.appendTo(this.document.find(t||"body")[0]),e==="disabled"&&t&&this.xhr&&this.xhr.abort()},_isMultiLine:function(){return this.element.is("textarea")?!0:this.element.is("input")?!1:this.element.prop("isContentEditable")},_initSource:function(){var t,n,r=this;e.isArray(this.options.source)?(t=this.options.source,this.source=function(n,r){r(e.ui.autocomplete.filter(t,n.term))}):typeof this.options.source=="string"?(n=this.options.source,this.source=function(t,i){r.xhr&&r.xhr.abort(),r.xhr=e.ajax({url:n,data:t,dataType:"json",success:function(e){i(e)},error:function(){i([])}})}):this.source=this.options.source},_searchTimeout:function(e){clearTimeout(this.searching),this.searching=this._delay(function(){this.term!==this._value()&&(this.selectedItem=null,this.search(null,e))},this.options.delay)},search:function(e,t){e=e!=null?e:this._value(),this.term=this._value();if(e.length<this.options.minLength)return this.close(t);if(this._trigger("search",t)===!1)return;return this._search(e)},_search:function(e){this.pending++,this.element.addClass("ui-autocomplete-loading"),this.cancelSearch=!1,this.source({term:e},this._response())},_response:function(){var e=this,t=++n;return function(r){t===n&&e.__response(r),e.pending--,e.pending||e.element.removeClass("ui-autocomplete-loading")}},__response:function(e){e&&(e=this._normalize(e)),this._trigger("response",null,{content:e}),!this.options.disabled&&e&&e.length&&!this.cancelSearch?(this._suggest(e),this._trigger("open")):this._close()},close:function(e){this.cancelSearch=!0,this._close(e)},_close:function(e){this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.blur(),this.isNewMenu=!0,this._trigger("close",e))},_change:function(e){this.previous!==this._value()&&this._trigger("change",e,{item:this.selectedItem})},_normalize:function(t){return t.length&&t[0].label&&t[0].value?t:e.map(t,function(t){return typeof t=="string"?{label:t,value:t}:e.extend({label:t.label||t.value,value:t.value||t.label},t)})},_suggest:function(t){var n=this.menu.element.empty().zIndex(this.element.zIndex()+1);this._renderMenu(n,t),this.menu.refresh(),n.show(),this._resizeMenu(),n.position(e.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next()},_resizeMenu:function(){var e=this.menu.element;e.outerWidth(Math.max(e.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(t,n){var r=this;e.each(n,function(e,n){r._renderItemData(t,n)})},_renderItemData:function(e,t){return this._renderItem(e,t).data("ui-autocomplete-item",t)},_renderItem:function(t,n){return e("<li>").append(e("<a>").text(n.label)).appendTo(t)},_move:function(e,t){if(!this.menu.element.is(":visible")){this.search(null,t);return}if(this.menu.isFirstItem()&&/^previous/.test(e)||this.menu.isLastItem()&&/^next/.test(e)){this._value(this.term),this.menu.blur();return}this.menu[e](t)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(e,t){if(!this.isMultiLine||this.menu.element.is(":visible"))this._move(e,t),t.preventDefault()}}),e.extend(e.ui.autocomplete,{escapeRegex:function(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(t,n){var r=new RegExp(e.ui.autocomplete.escapeRegex(n),"i");return e.grep(t,function(e){return r.test(e.label||e.value||e)})}}),e.widget("ui.autocomplete",e.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(e){return e+(e>1?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(e){var t;this._superApply(arguments);if(this.options.disabled||this.cancelSearch)return;e&&e.length?t=this.options.messages.results(e.length):t=this.options.messages.noResults,this.liveRegion.text(t)}})})(jQuery);(function($,undefined){function Datepicker(){this.debug=!1,this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},$.extend(this._defaults,this.regional[""]),this.dpDiv=bindHover($('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}function bindHover(e){var t="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return e.delegate(t,"mouseout",function(){$(this).removeClass("ui-state-hover"),this.className.indexOf("ui-datepicker-prev")!=-1&&$(this).removeClass("ui-datepicker-prev-hover"),this.className.indexOf("ui-datepicker-next")!=-1&&$(this).removeClass("ui-datepicker-next-hover")}).delegate(t,"mouseover",function(){$.datepicker._isDisabledDatepicker(instActive.inline?e.parent()[0]:instActive.input[0])||($(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),$(this).addClass("ui-state-hover"),this.className.indexOf("ui-datepicker-prev")!=-1&&$(this).addClass("ui-datepicker-prev-hover"),this.className.indexOf("ui-datepicker-next")!=-1&&$(this).addClass("ui-datepicker-next-hover"))})}function extendRemove(e,t){$.extend(e,t);for(var n in t)if(t[n]==null||t[n]==undefined)e[n]=t[n];return e}$.extend($.ui,{datepicker:{version:"1.9.2"}});var PROP_NAME="datepicker",dpuuid=(new Date).getTime(),instActive;$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(e){return extendRemove(this._defaults,e||{}),this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase(),inline=nodeName=="div"||nodeName=="span";target.id||(this.uuid+=1,target.id="dp"+this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{}),nodeName=="input"?this._connectDatepicker(target,inst):inline&&this._inlineDatepicker(target,inst)},_newInst:function(e,t){var n=e[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1");return{id:n,input:e,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:t,dpDiv:t?bindHover($('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')):this.dpDiv}},_connectDatepicker:function(e,t){var n=$(e);t.append=$([]),t.trigger=$([]);if(n.hasClass(this.markerClassName))return;this._attachments(n,t),n.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function(e,n,r){t.settings[n]=r}).bind("getData.datepicker",function(e,n){return this._get(t,n)}),this._autoSize(t),$.data(e,PROP_NAME,t),t.settings.disabled&&this._disableDatepicker(e)},_attachments:function(e,t){var n=this._get(t,"appendText"),r=this._get(t,"isRTL");t.append&&t.append.remove(),n&&(t.append=$('<span class="'+this._appendClass+'">'+n+"</span>"),e[r?"before":"after"](t.append)),e.unbind("focus",this._showDatepicker),t.trigger&&t.trigger.remove();var i=this._get(t,"showOn");(i=="focus"||i=="both")&&e.focus(this._showDatepicker);if(i=="button"||i=="both"){var s=this._get(t,"buttonText"),o=this._get(t,"buttonImage");t.trigger=$(this._get(t,"buttonImageOnly")?$("<img/>").addClass(this._triggerClass).attr({src:o,alt:s,title:s}):$('<button type="button"></button>').addClass(this._triggerClass).html(o==""?s:$("<img/>").attr({src:o,alt:s,title:s}))),e[r?"before":"after"](t.trigger),t.trigger.click(function(){return $.datepicker._datepickerShowing&&$.datepicker._lastInput==e[0]?$.datepicker._hideDatepicker():$.datepicker._datepickerShowing&&$.datepicker._lastInput!=e[0]?($.datepicker._hideDatepicker(),$.datepicker._showDatepicker(e[0])):$.datepicker._showDatepicker(e[0]),!1})}},_autoSize:function(e){if(this._get(e,"autoSize")&&!e.inline){var t=new Date(2009,11,20),n=this._get(e,"dateFormat");if(n.match(/[DM]/)){var r=function(e){var t=0,n=0;for(var r=0;r<e.length;r++)e[r].length>t&&(t=e[r].length,n=r);return n};t.setMonth(r(this._get(e,n.match(/MM/)?"monthNames":"monthNamesShort"))),t.setDate(r(this._get(e,n.match(/DD/)?"dayNames":"dayNamesShort"))+20-t.getDay())}e.input.attr("size",this._formatDate(e,t).length)}},_inlineDatepicker:function(e,t){var n=$(e);if(n.hasClass(this.markerClassName))return;n.addClass(this.markerClassName).append(t.dpDiv).bind("setData.datepicker",function(e,n,r){t.settings[n]=r}).bind("getData.datepicker",function(e,n){return this._get(t,n)}),$.data(e,PROP_NAME,t),this._setDate(t,this._getDefaultDate(t),!0),this._updateDatepicker(t),this._updateAlternate(t),t.settings.disabled&&this._disableDatepicker(e),t.dpDiv.css("display","block")},_dialogDatepicker:function(e,t,n,r,i){var s=this._dialogInst;if(!s){this.uuid+=1;var o="dp"+this.uuid;this._dialogInput=$('<input type="text" id="'+o+'" style="position: absolute; top: -100px; width: 0px;"/>'),this._dialogInput.keydown(this._doKeyDown),$("body").append(this._dialogInput),s=this._dialogInst=this._newInst(this._dialogInput,!1),s.settings={},$.data(this._dialogInput[0],PROP_NAME,s)}extendRemove(s.settings,r||{}),t=t&&t.constructor==Date?this._formatDate(s,t):t,this._dialogInput.val(t),this._pos=i?i.length?i:[i.pageX,i.pageY]:null;if(!this._pos){var u=document.documentElement.clientWidth,a=document.documentElement.clientHeight,f=document.documentElement.scrollLeft||document.body.scrollLeft,l=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[u/2-100+f,a/2-150+l]}return this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),s.settings.onSelect=n,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),$.blockUI&&$.blockUI(this.dpDiv),$.data(this._dialogInput[0],PROP_NAME,s),this},_destroyDatepicker:function(e){var t=$(e),n=$.data(e,PROP_NAME);if(!t.hasClass(this.markerClassName))return;var r=e.nodeName.toLowerCase();$.removeData(e,PROP_NAME),r=="input"?(n.append.remove(),n.trigger.remove(),t.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):(r=="div"||r=="span")&&t.removeClass(this.markerClassName).empty()},_enableDatepicker:function(e){var t=$(e),n=$.data(e,PROP_NAME);if(!t.hasClass(this.markerClassName))return;var r=e.nodeName.toLowerCase();if(r=="input")e.disabled=!1,n.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""});else if(r=="div"||r=="span"){var i=t.children("."+this._inlineClass);i.children().removeClass("ui-state-disabled"),i.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)}this._disabledInputs=$.map(this._disabledInputs,function(t){return t==e?null:t})},_disableDatepicker:function(e){var t=$(e),n=$.data(e,PROP_NAME);if(!t.hasClass(this.markerClassName))return;var r=e.nodeName.toLowerCase();if(r=="input")e.disabled=!0,n.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"});else if(r=="div"||r=="span"){var i=t.children("."+this._inlineClass);i.children().addClass("ui-state-disabled"),i.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)}this._disabledInputs=$.map(this._disabledInputs,function(t){return t==e?null:t}),this._disabledInputs[this._disabledInputs.length]=e},_isDisabledDatepicker:function(e){if(!e)return!1;for(var t=0;t<this._disabledInputs.length;t++)if(this._disabledInputs[t]==e)return!0;return!1},_getInst:function(e){try{return $.data(e,PROP_NAME)}catch(t){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(e,t,n){var r=this._getInst(e);if(arguments.length==2&&typeof t=="string")return t=="defaults"?$.extend({},$.datepicker._defaults):r?t=="all"?$.extend({},r.settings):this._get(r,t):null;var i=t||{};typeof t=="string"&&(i={},i[t]=n);if(r){this._curInst==r&&this._hideDatepicker();var s=this._getDateDatepicker(e,!0),o=this._getMinMaxDate(r,"min"),u=this._getMinMaxDate(r,"max");extendRemove(r.settings,i),o!==null&&i.dateFormat!==undefined&&i.minDate===undefined&&(r.settings.minDate=this._formatDate(r,o)),u!==null&&i.dateFormat!==undefined&&i.maxDate===undefined&&(r.settings.maxDate=this._formatDate(r,u)),this._attachments($(e),r),this._autoSize(r),this._setDate(r,s),this._updateAlternate(r),this._updateDatepicker(r)}},_changeDatepicker:function(e,t,n){this._optionDatepicker(e,t,n)},_refreshDatepicker:function(e){var t=this._getInst(e);t&&this._updateDatepicker(t)},_setDateDatepicker:function(e,t){var n=this._getInst(e);n&&(this._setDate(n,t),this._updateDatepicker(n),this._updateAlternate(n))},_getDateDatepicker:function(e,t){var n=this._getInst(e);return n&&!n.inline&&this._setDateFromField(n,t),n?this._getDate(n):null},_doKeyDown:function(e){var t=$.datepicker._getInst(e.target),n=!0,r=t.dpDiv.is(".ui-datepicker-rtl");t._keyEvent=!0;if($.datepicker._datepickerShowing)switch(e.keyCode){case 9:$.datepicker._hideDatepicker(),n=!1;break;case 13:var i=$("td."+$.datepicker._dayOverClass+":not(."+$.datepicker._currentClass+")",t.dpDiv);i[0]&&$.datepicker._selectDay(e.target,t.selectedMonth,t.selectedYear,i[0]);var s=$.datepicker._get(t,"onSelect");if(s){var o=$.datepicker._formatDate(t);s.apply(t.input?t.input[0]:null,[o,t])}else $.datepicker._hideDatepicker();return!1;case 27:$.datepicker._hideDatepicker();break;case 33:$.datepicker._adjustDate(e.target,e.ctrlKey?-$.datepicker._get(t,"stepBigMonths"):-$.datepicker._get(t,"stepMonths"),"M");break;case 34:$.datepicker._adjustDate(e.target,e.ctrlKey?+$.datepicker._get(t,"stepBigMonths"):+$.datepicker._get(t,"stepMonths"),"M");break;case 35:(e.ctrlKey||e.metaKey)&&$.datepicker._clearDate(e.target),n=e.ctrlKey||e.metaKey;break;case 36:(e.ctrlKey||e.metaKey)&&$.datepicker._gotoToday(e.target),n=e.ctrlKey||e.metaKey;break;case 37:(e.ctrlKey||e.metaKey)&&$.datepicker._adjustDate(e.target,r?1:-1,"D"),n=e.ctrlKey||e.metaKey,e.originalEvent.altKey&&$.datepicker._adjustDate(e.target,e.ctrlKey?-$.datepicker._get(t,"stepBigMonths"):-$.datepicker._get(t,"stepMonths"),"M");break;case 38:(e.ctrlKey||e.metaKey)&&$.datepicker._adjustDate(e.target,-7,"D"),n=e.ctrlKey||e.metaKey;break;case 39:(e.ctrlKey||e.metaKey)&&$.datepicker._adjustDate(e.target,r?-1:1,"D"),n=e.ctrlKey||e.metaKey,e.originalEvent.altKey&&$.datepicker._adjustDate(e.target,e.ctrlKey?+$.datepicker._get(t,"stepBigMonths"):+$.datepicker._get(t,"stepMonths"),"M");break;case 40:(e.ctrlKey||e.metaKey)&&$.datepicker._adjustDate(e.target,7,"D"),n=e.ctrlKey||e.metaKey;break;default:n=!1}else e.keyCode==36&&e.ctrlKey?$.datepicker._showDatepicker(this):n=!1;n&&(e.preventDefault(),e.stopPropagation())},_doKeyPress:function(e){var t=$.datepicker._getInst(e.target);if($.datepicker._get(t,"constrainInput")){var n=$.datepicker._possibleChars($.datepicker._get(t,"dateFormat")),r=String.fromCharCode(e.charCode==undefined?e.keyCode:e.charCode);return e.ctrlKey||e.metaKey||r<" "||!n||n.indexOf(r)>-1}},_doKeyUp:function(e){var t=$.datepicker._getInst(e.target);if(t.input.val()!=t.lastVal)try{var n=$.datepicker.parseDate($.datepicker._get(t,"dateFormat"),t.input?t.input.val():null,$.datepicker._getFormatConfig(t));n&&($.datepicker._setDateFromField(t),$.datepicker._updateAlternate(t),$.datepicker._updateDatepicker(t))}catch(r){$.datepicker.log(r)}return!0},_showDatepicker:function(e){e=e.target||e,e.nodeName.toLowerCase()!="input"&&(e=$("input",e.parentNode)[0]);if($.datepicker._isDisabledDatepicker(e)||$.datepicker._lastInput==e)return;var t=$.datepicker._getInst(e);$.datepicker._curInst&&$.datepicker._curInst!=t&&($.datepicker._curInst.dpDiv.stop(!0,!0),t&&$.datepicker._datepickerShowing&&$.datepicker._hideDatepicker($.datepicker._curInst.input[0]));var n=$.datepicker._get(t,"beforeShow"),r=n?n.apply(e,[e,t]):{};if(r===!1)return;extendRemove(t.settings,r),t.lastVal=null,$.datepicker._lastInput=e,$.datepicker._setDateFromField(t),$.datepicker._inDialog&&(e.value=""),$.datepicker._pos||($.datepicker._pos=$.datepicker._findPos(e),$.datepicker._pos[1]+=e.offsetHeight);var i=!1;$(e).parents().each(function(){return i|=$(this).css("position")=="fixed",!i});var s={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null,t.dpDiv.empty(),t.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.datepicker._updateDatepicker(t),s=$.datepicker._checkOffset(t,s,i),t.dpDiv.css({position:$.datepicker._inDialog&&$.blockUI?"static":i?"fixed":"absolute",display:"none",left:s.left+"px",top:s.top+"px"});if(!t.inline){var o=$.datepicker._get(t,"showAnim"),u=$.datepicker._get(t,"duration"),a=function(){var e=t.dpDiv.find("iframe.ui-datepicker-cover");if(!!e.length){var n=$.datepicker._getBorders(t.dpDiv);e.css({left:-n[0],top:-n[1],width:t.dpDiv.outerWidth(),height:t.dpDiv.outerHeight()})}};t.dpDiv.zIndex($(e).zIndex()+1),$.datepicker._datepickerShowing=!0,$.effects&&($.effects.effect[o]||$.effects[o])?t.dpDiv.show(o,$.datepicker._get(t,"showOptions"),u,a):t.dpDiv[o||"show"](o?u:null,a),(!o||!u)&&a(),t.input.is(":visible")&&!t.input.is(":disabled")&&t.input.focus(),$.datepicker._curInst=t}},_updateDatepicker:function(e){this.maxRows=4;var t=$.datepicker._getBorders(e.dpDiv);instActive=e,e.dpDiv.empty().append(this._generateHTML(e)),this._attachHandlers(e);var n=e.dpDiv.find("iframe.ui-datepicker-cover");!n.length||n.css({left:-t[0],top:-t[1],width:e.dpDiv.outerWidth(),height:e.dpDiv.outerHeight()}),e.dpDiv.find("."+this._dayOverClass+" a").mouseover();var r=this._getNumberOfMonths(e),i=r[1],s=17;e.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),i>1&&e.dpDiv.addClass("ui-datepicker-multi-"+i).css("width",s*i+"em"),e.dpDiv[(r[0]!=1||r[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi"),e.dpDiv[(this._get(e,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),e==$.datepicker._curInst&&$.datepicker._datepickerShowing&&e.input&&e.input.is(":visible")&&!e.input.is(":disabled")&&e.input[0]!=document.activeElement&&e.input.focus();if(e.yearshtml){var o=e.yearshtml;setTimeout(function(){o===e.yearshtml&&e.yearshtml&&e.dpDiv.find("select.ui-datepicker-year:first").replaceWith(e.yearshtml),o=e.yearshtml=null},0)}},_getBorders:function(e){var t=function(e){return{thin:1,medium:2,thick:3}[e]||e};return[parseFloat(t(e.css("border-left-width"))),parseFloat(t(e.css("border-top-width")))]},_checkOffset:function(e,t,n){var r=e.dpDiv.outerWidth(),i=e.dpDiv.outerHeight(),s=e.input?e.input.outerWidth():0,o=e.input?e.input.outerHeight():0,u=document.documentElement.clientWidth+(n?0:$(document).scrollLeft()),a=document.documentElement.clientHeight+(n?0:$(document).scrollTop());return t.left-=this._get(e,"isRTL")?r-s:0,t.left-=n&&t.left==e.input.offset().left?$(document).scrollLeft():0,t.top-=n&&t.top==e.input.offset().top+o?$(document).scrollTop():0,t.left-=Math.min(t.left,t.left+r>u&&u>r?Math.abs(t.left+r-u):0),t.top-=Math.min(t.top,t.top+i>a&&a>i?Math.abs(i+o):0),t},_findPos:function(e){var t=this._getInst(e),n=this._get(t,"isRTL");while(e&&(e.type=="hidden"||e.nodeType!=1||$.expr.filters.hidden(e)))e=e[n?"previousSibling":"nextSibling"];var r=$(e).offset();return[r.left,r.top]},_hideDatepicker:function(e){var t=this._curInst;if(!t||e&&t!=$.data(e,PROP_NAME))return;if(this._datepickerShowing){var n=this._get(t,"showAnim"),r=this._get(t,"duration"),i=function(){$.datepicker._tidyDialog(t)};$.effects&&($.effects.effect[n]||$.effects[n])?t.dpDiv.hide(n,$.datepicker._get(t,"showOptions"),r,i):t.dpDiv[n=="slideDown"?"slideUp":n=="fadeIn"?"fadeOut":"hide"](n?r:null,i),n||i(),this._datepickerShowing=!1;var s=this._get(t,"onClose");s&&s.apply(t.input?t.input[0]:null,[t.input?t.input.val():"",t]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),$.blockUI&&($.unblockUI(),$("body").append(this.dpDiv))),this._inDialog=!1}},_tidyDialog:function(e){e.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(e){if(!$.datepicker._curInst)return;var t=$(e.target),n=$.datepicker._getInst(t[0]);(t[0].id!=$.datepicker._mainDivId&&t.parents("#"+$.datepicker._mainDivId).length==0&&!t.hasClass($.datepicker.markerClassName)&&!t.closest("."+$.datepicker._triggerClass).length&&$.datepicker._datepickerShowing&&(!$.datepicker._inDialog||!$.blockUI)||t.hasClass($.datepicker.markerClassName)&&$.datepicker._curInst!=n)&&$.datepicker._hideDatepicker()},_adjustDate:function(e,t,n){var r=$(e),i=this._getInst(r[0]);if(this._isDisabledDatepicker(r[0]))return;this._adjustInstDate(i,t+(n=="M"?this._get(i,"showCurrentAtPos"):0),n),this._updateDatepicker(i)},_gotoToday:function(e){var t=$(e),n=this._getInst(t[0]);if(this._get(n,"gotoCurrent")&&n.currentDay)n.selectedDay=n.currentDay,n.drawMonth=n.selectedMonth=n.currentMonth,n.drawYear=n.selectedYear=n.currentYear;else{var r=new Date;n.selectedDay=r.getDate(),n.drawMonth=n.selectedMonth=r.getMonth(),n.drawYear=n.selectedYear=r.getFullYear()}this._notifyChange(n),this._adjustDate(t)},_selectMonthYear:function(e,t,n){var r=$(e),i=this._getInst(r[0]);i["selected"+(n=="M"?"Month":"Year")]=i["draw"+(n=="M"?"Month":"Year")]=parseInt(t.options[t.selectedIndex].value,10),this._notifyChange(i),this._adjustDate(r)},_selectDay:function(e,t,n,r){var i=$(e);if($(r).hasClass(this._unselectableClass)||this._isDisabledDatepicker(i[0]))return;var s=this._getInst(i[0]);s.selectedDay=s.currentDay=$("a",r).html(),s.selectedMonth=s.currentMonth=t,s.selectedYear=s.currentYear=n,this._selectDate(e,this._formatDate(s,s.currentDay,s.currentMonth,s.currentYear))},_clearDate:function(e){var t=$(e),n=this._getInst(t[0]);this._selectDate(t,"")},_selectDate:function(e,t){var n=$(e),r=this._getInst(n[0]);t=t!=null?t:this._formatDate(r),r.input&&r.input.val(t),this._updateAlternate(r);var i=this._get(r,"onSelect");i?i.apply(r.input?r.input[0]:null,[t,r]):r.input&&r.input.trigger("change"),r.inline?this._updateDatepicker(r):(this._hideDatepicker(),this._lastInput=r.input[0],typeof r.input[0]!="object"&&r.input.focus(),this._lastInput=null)},_updateAlternate:function(e){var t=this._get(e,"altField");if(t){var n=this._get(e,"altFormat")||this._get(e,"dateFormat"),r=this._getDate(e),i=this.formatDate(n,r,this._getFormatConfig(e));$(t).each(function(){$(this).val(i)})}},noWeekends:function(e){var t=e.getDay();return[t>0&&t<6,""]},iso8601Week:function(e){var t=new Date(e.getTime());t.setDate(t.getDate()+4-(t.getDay()||7));var n=t.getTime();return t.setMonth(0),t.setDate(1),Math.floor(Math.round((n-t)/864e5)/7)+1},parseDate:function(e,t,n){if(e==null||t==null)throw"Invalid arguments";t=typeof t=="object"?t.toString():t+"";if(t=="")return null;var r=(n?n.shortYearCutoff:null)||this._defaults.shortYearCutoff;r=typeof r!="string"?r:(new Date).getFullYear()%100+parseInt(r,10);var i=(n?n.dayNamesShort:null)||this._defaults.dayNamesShort,s=(n?n.dayNames:null)||this._defaults.dayNames,o=(n?n.monthNamesShort:null)||this._defaults.monthNamesShort,u=(n?n.monthNames:null)||this._defaults.monthNames,a=-1,f=-1,l=-1,c=-1,h=!1,p=function(t){var n=y+1<e.length&&e.charAt(y+1)==t;return n&&y++,n},d=function(e){var n=p(e),r=e=="@"?14:e=="!"?20:e=="y"&&n?4:e=="o"?3:2,i=new RegExp("^\\d{1,"+r+"}"),s=t.substring(g).match(i);if(!s)throw"Missing number at position "+g;return g+=s[0].length,parseInt(s[0],10)},v=function(e,n,r){var i=$.map(p(e)?r:n,function(e,t){return[[t,e]]}).sort(function(e,t){return-(e[1].length-t[1].length)}),s=-1;$.each(i,function(e,n){var r=n[1];if(t.substr(g,r.length).toLowerCase()==r.toLowerCase())return s=n[0],g+=r.length,!1});if(s!=-1)return s+1;throw"Unknown name at position "+g},m=function(){if(t.charAt(g)!=e.charAt(y))throw"Unexpected literal at position "+g;g++},g=0;for(var y=0;y<e.length;y++)if(h)e.charAt(y)=="'"&&!p("'")?h=!1:m();else switch(e.charAt(y)){case"d":l=d("d");break;case"D":v("D",i,s);break;case"o":c=d("o");break;case"m":f=d("m");break;case"M":f=v("M",o,u);break;case"y":a=d("y");break;case"@":var b=new Date(d("@"));a=b.getFullYear(),f=b.getMonth()+1,l=b.getDate();break;case"!":var b=new Date((d("!")-this._ticksTo1970)/1e4);a=b.getFullYear(),f=b.getMonth()+1,l=b.getDate();break;case"'":p("'")?m():h=!0;break;default:m()}if(g<t.length){var w=t.substr(g);if(!/^\s+/.test(w))throw"Extra/unparsed characters found in date: "+w}a==-1?a=(new Date).getFullYear():a<100&&(a+=(new Date).getFullYear()-(new Date).getFullYear()%100+(a<=r?0:-100));if(c>-1){f=1,l=c;do{var E=this._getDaysInMonth(a,f-1);if(l<=E)break;f++,l-=E}while(!0)}var b=this._daylightSavingAdjust(new Date(a,f-1,l));if(b.getFullYear()!=a||b.getMonth()+1!=f||b.getDate()!=l)throw"Invalid date";return b},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1e7,formatDate:function(e,t,n){if(!t)return"";var r=(n?n.dayNamesShort:null)||this._defaults.dayNamesShort,i=(n?n.dayNames:null)||this._defaults.dayNames,s=(n?n.monthNamesShort:null)||this._defaults.monthNamesShort,o=(n?n.monthNames:null)||this._defaults.monthNames,u=function(t){var n=h+1<e.length&&e.charAt(h+1)==t;return n&&h++,n},a=function(e,t,n){var r=""+t;if(u(e))while(r.length<n)r="0"+r;return r},f=function(e,t,n,r){return u(e)?r[t]:n[t]},l="",c=!1;if(t)for(var h=0;h<e.length;h++)if(c)e.charAt(h)=="'"&&!u("'")?c=!1:l+=e.charAt(h);else switch(e.charAt(h)){case"d":l+=a("d",t.getDate(),2);break;case"D":l+=f("D",t.getDay(),r,i);break;case"o":l+=a("o",Math.round(((new Date(t.getFullYear(),t.getMonth(),t.getDate())).getTime()-(new Date(t.getFullYear(),0,0)).getTime())/864e5),3);break;case"m":l+=a("m",t.getMonth()+1,2);break;case"M":l+=f("M",t.getMonth(),s,o);break;case"y":l+=u("y")?t.getFullYear():(t.getYear()%100<10?"0":"")+t.getYear()%100;break;case"@":l+=t.getTime();break;case"!":l+=t.getTime()*1e4+this._ticksTo1970;break;case"'":u("'")?l+="'":c=!0;break;default:l+=e.charAt(h)}return l},_possibleChars:function(e){var t="",n=!1,r=function(t){var n=i+1<e.length&&e.charAt(i+1)==t;return n&&i++,n};for(var i=0;i<e.length;i++)if(n)e.charAt(i)=="'"&&!r("'")?n=!1:t+=e.charAt(i);else switch(e.charAt(i)){case"d":case"m":case"y":case"@":t+="0123456789";break;case"D":case"M":return null;case"'":r("'")?t+="'":n=!0;break;default:t+=e.charAt(i)}return t},_get:function(e,t){return e.settings[t]!==undefined?e.settings[t]:this._defaults[t]},_setDateFromField:function(e,t){if(e.input.val()==e.lastVal)return;var n=this._get(e,"dateFormat"),r=e.lastVal=e.input?e.input.val():null,i,s;i=s=this._getDefaultDate(e);var o=this._getFormatConfig(e);try{i=this.parseDate(n,r,o)||s}catch(u){this.log(u),r=t?"":r}e.selectedDay=i.getDate(),e.drawMonth=e.selectedMonth=i.getMonth(),e.drawYear=e.selectedYear=i.getFullYear(),e.currentDay=r?i.getDate():0,e.currentMonth=r?i.getMonth():0,e.currentYear=r?i.getFullYear():0,this._adjustInstDate(e)},_getDefaultDate:function(e){return this._restrictMinMax(e,this._determineDate(e,this._get(e,"defaultDate"),new Date))},_determineDate:function(e,t,n){var r=function(e){var t=new Date;return t.setDate(t.getDate()+e),t},i=function(t){try{return $.datepicker.parseDate($.datepicker._get(e,"dateFormat"),t,$.datepicker._getFormatConfig(e))}catch(n){}var r=(t.toLowerCase().match(/^c/)?$.datepicker._getDate(e):null)||new Date,i=r.getFullYear(),s=r.getMonth(),o=r.getDate(),u=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,a=u.exec(t);while(a){switch(a[2]||"d"){case"d":case"D":o+=parseInt(a[1],10);break;case"w":case"W":o+=parseInt(a[1],10)*7;break;case"m":case"M":s+=parseInt(a[1],10),o=Math.min(o,$.datepicker._getDaysInMonth(i,s));break;case"y":case"Y":i+=parseInt(a[1],10),o=Math.min(o,$.datepicker._getDaysInMonth(i,s))}a=u.exec(t)}return new Date(i,s,o)},s=t==null||t===""?n:typeof t=="string"?i(t):typeof t=="number"?isNaN(t)?n:r(t):new Date(t.getTime());return s=s&&s.toString()=="Invalid Date"?n:s,s&&(s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0)),this._daylightSavingAdjust(s)},_daylightSavingAdjust:function(e){return e?(e.setHours(e.getHours()>12?e.getHours()+2:0),e):null},_setDate:function(e,t,n){var r=!t,i=e.selectedMonth,s=e.selectedYear,o=this._restrictMinMax(e,this._determineDate(e,t,new Date));e.selectedDay=e.currentDay=o.getDate(),e.drawMonth=e.selectedMonth=e.currentMonth=o.getMonth(),e.drawYear=e.selectedYear=e.currentYear=o.getFullYear(),(i!=e.selectedMonth||s!=e.selectedYear)&&!n&&this._notifyChange(e),this._adjustInstDate(e),e.input&&e.input.val(r?"":this._formatDate(e))},_getDate:function(e){var t=!e.currentYear||e.input&&e.input.val()==""?null:this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return t},_attachHandlers:function(e){var t=this._get(e,"stepMonths"),n="#"+e.id.replace(/\\\\/g,"\\");e.dpDiv.find("[data-handler]").map(function(){var e={prev:function(){window["DP_jQuery_"+dpuuid].datepicker._adjustDate(n,-t,"M")},next:function(){window["DP_jQuery_"+dpuuid].datepicker._adjustDate(n,+t,"M")},hide:function(){window["DP_jQuery_"+dpuuid].datepicker._hideDatepicker()},today:function(){window["DP_jQuery_"+dpuuid].datepicker._gotoToday(n)},selectDay:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectDay(n,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectMonthYear(n,this,"M"),!1},selectYear:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectMonthYear(n,this,"Y"),!1}};$(this).bind(this.getAttribute("data-event"),e[this.getAttribute("data-handler")])})},_generateHTML:function(e){var t=new Date;t=this._daylightSavingAdjust(new Date(t.getFullYear(),t.getMonth(),t.getDate()));var n=this._get(e,"isRTL"),r=this._get(e,"showButtonPanel"),i=this._get(e,"hideIfNoPrevNext"),s=this._get(e,"navigationAsDateFormat"),o=this._getNumberOfMonths(e),u=this._get(e,"showCurrentAtPos"),a=this._get(e,"stepMonths"),f=o[0]!=1||o[1]!=1,l=this._daylightSavingAdjust(e.currentDay?new Date(e.currentYear,e.currentMonth,e.currentDay):new Date(9999,9,9)),c=this._getMinMaxDate(e,"min"),h=this._getMinMaxDate(e,"max"),p=e.drawMonth-u,d=e.drawYear;p<0&&(p+=12,d--);if(h){var v=this._daylightSavingAdjust(new Date(h.getFullYear(),h.getMonth()-o[0]*o[1]+1,h.getDate()));v=c&&v<c?c:v;while(this._daylightSavingAdjust(new Date(d,p,1))>v)p--,p<0&&(p=11,d--)}e.drawMonth=p,e.drawYear=d;var m=this._get(e,"prevText");m=s?this.formatDate(m,this._daylightSavingAdjust(new Date(d,p-a,1)),this._getFormatConfig(e)):m;var g=this._canAdjustMonth(e,-1,d,p)?'<a class="ui-datepicker-prev ui-corner-all" data-handler="prev" data-event="click" title="'+m+'"><span class="ui-icon ui-icon-circle-triangle-'+(n?"e":"w")+'">'+m+"</span></a>":i?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+m+'"><span class="ui-icon ui-icon-circle-triangle-'+(n?"e":"w")+'">'+m+"</span></a>",y=this._get(e,"nextText");y=s?this.formatDate(y,this._daylightSavingAdjust(new Date(d,p+a,1)),this._getFormatConfig(e)):y;var b=this._canAdjustMonth(e,1,d,p)?'<a class="ui-datepicker-next ui-corner-all" data-handler="next" data-event="click" title="'+y+'"><span class="ui-icon ui-icon-circle-triangle-'+(n?"w":"e")+'">'+y+"</span></a>":i?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+y+'"><span class="ui-icon ui-icon-circle-triangle-'+(n?"w":"e")+'">'+y+"</span></a>",w=this._get(e,"currentText"),E=this._get(e,"gotoCurrent")&&e.currentDay?l:t;w=s?this.formatDate(w,E,this._getFormatConfig(e)):w;var S=e.inline?"":'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" data-handler="hide" data-event="click">'+this._get(e,"closeText")+"</button>",x=r?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(n?S:"")+(this._isInRange(e,E)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" data-handler="today" data-event="click">'+w+"</button>":"")+(n?"":S)+"</div>":"",T=parseInt(this._get(e,"firstDay"),10);T=isNaN(T)?0:T;var N=this._get(e,"showWeek"),C=this._get(e,"dayNames"),k=this._get(e,"dayNamesShort"),L=this._get(e,"dayNamesMin"),A=this._get(e,"monthNames"),O=this._get(e,"monthNamesShort"),M=this._get(e,"beforeShowDay"),_=this._get(e,"showOtherMonths"),D=this._get(e,"selectOtherMonths"),P=this._get(e,"calculateWeek")||this.iso8601Week,H=this._getDefaultDate(e),B="";for(var j=0;j<o[0];j++){var F="";this.maxRows=4;for(var I=0;I<o[1];I++){var q=this._daylightSavingAdjust(new Date(d,p,e.selectedDay)),R=" ui-corner-all",U="";if(f){U+='<div class="ui-datepicker-group';if(o[1]>1)switch(I){case 0:U+=" ui-datepicker-group-first",R=" ui-corner-"+(n?"right":"left");break;case o[1]-1:U+=" ui-datepicker-group-last",R=" ui-corner-"+(n?"left":"right");break;default:U+=" ui-datepicker-group-middle",R=""}U+='">'}U+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+R+'">'+(/all|left/.test(R)&&j==0?n?b:g:"")+(/all|right/.test(R)&&j==0?n?g:b:"")+this._generateMonthYearHeader(e,p,d,c,h,j>0||I>0,A,O)+'</div><table class="ui-datepicker-calendar"><thead>'+"<tr>";var z=N?'<th class="ui-datepicker-week-col">'+this._get(e,"weekHeader")+"</th>":"";for(var W=0;W<7;W++){var X=(W+T)%7;z+="<th"+((W+T+6)%7>=5?' class="ui-datepicker-week-end"':"")+">"+'<span title="'+C[X]+'">'+L[X]+"</span></th>"}U+=z+"</tr></thead><tbody>";var V=this._getDaysInMonth(d,p);d==e.selectedYear&&p==e.selectedMonth&&(e.selectedDay=Math.min(e.selectedDay,V));var J=(this._getFirstDayOfMonth(d,p)-T+7)%7,K=Math.ceil((J+V)/7),Q=f?this.maxRows>K?this.maxRows:K:K;this.maxRows=Q;var G=this._daylightSavingAdjust(new Date(d,p,1-J));for(var Y=0;Y<Q;Y++){U+="<tr>";var Z=N?'<td class="ui-datepicker-week-col">'+this._get(e,"calculateWeek")(G)+"</td>":"";for(var W=0;W<7;W++){var et=M?M.apply(e.input?e.input[0]:null,[G]):[!0,""],tt=G.getMonth()!=p,nt=tt&&!D||!et[0]||c&&G<c||h&&G>h;Z+='<td class="'+((W+T+6)%7>=5?" ui-datepicker-week-end":"")+(tt?" ui-datepicker-other-month":"")+(G.getTime()==q.getTime()&&p==e.selectedMonth&&e._keyEvent||H.getTime()==G.getTime()&&H.getTime()==q.getTime()?" "+this._dayOverClass:"")+(nt?" "+this._unselectableClass+" ui-state-disabled":"")+(tt&&!_?"":" "+et[1]+(G.getTime()==l.getTime()?" "+this._currentClass:"")+(G.getTime()==t.getTime()?" ui-datepicker-today":""))+'"'+((!tt||_)&&et[2]?' title="'+et[2]+'"':"")+(nt?"":' data-handler="selectDay" data-event="click" data-month="'+G.getMonth()+'" data-year="'+G.getFullYear()+'"')+">"+(tt&&!_?"&#xa0;":nt?'<span class="ui-state-default">'+G.getDate()+"</span>":'<a class="ui-state-default'+(G.getTime()==t.getTime()?" ui-state-highlight":"")+(G.getTime()==l.getTime()?" ui-state-active":"")+(tt?" ui-priority-secondary":"")+'" href="#">'+G.getDate()+"</a>")+"</td>",G.setDate(G.getDate()+1),G=this._daylightSavingAdjust(G)}U+=Z+"</tr>"}p++,p>11&&(p=0,d++),U+="</tbody></table>"+(f?"</div>"+(o[0]>0&&I==o[1]-1?'<div class="ui-datepicker-row-break"></div>':""):""),F+=U}B+=F}return B+=x+($.ui.ie6&&!e.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':""),e._keyEvent=!1,B},_generateMonthYearHeader:function(e,t,n,r,i,s,o,u){var a=this._get(e,"changeMonth"),f=this._get(e,"changeYear"),l=this._get(e,"showMonthAfterYear"),c='<div class="ui-datepicker-title">',h="";if(s||!a)h+='<span class="ui-datepicker-month">'+o[t]+"</span>";else{var p=r&&r.getFullYear()==n,d=i&&i.getFullYear()==n;h+='<select class="ui-datepicker-month" data-handler="selectMonth" data-event="change">';for(var v=0;v<12;v++)(!p||v>=r.getMonth())&&(!d||v<=i.getMonth())&&(h+='<option value="'+v+'"'+(v==t?' selected="selected"':"")+">"+u[v]+"</option>");h+="</select>"}l||(c+=h+(s||!a||!f?"&#xa0;":""));if(!e.yearshtml){e.yearshtml="";if(s||!f)c+='<span class="ui-datepicker-year">'+n+"</span>";else{var m=this._get(e,"yearRange").split(":"),g=(new Date).getFullYear(),y=function(e){var t=e.match(/c[+-].*/)?n+parseInt(e.substring(1),10):e.match(/[+-].*/)?g+parseInt(e,10):parseInt(e,10);return isNaN(t)?g:t},b=y(m[0]),w=Math.max(b,y(m[1]||""));b=r?Math.max(b,r.getFullYear()):b,w=i?Math.min(w,i.getFullYear()):w,e.yearshtml+='<select class="ui-datepicker-year" data-handler="selectYear" data-event="change">';for(;b<=w;b++)e.yearshtml+='<option value="'+b+'"'+(b==n?' selected="selected"':"")+">"+b+"</option>";e.yearshtml+="</select>",c+=e.yearshtml,e.yearshtml=null}}return c+=this._get(e,"yearSuffix"),l&&(c+=(s||!a||!f?"&#xa0;":"")+h),c+="</div>",c},_adjustInstDate:function(e,t,n){var r=e.drawYear+(n=="Y"?t:0),i=e.drawMonth+(n=="M"?t:0),s=Math.min(e.selectedDay,this._getDaysInMonth(r,i))+(n=="D"?t:0),o=this._restrictMinMax(e,this._daylightSavingAdjust(new Date(r,i,s)));e.selectedDay=o.getDate(),e.drawMonth=e.selectedMonth=o.getMonth(),e.drawYear=e.selectedYear=o.getFullYear(),(n=="M"||n=="Y")&&this._notifyChange(e)},_restrictMinMax:function(e,t){var n=this._getMinMaxDate(e,"min"),r=this._getMinMaxDate(e,"max"),i=n&&t<n?n:t;return i=r&&i>r?r:i,i},_notifyChange:function(e){var t=this._get(e,"onChangeMonthYear");t&&t.apply(e.input?e.input[0]:null,[e.selectedYear,e.selectedMonth+1,e])},_getNumberOfMonths:function(e){var t=this._get(e,"numberOfMonths");return t==null?[1,1]:typeof t=="number"?[1,t]:t},_getMinMaxDate:function(e,t){return this._determineDate(e,this._get(e,t+"Date"),null)},_getDaysInMonth:function(e,t){return 32-this._daylightSavingAdjust(new Date(e,t,32)).getDate()},_getFirstDayOfMonth:function(e,t){return(new Date(e,t,1)).getDay()},_canAdjustMonth:function(e,t,n,r){var i=this._getNumberOfMonths(e),s=this._daylightSavingAdjust(new Date(n,r+(t<0?t:i[0]*i[1]),1));return t<0&&s.setDate(this._getDaysInMonth(s.getFullYear(),s.getMonth())),this._isInRange(e,s)},_isInRange:function(e,t){var n=this._getMinMaxDate(e,"min"),r=this._getMinMaxDate(e,"max");return(!n||t.getTime()>=n.getTime())&&(!r||t.getTime()<=r.getTime())},_getFormatConfig:function(e){var t=this._get(e,"shortYearCutoff");return t=typeof t!="string"?t:(new Date).getFullYear()%100+parseInt(t,10),{shortYearCutoff:t,dayNamesShort:this._get(e,"dayNamesShort"),dayNames:this._get(e,"dayNames"),monthNamesShort:this._get(e,"monthNamesShort"),monthNames:this._get(e,"monthNames")}},_formatDate:function(e,t,n,r){t||(e.currentDay=e.selectedDay,e.currentMonth=e.selectedMonth,e.currentYear=e.selectedYear);var i=t?typeof t=="object"?t:this._daylightSavingAdjust(new Date(r,n,t)):this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return this.formatDate(this._get(e,"dateFormat"),i,this._getFormatConfig(e))}}),$.fn.datepicker=function(e){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find(document.body).append($.datepicker.dpDiv),$.datepicker.initialized=!0);var t=Array.prototype.slice.call(arguments,1);return typeof e!="string"||e!="isDisabled"&&e!="getDate"&&e!="widget"?e=="option"&&arguments.length==2&&typeof arguments[1]=="string"?$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this[0]].concat(t)):this.each(function(){typeof e=="string"?$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this].concat(t)):$.datepicker._attachDatepicker(this,e)}):$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this[0]].concat(t))},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="1.9.2",window["DP_jQuery_"+dpuuid]=$})(jQuery);(function(e,t){var n=!1;e.widget("ui.menu",{version:"1.9.2",defaultElement:"<ul>",delay:300,options:{icons:{submenu:"ui-icon-carat-1-e"},menus:"ul",position:{my:"left top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.element.uniqueId().addClass("ui-menu ui-widget ui-widget-content ui-corner-all").toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length).attr({role:this.options.role,tabIndex:0}).bind("click"+this.eventNamespace,e.proxy(function(e){this.options.disabled&&e.preventDefault()},this)),this.options.disabled&&this.element.addClass("ui-state-disabled").attr("aria-disabled","true"),this._on({"mousedown .ui-menu-item > a":function(e){e.preventDefault()},"click .ui-state-disabled > a":function(e){e.preventDefault()},"click .ui-menu-item:has(a)":function(t){var r=e(t.target).closest(".ui-menu-item");!n&&r.not(".ui-state-disabled").length&&(n=!0,this.select(t),r.has(".ui-menu").length?this.expand(t):this.element.is(":focus")||(this.element.trigger("focus",[!0]),this.active&&this.active.parents(".ui-menu").length===1&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(t){var n=e(t.currentTarget);n.siblings().children(".ui-state-active").removeClass("ui-state-active"),this.focus(t,n)},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(e,t){var n=this.active||this.element.children(".ui-menu-item").eq(0);t||this.focus(e,n)},blur:function(t){this._delay(function(){e.contains(this.element[0],this.document[0].activeElement)||this.collapseAll(t)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(t){e(t.target).closest(".ui-menu").length||this.collapseAll(t),n=!1}})},_destroy:function(){this.element.removeAttr("aria-activedescendant").find(".ui-menu").andSelf().removeClass("ui-menu ui-widget ui-widget-content ui-corner-all ui-menu-icons").removeAttr("role").removeAttr("tabIndex").removeAttr("aria-labelledby").removeAttr("aria-expanded").removeAttr("aria-hidden").removeAttr("aria-disabled").removeUniqueId().show(),this.element.find(".ui-menu-item").removeClass("ui-menu-item").removeAttr("role").removeAttr("aria-disabled").children("a").removeUniqueId().removeClass("ui-corner-all ui-state-hover").removeAttr("tabIndex").removeAttr("role").removeAttr("aria-haspopup").children().each(function(){var t=e(this);t.data("ui-menu-submenu-carat")&&t.remove()}),this.element.find(".ui-menu-divider").removeClass("ui-menu-divider ui-widget-content")},_keydown:function(t){function a(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}var n,r,i,s,o,u=!0;switch(t.keyCode){case e.ui.keyCode.PAGE_UP:this.previousPage(t);break;case e.ui.keyCode.PAGE_DOWN:this.nextPage(t);break;case e.ui.keyCode.HOME:this._move("first","first",t);break;case e.ui.keyCode.END:this._move("last","last",t);break;case e.ui.keyCode.UP:this.previous(t);break;case e.ui.keyCode.DOWN:this.next(t);break;case e.ui.keyCode.LEFT:this.collapse(t);break;case e.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(t);break;case e.ui.keyCode.ENTER:case e.ui.keyCode.SPACE:this._activate(t);break;case e.ui.keyCode.ESCAPE:this.collapse(t);break;default:u=!1,r=this.previousFilter||"",i=String.fromCharCode(t.keyCode),s=!1,clearTimeout(this.filterTimer),i===r?s=!0:i=r+i,o=new RegExp("^"+a(i),"i"),n=this.activeMenu.children(".ui-menu-item").filter(function(){return o.test(e(this).children("a").text())}),n=s&&n.index(this.active.next())!==-1?this.active.nextAll(".ui-menu-item"):n,n.length||(i=String.fromCharCode(t.keyCode),o=new RegExp("^"+a(i),"i"),n=this.activeMenu.children(".ui-menu-item").filter(function(){return o.test(e(this).children("a").text())})),n.length?(this.focus(t,n),n.length>1?(this.previousFilter=i,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter):delete this.previousFilter}u&&t.preventDefault()},_activate:function(e){this.active.is(".ui-state-disabled")||(this.active.children("a[aria-haspopup='true']").length?this.expand(e):this.select(e))},refresh:function(){var t,n=this.options.icons.submenu,r=this.element.find(this.options.menus);r.filter(":not(.ui-menu)").addClass("ui-menu ui-widget ui-widget-content ui-corner-all").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var t=e(this),r=t.prev("a"),i=e("<span>").addClass("ui-menu-icon ui-icon "+n).data("ui-menu-submenu-carat",!0);r.attr("aria-haspopup","true").prepend(i),t.attr("aria-labelledby",r.attr("id"))}),t=r.add(this.element),t.children(":not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","presentation").children("a").uniqueId().addClass("ui-corner-all").attr({tabIndex:-1,role:this._itemRole()}),t.children(":not(.ui-menu-item)").each(function(){var t=e(this);/[^\-—–\s]/.test(t.text())||t.addClass("ui-widget-content ui-menu-divider")}),t.children(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!e.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},focus:function(e,t){var n,r;this.blur(e,e&&e.type==="focus"),this._scrollIntoView(t),this.active=t.first(),r=this.active.children("a").addClass("ui-state-focus"),this.options.role&&this.element.attr("aria-activedescendant",r.attr("id")),this.active.parent().closest(".ui-menu-item").children("a:first").addClass("ui-state-active"),e&&e.type==="keydown"?this._close():this.timer=this._delay(function(){this._close()},this.delay),n=t.children(".ui-menu"),n.length&&/^mouse/.test(e.type)&&this._startOpening(n),this.activeMenu=t.parent(),this._trigger("focus",e,{item:t})},_scrollIntoView:function(t){var n,r,i,s,o,u;this._hasScroll()&&(n=parseFloat(e.css(this.activeMenu[0],"borderTopWidth"))||0,r=parseFloat(e.css(this.activeMenu[0],"paddingTop"))||0,i=t.offset().top-this.activeMenu.offset().top-n-r,s=this.activeMenu.scrollTop(),o=this.activeMenu.height(),u=t.height(),i<0?this.activeMenu.scrollTop(s+i):i+u>o&&this.activeMenu.scrollTop(s+i-o+u))},blur:function(e,t){t||clearTimeout(this.timer);if(!this.active)return;this.active.children("a").removeClass("ui-state-focus"),this.active=null,this._trigger("blur",e,{item:this.active})},_startOpening:function(e){clearTimeout(this.timer);if(e.attr("aria-hidden")!=="true")return;this.timer=this._delay(function(){this._close(),this._open(e)},this.delay)},_open:function(t){var n=e.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(t.parents(".ui-menu")).hide().attr("aria-hidden","true"),t.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(n)},collapseAll:function(t,n){clearTimeout(this.timer),this.timer=this._delay(function(){var r=n?this.element:e(t&&t.target).closest(this.element.find(".ui-menu"));r.length||(r=this.element),this._close(r),this.blur(t),this.activeMenu=r},this.delay)},_close:function(e){e||(e=this.active?this.active.parent():this.element),e.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false").end().find("a.ui-state-active").removeClass("ui-state-active")},collapse:function(e){var t=this.active&&this.active.parent().closest(".ui-menu-item",this.element);t&&t.length&&(this._close(),this.focus(e,t))},expand:function(e){var t=this.active&&this.active.children(".ui-menu ").children(".ui-menu-item").first();t&&t.length&&(this._open(t.parent()),this._delay(function(){this.focus(e,t)}))},next:function(e){this._move("next","first",e)},previous:function(e){this._move("prev","last",e)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(e,t,n){var r;this.active&&(e==="first"||e==="last"?r=this.active[e==="first"?"prevAll":"nextAll"](".ui-menu-item").eq(-1):r=this.active[e+"All"](".ui-menu-item").eq(0));if(!r||!r.length||!this.active)r=this.activeMenu.children(".ui-menu-item")[t]();this.focus(n,r)},nextPage:function(t){var n,r,i;if(!this.active){this.next(t);return}if(this.isLastItem())return;this._hasScroll()?(r=this.active.offset().top,i=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return n=e(this),n.offset().top-r-i<0}),this.focus(t,n)):this.focus(t,this.activeMenu.children(".ui-menu-item")[this.active?"last":"first"]())},previousPage:function(t){var n,r,i;if(!this.active){this.next(t);return}if(this.isFirstItem())return;this._hasScroll()?(r=this.active.offset().top,i=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return n=e(this),n.offset().top-r+i>0}),this.focus(t,n)):this.focus(t,this.activeMenu.children(".ui-menu-item").first())},_hasScroll:function(){return this.element.outerHeight()<this.element.prop("scrollHeight")},select:function(t){this.active=this.active||e(t.target).closest(".ui-menu-item");var n={item:this.active};this.active.has(".ui-menu").length||this.collapseAll(t,!0),this._trigger("select",t,n)}})})(jQuery);(function(e,t){var n=5;e.widget("ui.slider",e.ui.mouse,{version:"1.9.2",widgetEventPrefix:"slide",options:{animate:!1,distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null},_create:function(){var t,r,i=this.options,s=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),o="<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>",u=[];this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget"+" ui-widget-content"+" ui-corner-all"+(i.disabled?" ui-slider-disabled ui-disabled":"")),this.range=e([]),i.range&&(i.range===!0&&(i.values||(i.values=[this._valueMin(),this._valueMin()]),i.values.length&&i.values.length!==2&&(i.values=[i.values[0],i.values[0]])),this.range=e("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(i.range==="min"||i.range==="max"?" ui-slider-range-"+i.range:""))),r=i.values&&i.values.length||1;for(t=s.length;t<r;t++)u.push(o);this.handles=s.add(e(u.join("")).appendTo(this.element)),this.handle=this.handles.eq(0),this.handles.add(this.range).filter("a").click(function(e){e.preventDefault()}).mouseenter(function(){i.disabled||e(this).addClass("ui-state-hover")}).mouseleave(function(){e(this).removeClass("ui-state-hover")}).focus(function(){i.disabled?e(this).blur():(e(".ui-slider .ui-state-focus").removeClass("ui-state-focus"),e(this).addClass("ui-state-focus"))}).blur(function(){e(this).removeClass("ui-state-focus")}),this.handles.each(function(t){e(this).data("ui-slider-handle-index",t)}),this._on(this.handles,{keydown:function(t){var r,i,s,o,u=e(t.target).data("ui-slider-handle-index");switch(t.keyCode){case e.ui.keyCode.HOME:case e.ui.keyCode.END:case e.ui.keyCode.PAGE_UP:case e.ui.keyCode.PAGE_DOWN:case e.ui.keyCode.UP:case e.ui.keyCode.RIGHT:case e.ui.keyCode.DOWN:case e.ui.keyCode.LEFT:t.preventDefault();if(!this._keySliding){this._keySliding=!0,e(t.target).addClass("ui-state-active"),r=this._start(t,u);if(r===!1)return}}o=this.options.step,this.options.values&&this.options.values.length?i=s=this.values(u):i=s=this.value();switch(t.keyCode){case e.ui.keyCode.HOME:s=this._valueMin();break;case e.ui.keyCode.END:s=this._valueMax();break;case e.ui.keyCode.PAGE_UP:s=this._trimAlignValue(i+(this._valueMax()-this._valueMin())/n);break;case e.ui.keyCode.PAGE_DOWN:s=this._trimAlignValue(i-(this._valueMax()-this._valueMin())/n);break;case e.ui.keyCode.UP:case e.ui.keyCode.RIGHT:if(i===this._valueMax())return;s=this._trimAlignValue(i+o);break;case e.ui.keyCode.DOWN:case e.ui.keyCode.LEFT:if(i===this._valueMin())return;s=this._trimAlignValue(i-o)}this._slide(t,u,s)},keyup:function(t){var n=e(t.target).data("ui-slider-handle-index");this._keySliding&&(this._keySliding=!1,this._stop(t,n),this._change(t,n),e(t.target).removeClass("ui-state-active"))}}),this._refreshValue(),this._animateOff=!1},_destroy:function(){this.handles.remove(),this.range.remove(),this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all"),this._mouseDestroy()},_mouseCapture:function(t){var n,r,i,s,o,u,a,f,l=this,c=this.options;return c.disabled?!1:(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),n={x:t.pageX,y:t.pageY},r=this._normValueFromMouse(n),i=this._valueMax()-this._valueMin()+1,this.handles.each(function(t){var n=Math.abs(r-l.values(t));i>n&&(i=n,s=e(this),o=t)}),c.range===!0&&this.values(1)===c.min&&(o+=1,s=e(this.handles[o])),u=this._start(t,o),u===!1?!1:(this._mouseSliding=!0,this._handleIndex=o,s.addClass("ui-state-active").focus(),a=s.offset(),f=!e(t.target).parents().andSelf().is(".ui-slider-handle"),this._clickOffset=f?{left:0,top:0}:{left:t.pageX-a.left-s.width()/2,top:t.pageY-a.top-s.height()/2-(parseInt(s.css("borderTopWidth"),10)||0)-(parseInt(s.css("borderBottomWidth"),10)||0)+(parseInt(s.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(t,o,r),this._animateOff=!0,!0))},_mouseStart:function(){return!0},_mouseDrag:function(e){var t={x:e.pageX,y:e.pageY},n=this._normValueFromMouse(t);return this._slide(e,this._handleIndex,n),!1},_mouseStop:function(e){return this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(e,this._handleIndex),this._change(e,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(e){var t,n,r,i,s;return this.orientation==="horizontal"?(t=this.elementSize.width,n=e.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(t=this.elementSize.height,n=e.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),r=n/t,r>1&&(r=1),r<0&&(r=0),this.orientation==="vertical"&&(r=1-r),i=this._valueMax()-this._valueMin(),s=this._valueMin()+r*i,this._trimAlignValue(s)},_start:function(e,t){var n={handle:this.handles[t],value:this.value()};return this.options.values&&this.options.values.length&&(n.value=this.values(t),n.values=this.values()),this._trigger("start",e,n)},_slide:function(e,t,n){var r,i,s;this.options.values&&this.options.values.length?(r=this.values(t?0:1),this.options.values.length===2&&this.options.range===!0&&(t===0&&n>r||t===1&&n<r)&&(n=r),n!==this.values(t)&&(i=this.values(),i[t]=n,s=this._trigger("slide",e,{handle:this.handles[t],value:n,values:i}),r=this.values(t?0:1),s!==!1&&this.values(t,n,!0))):n!==this.value()&&(s=this._trigger("slide",e,{handle:this.handles[t],value:n}),s!==!1&&this.value(n))},_stop:function(e,t){var n={handle:this.handles[t],value:this.value()};this.options.values&&this.options.values.length&&(n.value=this.values(t),n.values=this.values()),this._trigger("stop",e,n)},_change:function(e,t){if(!this._keySliding&&!this._mouseSliding){var n={handle:this.handles[t],value:this.value()};this.options.values&&this.options.values.length&&(n.value=this.values(t),n.values=this.values()),this._trigger("change",e,n)}},value:function(e){if(arguments.length){this.options.value=this._trimAlignValue(e),this._refreshValue(),this._change(null,0);return}return this._value()},values:function(t,n){var r,i,s;if(arguments.length>1){this.options.values[t]=this._trimAlignValue(n),this._refreshValue(),this._change(null,t);return}if(!arguments.length)return this._values();if(!e.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(t):this.value();r=this.options.values,i=arguments[0];for(s=0;s<r.length;s+=1)r[s]=this._trimAlignValue(i[s]),this._change(null,s);this._refreshValue()},_setOption:function(t,n){var r,i=0;e.isArray(this.options.values)&&(i=this.options.values.length),e.Widget.prototype._setOption.apply(this,arguments);switch(t){case"disabled":n?(this.handles.filter(".ui-state-focus").blur(),this.handles.removeClass("ui-state-hover"),this.handles.prop("disabled",!0),this.element.addClass("ui-disabled")):(this.handles.prop("disabled",!1),this.element.removeClass("ui-disabled"));break;case"orientation":this._detectOrientation(),this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation),this._refreshValue();break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":this._animateOff=!0,this._refreshValue();for(r=0;r<i;r+=1)this._change(null,r);this._animateOff=!1;break;case"min":case"max":this._animateOff=!0,this._refreshValue(),this._animateOff=!1}},_value:function(){var e=this.options.value;return e=this._trimAlignValue(e),e},_values:function(e){var t,n,r;if(arguments.length)return t=this.options.values[e],t=this._trimAlignValue(t),t;n=this.options.values.slice();for(r=0;r<n.length;r+=1)n[r]=this._trimAlignValue(n[r]);return n},_trimAlignValue:function(e){if(e<=this._valueMin())return this._valueMin();if(e>=this._valueMax())return this._valueMax();var t=this.options.step>0?this.options.step:1,n=(e-this._valueMin())%t,r=e-n;return Math.abs(n)*2>=t&&(r+=n>0?t:-t),parseFloat(r.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var t,n,r,i,s,o=this.options.range,u=this.options,a=this,f=this._animateOff?!1:u.animate,l={};this.options.values&&this.options.values.length?this.handles.each(function(r){n=(a.values(r)-a._valueMin())/(a._valueMax()-a._valueMin())*100,l[a.orientation==="horizontal"?"left":"bottom"]=n+"%",e(this).stop(1,1)[f?"animate":"css"](l,u.animate),a.options.range===!0&&(a.orientation==="horizontal"?(r===0&&a.range.stop(1,1)[f?"animate":"css"]({left:n+"%"},u.animate),r===1&&a.range[f?"animate":"css"]({width:n-t+"%"},{queue:!1,duration:u.animate})):(r===0&&a.range.stop(1,1)[f?"animate":"css"]({bottom:n+"%"},u.animate),r===1&&a.range[f?"animate":"css"]({height:n-t+"%"},{queue:!1,duration:u.animate}))),t=n}):(r=this.value(),i=this._valueMin(),s=this._valueMax(),n=s!==i?(r-i)/(s-i)*100:0,l[this.orientation==="horizontal"?"left":"bottom"]=n+"%",this.handle.stop(1,1)[f?"animate":"css"](l,u.animate),o==="min"&&this.orientation==="horizontal"&&this.range.stop(1,1)[f?"animate":"css"]({width:n+"%"},u.animate),o==="max"&&this.orientation==="horizontal"&&this.range[f?"animate":"css"]({width:100-n+"%"},{queue:!1,duration:u.animate}),o==="min"&&this.orientation==="vertical"&&this.range.stop(1,1)[f?"animate":"css"]({height:n+"%"},u.animate),o==="max"&&this.orientation==="vertical"&&this.range[f?"animate":"css"]({height:100-n+"%"},{queue:!1,duration:u.animate}))}})})(jQuery);(function(e,t){function i(){return++n}function s(e){return e.hash.length>1&&e.href.replace(r,"")===location.href.replace(r,"").replace(/\s/g,"%20")}var n=0,r=/#.*$/;e.widget("ui.tabs",{version:"1.9.2",delay:300,options:{active:null,collapsible:!1,event:"click",heightStyle:"content",hide:null,show:null,activate:null,beforeActivate:null,beforeLoad:null,load:null},_create:function(){var t=this,n=this.options,r=n.active,i=location.hash.substring(1);this.running=!1,this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all").toggleClass("ui-tabs-collapsible",n.collapsible).delegate(".ui-tabs-nav > li","mousedown"+this.eventNamespace,function(t){e(this).is(".ui-state-disabled")&&t.preventDefault()}).delegate(".ui-tabs-anchor","focus"+this.eventNamespace,function(){e(this).closest("li").is(".ui-state-disabled")&&this.blur()}),this._processTabs();if(r===null){i&&this.tabs.each(function(t,n){if(e(n).attr("aria-controls")===i)return r=t,!1}),r===null&&(r=this.tabs.index(this.tabs.filter(".ui-tabs-active")));if(r===null||r===-1)r=this.tabs.length?0:!1}r!==!1&&(r=this.tabs.index(this.tabs.eq(r)),r===-1&&(r=n.collapsible?!1:0)),n.active=r,!n.collapsible&&n.active===!1&&this.anchors.length&&(n.active=0),e.isArray(n.disabled)&&(n.disabled=e.unique(n.disabled.concat(e.map(this.tabs.filter(".ui-state-disabled"),function(e){return t.tabs.index(e)}))).sort()),this.options.active!==!1&&this.anchors.length?this.active=this._findActive(this.options.active):this.active=e(),this._refresh(),this.active.length&&this.load(n.active)},_getCreateEventData:function(){return{tab:this.active,panel:this.active.length?this._getPanelForTab(this.active):e()}},_tabKeydown:function(t){var n=e(this.document[0].activeElement).closest("li"),r=this.tabs.index(n),i=!0;if(this._handlePageNav(t))return;switch(t.keyCode){case e.ui.keyCode.RIGHT:case e.ui.keyCode.DOWN:r++;break;case e.ui.keyCode.UP:case e.ui.keyCode.LEFT:i=!1,r--;break;case e.ui.keyCode.END:r=this.anchors.length-1;break;case e.ui.keyCode.HOME:r=0;break;case e.ui.keyCode.SPACE:t.preventDefault(),clearTimeout(this.activating),this._activate(r);return;case e.ui.keyCode.ENTER:t.preventDefault(),clearTimeout(this.activating),this._activate(r===this.options.active?!1:r);return;default:return}t.preventDefault(),clearTimeout(this.activating),r=this._focusNextTab(r,i),t.ctrlKey||(n.attr("aria-selected","false"),this.tabs.eq(r).attr("aria-selected","true"),this.activating=this._delay(function(){this.option("active",r)},this.delay))},_panelKeydown:function(t){if(this._handlePageNav(t))return;t.ctrlKey&&t.keyCode===e.ui.keyCode.UP&&(t.preventDefault(),this.active.focus())},_handlePageNav:function(t){if(t.altKey&&t.keyCode===e.ui.keyCode.PAGE_UP)return this._activate(this._focusNextTab(this.options.active-1,!1)),!0;if(t.altKey&&t.keyCode===e.ui.keyCode.PAGE_DOWN)return this._activate(this._focusNextTab(this.options.active+1,!0)),!0},_findNextTab:function(t,n){function i(){return t>r&&(t=0),t<0&&(t=r),t}var r=this.tabs.length-1;while(e.inArray(i(),this.options.disabled)!==-1)t=n?t+1:t-1;return t},_focusNextTab:function(e,t){return e=this._findNextTab(e,t),this.tabs.eq(e).focus(),e},_setOption:function(e,t){if(e==="active"){this._activate(t);return}if(e==="disabled"){this._setupDisabled(t);return}this._super(e,t),e==="collapsible"&&(this.element.toggleClass("ui-tabs-collapsible",t),!t&&this.options.active===!1&&this._activate(0)),e==="event"&&this._setupEvents(t),e==="heightStyle"&&this._setupHeightStyle(t)},_tabId:function(e){return e.attr("aria-controls")||"ui-tabs-"+i()},_sanitizeSelector:function(e){return e?e.replace(/[!"$%&'()*+,.\/:;<=>?@\[\]\^`{|}~]/g,"\\$&"):""},refresh:function(){var t=this.options,n=this.tablist.children(":has(a[href])");t.disabled=e.map(n.filter(".ui-state-disabled"),function(e){return n.index(e)}),this._processTabs(),t.active===!1||!this.anchors.length?(t.active=!1,this.active=e()):this.active.length&&!e.contains(this.tablist[0],this.active[0])?this.tabs.length===t.disabled.length?(t.active=!1,this.active=e()):this._activate(this._findNextTab(Math.max(0,t.active-1),!1)):t.active=this.tabs.index(this.active),this._refresh()},_refresh:function(){this._setupDisabled(this.options.disabled),this._setupEvents(this.options.event),this._setupHeightStyle(this.options.heightStyle),this.tabs.not(this.active).attr({"aria-selected":"false",tabIndex:-1}),this.panels.not(this._getPanelForTab(this.active)).hide().attr({"aria-expanded":"false","aria-hidden":"true"}),this.active.length?(this.active.addClass("ui-tabs-active ui-state-active").attr({"aria-selected":"true",tabIndex:0}),this._getPanelForTab(this.active).show().attr({"aria-expanded":"true","aria-hidden":"false"})):this.tabs.eq(0).attr("tabIndex",0)},_processTabs:function(){var t=this;this.tablist=this._getList().addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").attr("role","tablist"),this.tabs=this.tablist.find("> li:has(a[href])").addClass("ui-state-default ui-corner-top").attr({role:"tab",tabIndex:-1}),this.anchors=this.tabs.map(function(){return e("a",this)[0]}).addClass("ui-tabs-anchor").attr({role:"presentation",tabIndex:-1}),this.panels=e(),this.anchors.each(function(n,r){var i,o,u,a=e(r).uniqueId().attr("id"),f=e(r).closest("li"),l=f.attr("aria-controls");s(r)?(i=r.hash,o=t.element.find(t._sanitizeSelector(i))):(u=t._tabId(f),i="#"+u,o=t.element.find(i),o.length||(o=t._createPanel(u),o.insertAfter(t.panels[n-1]||t.tablist)),o.attr("aria-live","polite")),o.length&&(t.panels=t.panels.add(o)),l&&f.data("ui-tabs-aria-controls",l),f.attr({"aria-controls":i.substring(1),"aria-labelledby":a}),o.attr("aria-labelledby",a)}),this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").attr("role","tabpanel")},_getList:function(){return this.element.find("ol,ul").eq(0)},_createPanel:function(t){return e("<div>").attr("id",t).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").data("ui-tabs-destroy",!0)},_setupDisabled:function(t){e.isArray(t)&&(t.length?t.length===this.anchors.length&&(t=!0):t=!1);for(var n=0,r;r=this.tabs[n];n++)t===!0||e.inArray(n,t)!==-1?e(r).addClass("ui-state-disabled").attr("aria-disabled","true"):e(r).removeClass("ui-state-disabled").removeAttr("aria-disabled");this.options.disabled=t},_setupEvents:function(t){var n={click:function(e){e.preventDefault()}};t&&e.each(t.split(" "),function(e,t){n[t]="_eventHandler"}),this._off(this.anchors.add(this.tabs).add(this.panels)),this._on(this.anchors,n),this._on(this.tabs,{keydown:"_tabKeydown"}),this._on(this.panels,{keydown:"_panelKeydown"}),this._focusable(this.tabs),this._hoverable(this.tabs)},_setupHeightStyle:function(t){var n,r,i=this.element.parent();t==="fill"?(e.support.minHeight||(r=i.css("overflow"),i.css("overflow","hidden")),n=i.height(),this.element.siblings(":visible").each(function(){var t=e(this),r=t.css("position");if(r==="absolute"||r==="fixed")return;n-=t.outerHeight(!0)}),r&&i.css("overflow",r),this.element.children().not(this.panels).each(function(){n-=e(this).outerHeight(!0)}),this.panels.each(function(){e(this).height(Math.max(0,n-e(this).innerHeight()+e(this).height()))}).css("overflow","auto")):t==="auto"&&(n=0,this.panels.each(function(){n=Math.max(n,e(this).height("").height())}).height(n))},_eventHandler:function(t){var n=this.options,r=this.active,i=e(t.currentTarget),s=i.closest("li"),o=s[0]===r[0],u=o&&n.collapsible,a=u?e():this._getPanelForTab(s),f=r.length?this._getPanelForTab(r):e(),l={oldTab:r,oldPanel:f,newTab:u?e():s,newPanel:a};t.preventDefault();if(s.hasClass("ui-state-disabled")||s.hasClass("ui-tabs-loading")||this.running||o&&!n.collapsible||this._trigger("beforeActivate",t,l)===!1)return;n.active=u?!1:this.tabs.index(s),this.active=o?e():s,this.xhr&&this.xhr.abort(),!f.length&&!a.length&&e.error("jQuery UI Tabs: Mismatching fragment identifier."),a.length&&this.load(this.tabs.index(s),t),this._toggle(t,l)},_toggle:function(t,n){function o(){r.running=!1,r._trigger("activate",t,n)}function u(){n.newTab.closest("li").addClass("ui-tabs-active ui-state-active"),i.length&&r.options.show?r._show(i,r.options.show,o):(i.show(),o())}var r=this,i=n.newPanel,s=n.oldPanel;this.running=!0,s.length&&this.options.hide?this._hide(s,this.options.hide,function(){n.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),u()}):(n.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),s.hide(),u()),s.attr({"aria-expanded":"false","aria-hidden":"true"}),n.oldTab.attr("aria-selected","false"),i.length&&s.length?n.oldTab.attr("tabIndex",-1):i.length&&this.tabs.filter(function(){return e(this).attr("tabIndex")===0}).attr("tabIndex",-1),i.attr({"aria-expanded":"true","aria-hidden":"false"}),n.newTab.attr({"aria-selected":"true",tabIndex:0})},_activate:function(t){var n,r=this._findActive(t);if(r[0]===this.active[0])return;r.length||(r=this.active),n=r.find(".ui-tabs-anchor")[0],this._eventHandler({target:n,currentTarget:n,preventDefault:e.noop})},_findActive:function(t){return t===!1?e():this.tabs.eq(t)},_getIndex:function(e){return typeof e=="string"&&(e=this.anchors.index(this.anchors.filter("[href$='"+e+"']"))),e},_destroy:function(){this.xhr&&this.xhr.abort(),this.element.removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible"),this.tablist.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").removeAttr("role"),this.anchors.removeClass("ui-tabs-anchor").removeAttr("role").removeAttr("tabIndex").removeData("href.tabs").removeData("load.tabs").removeUniqueId(),this.tabs.add(this.panels).each(function(){e.data(this,"ui-tabs-destroy")?e(this).remove():e(this).removeClass("ui-state-default ui-state-active ui-state-disabled ui-corner-top ui-corner-bottom ui-widget-content ui-tabs-active ui-tabs-panel").removeAttr("tabIndex").removeAttr("aria-live").removeAttr("aria-busy").removeAttr("aria-selected").removeAttr("aria-labelledby").removeAttr("aria-hidden").removeAttr("aria-expanded").removeAttr("role")}),this.tabs.each(function(){var t=e(this),n=t.data("ui-tabs-aria-controls");n?t.attr("aria-controls",n):t.removeAttr("aria-controls")}),this.panels.show(),this.options.heightStyle!=="content"&&this.panels.css("height","")},enable:function(n){var r=this.options.disabled;if(r===!1)return;n===t?r=!1:(n=this._getIndex(n),e.isArray(r)?r=e.map(r,function(e){return e!==n?e:null}):r=e.map(this.tabs,function(e,t){return t!==n?t:null})),this._setupDisabled(r)},disable:function(n){var r=this.options.disabled;if(r===!0)return;if(n===t)r=!0;else{n=this._getIndex(n);if(e.inArray(n,r)!==-1)return;e.isArray(r)?r=e.merge([n],r).sort():r=[n]}this._setupDisabled(r)},load:function(t,n){t=this._getIndex(t);var r=this,i=this.tabs.eq(t),o=i.find(".ui-tabs-anchor"),u=this._getPanelForTab(i),a={tab:i,panel:u};if(s(o[0]))return;this.xhr=e.ajax(this._ajaxSettings(o,n,a)),this.xhr&&this.xhr.statusText!=="canceled"&&(i.addClass("ui-tabs-loading"),u.attr("aria-busy","true"),this.xhr.success(function(e){setTimeout(function(){u.html(e),r._trigger("load",n,a)},1)}).complete(function(e,t){setTimeout(function(){t==="abort"&&r.panels.stop(!1,!0),i.removeClass("ui-tabs-loading"),u.removeAttr("aria-busy"),e===r.xhr&&delete r.xhr},1)}))},_ajaxSettings:function(t,n,r){var i=this;return{url:t.attr("href"),beforeSend:function(t,s){return i._trigger("beforeLoad",n,e.extend({jqXHR:t,ajaxSettings:s},r))}}},_getPanelForTab:function(t){var n=e(t).attr("aria-controls");return this.element.find(this._sanitizeSelector("#"+n))}}),e.uiBackCompat!==!1&&(e.ui.tabs.prototype._ui=function(e,t){return{tab:e,panel:t,index:this.anchors.index(e)}},e.widget("ui.tabs",e.ui.tabs,{url:function(e,t){this.anchors.eq(e).attr("href",t)}}),e.widget("ui.tabs",e.ui.tabs,{options:{ajaxOptions:null,cache:!1},_create:function(){this._super();var t=this;this._on({tabsbeforeload:function(n,r){if(e.data(r.tab[0],"cache.tabs")){n.preventDefault();return}r.jqXHR.success(function(){t.options.cache&&e.data(r.tab[0],"cache.tabs",!0)})}})},_ajaxSettings:function(t,n,r){var i=this.options.ajaxOptions;return e.extend({},i,{error:function(e,t){try{i.error(e,t,r.tab.closest("li").index(),r.tab[0])}catch(n){}}},this._superApply(arguments))},_setOption:function(e,t){e==="cache"&&t===!1&&this.anchors.removeData("cache.tabs"),this._super(e,t)},_destroy:function(){this.anchors.removeData("cache.tabs"),this._super()},url:function(e){this.anchors.eq(e).removeData("cache.tabs"),this._superApply(arguments)}}),e.widget("ui.tabs",e.ui.tabs,{abort:function(){this.xhr&&this.xhr.abort()}}),e.widget("ui.tabs",e.ui.tabs,{options:{spinner:"<em>Loading&#8230;</em>"},_create:function(){this._super(),this._on({tabsbeforeload:function(e,t){if(e.target!==this.element[0]||!this.options.spinner)return;var n=t.tab.find("span"),r=n.html();n.html(this.options.spinner),t.jqXHR.complete(function(){n.html(r)})}})}}),e.widget("ui.tabs",e.ui.tabs,{options:{enable:null,disable:null},enable:function(t){var n=this.options,r;if(t&&n.disabled===!0||e.isArray(n.disabled)&&e.inArray(t,n.disabled)!==-1)r=!0;this._superApply(arguments),r&&this._trigger("enable",null,this._ui(this.anchors[t],this.panels[t]))},disable:function(t){var n=this.options,r;if(t&&n.disabled===!1||e.isArray(n.disabled)&&e.inArray(t,n.disabled)===-1)r=!0;this._superApply(arguments),r&&this._trigger("disable",null,this._ui(this.anchors[t],this.panels[t]))}}),e.widget("ui.tabs",e.ui.tabs,{options:{add:null,remove:null,tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},add:function(n,r,i){i===t&&(i=this.anchors.length);var s,o,u=this.options,a=e(u.tabTemplate.replace(/#\{href\}/g,n).replace(/#\{label\}/g,r)),f=n.indexOf("#")?this._tabId(a):n.replace("#","");return a.addClass("ui-state-default ui-corner-top").data("ui-tabs-destroy",!0),a.attr("aria-controls",f),s=i>=this.tabs.length,o=this.element.find("#"+f),o.length||(o=this._createPanel(f),s?i>0?o.insertAfter(this.panels.eq(-1)):o.appendTo(this.element):o.insertBefore(this.panels[i])),o.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").hide(),s?a.appendTo(this.tablist):a.insertBefore(this.tabs[i]),u.disabled=e.map(u.disabled,function(e){return e>=i?++e:e}),this.refresh(),this.tabs.length===1&&u.active===!1&&this.option("active",0),this._trigger("add",null,this._ui(this.anchors[i],this.panels[i])),this},remove:function(t){t=this._getIndex(t);var n=this.options,r=this.tabs.eq(t).remove(),i=this._getPanelForTab(r).remove();return r.hasClass("ui-tabs-active")&&this.anchors.length>2&&this._activate(t+(t+1<this.anchors.length?1:-1)),n.disabled=e.map(e.grep(n.disabled,function(e){return e!==t}),function(e){return e>=t?--e:e}),this.refresh(),this._trigger("remove",null,this._ui(r.find("a")[0],i[0])),this}}),e.widget("ui.tabs",e.ui.tabs,{length:function(){return this.anchors.length}}),e.widget("ui.tabs",e.ui.tabs,{options:{idPrefix:"ui-tabs-"},_tabId:function(t){var n=t.is("li")?t.find("a[href]"):t;return n=n[0],e(n).closest("li").attr("aria-controls")||n.title&&n.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF\-]/g,"")||this.options.idPrefix+i()}}),e.widget("ui.tabs",e.ui.tabs,{options:{panelTemplate:"<div></div>"},_createPanel:function(t){return e(this.options.panelTemplate).attr("id",t).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").data("ui-tabs-destroy",!0)}}),e.widget("ui.tabs",e.ui.tabs,{_create:function(){var e=this.options;e.active===null&&e.selected!==t&&(e.active=e.selected===-1?!1:e.selected),this._super(),e.selected=e.active,e.selected===!1&&(e.selected=-1)},_setOption:function(e,t){if(e!=="selected")return this._super(e,t);var n=this.options;this._super("active",t===-1?!1:t),n.selected=n.active,n.selected===!1&&(n.selected=-1)},_eventHandler:function(){this._superApply(arguments),this.options.selected=this.options.active,this.options.selected===!1&&(this.options.selected=-1)}}),e.widget("ui.tabs",e.ui.tabs,{options:{show:null,select:null},_create:function(){this._super(),this.options.active!==!1&&this._trigger("show",null,this._ui(this.active.find(".ui-tabs-anchor")[0],this._getPanelForTab(this.active)[0]))},_trigger:function(e,t,n){var r,i,s=this._superApply(arguments);return s?(e==="beforeActivate"?(r=n.newTab.length?n.newTab:n.oldTab,i=n.newPanel.length?n.newPanel:n.oldPanel,s=this._super("select",t,{tab:r.find(".ui-tabs-anchor")[0],panel:i[0],index:r.closest("li").index()})):e==="activate"&&n.newTab.length&&(s=this._super("show",t,{tab:n.newTab.find(".ui-tabs-anchor")[0],panel:n.newPanel[0],index:n.newTab.closest("li").index()})),s):!1}}),e.widget("ui.tabs",e.ui.tabs,{select:function(e){e=this._getIndex(e);if(e===-1){if(!this.options.collapsible||this.options.selected===-1)return;e=this.options.selected}this.anchors.eq(e).trigger(this.options.event+this.eventNamespace)}}),function(){var t=0;e.widget("ui.tabs",e.ui.tabs,{options:{cookie:null},_create:function(){var e=this.options,t;e.active==null&&e.cookie&&(t=parseInt(this._cookie(),10),t===-1&&(t=!1),e.active=t),this._super()},_cookie:function(n){var r=[this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+ ++t)];return arguments.length&&(r.push(n===!1?-1:n),r.push(this.options.cookie)),e.cookie.apply(null,r)},_refresh:function(){this._super(),this.options.cookie&&this._cookie(this.options.active,this.options.cookie)},_eventHandler:function(){this._superApply(arguments),this.options.cookie&&this._cookie(this.options.active,this.options.cookie)},_destroy:function(){this._super(),this.options.cookie&&this._cookie(null,this.options.cookie)}})}(),e.widget("ui.tabs",e.ui.tabs,{_trigger:function(t,n,r){var i=e.extend({},r);return t==="load"&&(i.panel=i.panel[0],i.tab=i.tab.find(".ui-tabs-anchor")[0]),this._super(t,n,i)}}),e.widget("ui.tabs",e.ui.tabs,{options:{fx:null},_getFx:function(){var t,n,r=this.options.fx;return r&&(e.isArray(r)?(t=r[0],n=r[1]):t=n=r),r?{show:n,hide:t}:null},_toggle:function(e,t){function o(){n.running=!1,n._trigger("activate",e,t)}function u(){t.newTab.closest("li").addClass("ui-tabs-active ui-state-active"),r.length&&s.show?r.animate(s.show,s.show.duration,function(){o()}):(r.show(),o())}var n=this,r=t.newPanel,i=t.oldPanel,s=this._getFx();if(!s)return this._super(e,t);n.running=!0,i.length&&s.hide?i.animate(s.hide,s.hide.duration,function(){t.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),u()}):(t.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),i.hide(),u())}}))})(jQuery);(function(e){function n(t,n){var r=(t.attr("aria-describedby")||"").split(/\s+/);r.push(n),t.data("ui-tooltip-id",n).attr("aria-describedby",e.trim(r.join(" ")))}function r(t){var n=t.data("ui-tooltip-id"),r=(t.attr("aria-describedby")||"").split(/\s+/),i=e.inArray(n,r);i!==-1&&r.splice(i,1),t.removeData("ui-tooltip-id"),r=e.trim(r.join(" ")),r?t.attr("aria-describedby",r):t.removeAttr("aria-describedby")}var t=0;e.widget("ui.tooltip",{version:"1.9.2",options:{content:function(){return e(this).attr("title")},hide:!0,items:"[title]:not([disabled])",position:{my:"left top+15",at:"left bottom",collision:"flipfit flip"},show:!0,tooltipClass:null,track:!1,close:null,open:null},_create:function(){this._on({mouseover:"open",focusin:"open"}),this.tooltips={},this.parents={},this.options.disabled&&this._disable()},_setOption:function(t,n){var r=this;if(t==="disabled"){this[n?"_disable":"_enable"](),this.options[t]=n;return}this._super(t,n),t==="content"&&e.each(this.tooltips,function(e,t){r._updateContent(t)})},_disable:function(){var t=this;e.each(this.tooltips,function(n,r){var i=e.Event("blur");i.target=i.currentTarget=r[0],t.close(i,!0)}),this.element.find(this.options.items).andSelf().each(function(){var t=e(this);t.is("[title]")&&t.data("ui-tooltip-title",t.attr("title")).attr("title","")})},_enable:function(){this.element.find(this.options.items).andSelf().each(function(){var t=e(this);t.data("ui-tooltip-title")&&t.attr("title",t.data("ui-tooltip-title"))})},open:function(t){var n=this,r=e(t?t.target:this.element).closest(this.options.items);if(!r.length||r.data("ui-tooltip-id"))return;r.attr("title")&&r.data("ui-tooltip-title",r.attr("title")),r.data("ui-tooltip-open",!0),t&&t.type==="mouseover"&&r.parents().each(function(){var t=e(this),r;t.data("ui-tooltip-open")&&(r=e.Event("blur"),r.target=r.currentTarget=this,n.close(r,!0)),t.attr("title")&&(t.uniqueId(),n.parents[this.id]={element:this,title:t.attr("title")},t.attr("title",""))}),this._updateContent(r,t)},_updateContent:function(e,t){var n,r=this.options.content,i=this,s=t?t.type:null;if(typeof r=="string")return this._open(t,e,r);n=r.call(e[0],function(n){if(!e.data("ui-tooltip-open"))return;i._delay(function(){t&&(t.type=s),this._open(t,e,n)})}),n&&this._open(t,e,n)},_open:function(t,r,i){function f(e){a.of=e;if(s.is(":hidden"))return;s.position(a)}var s,o,u,a=e.extend({},this.options.position);if(!i)return;s=this._find(r);if(s.length){s.find(".ui-tooltip-content").html(i);return}r.is("[title]")&&(t&&t.type==="mouseover"?r.attr("title",""):r.removeAttr("title")),s=this._tooltip(r),n(r,s.attr("id")),s.find(".ui-tooltip-content").html(i),this.options.track&&t&&/^mouse/.test(t.type)?(this._on(this.document,{mousemove:f}),f(t)):s.position(e.extend({of:r},this.options.position)),s.hide(),this._show(s,this.options.show),this.options.show&&this.options.show.delay&&(u=setInterval(function(){s.is(":visible")&&(f(a.of),clearInterval(u))},e.fx.interval)),this._trigger("open",t,{tooltip:s}),o={keyup:function(t){if(t.keyCode===e.ui.keyCode.ESCAPE){var n=e.Event(t);n.currentTarget=r[0],this.close(n,!0)}},remove:function(){this._removeTooltip(s)}};if(!t||t.type==="mouseover")o.mouseleave="close";if(!t||t.type==="focusin")o.focusout="close";this._on(!0,r,o)},close:function(t){var n=this,i=e(t?t.currentTarget:this.element),s=this._find(i);if(this.closing)return;i.data("ui-tooltip-title")&&i.attr("title",i.data("ui-tooltip-title")),r(i),s.stop(!0),this._hide(s,this.options.hide,function(){n._removeTooltip(e(this))}),i.removeData("ui-tooltip-open"),this._off(i,"mouseleave focusout keyup"),i[0]!==this.element[0]&&this._off(i,"remove"),this._off(this.document,"mousemove"),t&&t.type==="mouseleave"&&e.each(this.parents,function(t,r){e(r.element).attr("title",r.title),delete n.parents[t]}),this.closing=!0,this._trigger("close",t,{tooltip:s}),this.closing=!1},_tooltip:function(n){var r="ui-tooltip-"+t++,i=e("<div>").attr({id:r,role:"tooltip"}).addClass("ui-tooltip ui-widget ui-corner-all ui-widget-content "+(this.options.tooltipClass||""));return e("<div>").addClass("ui-tooltip-content").appendTo(i),i.appendTo(this.document[0].body),e.fn.bgiframe&&i.bgiframe(),this.tooltips[r]=n,i},_find:function(t){var n=t.data("ui-tooltip-id");return n?e("#"+n):e()},_removeTooltip:function(e){e.remove(),delete this.tooltips[e.attr("id")]},_destroy:function(){var t=this;e.each(this.tooltips,function(n,r){var i=e.Event("blur");i.target=i.currentTarget=r[0],t.close(i,!0),e("#"+n).remove(),r.data("ui-tooltip-title")&&(r.attr("title",r.data("ui-tooltip-title")),r.removeData("ui-tooltip-title"))})}})})(jQuery);
\ No newline at end of file
diff --git a/koha-tmpl/opac-tmpl/prog/en/lib/jquery/plugins/jquery.tools.min.js b/koha-tmpl/opac-tmpl/prog/en/lib/jquery/plugins/jquery.tools.min.js
deleted file mode 100644 (file)
index d55c776..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-/*!
- * jQuery Tools v1.2.6 - The missing UI library for the Web
- *
- * tooltip/tooltip.js
- *
- * NO COPYRIGHTS OR LICENSES. DO WHAT YOU LIKE.
- *
- * http://flowplayer.org/tools/
- *
- */
-(function(a){a.tools=a.tools||{version:"v1.2.6"},a.tools.tooltip={conf:{effect:"toggle",fadeOutSpeed:"fast",predelay:0,delay:30,opacity:1,tip:0,fadeIE:!1,position:["top","center"],offset:[0,0],relative:!1,cancelDefault:!0,events:{def:"mouseenter,mouseleave",input:"focus,blur",widget:"focus mouseenter,blur mouseleave",tooltip:"mouseenter,mouseleave"},layout:"<div/>",tipClass:"tooltip"},addEffect:function(a,c,d){b[a]=[c,d]}};var b={toggle:[function(a){var b=this.getConf(),c=this.getTip(),d=b.opacity;d<1&&c.css({opacity:d}),c.show(),a.call()},function(a){this.getTip().hide(),a.call()}],fade:[function(b){var c=this.getConf();!a.browser.msie||c.fadeIE?this.getTip().fadeTo(c.fadeInSpeed,c.opacity,b):(this.getTip().show(),b())},function(b){var c=this.getConf();!a.browser.msie||c.fadeIE?this.getTip().fadeOut(c.fadeOutSpeed,b):(this.getTip().hide(),b())}]};function c(b,c,d){var e=d.relative?b.position().top:b.offset().top,f=d.relative?b.position().left:b.offset().left,g=d.position[0];e-=c.outerHeight()-d.offset[0],f+=b.outerWidth()+d.offset[1],/iPad/i.test(navigator.userAgent)&&(e-=a(window).scrollTop());var h=c.outerHeight()+b.outerHeight();g=="center"&&(e+=h/2),g=="bottom"&&(e+=h),g=d.position[1];var i=c.outerWidth()+b.outerWidth();g=="center"&&(f-=i/2),g=="left"&&(f-=i);return{top:e,left:f}}function d(d,e){var f=this,g=d.add(f),h,i=0,j=0,k=d.attr("title"),l=d.attr("data-tooltip"),m=b[e.effect],n,o=d.is(":input"),p=o&&d.is(":checkbox, :radio, select, :button, :submit"),q=d.attr("type"),r=e.events[q]||e.events[o?p?"widget":"input":"def"];if(!m)throw"Nonexistent effect \""+e.effect+"\"";r=r.split(/,\s*/);if(r.length!=2)throw"Tooltip: bad events configuration for "+q;d.bind(r[0],function(a){clearTimeout(i),e.predelay?j=setTimeout(function(){f.show(a)},e.predelay):f.show(a)}).bind(r[1],function(a){clearTimeout(j),e.delay?i=setTimeout(function(){f.hide(a)},e.delay):f.hide(a)}),k&&e.cancelDefault&&(d.removeAttr("title"),d.data("title",k)),a.extend(f,{show:function(b){if(!h){l?h=a(l):e.tip?h=a(e.tip).eq(0):k?h=a(e.layout).addClass(e.tipClass).appendTo(document.body).hide().append(k):(h=d.next(),h.length||(h=d.parent().next()));if(!h.length)throw"Cannot find tooltip for "+d}if(f.isShown())return f;h.stop(!0,!0);var o=c(d,h,e);e.tip&&h.html(d.data("title")),b=a.Event(),b.type="onBeforeShow",g.trigger(b,[o]);if(b.isDefaultPrevented())return f;o=c(d,h,e),h.css({position:"absolute",top:o.top,left:o.left}),n=!0,m[0].call(f,function(){b.type="onShow",n="full",g.trigger(b)});var p=e.events.tooltip.split(/,\s*/);h.data("__set")||(h.unbind(p[0]).bind(p[0],function(){clearTimeout(i),clearTimeout(j)}),p[1]&&!d.is("input:not(:checkbox, :radio), textarea")&&h.unbind(p[1]).bind(p[1],function(a){a.relatedTarget!=d[0]&&d.trigger(r[1].split(" ")[0])}),e.tip||h.data("__set",!0));return f},hide:function(c){if(!h||!f.isShown())return f;c=a.Event(),c.type="onBeforeHide",g.trigger(c);if(!c.isDefaultPrevented()){n=!1,b[e.effect][1].call(f,function(){c.type="onHide",g.trigger(c)});return f}},isShown:function(a){return a?n=="full":n},getConf:function(){return e},getTip:function(){return h},getTrigger:function(){return d}}),a.each("onHide,onBeforeShow,onShow,onBeforeHide".split(","),function(b,c){a.isFunction(e[c])&&a(f).bind(c,e[c]),f[c]=function(b){b&&a(f).bind(c,b);return f}})}a.fn.tooltip=function(b){var c=this.data("tooltip");if(c)return c;b=a.extend(!0,{},a.tools.tooltip.conf,b),typeof b.position=="string"&&(b.position=b.position.split(/,?\s/)),this.each(function(){c=new d(a(this),b),a(this).data("tooltip",c)});return b.api?c:this}})(jQuery);
index a1e1f9b..566a18f 100644 (file)
@@ -1,9 +1,9 @@
 [% INCLUDE 'doc-head-open.inc' %]
 [% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha online[% END %] catalog &rsaquo; Add to your list
-[% INCLUDE 'doc-head-close.inc' %]
 <style type="text/css">
    #custom-doc { width:34.62em;*width:33.78em;min-width:450px; margin:auto; margin-top: .4em;text-align:left; }
    </style>
+[% INCLUDE 'doc-head-close.inc' %]
 </head>
 <body id="addtolist">
 <div id="custom-doc" class="yui-t7">
index e0bf5a9..d9f9a69 100644 (file)
@@ -1,4 +1,4 @@
-[% INCLUDE 'doc-head-open.inc' %][% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha online[% END %] catalog &rsaquo; Browse by author or subject
+[% INCLUDE 'doc-head-open.inc' %][% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha online[% END %] catalog &rsaquo; Authority search
 [% INCLUDE 'doc-head-close.inc' %]
 </head>
 <body id="opac-authorities">
@@ -13,7 +13,7 @@
         <input type="hidden" name="op" value="do_search" />
         <input type="hidden" name="type" value="opac" />
 <fieldset class="rows">
-            <legend>Browse by author or subject</legend>
+            <legend>Authority search</legend>
 <ol>
  <li><label for="authtypecode">Search: </label> <select name="authtypecode" id="authtypecode">
                 [% FOREACH authtypesloo IN authtypesloop %]
index 6321efd..3c37bd1 100644 (file)
@@ -5,7 +5,6 @@
 [% INCLUDE 'doc-head-open.inc' %][% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha online[% END %] catalog &rsaquo; Details for: [% title |html %][% FOREACH subtitl IN subtitle %], [% subtitl.subfield |html %][% END %]
 [% INCLUDE 'doc-head-close.inc' %]
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tools.min.js"></script>
 [% IF ( SocialNetworks ) %]
     <script type="text/javascript" src="https://apis.google.com/js/plusone.js">
     //<![CDATA[
@@ -18,6 +17,9 @@
 <link rel="stylesheet" type="text/css" href="/opac-tmpl/prog/en/css/jquery.rating.css" />[% END %]
 
 [% IF ( OpacHighlightedWords ) %]<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.highlight-3.js"></script>[% END %]
+[% IF ( bidi ) %]
+  <link rel="stylesheet" type="text/css" href="[% themelang %]/css/right-to-left.css" />
+[% END %]
 <script type="text/javascript">
 //<![CDATA[
 
 
      $(document).ready(function() { 
         $('#bibliodescriptions').tabs();
-
+        $(".branch-info-tooltip-trigger").tooltip({
+            position: { my: "left+15 center", at: "right center" },
+            show: 50,
+            hide: 50,
+            content: function(){
+                var element = $(this).next("div");
+                return element.html();
+            }
+        });
 [% IF ( TagsInputEnabled && loggedinusername ) %]
         $(".tag_add").click(function(){
             var thisid = $(this).attr("id");
         });
     [% END %]
 
-        $(".branch-info-tooltip-trigger").tooltip({delay: 100, position: "top right"});
 [% IF ( OpacStarRatings != 'disable' ) %]
 // -----------------------------------------------------
 // star-ratings code
@@ -475,15 +484,6 @@ YAHOO.util.Event.onContentReady("furtherm", function () {
 </script>
 [% END %]
 
-<style type="text/css">
-.branch-info-tooltip {
-  display: none;
-  padding: 20px;
-  background: #fff;
-  border: 1px solid black;
-}
-</style>
-
 </head>
 <body id="opac-detail">
 <div id="doc3" class="yui-t7">
@@ -1359,7 +1359,13 @@ YAHOO.util.Event.onContentReady("furtherm", function () {
         <div id="BW_suggestions"></div>
     </div>
     <div class="clearfix"></div>
-    <div id="BW_videos"></div>
+    <div>
+    <div id="BW_podcasts"></div>
+    </div>
+    <div class="clearfix"></div>
+    <div>
+        <div id="BW_videos"></div>
+    </div>
 [% END %]
 
 
@@ -1471,17 +1477,18 @@ YAHOO.util.Event.onContentReady("furtherm", function () {
         [% END %]
         </tr></thead>
            <tbody>[% FOREACH ITEM_RESULT IN items %]
-      <tr>[% IF ( item_level_itypes ) %]<td class="itype">[% UNLESS ( noItemTypeImages ) %][% IF ( ITEM_RESULT.imageurl ) %]<img src="[% ITEM_RESULT.imageurl %]" title="[% ITEM_RESULT.description %]" alt="[% ITEM_RESULT.description %]" />[% END %][% END %] [% ITEM_RESULT.description %]</td>[% END %]
+      [% IF ITEM_RESULT.this_branch %]<tr class="highlight-row-detail">[% ELSE %]<tr>[% END %]
+      [% IF ( item_level_itypes ) %]<td class="itype">[% UNLESS ( noItemTypeImages ) %][% IF ( ITEM_RESULT.imageurl ) %]<img src="[% ITEM_RESULT.imageurl %]" title="[% ITEM_RESULT.description %]" alt="[% ITEM_RESULT.description %]" />[% END %][% END %] [% ITEM_RESULT.description %]</td>[% END %]
              <td class="location">
     [% UNLESS ( singleBranchMode ) %]
-        <span class="[% ITEM_RESULT.branch_opac_info ? 'branch-info-tooltip-trigger' : '' %]">
+        <div class="[% ITEM_RESULT.branch_opac_info ? 'branch-info-tooltip-trigger' : '' %]">
         [% IF ( ITEM_RESULT.branchurl ) %]
-        <a href="[% ITEM_RESULT.branchurl %]">[% ITEM_RESULT.branchname %]</a>
+            <a href="[% ITEM_RESULT.branchurl %]" title="">[% ITEM_RESULT.branchname %]</a>
         [% ELSE %]
-        [% ITEM_RESULT.branchname %]
+            <span title="">[% ITEM_RESULT.branchname %]</span>
         [% END %]
-        </span>
-        <div class="branch-info-tooltip">[% ITEM_RESULT.branch_opac_info %]</div>
+            <div class="branch-info-tooltip">[% ITEM_RESULT.branch_opac_info %]</div>
+        </div>
     [% END %]
     <span class="shelvingloc">[% ITEM_RESULT.location_description %]</span>
     </td>
index d41917c..95149b3 100644 (file)
@@ -4,6 +4,7 @@
     [% INCLUDE 'doc-head-open.inc' %]
         [% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha online[% END %] catalog &rsaquo; [% IF action == 'edit' %]Update your personal details[% ELSE %]Register a new account[% END %]
     [% INCLUDE 'doc-head-close.inc' %]
+    [% INCLUDE 'calendar.inc' %]
 
     <script type="text/javascript">
         //<![CDATA[
index 1dbddbf..8a8bd03 100644 (file)
 
 <body id="opac-holds">
   <div id="doc3" class="yui-t7">
-    [% INCLUDE 'masthead.inc' %]
     <div id="bd">
+    [% INCLUDE 'masthead.inc' %]
          <div id="yui-g">
         <div id="holds" class="container">
         [% IF ( message ) %]
index 28b0932..192fab0 100644 (file)
@@ -95,9 +95,11 @@ function highlightOff() {
 function highlightOn() {
     var x;
     for (x in q_array) {
-        $(".title").highlight(q_array[x]);
-        $(".author").highlight(q_array[x]);
-        $(".results_summary").highlight(q_array[x]);
+        if ( q_array[x].length > 0 ) {
+            $(".title").highlight(q_array[x]);
+            $(".author").highlight(q_array[x]);
+            $(".results_summary").highlight(q_array[x]);
+        }
     }
     $(".highlight_toggle").toggle();
 }
@@ -532,6 +534,7 @@ $(document).ready(function(){
                     [% IF ( SEARCH_RESULT.available_items_loop.size() ) %]
                     <span class="available"><strong>Copies available:</strong>
                     [% FOREACH available_items_loo IN SEARCH_RESULT.available_items_loop %]
+                    [% IF available_items_loo.this_branch %]<span class="highlight-row-results">[% ELSE %]<span>[% END %]
                     [% IF ( singleBranchMode ) %]
                         [% available_items_loo.location %]
                     [% ELSE %]
@@ -543,6 +546,7 @@ $(document).ready(function(){
                         [% IF ( available_items_loo.itemcallnumber ) %][<a href="/cgi-bin/koha/opac-search.pl?q=callnum:[% available_items_loo.itemcallnumber |url %]">[% available_items_loo.itemcallnumber %]</a>][% END %]
                     [% END %]
                     ([% available_items_loo.count %]),
+                    </span>
                     [% END %]
                     </span>
                     [% ELSE %]
@@ -667,15 +671,15 @@ $(document).ready(function(){
                 </td><td>
                     <a class="p1" href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% SEARCH_RESULT.biblionumber %]">
             [% IF ( OPACLocalCoverImages ) %]<span title="[% SEARCH_RESULT.biblionumber |url %]" class="[% SEARCH_RESULT.biblionumber %]" id="local-thumbnail[% loop.count %]"></span>[% END %]
-                    [% IF ( OPACAmazonCoverImages ) %][% IF ( SEARCH_RESULT.normalized_isbn ) %]<img src="http://images.amazon.com/images/P/[% SEARCH_RESULT.normalized_isbn %].01.TZZZZZZZ.jpg" alt="" class="thumbnail" />[% ELSE %]<span class="no-image">No cover image available</span>[% END %][% END %]
+                    [% IF ( OPACAmazonCoverImages ) %][% IF ( SEARCH_RESULT.normalized_isbn ) %]<span title="[% SEARCH_RESULT.biblionumber %]" id="amazon-thumbnail[% loop.count %]"><img src="http://images.amazon.com/images/P/[% SEARCH_RESULT.normalized_isbn %].01.TZZZZZZZ.jpg" alt="" class="thumbnail" /></span>[% ELSE %]<span class="no-image">No cover image available</span>[% END %][% END %]
 
                 [% IF ( SyndeticsEnabled ) %]
                     [% IF ( SyndeticsCoverImages ) %]
                         [% IF SEARCH_RESULT.normalized_isbn %]
                                 [% IF ( using_https ) %]
-                            <img src="https://secure.syndetics.com/index.aspx?isbn=[% SEARCH_RESULT.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;type=xw10&amp;upc=[% SEARCH_RESULT.normalized_upc %]&amp;oclc=[% SEARCH_RESULT.normalized_oclc %]" alt="" class="thumbnail" />
+                            <span title="[% SEARCH_RESULT.biblionumber %]" id="syndetics-thumbnail[% loop.count %]"><img src="https://secure.syndetics.com/index.aspx?isbn=[% SEARCH_RESULT.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;type=xw10&amp;upc=[% SEARCH_RESULT.normalized_upc %]&amp;oclc=[% SEARCH_RESULT.normalized_oclc %]" alt="" class="thumbnail" /></span>
                         [% ELSE %]
-                            <img src="http://www.syndetics.com/index.aspx?isbn=[% SEARCH_RESULT.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;type=xw10&amp;upc=[% SEARCH_RESULT.normalized_upc %]&amp;oclc=[% SEARCH_RESULT.normalized_oclc %]" alt="" class="thumbnail" />
+                            <span title="[% SEARCH_RESULT.biblionumber %]" id="syndetics-thumbnail[% loop.count %]"><img src="http://www.syndetics.com/index.aspx?isbn=[% SEARCH_RESULT.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;type=xw10&amp;upc=[% SEARCH_RESULT.normalized_upc %]&amp;oclc=[% SEARCH_RESULT.normalized_oclc %]" alt="" class="thumbnail" /></span>
                     [% END %]
                     [% ELSE %]
                         <span class="no-image">No cover image available</span>
index 4198701..3df04b4 100644 (file)
@@ -1,8 +1,8 @@
 [% INCLUDE 'doc-head-open.inc' %][% LibraryNameTitle or "Koha online" %] catalog &rsaquo; Comments on [% title |html %]
-[% INCLUDE 'doc-head-close.inc' %]
 <style type="text/css">
   #custom-doc { width:37.08em;*width:36.16em;min-width:485px; margin:1em auto; text-align:left; }
 </style>
+[% INCLUDE 'doc-head-close.inc' %]
 <script type="text/javascript">
 //<![CDATA[
         $(document).ready(function() {
index 3ad295d..66ff9bc 100644 (file)
@@ -487,12 +487,12 @@ $(document).ready(function() {
           <td>
           <a class="p1" href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% itemsloo.biblionumber %]">
             [% IF ( OPACLocalCoverImages ) %]<span title="[% itemsloo.biblionumber |url %]" class="[% itemsloo.biblionumber %]" id="local-thumbnail[% loop.count %]"></span>[% END %]
-                    [% IF ( OPACAmazonCoverImages ) %][% IF ( itemsloo.normalized_isbn ) %]<img src="http://images.amazon.com/images/P/[% itemsloo.normalized_isbn %].01.TZZZZZZZ.jpg" alt="" class="thumbnail" />[% ELSE %]<span class="no-image">No cover image available</span>[% END %][% END %]
+                    [% IF ( OPACAmazonCoverImages ) %][% IF ( itemsloo.normalized_isbn ) %]<span title="[% SEARCH_RESULT.biblionumber %]" id="amazon-thumbnail[% loop.count %]"><img src="http://images.amazon.com/images/P/[% itemsloo.normalized_isbn %].01.TZZZZZZZ.jpg" alt="" class="thumbnail" /></span>[% ELSE %]<span class="no-image">No cover image available</span>[% END %][% END %]
 
           [% IF ( SyndeticsEnabled ) %][% IF ( SyndeticsCoverImages ) %][% IF ( using_https ) %]
-                <img src="https://secure.syndetics.com/index.aspx?isbn=[% itemsloo.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;type=xw10&amp;upc=[% itemsloo.normalized_upc %]&amp;oclc=[% itemsloo.normalized_oclc %]" alt="" class="thumbnail" />
+                <span title="[% SEARCH_RESULT.biblionumber %]" id="syndetics-thumbnail[% loop.count %]"><img src="https://secure.syndetics.com/index.aspx?isbn=[% itemsloo.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;type=xw10&amp;upc=[% itemsloo.normalized_upc %]&amp;oclc=[% itemsloo.normalized_oclc %]" alt="" class="thumbnail" /></span>
                 [% ELSE %]
-                <img src="http://www.syndetics.com/index.aspx?isbn=[% itemsloo.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;type=xw10&amp;upc=[% itemsloo.normalized_upc %]&amp;oclc=[% itemsloo.normalized_oclc %]" alt="" class="thumbnail" />[% END %][% END %][% END %]
+                <span title="[% SEARCH_RESULT.biblionumber %]" id="syndetics-thumbnail[% loop.count %]"><img src="http://www.syndetics.com/index.aspx?isbn=[% itemsloo.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;type=xw10&amp;upc=[% itemsloo.normalized_upc %]&amp;oclc=[% itemsloo.normalized_oclc %]" alt="" class="thumbnail" /></span>[% END %][% END %][% END %]
 
                 [% IF ( GoogleJackets ) %][% IF ( itemsloo.normalized_isbn ) %]<div style="block" title="[% itemsloo.biblionumber |url %]" class="[% itemsloo.normalized_isbn %]" id="gbs-thumbnail[% loop.count %]"></div>[% ELSE %]<span class="no-image">No cover image available</span>[% END %][% END %]
                 [% IF OpenLibraryCovers %][% IF itemsloo.normalized_isbn %]<span style="block" title="[% itemsloo.biblionumber %]" class="[% itemsloo.normalized_isbn %]" id="openlibrary-thumbnail[% loop.count %]"></span>[% ELSE %]<span class="no-image">No cover image available</span>[% END %][% END %]
index fc5fbd8..9d1e623 100644 (file)
@@ -16,7 +16,7 @@ the kohaversion is divided in 4 parts :
 use strict;
 
 sub kohaversion {
-    our $VERSION = '3.11.00.109';
+    our $VERSION = '3.11.00.202';
     # version needs to be set this way
     # so that it can be picked up by Makefile.PL
     # during install
index b65c7a6..dd895fb 100755 (executable)
@@ -115,8 +115,8 @@ elsif ($op eq 'none') {
     @batch_ids = map{{batch_id => $_}} @batch_ids;
     @label_ids = map{{label_id => $_}} @label_ids;
     @item_numbers = map{{item_number => $_}} @item_numbers;
-    $templates = get_all_templates(field_list => 'template_id, template_code', filter => 'creator = "Labels"');
-    $layouts = get_all_layouts(field_list => 'layout_id, layout_name', filter => 'creator = "Labels"');
+    $templates = get_all_templates(field_list => 'template_id, template_code', filter => 'creator = "Labels"', orderby => 'template_code' );
+    $layouts = get_all_layouts(field_list => 'layout_id, layout_name', filter => 'creator = "Labels"', orderby => 'layout_name' );
     $output_formats = get_output_formats();
     $template->param(
                     batch_ids                   => \@batch_ids,
index eebc8d3..48e2620 100755 (executable)
@@ -129,6 +129,7 @@ $template->param(
     reverse_col         => $reverse_col,
     accounts            => $accts,
        activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
+    RoutingSerials => C4::Context->preference('RoutingSerials'),
 );
 
 output_html_with_http_headers $input, $cookie, $template->output;
index a813cd6..7a78ead 100755 (executable)
@@ -104,6 +104,7 @@ if ($countissues > 0 or $flags->{'CHARGES'}  or $data->{'borrowernumber'}){
         branchcode => $bor->{'branchcode'},
         branchname => GetBranchName($bor->{'branchcode'}),
                activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
+        RoutingSerials => C4::Context->preference('RoutingSerials'),
     );
     if ($countissues >0) {
         $template->param(ItemsOnIssues => $countissues);
index 84bc41e..77d7be5 100755 (executable)
@@ -104,6 +104,7 @@ else {
     $template->param(
         categoryname    => $data->{'description'},
         branchname      => GetBranchName($data->{'branchcode'}),
+        RoutingSerials => C4::Context->preference('RoutingSerials'),
     );
 
     if (C4::Context->preference('ExtendedPatronAttributes')) {
index 88200d0..b011d1a 100755 (executable)
@@ -36,6 +36,7 @@ use C4::Items;
 use C4::Members::Attributes qw(GetBorrowerAttributes);
 
 my $input=new CGI;
+my $flagsrequired = { borrowers => 1, updatecharges => 1 };
 
 my $borrowernumber=$input->param('borrowernumber');
 
@@ -44,7 +45,7 @@ my $data=GetMember('borrowernumber' => $borrowernumber);
 my $add=$input->param('add');
 
 if ($add){
-    if(checkauth($input)) {
+    if ( checkauth( $input, 0, $flagsrequired, 'intranet' ) ) {
         my $barcode = $input->param('barcode');
         my $itemnum;
         if ($barcode) {
@@ -64,7 +65,7 @@ if ($add){
                                          query => $input,
                                          type => "intranet",
                                          authnotrequired => 0,
-                                         flagsrequired => {borrowers => 1, updatecharges => 1},
+                      flagsrequired => $flagsrequired,
                                          debug => 1,
                                          });
                                          
@@ -74,7 +75,7 @@ if ($add){
         $template->param( 'CATCODE_MULTI' => 1) if $cnt > 1;
         $template->param( 'catcode' =>    $catcodes->[0])  if $cnt == 1;
     }
-                                         
+
     $template->param( adultborrower => 1 ) if ( $data->{category_type} eq 'A' );
     my ($picture, $dberror) = GetPatronImage($data->{'cardnumber'});
     $template->param( picture => 1 ) if $picture;
@@ -107,6 +108,7 @@ if (C4::Context->preference('ExtendedPatronAttributes')) {
                    branchname => GetBranchName($data->{'branchcode'}),
                    is_child        => ($data->{'category_type'} eq 'C'),
                        activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
+            RoutingSerials => C4::Context->preference('RoutingSerials'),
         );
     output_html_with_http_headers $input, $cookie, $template->output;
 }
index f1c572c..6331535 100755 (executable)
@@ -35,6 +35,7 @@ use C4::Branch;
 use C4::Members::Attributes qw(GetBorrowerAttributes);
 
 my $input=new CGI;
+my $flagsrequired = { borrowers => 1 };
 
 my $borrowernumber=$input->param('borrowernumber');
 
@@ -43,7 +44,7 @@ my $borrowernumber=$input->param('borrowernumber');
 my $data=GetMember('borrowernumber'=>$borrowernumber);
 my $add=$input->param('add');
 if ($add){
-    if(checkauth($input)) {
+    if ( checkauth( $input, 0, $flagsrequired, 'intranet' ) ) {
         #  print $input->header;
         my $barcode=$input->param('barcode');
         my $itemnum;
@@ -61,7 +62,7 @@ if ($add){
                     query           => $input,
                     type            => "intranet",
                     authnotrequired => 0,
-                    flagsrequired   => { borrowers => 1 },
+                    flagsrequired   => $flagsrequired,
                     debug           => 1,
                 }
             );
@@ -134,6 +135,7 @@ if (C4::Context->preference('ExtendedPatronAttributes')) {
                branchname => GetBranchName($data->{'branchcode'}),
                is_child        => ($data->{'category_type'} eq 'C'),
                activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
+        RoutingSerials => C4::Context->preference('RoutingSerials'),
     );
     output_html_with_http_headers $input, $cookie, $template->output;
 }
index ca8c9d0..d1c165c 100755 (executable)
@@ -192,6 +192,7 @@ $template->param(
                loop => \@loop,
                is_child        => ($bor->{'category_type'} eq 'C'),
                activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
+        RoutingSerials => C4::Context->preference('RoutingSerials'),
                );
 
     output_html_with_http_headers $input, $cookie, $template->output;
index fe24df3..bed8fc4 100755 (executable)
@@ -35,7 +35,7 @@ my ($template, $loggedinuser, $cookie, $staffflags)
 my $flagsrequired;
 $flagsrequired->{borrowers}=1;
 
-#my ($loggedinuser, $cookie, $sessionID) = checkauth($input, 0, $flagsrequired);
+#my ($loggedinuser, $cookie, $sessionID) = checkauth($input, 0, $flagsrequired, 'intranet');
 
 my $member=$input->param('member');
 my $cardnumber = $input->param('cardnumber');
@@ -121,7 +121,8 @@ if (C4::Context->preference('ExtendedPatronAttributes')) {
            destination => $destination,
                is_child        => ($bor->{'category_type'} eq 'C'),
                activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
-        minPasswordLength => $minpw
+        minPasswordLength => $minpw,
+        RoutingSerials => C4::Context->preference('RoutingSerials'),
        );
 
 if( scalar(@errors )){
index d705810..55f6a5b 100755 (executable)
@@ -27,7 +27,7 @@ use strict;
 #use warnings; FIXME - Bug 2505
 use C4::Auth;
 use C4::Output;
-use CGI;
+use CGI qw( -utf8 );
 use C4::Members;
 use C4::Branch;
 use C4::Category;
index 6b0e846..d2b701d 100755 (executable)
@@ -254,7 +254,18 @@ $newdata{'country'} = $input->param('country') if defined($input->param('country
 
 #builds default userid
 if ( (defined $newdata{'userid'}) && ($newdata{'userid'} eq '')){
-    $newdata{'userid'} = Generate_Userid($borrowernumber, $newdata{'firstname'}, $newdata{'surname'});
+    if ( ( defined $newdata{'firstname'} ) && ( defined $newdata{'surname'} ) ) {
+        # Full page edit, firstname and surname input zones are present
+        $newdata{'userid'} = Generate_Userid( $borrowernumber, $newdata{'firstname'}, $newdata{'surname'} );
+    }
+    elsif ( ( defined $data{'firstname'} ) && ( defined $data{'surname'} ) ) {
+        # Partial page edit (access through "Details"/"Library details" tab), firstname and surname input zones are not used
+        # Still, if the userid field is erased, we can create a new userid with available firstname and surname
+        $newdata{'userid'} = Generate_Userid( $borrowernumber, $data{'firstname'}, $data{'surname'} );
+    }
+    else {
+        $newdata{'userid'} = $data{'userid'};
+    }
 }
   
 $debug and warn join "\t", map {"$_: $newdata{$_}"} qw(dateofbirth dateenrolled dateexpiry);
@@ -646,8 +657,8 @@ if ( $op eq 'duplicate' ) {
     $data{'dateexpiry'} = GetExpiryDate( $data{'categorycode'}, $data{'dateenrolled'} );
 }
 if (C4::Context->preference('uppercasesurnames')) {
-       $data{'surname'}    =uc($data{'surname'}    );
-       $data{'contactname'}=uc($data{'contactname'});
+    $data{'surname'} &&= uc( $data{'surname'} );
+    $data{'contactname'} &&= uc( $data{'contactname'} );
 }
 
 $data{debarred} = C4::Overdues::CheckBorrowerDebarred($borrowernumber);
index fe3b2eb..df6a664 100755 (executable)
@@ -118,7 +118,6 @@ my $borrowernumber = $input->param('borrowernumber');
 
 #start the page and read in includes
 my $data           = GetMember( 'borrowernumber' => $borrowernumber );
-my $reregistration = $input->param('reregistration');
 
 if ( not defined $data ) {
     $template->param (unknowuser => 1);
@@ -126,11 +125,6 @@ if ( not defined $data ) {
     exit;
 }
 
-# re-reregistration function to automatic calcul of date expiry
-if ( $reregistration eq 'y' ) {
-       $data->{'dateexpiry'} = ExtendMemberSubscriptionTo( $borrowernumber );
-}
-
 my $category_type = $data->{'category_type'};
 
 ### $category_type
@@ -412,7 +406,7 @@ $template->param(
     borrowernumber  => $borrowernumber,
     othernames      => $data->{'othernames'},
     categoryname    => $data->{'description'},
-    reregistration  => $reregistration,
+    was_renewed     => $input->param('was_renewed') ? 1 : 0,
     branch          => $branch,
     todaysdate      => C4::Dates->today(),
     totalprice      => sprintf("%.2f", $totalprice),
@@ -430,6 +424,7 @@ $template->param(
     activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
     AutoResumeSuspendedHolds => C4::Context->preference('AutoResumeSuspendedHolds'),
     SuspendHoldsIntranet => C4::Context->preference('SuspendHoldsIntranet'),
+    RoutingSerials => C4::Context->preference('RoutingSerials'),
 );
 $template->param( $error => 1 ) if $error;
 
index 51a843c..16935d9 100755 (executable)
@@ -69,6 +69,7 @@ $template->param(
                         branchname              => GetBranchName($borrower->{'branchcode'}),
                         categoryname            => $borrower->{'description'},
                        activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
+            RoutingSerials => C4::Context->preference('RoutingSerials'),
 );
 output_html_with_http_headers $input, $cookie, $template->output;
 
index 4b918ae..7dbe3eb 100755 (executable)
@@ -100,7 +100,10 @@ for (@names) {
     }
 }
 
-$template->param( activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne '') );
+$template->param(
+    activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
+    RoutingSerials => C4::Context->preference('RoutingSerials'),
+);
 
 add_accounts_to_template();
 
index d66702e..9828fb3 100755 (executable)
@@ -141,6 +141,7 @@ $template->param(
     borrower      => $borrower,
     total         => $total_due,
     activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
+    RoutingSerials => C4::Context->preference('RoutingSerials'),
 );
 
 output_html_with_http_headers $input, $cookie, $template->output;
index d1cf5cf..d41e3f9 100755 (executable)
@@ -50,6 +50,7 @@ my ($template, $loggedinuser, $cookie)= get_template_and_user({template_name =>
                                debug => 1,
                                });
 
+my $op = $input->param('op') || '';
 if ($input->param('cardnumber')) {
     $cardnumber = $input->param('cardnumber');
     $data = GetMember(cardnumber => $cardnumber);
@@ -70,7 +71,7 @@ foreach my $issue ( @{$issues} ) {
 }
 
 #   barcode export
-if ( $input->param('op') eq 'export_barcodes' ) {
+if ( $op eq 'export_barcodes' ) {
     my $today = C4::Dates->new();
     $today = $today->output('iso');
     my @barcodes =
@@ -139,6 +140,7 @@ $template->param(
     loop_reading      => $issues,
     activeBorrowerRelationship =>
       ( C4::Context->preference('borrowerRelationship') ne '' ),
+    RoutingSerials => C4::Context->preference('RoutingSerials'),
 );
 output_html_with_http_headers $input, $cookie, $template->output;
 
index 25b0f85..d70c1bc 100755 (executable)
@@ -125,6 +125,7 @@ $template->param(
     country           => $borrower->{'country'},
     phone             => $borrower->{'phone'} || $borrower->{'mobile'},
     cardnumber        => $borrower->{'cardnumber'},
+    RoutingSerials => C4::Context->preference('RoutingSerials'),
 );
 
 my ($picture, $dberror) = GetPatronImage($borrower->{'cardnumber'});
index bc0bafb..280ffaa 100755 (executable)
@@ -36,10 +36,7 @@ use C4::Auth;
 
 my $input = new CGI;
 
-my $flagsrequired;
-$flagsrequired->{borrowers} = 1;
-my ( $loggedinuser, $cookie, $sessionID ) =
-  checkauth( $input, 0, $flagsrequired );
+checkauth( $input, 0, { borrowers => 1 }, 'intranet' );
 
 my $borrowernumber = $input->param('borrowernumber');
 
index 914c36e..2c13401 100755 (executable)
@@ -34,9 +34,7 @@ use C4::Auth;
 
 my $input = new CGI;
 
-my $flagsrequired;
-$flagsrequired->{borrowers}=1;
-checkauth($input, 0, $flagsrequired);
+checkauth($input, 0, { borrowers => 1 }, 'intranet');
 
 my $destination = $input->param("destination") || '';
 my $cardnumber = $input->param("cardnumber");
@@ -58,13 +56,13 @@ if ( $reregistration eq 'y' ) {
 
 if($destination eq "circ"){
        if($dateexpiry){
-               print $input->redirect("/cgi-bin/koha/circ/circulation.pl?findborrower=$cardnumber&dateexpiry=$dateexpiry");
+        print $input->redirect("/cgi-bin/koha/circ/circulation.pl?findborrower=$cardnumber&was_renewed=1");
        } else {
                print $input->redirect("/cgi-bin/koha/circ/circulation.pl?findborrower=$cardnumber");
        }
 } else {
        if($dateexpiry){
-        print $input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$borrowernumber&dateexpiry=$dateexpiry");
+        print $input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$borrowernumber&was_renewed=1");
        } else {
         print $input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$borrowernumber");
        }
index d48cdde..75a30a8 100755 (executable)
@@ -104,6 +104,7 @@ $template->param(
     count_total_issues_returned => $count_total_issues_returned,
     count_total_precedent_state => $count_total_precedent_state,
     count_total_actual_state => $count_total_actual_state,
+    RoutingSerials => C4::Context->preference('RoutingSerials'),
 );
 
 output_html_with_http_headers $input, $cookie, $template->output;
index b265707..5f285c0 100755 (executable)
@@ -40,6 +40,7 @@ use C4::Dates qw/format_date/;
 use C4::Debug;
 use C4::Letters;
 use C4::Overdues qw(GetFine);
+use C4::Budgets qw(GetCurrency);
 
 =head1 NAME
 
@@ -687,13 +688,7 @@ sub parse_letter {
         $tables{'branches'} = $p;
     }
 
-    my $currency_format;
-    if ( defined $params->{'letter'}->{'content'}
-        and $params->{'letter'}->{'content'} =~ m/<fine>(.*)<\/fine>/o )
-    {    # process any fine tags...
-        $currency_format = $1;
-        $params->{'letter'}->{'content'} =~ s/<fine>.*<\/fine>/<<item.fine>>/o;
-    }
+    my $currency_format = GetCurrency()->{currency};
 
     my @item_tables;
     if ( my $i = $params->{'items'} ) {
@@ -705,8 +700,9 @@ sub parse_letter {
                 $item_format = $1;
             }
 
-            $item->{'fine'} = currency_format($currency_format, "$fine", FMT_SYMBOL)
-              if $currency_format;
+            $item->{'fine'} = currency_format($currency_format, "$fine", FMT_SYMBOL);
+            # if active currency isn't correct ISO code fallback to sprintf
+            $item->{'fine'} = sprintf('%.2f', $fine) unless $item->{'fine'};
 
             push @item_tables, {
                 'biblio' => $item->{'biblionumber'},
index 682af89..113aaf2 100755 (executable)
@@ -24,15 +24,18 @@ use C4::Koha;
 use C4::Debug;
 use C4::Charset;
 use C4::Items;
+use YAML;
 use Unicode::Normalize;
 use Time::HiRes qw(gettimeofday);
 use Getopt::Long;
 use IO::File;
 use Pod::Usage;
 
-binmode STDOUT, ':encoding(UTF-8)';
+use open qw( :std :encoding(UTF-8) );
+binmode( STDOUT, ":encoding(UTF-8)" );
 my ( $input_marc_file, $number, $offset) = ('',0,0);
 my ($version, $delete, $test_parameter, $skip_marc8_conversion, $char_encoding, $verbose, $commit, $fk_off,$format,$biblios,$authorities,$keepids,$match, $isbn_check, $logfile);
+my ( $insert, $filters, $update, $all, $yamlfile, $authtypes );
 my $cleanisbn = 1;
 my ($sourcetag,$sourcesubfield,$idmapfl, $dedup_barcode);
 my $framework = '';
@@ -46,7 +49,7 @@ GetOptions(
     'o|offset:f' => \$offset,
     'h' => \$version,
     'd' => \$delete,
-    't' => \$test_parameter,
+    't|test' => \$test_parameter,
     's' => \$skip_marc8_conversion,
     'c:s' => \$char_encoding,
     'v:s' => \$verbose,
@@ -56,22 +59,37 @@ GetOptions(
     'k|keepids:s' => \$keepids,
     'b|biblios' => \$biblios,
     'a|authorities' => \$authorities,
+    'authtypes:s' => \$authtypes,
+    'filter=s@'     => \$filters,
+    'insert'        => \$insert,
+    'update'        => \$update,
+    'all'           => \$all,
     'match=s@'    => \$match,
     'i|isbn' => \$isbn_check,
     'x:s' => \$sourcetag,
     'y:s' => \$sourcesubfield,
     'idmap:s' => \$idmapfl,
     'cleanisbn!'     => \$cleanisbn,
+    'yaml:s'        => \$yamlfile,
     'dedupbarcode' => \$dedup_barcode,
     'framework=s' => \$framework,
 );
-$biblios=!$authorities||$biblios;
+$biblios ||= !$authorities;
+$insert  ||= !$update;
+
+if ($all) {
+    $insert = 1;
+    $update = 1;
+}
 
 if ($version || ($input_marc_file eq '')) {
     pod2usage( -verbose => 2 );
     exit;
 }
 
+my $dbh = C4::Context->dbh;
+my $heading_fields=get_heading_fields();
+
 if (defined $idmapfl) {
   open(IDMAP,">$idmapfl") or die "cannot open $idmapfl \n";
 }
@@ -81,8 +99,6 @@ if ((not defined $sourcesubfield) && (not defined $sourcetag)){
   $sourcesubfield="a";
 }
 
-my $dbh = C4::Context->dbh;
-
 # save the CataloguingLog property : we don't want to log a bulkmarcimport. It will slow the import & 
 # will create problems in the action_logs table, that can't handle more than 1 entry per second per user.
 my $CataloguingLog = C4::Context->preference('CataloguingLog');
@@ -142,7 +158,7 @@ $batch->warnings_off();
 $batch->strict_off();
 my $i=0;
 my $commitnum = $commit ? $commit : 50;
-
+my $yamlhash;
 
 # Skip file offset
 if ( $offset ) {
@@ -199,6 +215,7 @@ RECORD: while (  ) {
             next RECORD;            
         }
     }
+    SetUTF8Flag($record);
     my $isbn;
     # remove trailing - in isbn (only for biblios, of course)
     if ($biblios && $cleanisbn) {
@@ -212,45 +229,76 @@ RECORD: while (  ) {
     }
     my $id;
     # search for duplicates (based on Local-number)
-    if ($match){
-       require C4::Search;
-       my $query=build_query($match,$record);
-       my $server=($authorities?'authorityserver':'biblioserver');
-       my ($error, $results,$totalhits)=C4::Search::SimpleSearch( $query, 0, 3, [$server] );
-       die "unable to search the database for duplicates : $error" if (defined $error);
-       #warn "$query $server : $totalhits";
-       if ( @{$results} == 1 ){
-           my $marcrecord = MARC::File::USMARC::decode($results->[0]);
-                  $id=GetRecordId($marcrecord,$tagid,$subfieldid);
-       } 
-       elsif  ( @{$results} > 1){
-           $debug && warn "more than one match for $query";
-       } 
-       else {
-           $debug && warn "nomatch for $query";
-       }
+    my $originalid;
+    $originalid = GetRecordId( $record, $tagid, $subfieldid );
+    if ($match) {
+        require C4::Search;
+        my $query = build_query( $match, $record );
+        my $server = ( $authorities ? 'authorityserver' : 'biblioserver' );
+        $debug && warn $query;
+        my ( $error, $results, $totalhits ) = C4::Search::SimpleSearch( $query, 0, 3, [$server] );
+        die "unable to search the database for duplicates : $error" if ( defined $error );
+        $debug && warn "$query $server : $totalhits";
+        if ( $results && scalar(@$results) == 1 ) {
+            my $marcrecord = MARC::File::USMARC::decode( $results->[0] );
+            SetUTF8Flag($marcrecord);
+            $id = GetRecordId( $marcrecord, $tagid, $subfieldid );
+            if ( $authorities && $marcFlavour ) {
+                #Skip if authority in database is the same as the on in database
+                if ( $marcrecord->field('005')->data >= $record->field('005')->data ) {
+                    if ($yamlfile) {
+                        $yamlhash->{$originalid}->{'authid'} = $id;
+
+                        # we recover all subfields of the heading authorities
+                        my @subfields;
+                        foreach my $field ( $marcrecord->field("2..") ) {
+                            push @subfields, map { ( $_->[0] =~ /[a-z]/ ? $_->[1] : () ) } $field->subfields();
+                        }
+                        $yamlhash->{$originalid}->{'subfields'} = \@subfields;
+                    }
+                    next;
+                }
+            }
+        } elsif ( $results && scalar(@$results) > 1 ) {
+            $debug && warn "more than one match for $query";
+        } else {
+            $debug && warn "nomatch for $query";
+        }
+    }
+    if ($keepids && $originalid) {
+            my $storeidfield;
+            if ( length($keepids) == 3 ) {
+                $storeidfield = MARC::Field->new( $keepids, $originalid );
+            } else {
+                $storeidfield = MARC::Field->new( substr( $keepids, 0, 3 ), "", "", substr( $keepids, 3, 1 ), $originalid );
+            }
+            $record->insert_fields_ordered($storeidfield);
+            $record->delete_field( $record->field($tagid) );
     }
-       my $originalid;
-    if ($keepids){
-         $originalid=GetRecordId($record,$tagid,$subfieldid);
-      if ($originalid){
-                my $storeidfield;
-                if (length($keepids)==3){
-                       $storeidfield=MARC::Field->new($keepids,$originalid);
-                }
-                else  {
-                       $storeidfield=MARC::Field->new(substr($keepids,0,3),"","",substr($keepids,3,1),$originalid);
-                }
-         $record->insert_fields_ordered($storeidfield);
-            $record->delete_field($record->field($tagid));
-      }
+    foreach my $stringfilter (@$filters) {
+        if ( length($stringfilter) == 3 ) {
+            foreach my $field ( $record->field($stringfilter) ) {
+                $record->delete_field($field);
+                $debug && warn "removed : ", $field->as_string;
+            }
+        } elsif ($stringfilter =~ /([0-9]{3})([a-z0-9])(.*)/) {
+            my $removetag = $1;
+            my $removesubfield = $2;
+            my $removematch = $3;
+            if ( ( $removetag > "010" ) && $removesubfield ) {
+                foreach my $field ( $record->field($removetag) ) {
+                    $field->delete_subfield( code => "$removesubfield", match => $removematch );
+                    $debug && warn "Potentially removed : ", $field->subfield($removesubfield);
+                }
+            }
+        }
     }
     unless ($test_parameter) {
         if ($authorities){
             use C4::AuthoritiesMarc;
-            my $authtypecode=GuessAuthTypeCode($record);
+            my $authtypecode=GuessAuthTypeCode($record, $heading_fields);
             my $authid= ($id?$id:GuessAuthId($record));
-            if ($authid && GetAuthority($authid)){
+            if ($authid && GetAuthority($authid) && $update ){
             ## Authority has an id and is in database : Replace
                 eval { ( $authid ) = ModAuthority($authid,$record, $authtypecode) };
                 if ($@){
@@ -283,6 +331,14 @@ RECORD: while (  ) {
                                        printlog({id=>$originalid||$id||$authid, op=>"insert",status=>"ok"}) if ($logfile);
                                }
                }
+            if ($yamlfile) {
+            $yamlhash->{$originalid}->{'authid'} = $authid;
+            my @subfields;
+            foreach my $field ( $record->field("2..") ) {
+                push @subfields, map { ( $_->[0] =~ /[a-z]/ ? $_->[1] : () ) } $field->subfields();
+            }
+            $yamlhash->{$originalid}->{'subfields'} = \@subfields;
+            }
         }
         else {
             my ( $biblionumber, $biblioitemnumber, $itemnumbers_ref, $errors_ref );
@@ -306,20 +362,33 @@ RECORD: while (  ) {
                        }
                                        # create biblio, unless we already have it ( either match or isbn )
             if ($biblionumber) {
-                               eval{$biblioitemnumber=GetBiblioData($biblionumber)->{biblioitemnumber};}
-                       }
-                       else 
-                       {
-                eval { ( $biblionumber, $biblioitemnumber ) = AddBiblio($record, $framework, { defer_marc_save => 1 }) };
+                eval{$biblioitemnumber=GetBiblioData($biblionumber)->{biblioitemnumber};};
+                if ($update) {
+                    eval { ( $biblionumber, $biblioitemnumber ) = ModBiblio( $record, $biblionumber, GetFrameworkcode($biblionumber) ) };
+                    if ($@) {
+                        warn "ERROR: Edit biblio $biblionumber failed: $@\n";
+                        printlog( { id => $id || $originalid || $biblionumber, op => "update", status => "ERROR" } ) if ($logfile);
+                        next RECORD;
+                    } else {
+                        printlog( { id => $id || $originalid || $biblionumber, op => "update", status => "ok" } ) if ($logfile);
+                    }
+                } else {
+                    printlog( { id => $id || $originalid || $biblionumber, op => "insert", status => "warning : already in database" } ) if ($logfile);
+                }
+            } else {
+                if ($insert) {
+                    eval { ( $biblionumber, $biblioitemnumber ) = AddBiblio( $record, '', { defer_marc_save => 1 } ) };
+                    if ($@) {
+                        warn "ERROR: Adding biblio $biblionumber failed: $@\n";
+                        printlog( { id => $id || $originalid || $biblionumber, op => "insert", status => "ERROR" } ) if ($logfile);
+                        next RECORD;
+                    } else {
+                        printlog( { id => $id || $originalid || $biblionumber, op => "insert", status => "ok" } ) if ($logfile);
+                    }
+                } else {
+                    printlog( { id => $id || $originalid || $biblionumber, op => "update", status => "warning : not in database" } ) if ($logfile);
+                }
             }
-            if ( $@ ) {
-                warn "ERROR: Adding biblio $biblionumber failed: $@\n";
-                               printlog({id=>$id||$originalid||$biblionumber, op=>"insert",status=>"ERROR"}) if ($logfile);
-                next RECORD;
-            } 
-                       else{
-                               printlog({id=>$id||$originalid||$biblionumber, op=>"insert",status=>"ok"}) if ($logfile);
-                       }
             eval { ( $itemnumbers_ref, $errors_ref ) = AddItemBatchFromMarc( $record, $biblionumber, $biblioitemnumber, '' ); };
             my $error_adding = $@;
             # Work on a clone so that if there are real errors, we can maybe
@@ -384,6 +453,7 @@ RECORD: while (  ) {
             if ($#{ $errors_ref } > -1) {
                 report_item_errors($biblionumber, $errors_ref);
             }
+            $yamlhash->{$originalid} = $biblionumber if ($yamlfile);
         }
         $dbh->commit() if (0 == $i % $commitnum);
     }
@@ -407,6 +477,10 @@ if ($logfile){
   print $loghandle "$i MARC records done in $timeneeded seconds\n";
   $loghandle->close;
 }
+if ($yamlfile) {
+    open my $yamlfileout, q{>}, "$yamlfile" or die "cannot open $yamlfile \n";
+    print $yamlfileout Dump($yamlhash);
+}
 exit 0;
 
 sub GetRecordId{
@@ -445,14 +519,16 @@ sub build_query {
 sub build_simplequery {
        my $element=shift;
        my $record=shift;
-        my ($index,$recorddata)=split /,/,$element;
-        my ($tag,$subfields) =($1,$2) if ($recorddata=~/(\d{3})(.*)/);
-        my @searchstrings;
+    my @searchstrings;
+    my ($index,$recorddata)=split /,/,$element;
+    if ($recorddata=~/(\d{3})(.*)/) {
+        my ($tag,$subfields) =($1,$2);
         foreach my $field ($record->field($tag)){
                  if (length($field->as_string("$subfields"))>0){
               push @searchstrings,"$index:\"".$field->as_string("$subfields")."\"";
                  }
         }
+    }
     my $QParser;
     $QParser = C4::Context->queryparser if (C4::Context->preference('UseQueryParser'));
     my $op;
@@ -478,9 +554,21 @@ sub report_item_errors {
 }
 sub printlog{
        my $logelements=shift;
-       print $loghandle join (";",@$logelements{qw<id op status>}),"\n";
+    print $loghandle join( ";", map { defined $_ ? $_ : "" } @$logelements{qw<id op status>} ), "\n";
+}
+sub get_heading_fields{
+    my $headingfields;
+    if ($authtypes){
+        $headingfields=YAML::LoadFile($authtypes);
+        $headingfields={C4::Context->preference('marcflavour')=>$headingfields};
+        $debug && warn YAML::Dump($headingfields);
+    }
+    unless ($headingfields){
+        $headingfields=$dbh->selectall_hashref("SELECT auth_tag_to_report, authtypecode from auth_types",'auth_tag_to_report',{Slice=>{}});
+        $headingfields={C4::Context->preference('marcflavour')=>$headingfields};
+    }
+    return $headingfields;
 }
-
 
 =head1 NAME
 
@@ -542,7 +630,7 @@ The I<NUMBER> of records to wait before performing a 'commit' operation
 
 File logs actions done for each record and their status into file
 
-=item B<-t>
+=item B<-t, -test>
 
 Test mode: parses the file, saying what he would do, but doing nothing.
 
@@ -565,6 +653,32 @@ biblioitems, items
 
 Input file I<FORMAT>: I<MARCXML> or I<ISO2709> (defaults to ISO2709)
 
+=item B<-authtypes>
+
+file yamlfile with authoritiesTypes and distinguishable record field in order
+to store the correct authtype
+
+=item B<-yaml>
+
+yaml file  format a yaml file with ids
+
+=item B<-filter>
+
+list of fields that will not be imported. Can be any from 000 to 999 or field,
+subfield and subfield's matching value such as 200avalue
+
+=item B<-insert>
+
+if set, only insert when possible
+
+=item B<-update>
+
+if set, only updates (any biblio should have a matching record)
+
+=item B<-all>
+
+if set, do whatever is required
+
 =item B<-k, -keepids>=<FIELD>
 
 Field store ids in I<FIELD> (usefull for authorities, where 001 contains the
index 6c897ea..c29ef76 100755 (executable)
@@ -11,6 +11,7 @@ use C4::Biblio;
 use C4::AuthoritiesMarc;
 use C4::Items;
 use Koha::RecordProcessor;
+use XML::LibXML;
 
 # 
 # script that checks zebradir structure & create directories & mandatory files if needed
@@ -140,6 +141,8 @@ if ($do_munge) {
     munge_config();
 }
 
+my $tester = XML::LibXML->new();
+
 if ($authorities) {
     index_records('authority', $directory, $skip_export, $skip_index, $process_zebraqueue, $as_xml, $noxml, $nosanitize, $do_not_clear_zebraqueue, $verbose_logging, $zebraidx_log_opt, $authorityserverdir);
 } else {
@@ -377,8 +380,18 @@ sub export_marc_records_from_sth {
                         substr($itemsxml, index($itemsxml, "</leader>\n", 0) + 10);
                 }
             }
+            # extra test to ensure that result is valid XML; otherwise
+            # Zebra won't parse it in DOM mode
+            eval {
+                my $doc = $tester->parse_string($marcxml);
+            };
+            if ($@) {
+                warn "Error exporting record $record_number ($record_type): $@\n";
+                next;
+            }
             if ( $marcxml ) {
-                print {$fh} $marcxml if $marcxml;
+                $marcxml =~ s!<\?xml version="1.0" encoding="UTF-8"\?>\n!!;
+                print {$fh} $marcxml;
                 $num_exported++;
             }
             next;
@@ -389,6 +402,12 @@ sub export_marc_records_from_sth {
                 my $rec;
                 if ($as_xml) {
                     $rec = $marc->as_xml_record(C4::Context->preference('marcflavour'));
+                    eval {
+                        my $doc = $tester->parse_string($rec);
+                    };
+                    if ($@) {
+                        die "invalid XML: $@";
+                    }
                     $rec =~ s!<\?xml version="1.0" encoding="UTF-8"\?>\n!!;
                 } else {
                     $rec = $marc->as_usmarc();
@@ -397,7 +416,8 @@ sub export_marc_records_from_sth {
                 $num_exported++;
             };
             if ($@) {
-              warn "Error exporting record $record_number ($record_type) ".($noxml ? "not XML" : "XML");
+                warn "Error exporting record $record_number ($record_type) ".($noxml ? "not XML" : "XML");
+                warn "... specific error is $@" if $verbose_logging;
             }
         }
     }
@@ -441,7 +461,6 @@ sub export_marc_records_from_list {
             if ($@) {
               warn "Error exporting record $record_number ($record_type) ".($noxml ? "not XML" : "XML");
             }
-            $num_exported++;
         }
     }
     print "\nRecords exported: $num_exported\n" if ( $verbose_logging );
diff --git a/misc/migration_tools/switch_marc21_series_info.pl b/misc/migration_tools/switch_marc21_series_info.pl
new file mode 100755 (executable)
index 0000000..cfd204b
--- /dev/null
@@ -0,0 +1,242 @@
+#!/usr/bin/perl
+
+# Copyright 2013 Michael Hafen <mdhafen@tech.washk12.org>
+#
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# 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.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+use strict;
+use warnings;
+
+# Script to switch the MARC21 440$anv and 490$av information
+
+BEGIN {
+    # find Koha's Perl modules
+    # test carefully before changing this
+    use FindBin;
+    eval { require "$FindBin::Bin/../kohalib.pl" };
+}
+
+use C4::Biblio;
+use C4::Context;
+use Getopt::Long;
+
+my $commit;
+my $add_links;
+my $update_frameworks;
+my $show_help;
+my $verbose;
+my $result = GetOptions(
+    'c'      => \$commit,
+    'l'      => \$add_links,
+    'f'      => \$update_frameworks,
+    'h|help' => \$show_help,
+    'v'      => \$verbose,
+    );
+
+# warn and exit if we're running UNIMARC
+if (C4::Context->preference('MARCFLAVOUR') eq 'UNIMARC') {
+    print "This script is useless when you're running UNIMARC\n";
+    exit 0;
+}
+if ( ! $result || $show_help ) {
+    print_usage();
+    exit 0;
+}
+
+my $dbh = C4::Context->dbh;
+
+my $count_sth = $dbh->prepare( 'SELECT COUNT(biblionumber) FROM biblio CROSS JOIN biblioitems USING (biblionumber) WHERE ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="a"]\') OR ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="v"]\') OR ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="n"]\') OR ExtractValue(marcxml,\'//datafield[@tag="490"]/subfield[@code="a"]\') OR ExtractValue(marcxml,\'//datafield[@tag="490"]/subfield[@code="v"]\')' );
+
+my $bibs_sth = $dbh->prepare( 'SELECT biblionumber FROM biblio CROSS JOIN biblioitems USING (biblionumber) WHERE ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="a"]\') OR ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="v"]\') OR ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="n"]\') OR ExtractValue(marcxml,\'//datafield[@tag="490"]/subfield[@code="a"]\') OR ExtractValue(marcxml,\'//datafield[@tag="490"]/subfield[@code="v"]\')' );
+
+unless ( $commit ) {
+    print_usage();
+}
+
+print "Examining MARC records...\n";
+$count_sth->execute();
+my ( $num_records ) = $count_sth->fetchrow;
+
+unless ( $commit ) {
+    if ( $num_records ) {
+        print "This action would change $num_records MARC records\n";
+    }
+    else {
+        print "There appears to be no series information to change\n";
+    }
+    print "Please run this again with the '-c' option to change the records\n";
+    exit 0;
+}
+
+print "Changing $num_records MARC records...\n";
+
+#  MARC21 specific
+my %fields = (
+    '440' => {
+        'a' => 'title',
+        'n' => 'number',
+        'p' => 'part',
+        'v' => 'volume',
+        'x' => 'issn',
+        '6' => 'link',
+        '8' => 'ln',
+        'w' => 'control',
+        '0' => 'auth',
+    },
+    '490' => {
+        'a' => 'title',
+        'v' => 'volume',
+        'x' => 'issn',
+        '6' => 'link',
+        '8' => 'ln',
+    },
+    );
+
+$bibs_sth->execute();
+while ( my ( $biblionumber ) = $bibs_sth->fetchrow ) {
+    my $framework = GetFrameworkCode( $biblionumber ) || '';
+    my ( @newfields );
+
+    # Get biblio marc
+    my $biblio = GetMarcBiblio( $biblionumber );
+
+    foreach my $field ( $biblio->field( '440' ) ) {
+        my @newsubfields;
+        my @linksubfields;
+        my $has_links = '0';
+        foreach my $subfield ( sort keys %{ $fields{'440'} } ) {
+            my @values = $field->subfield( $subfield );
+
+            if ( $add_links && @values ) {
+                if ( $subfield eq 'w' || $subfield eq '0' ) {
+                    $has_links = '1';
+                }
+                foreach my $v ( @values ) {
+                    push @linksubfields, ( $subfield, $v );
+                }
+            }
+
+            if ( $subfield eq 'a' ) {
+                my @numbers = $field->subfield( 'n' );
+                my @parts = $field->subfield( 'p' );
+                my $i = 0;
+                while ( $i < @numbers || $i < @parts ) {
+                    my @strings = grep {$_} ( $values[$i], $numbers[$i], $parts[$i] );
+                    $values[$i] = join ' ', @strings;
+                    $i++;
+                }
+            }
+
+            if ( $fields{'490'}{$subfield} ) {
+                foreach my $v ( @values ) {
+                    push @newsubfields, ( $subfield, $v );
+                }
+            }
+        }
+
+        if ( $has_links && @linksubfields ) {
+            my $link_field = MARC::Field->new(
+                '830',
+                $field->indicator(1), $field->indicator(2),
+                @linksubfields
+                );
+            push @newfields, $link_field;
+        }
+
+        if ( @newsubfields ) {
+            my $new_field = MARC::Field->new( '490', $has_links, '',
+                                              @newsubfields );
+            push @newfields, $new_field;
+        }
+
+        $biblio->delete_fields( $field );
+    }
+
+    foreach my $field ( $biblio->field( '490' ) ) {
+        my @newsubfields;
+        foreach my $subfield ( sort keys %{ $fields{'490'} } ) {
+            my @values = $field->subfield( $subfield );
+
+            if ( $fields{'440'}{$subfield} ) {
+                foreach my $v ( @values ) {
+                    push @newsubfields, ( $subfield, $v );
+                }
+            }
+        }
+
+        if ( @newsubfields ) {
+            my $new_field = MARC::Field->new( '440', '', '',
+                                              @newsubfields );
+            push @newfields, $new_field;
+        }
+
+        $biblio->delete_fields( $field );
+    }
+    $biblio->insert_fields_ordered( @newfields );
+
+    if ( $verbose ) {
+        print "Changing MARC for biblio number $biblionumber.\n";
+    }
+    else {
+        print ".";
+    }
+    ModBiblioMarc( $biblio, $biblionumber, $framework );
+}
+print "\n";
+
+if ( $update_frameworks ) {
+    print "Updating Koha to MARC mappings for seriestitle and volume\n";
+
+    # set new mappings for koha fields
+    $dbh->do(
+"UPDATE marc_subfield_structure SET kohafield='seriestitle'
+  WHERE tagfield='490' AND tagsubfield='a'"
+    );
+    $dbh->do(
+"UPDATE marc_subfield_structure SET kohafield='volume'
+  WHERE tagfield='490' AND tagsubfield='v'"
+    );
+
+    # empty old koha fields
+    $dbh->do(
+"UPDATE marc_subfield_structure SET kohafield=''
+  WHERE kohafield='seriestitle' AND tagfield='440' AND tagsubfield='a'"
+        );
+    $dbh->do(
+"UPDATE marc_subfield_structure SET kohafield=''
+  WHERE kohafield='volume' AND tagfield='440' AND tagsubfield='v'"
+        );
+}
+
+sub print_usage {
+    print <<_USAGE_;
+$0: switch MARC21 440 tag and 490 tag contents
+
+Parameters:
+    -c            Commit the changes to the marc records.
+
+    -l            Add 830 tags with authority information from 440.  Otherwise
+                  this information will be ignored.
+
+    -f            Also update the Koha field to MARC framework mappings for the
+                  seriestitle and volume Koha fields.
+
+    -v            Show more information as the records are being changed.
+
+    --help or -h  show this message.
+
+_USAGE_
+}
index 0e7120e..0e8a3cf 100644 (file)
@@ -1,5 +1,5 @@
-RELEASE NOTES FOR KOHA 3.12.0-alpha2
-20 Mar 2013
+RELEASE NOTES FOR KOHA 3.12.0-beta1
+23 Mar 2013
 ========================================================================
 
 Koha is the first free and open source software library automation package 
@@ -9,9 +9,9 @@ The website for the Koha project is
 
     http://koha-community.org/
 
-Koha 3.12.0-alpha2 can be downloaded from:
+Koha 3.12.0-beta1 can be downloaded from:
 
-    http://download.koha-community.org/koha-3.12.00-alpha2.tar.gz
+    http://download.koha-community.org/koha-3.12.00-beta1.tar.gz
 
 Installation instructions can be found at:
 
@@ -20,15 +20,39 @@ Installation instructions can be found at:
     OR in the INSTALL files that come in the tarball
 
 
-This is an alpha release of Koha 3.12 and is not yet ready for use in
+This is a beta release of Koha 3.12 and is not yet ready for use in
 production. It has many new features compared to 3.10.
 
 
+It includes 6 features, 169 enhancements and 228 bugfixes.
 
-It includes 145 enhancement and 210 bugfixes.
+
+New features in 3.12.0-beta1
+======================
+
+Architecture, internals, and plumbing
+----------
+       7167    Updatedatabase improvements
+
+Authentication
+----------
+       9587    Allow login via mozilla persona - https://www.mozilla.org/en-US/persona/
+
+OPAC
+----------
+       8733    Adding critic reviews to book pages
+       8917    Track clicks to links external to Koha
+
+Patrons
+----------
+       7067    Allow patron self registration via the opac
+
+Serials
+----------
+       8782    Add a feature to close a subscription
 
 
-Enhancements and new features in 3.12.0-alpha2
+Enhancements in 3.12.0-beta1
 ======================
 
 About
@@ -47,12 +71,13 @@ Acquisitions
 Architecture, internals, and plumbing
 ----------
        7387    Add Template::Toolkit plugin to allow caching of includes
+       8089    Use Koha::Cache everywhere
        8164    Replace IFNULL() with COALESCE() in all database calls
-       7167    Updatedatabase improvements
 
 Authentication
 ----------
-       9587    Allow login via mozilla persona - https://www.mozilla.org/en-US/persona/
+       7973    Allow for new type of LDAP authentication
+       9704    Add persona login to the CCSR theme
 
 Cataloging
 ----------
@@ -73,17 +98,24 @@ Circulation
        4906    Allow fine calculation to exclude grace period
        7189    Preference to control if returning lost items gives refund
        7243    Do not take rentals as fines
+       8220    Allow koc uploads to go to process queue instead of being applied directly.
+       8365    Renewal duration in issuingules
        8758    Code seems useless in circ/returns.pl
+       9014    Add time due to slips
        9263    Trim barcodes in offline circulation
        9283    Change structure of export checkouts form
        9332    Display call number in "Holds waiting" notice (checkout page)
        9367    Code optimization: CheckReserves is too often called
        9423    Add notforloan value to issue confirmation or blocking message
+       9604    Filter overdues with homebranch and holdingbranch
 
 Command-line Utilities
 ----------
+       5608    Tool to move MARC21 series info to 490 tag
+       5635    Bulkmarcimport new parameters & features
        8519    Make koha-index-daemon run on startup
        9012    Allow bulkmarcimport to specify a framework code when importing MARC
+       9045    Adding some parameters to export_borrowers.pl
 
 Hold requests
 ----------
@@ -116,32 +148,38 @@ OPAC
        5079    Make display of shelving location and call number in XSLT results controlled by sysprefs
        5888    Opac-detail subject/author links improvements
        7620    OPACNoResult, add search string to available parameters
+       7740    Highlight items in own library in search results/detail page in OPAC
        8377    Show HTML5 video/ audio for media files in OPAC and staff client
        8712    We should use WAI-ARIA guidelines to help with accessibility -OMNIBUS bug
-       8733    Adding critic reviews to book pages
-       8917    Track clicks to links external to Koha
+       9068    Babelthèque: New podcasts area
+       9257    Add "groups" to normal search pulldown
 
 Packaging
 ----------
        8878    Koha-shell: a command to make using koha commands easier
        9143    Package related updates for master
+       9802    Add test case to verify package man pages are well formatted
+       9880    Package updates to make master build
 
 Patrons
 ----------
        7969    Select all / unselect all on fines page
        9076    Add ability to delete borrowers by expiration date and category code to cleanborrowers.pl
-       7067    Allow patron self registration via the opac
+       9718    Add POD and comments for Check_Userid and Generate_Userid subs
+       9751    Patron flags red in moremember.pl like in circulation.pl
 
 Reports
 ----------
        7678    Statistics wizard: patrons
        7896    Acquisition statistics wizard: add filters and cell values
+       9117    Reports hierarchies management improvements
        9417    Allow number of results per page to be selectable for guided reports
 
 Searching
 ----------
        9134    There is no previous link on the second page of the search results page
        9239    Koha should share Evergreen's QueryParser module for parsing queries
+       9403    Material type icons not showing for XSLT default view in intranet
 
 Self checkout
 ----------
@@ -150,15 +188,22 @@ Self checkout
 
 Serials
 ----------
+       5343    Subscription cost (Link serial and acqui modules)
+       7688    Change subscriptions numbering pattern and frequencies
+       8509    Allowing the Expected status even if another status has been saved
        8715    Select all serials for a year
-       8782    Add a feature to close a subscription
 
 SIP2
 ----------
        8125    SIP should send Zipcode with address
 
+Staff Client
+----------
+       6209    Standardize on one javascript library for client-side form validation
+
 System Administration
 ----------
+       4354    Cannot edit existing issuing rules
        5634    Ordering branches should be case independent
        8664    Add floating toolbar with save button to system preferences editor
        8906    Improve OAI management interface
@@ -187,9 +232,11 @@ Templates
        9445    Use DataTables in local use system preferences editor
        9446    Use DataTables on Z39.50 servers administration page
        9450    Use DataTables in cataloging Z39.50 search results
+       9457    Ordering branches should be case independent (2)
        9460    Use DataTables on transfers to receive report page
        9461    Use DataTables on holds awaiting pickup report page
        9462    Use DataTables on patron detail page
+       9464    Update DataTables configuration on patron statistics page
        9465    Use DataTables on update child to adult patron page
        9466    Use DataTables on saved reports page
        9467    Use DataTables on catalog by item type report page
@@ -243,10 +290,17 @@ Templates
        9694    Remove YUI styling from buttons on the patron card creator manage pages
        9696    Remove YUI styling from buttons on patron card creator edit pages
        9698    Replace YUI buttons on patron card creator manage toolbar with Bootstrap
+       9764    Replace YUI buttons on the authority search popup with Bootstrap
        9765    Remove unused include file: budgetperiods-admin.inc
+       9769    Replace YUI buttons on acquisitions basket page with Bootstrap
+       9771    Replace YUI buttons on acquisitions basket groups page with Bootstrap
+
+Tools
+----------
+       7804    Add Koha Plugin System
 
 
-Critical bugs fixed in 3.12.0-alpha2
+Critical bugs fixed in 3.12.0-beta1
 ======================
 
 (this list include all bugfixes since the previous major version. Most of them have already been fixed in maintainance releases)
@@ -269,9 +323,11 @@ Acquisitions
 
 Architecture, internals, and plumbing
 ----------
+       9907    blocker Plugins test dies early on some servers
        9574    critical        Serials/subscription-add.pl does not work right under Plack
        9832    critical        QueryParser causes software error if koha-conf.xml has not been updated
        9136    major   C4::Tags not Plack-compatible
+       9434    major   Introduce new tied cache system
 
 bugs.koha-community.org
 ----------
@@ -354,9 +410,15 @@ Test Suite
 ----------
        9142    blocker Failing test case in 3.10.0 release.
        9486    blocker T/Letters.t loads modules in wrong order
+       9909    blocker If plugins directory isn't writable, plugins test shouldn't try to write to it
+       9911    blocker Remove two invalid tests
+       9912    blocker DateUtils.t must not access database
 
 Tools
 ----------
+       9883    blocker Koha::Plugins::* should not require koha-conf to load
+       9884    blocker Plugin permissions not added to translations
+       9900    blocker Plugins should not be enabled by default
        9065    major   Upload local cover image permission implementation error
        9421    major   Tools/picture-upload.pl not Plack-compatible
 
@@ -365,7 +427,7 @@ Transaction logs
        9293    major   Action_logs not tracking payments
 
 
-Other bugs fixed in 3.12.0-alpha2
+Other bugs fixed in 3.12.0-beta1
 ======================
 
 (this list include all bugfixes since the previous major version. Most of them have already been fixed in maintainance releases)
@@ -384,9 +446,11 @@ Acquisitions
        8557    normal  In orderreceive.tt and serials-edit.tt the use of a barcode scan send the form unexpectedly
        9168    normal  Software error when filtering in receipt summary
        9280    normal  Bad price calculation when filling a basket with staged records
+       9506    normal  Values are false in the generated pdf for basketgroups
        9116    minor   Code cleaning: Remove some useless temp variables
        9226    minor   Wrong branch filter after suggestion creation
        9364    minor   Wrong billing/delivery addresses when creating a basket
+       9438    minor   Biblio notes displayed when ordering
        7875    trivial Pending suggestion link (the numbers) from staff client home directs to accepted suggestions instead of pending
        9062    trivial Tax and discount should be formatted the same
        9268    trivial Scanning in barcode or ISBN in Acquisitions -> new order submits the form unexpectedly
@@ -421,6 +485,7 @@ Cataloging
        9497    normal  Make it easier to add to the the list of possible encodings for Z39.50 servers and add ISO 8859-1
        9019    minor   ILS-DI: GetRecords should return item fields in marcxml
        9207    minor   Improve z39.50 speed slowdowns for sites with many records
+       9353    minor   Missing subfields on MARC21 frameworks
        9494    minor   Library of Congress Z39.50 target seed data outdated
 
 Circulation
@@ -429,12 +494,15 @@ Circulation
        8079    normal  Opac not showing fines - says 'no'
        8559    normal  Conflicting item statuses
        8682    normal  Quick slip: renewals do not appear on quick slips
+       9875    normal  Don't display empty tab when using (OPAC)SeparateHoldings
        8781    minor   Access to Transfer page while "independent branches" is on
        9289    minor   Adjacent checkbox behavior broken on circulation.pl
        9526    trivial Patron statistics table is not pretty, the page needs the circ toolbar added
 
 Command-line Utilities
 ----------
+       2013    normal  New Overdues.pm breaks fines2.pl
+       9496    normal  Rebuild_zebra.pl should handle invalid XML records better
        9104    minor   Country in CSV in overdue_notices.pl
        9235    minor   Hardcoded values in cronjobs/backup.sh
 
@@ -469,6 +537,10 @@ Installation and upgrade (command-line installer)
        9734    normal  String::Random is marked as optional, but C4::Members requires it
        9315    trivial Bad version of String::Random reported by koha_perl_deps.pl
 
+MARC Bibliographic data support
+----------
+       9213    normal  Implement analytics for NORMARC XSLT
+
 MARC Bibliographic record staging/import
 ----------
        5333    normal  Undefined value stops import from z39.50
@@ -512,6 +584,7 @@ OPAC
 Packaging
 ----------
        9260    normal  Koha-run-backups complains "[: 97: missing ]"
+       9890    normal  Fix the new plugin system for package installs
        9592    minor   Package dependency updates for master
        9784    minor   Koha-shell missing from koha-common man page
 
@@ -584,6 +657,7 @@ Templates
        9555    normal  Template files contain single quote strings
        9583    normal  OPAC cart button display problem in Chromium
        9695    normal  Use alphabet system preference on page used to browse patrons for patron card batches
+       9879    normal  Use DataTables on suggestions management page
        8899    minor   Remove unused CSS declarations from staff client CSS
        9215    minor   Non translatable string in manage-marc-import
        9278    minor   Remove unused OPAC CSS file sanop.css
@@ -610,6 +684,10 @@ Tools
        9415    normal  XML catalog export is missing root node
        9509    normal  BatchMod.pl does not ensure each barcode is unique
 
+Transaction logs
+----------
+       7241    normal  Circulation action logs record biblionumber instead of item number
+
 translate.koha-community.org
 ----------
        8942    normal  Translation process breaks javascript in calendar.inc
@@ -620,9 +698,10 @@ Z39.50 / SRU / OpenSearch Servers
        9520    minor   Update default LOC Z39.50 target
 
 
-New sysprefs in 3.12.0-alpha2
+New sysprefs in 3.12.0-beta1
 ======================
 
+  * DisplayOPACiconsXSLT
   * UNIMARCAuthorityField100
   * RentalsInNoissuesCharge
   * ManInvInNoissuesCharge
@@ -653,6 +732,11 @@ New sysprefs in 3.12.0-alpha2
   * UseQueryParser
   * FinesIncludeGracePeriod
   * UNIMARCAuthorsFacetsSeparator
+  * UseKohaPlugins
+  * TimeFormat
+  * DisplayIconsXSLT
+  * HighlightOwnItemsOnOPAC
+  * HighlightOwnItemsOnOPACWhich
 
 
 System requirements
@@ -694,7 +778,7 @@ interface are available in this release for the following languages:
   * Armenian (99%)
   * Chinese (China) (86%)
   * Chinese (Taiwan) (95%)
-  * Danish (76%)
+  * Danish (77%)
   * English (New Zealand) (96%)
   * French (94%)
   * French (Canada) (66%)
@@ -707,7 +791,7 @@ interface are available in this release for the following languages:
   * Portuguese (Brazil) (96%)
   * Slovak (100%)
   * Spanish (96%)
-  * Turkish (97%)
+  * Turkish (100%)
 
 
 Partial translations are available for various other languages.
@@ -729,7 +813,7 @@ The most up-to-date translations can be found at:
 Release Team
 ======================
 
-The release team for Koha 3.12.0-alpha2 is
+The release team for Koha 3.12.0-beta1 is
 
   Release Manager:       Jared Camins-Esakov <jcamins@cpbibliography.com>
   Documentation Manager: Nicole C Engard <nengard@gmail.com>
@@ -757,7 +841,7 @@ Credits
 ======================
 
 We thank the following libraries who are known to have sponsored
-new features in Koha 3.12.0-alpha2:
+new features in Koha 3.12.0-beta1:
   * Arcadia Public Library
   * Athens County Public Libraries
   * BdP de la Meuse
@@ -780,49 +864,51 @@ new features in Koha 3.12.0-alpha2:
   * VOKAL
   * Washoe County Library System
 
-We thank the following individuals who contributed patches to Koha 3.12.0-alpha2.
+We thank the following individuals who contributed patches to Koha 3.12.0-beta1.
   *     10     Tomas Cohen Arazi
   *      1     Alex Arnaud
-  *    410     Jared Camins-Esakov
+  *    486     Jared Camins-Esakov
   *      7     Colin Campbell
-  *      5     Galen Charlton
-  *      8     David Cook
-  *     20     Chris Cormack
+  *      6     Galen Charlton
+  *      9     David Cook
+  *     22     Chris Cormack
   *      2     Christophe Croullebois
   *      2     Hugh Davenport
   *      1     Elliott Davis
-  *      1     Stéphane Delaune
+  *      2     Stéphane Delaune
   *      1     Srikanth Dhondi
-  *     47     Jonathan Druart
+  *     66     Jonathan Druart
   *      3     Nicole Engard
-  *      5     Magnus Enger
+  *      6     Magnus Enger
   *     13     Vitor FERNANDES
-  *      7     Katrin Fischer
+  *     10     Katrin Fischer
   *      3     Corey Fuimaono
+  *      3     Michael Hafen
   *      1     Chris Hall
-  *     39     Kyle M Hall
+  *     58     Kyle M Hall
+  *      1     Rolando Isidoro
   *      2     Mason James
   *      3     Srdjan Jankovic
-  *      9     Bernardo Gonzalez Kriegel
-  *    128     Owen Leonard
-  *     15     Julian Maurice
+  *     14     Bernardo Gonzalez Kriegel
+  *    136     Owen Leonard
+  *     27     Julian Maurice
   *      1     Melia Meggs
   *      1     Matthias Meusburger
-  *      2     Sophie Meynieux
+  *      4     Sophie Meynieux
   *      1     Nadia Nicolaides
-  *      2     Dobrica Pavlinusic
+  *      6     Dobrica Pavlinusic
   *      1     Maxime Pelletier
   *      1     Fred Pierre
-  *     12     Paul Poulain
+  *     17     Paul Poulain
   *      1     Romina Racca
   *      3     MJ Ray
   *     10     Liz Rea
   *      2     Martin Renvoize
-  *     14     Marcel de Rooy
-  *     32     Fridolyn SOMERS
+  *     15     Marcel de Rooy
+  *     34     Fridolyn SOMERS
   *      6     Mathieu Saby
-  *      7     Adrien Saurat
-  *     10     Robin Sheat
+  *     12     Adrien Saurat
+  *     12     Robin Sheat
   *      1     Zeno Tajoli
   *      2     Lyon3 Team
   *      4     Mirko Tietgen
@@ -830,22 +916,22 @@ We thank the following individuals who contributed patches to Koha 3.12.0-alpha2
   *      2     Marc Veron
   *      1     koha-preprod
 
-We thank the following companies who contributed patches to Koha 3.12.0-alpha2
-  *     128 ACPL                                                                                          
-  *       7 BSZ BW                                                                                         
-  *     120 BibLibre                                                                                    
-  *       7 BigBallOfWax                                                                          
-  *      45 ByWater-Solutions                                                                   
-  *     410 C & P Bibliography                                                                    
-  *      38 Catalyst                                                                                 
-  *       5 Equinox                                                                                   
+We thank the following companies who contributed patches to Koha 3.12.0-beta1
+  *     136 ACPL                                                                                          
+  *      10 BSZ BW                                                                                         
+  *     166 BibLibre                                                                                    
+  *       8 BigBallOfWax                                                                          
+  *      63 ByWater-Solutions                                                                   
+  *     486 C & P Bibliography                                                                    
+  *      41 Catalyst                                                                                 
+  *       6 Equinox                                                                                   
   *       2 KohaAloha                                                                                  
   *       1 Libeo                                                                                       
   *       1 Libeo                                                                                          
-  *       5 Libriotech                                                                                 
+  *       6 Libriotech                                                                                 
   *       9 PTFS-Europe                                                                              
-  *       8 Prosentient Systems
-  *      14 Rijksmuseum                                                                               
+  *       9 Prosentient Systems
+  *      15 Rijksmuseum                                                                               
   *       3 Software.coop                                                                             
   *       2 Université Jean Moulin Lyon 3
   *       6 Université Rennes 2
@@ -854,56 +940,68 @@ We thank the following companies who contributed patches to Koha 3.12.0-alpha2
   *       2 davenport.net.nz
   *       1 di.unc.edu.ar
   *      13 keep.pt
-  *       2 rot13.org                                                                                      
+  *       6 rot13.org                                                                                      
   *       1 smfpl.org
-  *      23 unidentified
+  *       3 tech.washk12.org
+  *      30 unidentified
   *       2 veron.ch
 
 We also especially thank the following individuals who tested patches
-for Koha 3.12.0-alpha2.
+for Koha 3.12.0-beta1.
   *       1 Koha Team Lyon 3
   *       1 Pierre Angot
-  *       2 Tomas Cohen Arazi
-  *       1 Brendan
-  *     480 Jared Camins-Esakov
+  *       6 Tomas Cohen Arazi
+  *       5 Leila Arkab
+  *       1 Larry Baerveldt
+  *       1 Bob Birchall
+  *       1 Nora Blake
+  *       2 Brendan
+  *       2 Broust
+  *       1 Corinne Bulac
+  *     582 Jared Camins-Esakov
   *       1 Colin Campbell
-  *      25 Galen Charlton
+  *      26 Galen Charlton
   *       4 David Cook
-  *      48 Chris Cormack
+  *      50 Chris Cormack
   *       3 Hugh Davenport
   *      31 Elliott Davis
-  *       2 Frédéric Demians
+  *       3 Frédéric Demians
   *       2 Srikanth Dhondi
-  *     181 Jonathan Druart
+  *     196 Jonathan Druart
   *       1 Jonathan Druarth
-  *      19 Nicole C. Engard
-  *       1 Magnus Enger
+  *       2 Frederic Durand
+  *      21 Nicole C. Engard
+  *       3 Magnus Enger
   *       1 Vitor FERNANDES
-  *     164 Katrin Fischer
-  *      90 Kyle M Hall
-  *       1 Claire Hernandez
+  *       1 Vitor Fernandes
+  *     213 Katrin Fischer
+  *     109 Kyle M Hall
+  *       2 Claire Hernandez
   *       3 Rolando Isodoro
-  *      14 Mason James
-  *      81 Bernardo Gonzalez Kriegel
-  *      53 Owen Leonard
-  *       6 Julian Maurice
-  *      19 Melia Meggs
+  *      15 Mason James
+  *      96 Bernardo Gonzalez Kriegel
+  *      58 Owen Leonard
+  *       7 Julian Maurice
+  *      22 Melia Meggs
+  *       1 Pascale Nalon
   *      18 Chris Nighswonger
-  *       1 Dobrica Pavlinusic
-  *      49 Paul Poulain
+  *       3 Dobrica Pavlinusic
+  *      77 Paul Poulain
   *       3 MJ Ray
-  *      13 Liz Rea
+  *      14 Liz Rea
   *       1 Martin Renvoize
-  *      39 Marcel de Rooy
+  *      44 Marcel de Rooy
   *       1 M. de Rooy
   *       2 Fridolyn SOMERS
-  *       1 Mathieu Saby
+  *       3 Mathieu Saby
+  *       1 Adrien Saurat
   *       2 Robin Sheat
   *       2 Delaye Stephane
   *       1 Zeno Tajoli
   *      12 Mirko Tietgen
   *       1 Ed Veal
   *      12 Marc Veron
+  *       2 Cedric Vita
   *       2 Ian Walls
   *       2 koha.aixmarseille
   *       3 mathieu saby
@@ -937,4 +1035,4 @@ tracker at
 He rau ringa e oti ai.
 (Many hands finish the work)
 
-##### Autogenerated release notes updated last on 20 Mar 2013 14:09:21 Z #####
+##### Autogenerated release notes updated last on 23 Mar 2013 13:32:26 Z #####
diff --git a/misc/translator/stats.pl b/misc/translator/stats.pl
deleted file mode 100755 (executable)
index 1f1c631..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-#!/usr/bin/perl
-
-# Copyright 2003-2004 Nathan Walp <faceprint@faceprint.com>
-# Adapted for Koha by Ambrose Li <acli@ada.dhs.org>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY 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 this program; if not, write to the Free Software Foundation, Inc., 
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-#
-
-#use strict;
-#use warnings; FIXME - Bug 2505
-
-my $PACKAGE="koha";
-
-
-use Locale::Language;
-
-$lang{en_AU} = "English (Australian)";
-$lang{en_CA} = "English (Canadian)";
-$lang{en_GB} = "English (British)";
-$lang{es_AR} = "Spanish (Argentinian)";
-$lang{fr_FR} = "French"; # FIXME: should be just "fr"
-$lang{it_IT} = "Italian"; # FIXME: should be just "it"
-$lang{my_MM} = "Burmese (Myanmar)";
-$lang{pl_PL} = "Polish"; # FIXME: should be just "pl"
-$lang{pt_BR} = "Portuguese (Brazilian)";
-$lang{'sr@Latn'} = "Serbian (Latin)";
-$lang{zh_CN} = "Chinese (Simplified)";
-$lang{zh_TW} = "Chinese (Traditional)";
-
-$ENV{LANG} = $ENV{LC_ALL} = 'C';
-
-opendir(DIR, ".") || die "can't open directory: $!";
-@pos = grep { /\.po$/ && -f } readdir(DIR);
-foreach (@pos) { s/\.po$//; };
-closedir DIR;
-
-@pos = sort @pos;
-
-$now = `date`;
-
-system("./update.pl --pot > /dev/null");
-
-print "<html>\n";
-print "<head><title>$PACKAGE i18n statistics</title></head>\n";
-print "<body>\n";
-
-opendir(DIR, ".") || die "can't open directory: $!";
-@templates = grep { /\.pot$/ && -f } readdir(DIR);
-foreach (@templates) { s/\.pot$//; };
-closedir DIR;
-for my $PACKAGE (sort {
-           my($theme1, $module1) = ($1, $2) if $a =~ /^(.*)_([^_]+)$/;
-           my($theme2, $module2) = ($1, $2) if $b =~ /^(.*)_([^_]+)$/;
-           return $module1 cmp $module2 || $theme1 cmp $theme2
-       } @templates) {
-    my @pos_orig = @pos;
-    my @pos = grep { /^${PACKAGE}_/ } @pos_orig;
-    my($theme, $module) = ($1, $2) if $PACKAGE =~ /^(.*)_([^_]+)$/;
-
-$_ = `msgfmt --statistics $PACKAGE.pot -o /dev/null 2>&1`;
-
-die "unable to get total: $!" unless (/(\d+) untranslated messages/);
-
-$total = $1;
-
-print "<h1>Module $module, theme $theme</h1>\n";
-print "<table cellspacing='0' cellpadding='0' border='0' bgcolor='#888888' width='100%'><tr><td><table cellspacing='1' cellpadding='2' border='0' width='100%'>\n";
-
-print"<tr bgcolor='#e0e0e0'><th>language</th><th style='background: #339933;'>trans</th><th style='background: #339933;'>%</th><th style='background: #333399;'>fuzzy</th><th style='background: #333399;'>%</th><th style='background: #dd3333;'>untrans</th><th style='background: #dd3333;'>%</th><th>&nbsp;</th></tr>\n";
-
-foreach $index (0 .. $#pos) {
-       $trans = $fuzz = $untrans = 0;
-       $po = $pos[$index];
-       next if $po =~ /_en_EN/; # Koha-specific
-       print STDERR "$po..." if($ARGV[0] eq '-v');
-       system("msgmerge $po.po $PACKAGE.pot -o $po.new 2>/dev/null");
-       $_ = `msgfmt --statistics $po.new -o /dev/null 2>&1`;
-       chomp;
-       if(/(\d+) translated message/) { $trans = $1; }
-       if(/(\d+) fuzzy translation/) { $fuzz = $1; }
-       if(/(\d+) untranslated message/) { $untrans = $1; }
-       $transp = 100 * $trans / $total;
-       $fuzzp = 100 * $fuzz / $total;
-       $untransp = 100 * $untrans / $total;
-       if($index % 2) {
-               $color = " bgcolor='#e0e0e0'";
-       } else {
-               $color = " bgcolor='#d0e0ff'";
-       }
-       my $lang = $1 if $po =~ /^${PACKAGE}_(.*)$/; # Koha-specific
-       $name = "";
-       $name = $lang{$lang}; # NOTE
-       $name = code2language($lang) unless $name ne ""; # NOTE
-       $name = "???" unless $name ne "";
-       printf "<tr$color><td>%s(%s.po)</td><td>%d</td><td>%0.2f</td><td>%d</td><td>%0.2f</td><td>%d</td><td>%0.2f</td><td>",
-       $name, $po, $trans, $transp, $fuzz, $fuzzp, $untrans, $untransp;
-       printf "<img src='bar_g.gif' height='15' width='%0.0f' />", $transp*2
-       unless $transp*2 < 0.5;
-       printf "<img src='bar_b.gif' height='15' width='%0.0f' />", $fuzzp*2
-       unless $fuzzp*2 < 0.5;
-       printf "<img src='bar_r.gif' height='15' width='%0.0f' />", $untransp*2
-       unless $untransp*2 < 0.5;
-       print "</tr>\n";
-       unlink("$po.new");
-       print STDERR "done ($untrans untranslated strings).\n" if($ARGV[0] eq '-v');
-}
-print "</table></td></tr></table>\n";
-print "Latest $PACKAGE.pot generated $now: <a href='$PACKAGE.pot'>$PACKAGE.pot</a><br />\n";
-}
-print "</body>\n";
-print "</html>\n";
-
index f0c12c9..de14401 100755 (executable)
@@ -91,6 +91,8 @@ given language or for all available languages.
 
 =head1 USAGE
 
+Use the -v or --verbose parameter to make translator more verbose.
+
 =over
 
 =item translate create F<lang>
@@ -127,7 +129,7 @@ updated.
 
 =item translate [-p] install F<lang>
 
-Use .po files to translate the english version of templayes and preferences files
+Use .po files to translate the english version of templates and preferences files
 and copy those files in the appropriate directory. Without F<lang>, all
 available languages are installed. With -p option, only preferences .po file is
 updated.
diff --git a/misc/translator/update.pl b/misc/translator/update.pl
deleted file mode 100755 (executable)
index 6f31ffb..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-#!/usr/bin/perl
-# script to update all translations
-use strict;
-use warnings;
-use lib '/home/chris/git/koha.git';
-use C4::Languages;
-# Go through the theme/module combinations we need to update.
-my $dir = "po";
-my $po;
-opendir (DIR,$dir);
-while (defined($po = readdir(DIR))) {
-    next if $po =~ /^\.\.?$/;
-    print "processing $po...\n";
-    my $interface = 'intranet';
-    if ($po =~ /opac/) {
-        $interface = 'opac';
-    }
-    system("./tmpl_process3.pl update -i ../../koha-tmpl/$interface-tmpl/prog/en/ -s po/$po -r");
-    print "Finished\n";
-}
-closedir DIR;
-
-=head1 EXAMPLE
-
- my($theme, $module) = @$spec;
-   my $pid = fork;
-   die "fork: $!\n" unless defined $pid;
-   if (!$pid) {
-
-      # If current directory is translator/po instead of translator,
-      # then go back to the parent
-      if ($chdir_needed_p) {
-        chdir('..') || die "..: cd: $!\n";
-      }
-
-      # Now call tmpl_process3.pl to do the real work
-      #
-      # Traditionally, the pot file should be named PACKAGE.pot
-      # (for Koha probably something like koha_intranet_css.pot),
-      # but this is not Koha's convention.
-      #
-      my $target = "po/${theme}_${module}" . ($pot_p? ".pot": "_$lang.po");
-      rename($target, "$target~") if $pot_p;
-      exec('./tmpl_process3.pl', ($pot_p? 'create': 'update'),
-           '-i', "../../koha-tmpl/$module-tmpl/$theme/en/",
-           '-s', $target, '-r');
-
-      die "tmpl_process3.pl: exec: $!\n";
-   }
-   wait;
- }
-=cut
diff --git a/offline_circ/enqueue_koc.pl b/offline_circ/enqueue_koc.pl
new file mode 100755 (executable)
index 0000000..bfc1e35
--- /dev/null
@@ -0,0 +1,197 @@
+#!/usr/bin/perl
+
+# 2008 Kyle Hall <kyle.m.hall@gmail.com>
+
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# 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.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+
+use strict;
+use warnings;
+
+use CGI;
+use C4::Output;
+use C4::Auth;
+use C4::Koha;
+use C4::Context;
+use C4::Biblio;
+use C4::Accounts;
+use C4::Circulation;
+use C4::Items;
+use C4::Members;
+use C4::Stats;
+use C4::UploadedFile;
+
+use Date::Calc qw( Add_Delta_Days Date_to_Days );
+
+use constant DEBUG => 0;
+
+# this is the file version number that we're coded against.
+my $FILE_VERSION = '1.0';
+
+my $query = CGI->new;
+my @output;
+
+my ($template, $loggedinuser, $cookie) = get_template_and_user({
+    template_name => "offline_circ/enqueue_koc.tmpl",
+    query => $query,
+    type => "intranet",
+    authnotrequired => 0,
+     flagsrequired   => { circulate => "circulate_remaining_permissions" },
+});
+
+
+my $fileID=$query->param('uploadedfileid');
+my %cookies = parse CGI::Cookie($cookie);
+my $sessionID = $cookies{'CGISESSID'}->value;
+## 'Local' globals.
+our $dbh = C4::Context->dbh();
+
+if ($fileID) {
+    my $uploaded_file = C4::UploadedFile->fetch($sessionID, $fileID);
+    my $fh = $uploaded_file->fh();
+    my @input_lines = <$fh>;
+
+    my $header_line = shift @input_lines;
+    my $file_info   = parse_header_line($header_line);
+    if ($file_info->{'Version'} ne $FILE_VERSION) {
+        push @output, {
+            message => 1,
+            ERROR_file_version => 1,
+            upload_version => $file_info->{'Version'},
+            current_version => $FILE_VERSION
+        };
+    }
+
+    my $userid = C4::Context->userenv->{id};
+    my $branchcode = C4::Context->userenv->{branch};
+
+    foreach  my $line (@input_lines)  {
+        my $command_line = parse_command_line($line);
+        my $timestamp = $command_line->{'date'} . ' ' . $command_line->{'time'};
+        my $action = $command_line->{'command'};
+        my $barcode = $command_line->{'barcode'};
+        my $cardnumber = $command_line->{'cardnumber'};
+        my $amount = $command_line->{'amount'};
+
+        AddOfflineOperation( $userid, $branchcode, $timestamp, $action, $barcode, $cardnumber, $amount );
+    }
+
+}
+
+$template->param( messages => \@output );
+
+output_html_with_http_headers $query, $cookie, $template->output;
+
+=head1 FUNCTIONS
+
+=head2 parse_header_line
+
+parses the header line from a .koc file. This is the line that
+specifies things such as the file version, and the name and version of
+the offline circulation tool that generated the file. See
+L<http://wiki.koha-community.org/wiki/Koha_offline_circulation_file_format>
+for more information.
+
+pass in a string containing the header line (the first line from th
+file).
+
+returns a hashref containing the information from the header.
+
+=cut
+
+sub parse_header_line {
+    my $header_line = shift;
+    chomp($header_line);
+    $header_line =~ s/\r//g;
+
+    my @fields = split( /\t/, $header_line );
+    my %header_info = map { split( /=/, $_ ) } @fields;
+    return \%header_info;
+}
+
+=head2 parse_command_line
+
+=cut
+
+sub parse_command_line {
+    my $command_line = shift;
+    chomp($command_line);
+    $command_line =~ s/\r//g;
+
+    my ( $timestamp, $command, @args ) = split( /\t/, $command_line );
+    my ( $date,      $time,    $id )   = split( /\s/, $timestamp );
+
+    my %command = (
+        date    => $date,
+        time    => $time,
+        id      => $id,
+        command => $command,
+    );
+
+    # set the rest of the keys using a hash slice
+    my $argument_names = arguments_for_command($command);
+    @command{@$argument_names} = @args;
+
+    return \%command;
+
+}
+
+=head2 arguments_for_command
+
+fetches the names of the columns (and function arguments) found in the
+.koc file for a particular command name. For instance, the C<issue>
+command requires a C<cardnumber> and C<barcode>. In that case this
+function returns a reference to the list C<qw( cardnumber barcode )>.
+
+parameters: the command name
+
+returns: listref of column names.
+
+=cut
+
+sub arguments_for_command {
+    my $command = shift;
+
+    # define the fields for this version of the file.
+    my %format = (
+        issue   => [qw( cardnumber barcode )],
+        return  => [qw( barcode )],
+        payment => [qw( cardnumber amount )],
+    );
+
+    return $format{$command};
+}
+
+=head2 _get_borrowernumber_from_barcode
+
+pass in a barcode
+get back the borrowernumber of the patron who has it checked out.
+undef if that can't be found
+
+=cut
+
+sub _get_borrowernumber_from_barcode {
+    my $barcode = shift;
+
+    return unless $barcode;
+
+    my $item = GetBiblioFromItemNumber( undef, $barcode );
+    return unless $item->{'itemnumber'};
+
+    my $issue = C4::Circulation::GetItemIssue( $item->{'itemnumber'} );
+    return unless $issue->{'borrowernumber'};
+    return $issue->{'borrowernumber'};
+}
index de129ff..c503948 100755 (executable)
@@ -54,6 +54,7 @@ for (@$operations) {
     }
     $_->{'actionissue'}    = $_->{'action'} eq 'issue';
     $_->{'actionreturn'}   = $_->{'action'} eq 'return';
+    $_->{'actionpayment'}  = $_->{'action'} eq 'payment';
 }
 $template->param(pending_operations => $operations);
 
index 1914644..d106098 100755 (executable)
@@ -15,9 +15,9 @@
 # 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;
+
 # FIXME - Generates a warning from C4/Context.pm (uninitilized value).
 
 use CGI;
@@ -36,4 +36,15 @@ my ( $template, $borrowernumber, $cookie ) = get_template_and_user(
     }
 );
 
-output_html_with_http_headers $input, '', $template->output;
+my $koha_db_version = C4::Context->preference('Version');
+my $kohaversion     = C4::Context::KOHAVERSION;
+$kohaversion =~ s/(.*\..*)\.(.*)\.(.*)/$1$2$3/;
+
+#warn "db: $koha_db_version, koha: $kohaversion";
+
+if ( $kohaversion > $koha_db_version or C4::Context->preference('OpacMaintenance') ) {
+    output_html_with_http_headers $input, '', $template->output;
+}
+else {
+    print $input->redirect("/cgi-bin/koha/opac-main.pl");
+}
index 4371f65..bab4ff6 100755 (executable)
@@ -441,6 +441,38 @@ if ($hideitems) {
     @items = @all_items;
 }
 
+my $branches = GetBranches();
+my $branch = C4::Context->userenv->{branch};
+if ( C4::Context->preference('HighlightOwnItemsOnOPAC') ) {
+    if (
+        ( ( C4::Context->preference('HighlightOwnItemsOnOPACWhich') eq 'PatronBranch' ) && $branch )
+        ||
+        C4::Context->preference('HighlightOwnItemsOnOPACWhich') eq 'OpacURLBranch'
+    ) {
+        my $branchname;
+        if ( C4::Context->preference('HighlightOwnItemsOnOPACWhich') eq 'PatronBranch' ) {
+            $branchname = $branches->{$branch}->{'branchname'};
+        }
+        elsif (  C4::Context->preference('HighlightOwnItemsOnOPACWhich') eq 'OpacURLBranch' ) {
+            $branchname = $branches->{ $ENV{'BRANCHCODE'} }->{'branchname'};
+        }
+
+        my @our_items;
+        my @other_items;
+
+        foreach my $item ( @items ) {
+           if ( $item->{'branchname'} eq $branchname ) {
+               $item->{'this_branch'} = 1;
+               push( @our_items, $item );
+           } else {
+               push( @other_items, $item );
+           }
+        }
+
+        @items = ( @our_items, @other_items );
+    }
+}
+
 my $dat = &GetBiblioData($biblionumber);
 
 my $itemtypes = GetItemTypes();
@@ -511,7 +543,6 @@ if ( $show_holds_count || $show_priority) {
 $template->param( show_priority => $has_hold ) ;
 
 my $norequests = 1;
-my $branches = GetBranches();
 my %itemfields;
 my (@itemloop, @otheritemloop);
 my $currentbranch = C4::Context->userenv ? C4::Context->userenv->{branch} : undef;
index a0ba296..677b7c2 100755 (executable)
@@ -60,9 +60,24 @@ use Business::ISBN;
 my $DisplayMultiPlaceHold = C4::Context->preference("DisplayMultiPlaceHold");
 # create a new CGI object
 # FIXME: no_undef_params needs to be tested
-use CGI qw('-no_undef_params');
+use CGI qw( -no_undef_params -utf8 );
 my $cgi = new CGI;
 
+my $branch_group_limit = $cgi->param("branch_group_limit");
+if ( $branch_group_limit ) {
+    if ( $branch_group_limit =~ /^multibranchlimit/ ) {
+        $cgi->param(
+            -name => 'multibranchlimit',
+            -values => [ ( split( 'multibranchlimit-', $branch_group_limit ) )[1] ]
+        );
+    } else {
+        $cgi->append(
+            -name => 'limit',
+            -values => [ $branch_group_limit ]
+        );
+    }
+}
+
 BEGIN {
     if (C4::Context->preference('BakerTaylorEnabled')) {
         require C4::External::BakerTaylor;
@@ -77,6 +92,7 @@ my $template_name;
 my $template_type = 'basic';
 my @params = $cgi->param("limit");
 
+
 my $format = $cgi->param("format") || '';
 my $build_grouped_results = C4::Context->preference('OPACGroupResults');
 if ($format =~ /(rss|atom|opensearchdescription)/) {
@@ -636,7 +652,7 @@ for (my $i=0;$i<@servers;$i++) {
                 $newsearchcookie = $cgi->cookie(
                             -name => 'KohaOpacRecentSearches',
                             # We uri_escape the whole freezed structure so we're sure we won't have any encoding problems
-                            -value => uri_escape(freeze(\@recentSearches)),
+                            -value => uri_escape_utf8(freeze(\@recentSearches)),
                             -expires => ''
                 );
                 $cookie = [$cookie, $newsearchcookie];
@@ -699,6 +715,42 @@ for (my $i=0;$i<@servers;$i++) {
             $template->param(results_per_page =>  $results_per_page);
             my $hide = C4::Context->preference('OpacHiddenItems');
             $hide = ($hide =~ m/\S/) if $hide; # Just in case it has some spaces/new lines
+            my $branch = '';
+            if (C4::Context->userenv){
+                $branch = C4::Context->userenv->{branch};
+            }
+            if ( C4::Context->preference('HighlightOwnItemsOnOPAC') ) {
+                if (
+                    ( ( C4::Context->preference('HighlightOwnItemsOnOPACWhich') eq 'PatronBranch' ) && $branch )
+                    ||
+                    C4::Context->preference('HighlightOwnItemsOnOPACWhich') eq 'OpacURLBranch'
+                ) {
+                    my $branchname;
+                    if ( C4::Context->preference('HighlightOwnItemsOnOPACWhich') eq 'PatronBranch' ) {
+                        $branchname = $branches->{$branch}->{'branchname'};
+                    }
+                    elsif (  C4::Context->preference('HighlightOwnItemsOnOPACWhich') eq 'OpacURLBranch' ) {
+                        $branchname = $branches->{ $ENV{'BRANCHCODE'} }->{'branchname'};
+                    }
+
+                    foreach my $res ( @newresults ) {
+                        my @new_loop;
+                        my @top_loop;
+                        my @old_loop = @{$res->{'available_items_loop'}};
+                        foreach my $item ( @old_loop ) {
+                            if ( $item->{'branchname'} eq $branchname ) {
+                                $item->{'this_branch'} = 1;
+                                push( @top_loop, $item );
+                            } else {
+                                push( @new_loop, $item );
+                            }
+                        }
+                        my @complete_loop = ( @top_loop, @new_loop );
+                        $res->{'available_items_loop'} = \@complete_loop;
+                    }
+                }
+            }
+
             $template->param(
                 SEARCH_RESULTS => \@newresults,
                 OPACItemsResultsDisplay => (C4::Context->preference("OPACItemsResultsDisplay")),
index 3d5f3b8..38c6df0 100755 (executable)
@@ -125,7 +125,7 @@ $template->param(do_it => 1,
                 branch => $branches->{$branch}->{branchname},
                 itemtype => $itemtypes->{$itemtype}->{description},
                 timeLimit => $timeLimit,
-                timeLimitFinite => $timeLimit,
+                timeLimitFinite => $timeLimitFinite,
                 results_loop => \@results,
                 );
 
index 23d85a9..c25767a 100755 (executable)
@@ -17,8 +17,6 @@
 # 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;
 
 use CGI;
 use Text::CSV;
@@ -106,6 +104,7 @@ elsif ( $phase eq 'Build new' ) {
         'savedreports' => get_saved_reports($filter),
         'usecache' => $usecache,
         'groups_with_subgroups'=> groups_with_subgroups($group, $subgroup),
+        dateformat => C4::Context->preference('dateformat'),
     );
 }
 
@@ -178,6 +177,8 @@ elsif ( $phase eq 'Update SQL'){
       push @errors, {cache_expiry => $cache_expiry};
     }
 
+    create_non_existing_group_and_subgroup($input, $group, $subgroup);
+
     if ($sql =~ /;?\W?(UPDATE|DELETE|DROP|INSERT|SHOW|CREATE)\W/i) {
         push @errors, {sqlerr => $1};
     }
@@ -482,6 +483,9 @@ elsif ( $phase eq 'Save Report' ) {
     if( $cache_expiry && $cache_expiry >= 2592000 ){
       push @errors, {cache_expiry => $cache_expiry};
     }
+
+    create_non_existing_group_and_subgroup($input, $group, $subgroup);
+
     ## FIXME this is AFTER entering a name to save the report under
     if ($sql =~ /;?\W?(UPDATE|DELETE|DROP|INSERT|SHOW|CREATE)\W/i) {
         push @errors, {sqlerr => $1};
@@ -661,7 +665,7 @@ elsif ($phase eq 'Run this report'){
             my $totpages = int($total/$limit) + (($total % $limit) > 0 ? 1 : 0);
             my $url = "/cgi-bin/koha/reports/guided_reports.pl?reports=$report_id&amp;phase=Run%20this%20report&amp;limit=$limit";
             if (@sql_params) {
-                $url = join('&amp;sql_params=', $url, map { URI::Escape::uri_escape($_) } @sql_params);
+                $url = join('&amp;sql_params=', $url, map { URI::Escape::uri_escape_utf8($_) } @sql_params);
             }
             $template->param(
                 'results' => \@rows,
@@ -735,9 +739,9 @@ elsif ( $phase eq 'Create report from SQL' ) {
         $group = $input->param('report_group');
         $subgroup  = $input->param('report_subgroup');
         $template->param(
-            'sql'           => $input->param('sql'),
-            'reportname'    => $input->param('reportname'),
-            'notes'         => $input->param('notes'),
+            'sql'           => $input->param('sql') // '',
+            'reportname'    => $input->param('reportname') // '',
+            'notes'         => $input->param('notes') // '',
         );
     }
     $template->param(
@@ -790,13 +794,17 @@ sub groups_with_subgroups {
 
     my $groups_with_subgroups = get_report_groups();
     my @g_sg;
-    while (my ($g_id, $v) = each %$groups_with_subgroups) {
+    my @sorted_keys = sort {
+        $groups_with_subgroups->{$a}->{name} cmp $groups_with_subgroups->{$b}->{name}
+    } keys %$groups_with_subgroups;
+    foreach my $g_id (@sorted_keys) {
+        my $v = $groups_with_subgroups->{$g_id};
         my @subgroups;
         if (my $sg = $v->{subgroups}) {
-            while (my ($sg_id, $n) = each %$sg) {
+            foreach my $sg_id (sort { $sg->{$a} cmp $sg->{$b} } keys %$sg) {
                 push @subgroups, {
                     id => $sg_id,
-                    name => $n,
+                    name => $sg->{$sg_id},
                     selected => ($group && $g_id eq $group && $subgroup && $sg_id eq $subgroup ),
                 };
             }
@@ -810,3 +818,21 @@ sub groups_with_subgroups {
     }
     return \@g_sg;
 }
+
+sub create_non_existing_group_and_subgroup {
+    my ($input, $group, $subgroup) = @_;
+
+    if (defined $group and $group ne '') {
+        my $report_groups = C4::Reports::Guided::get_report_groups;
+        if (not exists $report_groups->{$group}) {
+            my $groupdesc = $input->param('groupdesc') // $group;
+            C4::Koha::AddAuthorisedValue('REPORT_GROUP', $group, $groupdesc);
+        }
+        if (defined $subgroup and $subgroup ne '') {
+            if (not exists $report_groups->{$group}->{subgroups}->{$subgroup}) {
+                my $subgroupdesc = $input->param('subgroupdesc') // $subgroup;
+                C4::Koha::AddAuthorisedValue('REPORT_SUBGROUP', $subgroup, $subgroupdesc, $group);
+            }
+        }
+    }
+}
index dbdced9..232db8b 100755 (executable)
@@ -127,7 +127,7 @@ foreach my $barcode (@barcodes) {
 # redirection to the referrer page
 #
 if ( $input->param('destination') eq "circ" ) {
-    $cardnumber = uri_escape($cardnumber);
+    $cardnumber = uri_escape_utf8($cardnumber);
     print $input->redirect( '/cgi-bin/koha/circ/circulation.pl?findborrower='
           . $cardnumber
           . $failedrenews
index ae7070f..06b6b3a 100755 (executable)
@@ -34,7 +34,7 @@ my ($template, $loggedinuser, $cookie)
                             query => $query,
                             type => "intranet",
                             authnotrequired => 0,
-                            flagsrequired => {parameters => 1},
+                          flagsrequired => { tools => 'rotating_collections' },
                             debug => 1,
                             });
 
index 4c4849c..e386608 100755 (executable)
@@ -33,7 +33,7 @@ my ($template, $loggedinuser, $cookie)
                             query => $query,
                             type => "intranet",
                             authnotrequired => 0,
-                            flagsrequired => {parameters => 1},
+                          flagsrequired => { tools => 'rotating_collections' },
                             debug => 1,
                             });
 
index 52ee5ee..35aea56 100755 (executable)
@@ -33,7 +33,7 @@ my ($template, $loggedinuser, $cookie)
                             query => $query,
                             type => "intranet",
                             authnotrequired => 0,
-                            flagsrequired => {parameters => 1},
+                          flagsrequired => { tools => 'rotating_collections' },
                             debug => 1,
                             });
 
index 39945d5..23eff46 100755 (executable)
@@ -38,7 +38,7 @@ my ($template, $loggedinuser, $cookie)
                             query => $query,
                             type => "intranet",
                             authnotrequired => 0,
-                            flagsrequired => {parameters => 1},
+                          flagsrequired => { tools => 'rotating_collections' },
                             debug => 1,
                             });
 
index 437c852..9869f1c 100755 (executable)
@@ -127,7 +127,7 @@ $routingnotes =~ s/\n/\<br \/\>/g;
 $template->param(
     title => $subs->{'bibliotitle'},
     issue => $issue,
-    issue_escaped => URI::Escape::uri_escape($issue),
+    issue_escaped => URI::Escape::uri_escape_utf8($issue),
     subscriptionid => $subscriptionid,
     memberloop => $memberloop,
     routingnotes => $routingnotes,
index a95631b..5dee5ea 100755 (executable)
@@ -62,7 +62,7 @@ if($op eq 'add'){
 if($op eq 'save'){
     my $sth = $dbh->prepare('UPDATE serial SET routingnotes = ? WHERE subscriptionid = ?');
     $sth->execute($notes,$subscriptionid);
-    my $urldate = URI::Escape::uri_escape($date_selected);
+    my $urldate = URI::Escape::uri_escape_utf8($date_selected);
     print $query->redirect("routing-preview.pl?subscriptionid=$subscriptionid&issue=$urldate");
 }
 
index aaf64e6..de26736 100755 (executable)
@@ -38,10 +38,13 @@ use C4::Serials;
 
 my $query         = new CGI;
 my $title         = $query->param('title_filter') || '';
+utf8::decode($title);
 my $ISSN          = $query->param('ISSN_filter') || '';
 my $EAN           = $query->param('EAN_filter') || '';
 my $publisher     = $query->param('publisher_filter') || '';
+utf8::decode($publisher);
 my $bookseller    = $query->param('bookseller_filter') || '';
+utf8::decode($bookseller);
 my $biblionumber  = $query->param('biblionumber') || '';
 my $branch        = $query->param('branch_filter') || '';
 my $routing       = $query->param('routing') || C4::Context->preference("RoutingSerials");
@@ -106,7 +109,7 @@ my $branches = GetBranches();
 my @branches_loop;
 foreach (sort keys %$branches){
     my $selected = 0;
-    $selected = 1 if( $branch eq $_ );
+    $selected = 1 if( defined $branch and $branch eq $_ );
     push @branches_loop, {
         branchcode  => $_,
         branchname  => $branches->{$_}->{'branchname'},
index 009360b..8bfee43 100755 (executable)
 # 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;
+use Modern::Perl;
 use CGI;
+use C4::Acquisition;
 use C4::Auth;
+use C4::Bookseller qw/GetBookSellerFromId/;
+use C4::Budgets;
 use C4::Koha;
 use C4::Dates qw/format_date/;
 use C4::Serials;
@@ -128,34 +130,33 @@ if (! $subs->{periodicity}) {
 my $default_bib_view = get_default_view();
 
 my ( $order, $bookseller, $tmpl_infos );
-# FIXME = see http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=5335#c52
-#if ( defined $subscriptionid ) {
-#    my $lastOrderNotReceived = GetLastOrderNotReceivedFromSubscriptionid $subscriptionid;
-#    my $lastOrderReceived = GetLastOrderReceivedFromSubscriptionid $subscriptionid;
-#    if ( defined $lastOrderNotReceived ) {
-#        my $basket = GetBasket $lastOrderNotReceived->{basketno};
-#        my $bookseller = GetBookSellerFromId $basket->{booksellerid};
-#        ( $tmpl_infos->{valuegsti_ordered}, $tmpl_infos->{valuegste_ordered} ) = get_value_with_gst_params ( $lastOrderNotReceived->{ecost}, $lastOrderNotReceived->{gstrate}, $bookseller );
-#        $tmpl_infos->{valuegsti_ordered} = sprintf( "%.2f", $tmpl_infos->{valuegsti_ordered} );
-#        $tmpl_infos->{valuegste_ordered} = sprintf( "%.2f", $tmpl_infos->{valuegste_ordered} );
-#        $tmpl_infos->{budget_name_ordered} = GetBudgetName $lastOrderNotReceived->{budget_id};
-#        $tmpl_infos->{basketno} = $lastOrderNotReceived->{basketno};
-#        $tmpl_infos->{ordered_exists} = 1;
-#    }
-#    if ( defined $lastOrderReceived ) {
-#        my $basket = GetBasket $lastOrderReceived->{basketno};
-#        my $bookseller = GetBookSellerFromId $basket->{booksellerid};
-#        ( $tmpl_infos->{valuegsti_spent}, $tmpl_infos->{valuegste_spent} ) = get_value_with_gst_params ( $lastOrderReceived->{unitprice}, $lastOrderReceived->{gstrate}, $bookseller );
-#        $tmpl_infos->{valuegsti_spent} = sprintf( "%.2f", $tmpl_infos->{valuegsti_spent} );
-#        $tmpl_infos->{valuegste_spent} = sprintf( "%.2f", $tmpl_infos->{valuegste_spent} );
-#        $tmpl_infos->{budget_name_spent} = GetBudgetName $lastOrderReceived->{budget_id};
-#        $tmpl_infos->{invoicenumber} = $lastOrderReceived->{booksellerinvoicenumber};
-#        $tmpl_infos->{spent_exists} = 1;
-#    }
-#}
+if ( defined $subscriptionid ) {
+    my $lastOrderNotReceived = GetLastOrderNotReceivedFromSubscriptionid $subscriptionid;
+    my $lastOrderReceived = GetLastOrderReceivedFromSubscriptionid $subscriptionid;
+    if ( defined $lastOrderNotReceived ) {
+        my $basket = GetBasket $lastOrderNotReceived->{basketno};
+        my $bookseller = GetBookSellerFromId $basket->{booksellerid};
+        ( $tmpl_infos->{valuegsti_ordered}, $tmpl_infos->{valuegste_ordered} ) = get_value_with_gst_params ( $lastOrderNotReceived->{ecost}, $lastOrderNotReceived->{gstrate}, $bookseller );
+        $tmpl_infos->{valuegsti_ordered} = sprintf( "%.2f", $tmpl_infos->{valuegsti_ordered} );
+        $tmpl_infos->{valuegste_ordered} = sprintf( "%.2f", $tmpl_infos->{valuegste_ordered} );
+        $tmpl_infos->{budget_name_ordered} = GetBudgetName $lastOrderNotReceived->{budget_id};
+        $tmpl_infos->{basketno} = $lastOrderNotReceived->{basketno};
+        $tmpl_infos->{ordered_exists} = 1;
+    }
+    if ( defined $lastOrderReceived ) {
+        my $basket = GetBasket $lastOrderReceived->{basketno};
+        my $bookseller = GetBookSellerFromId $basket->{booksellerid};
+        ( $tmpl_infos->{valuegsti_spent}, $tmpl_infos->{valuegste_spent} ) = get_value_with_gst_params ( $lastOrderReceived->{unitprice}, $lastOrderReceived->{gstrate}, $bookseller );
+        $tmpl_infos->{valuegsti_spent} = sprintf( "%.2f", $tmpl_infos->{valuegsti_spent} );
+        $tmpl_infos->{valuegste_spent} = sprintf( "%.2f", $tmpl_infos->{valuegste_spent} );
+        $tmpl_infos->{budget_name_spent} = GetBudgetName $lastOrderReceived->{budget_id};
+        $tmpl_infos->{invoiceid} = $lastOrderReceived->{invoiceid};
+        $tmpl_infos->{spent_exists} = 1;
+    }
+}
 
 $template->param(
-       subscriptionid => $subscriptionid,
+    subscriptionid => $subscriptionid,
     serialslist => \@serialslist,
     hasRouting  => $hasRouting,
     routing => C4::Context->preference("RoutingSerials"),
@@ -175,7 +176,9 @@ $template->param(
     default_bib_view => $default_bib_view,
     (uc(C4::Context->preference("marcflavour"))) => 1,
     show_acquisition_details => defined $tmpl_infos->{ordered_exists} || defined $tmpl_infos->{spent_exists} ? 1 : 0,
-    );
+    basketno => $order->{basketno},
+    %$tmpl_infos,
+);
 
 output_html_with_http_headers $query, $cookie, $template->output;
 
@@ -193,3 +196,36 @@ sub get_default_view {
     }
     return 'detail';
 }
+
+sub get_value_with_gst_params {
+    my $value = shift;
+    my $gstrate = shift;
+    my $bookseller = shift;
+    if ( $bookseller->{listincgst} ) {
+        return ( $value, $value / ( 1 + $gstrate ) );
+    } else {
+        return ( $value * ( 1 + $gstrate ), $value );
+    }
+}
+
+sub get_gste {
+    my $value = shift;
+    my $gstrate = shift;
+    my $bookseller = shift;
+    if ( $bookseller->{invoiceincgst} ) {
+        return $value / ( 1 + $gstrate );
+    } else {
+        return $value;
+    }
+}
+
+sub get_gst {
+    my $value = shift;
+    my $gstrate = shift;
+    my $bookseller = shift;
+    if ( $bookseller->{invoiceincgst} ) {
+        return $value / ( 1 + $gstrate ) * $gstrate;
+    } else {
+        return $value * ( 1 + $gstrate ) - $value;
+    }
+}
index 3e43339..f93428d 100755 (executable)
@@ -86,7 +86,7 @@ sub import_bib {
 
     my $matcher = C4::Matcher->new($params->{record_type} || 'biblio');
     $matcher = C4::Matcher->fetch($params->{matcher_id});
-    my $number_of_matches =  BatchFindBibDuplicates($batch_id, $matcher);
+    my $number_of_matches =  BatchFindDuplicates($batch_id, $matcher);
 
     # XXX we are ignoring the result of this;
     BatchCommitRecords($batch_id, $framework) if lc($import_mode) eq 'direct';
index 8890cea..eab8424 100755 (executable)
@@ -29,7 +29,9 @@ cmp_ok $date_string, 'eq', '2011-06-16 12:00', 'iso output';
 $date_string = output_pref( $dt, 'iso', '12hr' );
 cmp_ok $date_string, 'eq', '2011-06-16 12:00 PM', 'iso output 12hr';
 
-$date_string = output_pref( $dt, 'iso', undef, 1 );
+# "notime" doesn't actually mean anything in this context, but we
+# can't pass undef or output_pref will try to access the database
+$date_string = output_pref( $dt, 'iso', 'notime', 1 );
 cmp_ok $date_string, 'eq', '2011-06-16', 'iso output (date only)';
 
 $date_string = output_pref( $dt, 'us', '24hr' );
@@ -38,14 +40,14 @@ cmp_ok $date_string, 'eq', '06/16/2011 12:00', 'us output';
 $date_string = output_pref( $dt, 'us', '12hr' );
 cmp_ok $date_string, 'eq', '06/16/2011 12:00 PM', 'us output 12hr';
 
-$date_string = output_pref( $dt, 'us', undef, 1 );
+$date_string = output_pref( $dt, 'us', 'notime', 1 );
 cmp_ok $date_string, 'eq', '06/16/2011', 'us output (date only)';
 
 # metric should return the French Revolutionary Calendar Really
 $date_string = output_pref( $dt, 'metric', '24hr' );
 cmp_ok $date_string, 'eq', '16/06/2011 12:00', 'metric output';
 
-$date_string = output_pref( $dt, 'metric', undef, 1 );
+$date_string = output_pref( $dt, 'metric', 'notime', 1 );
 cmp_ok $date_string, 'eq', '16/06/2011', 'metric output (date only)';
 
 $date_string = output_pref_due( $dt, 'metric', '24hr' );
index 4a5b31e..c015425 100755 (executable)
@@ -10,7 +10,7 @@ use POSIX qw(strftime);
 
 use C4::Bookseller qw( GetBookSellerFromId );
 
-use Test::More tests => 38;
+use Test::More tests => 37;
 
 BEGIN {
     use_ok('C4::Acquisition');
@@ -67,10 +67,9 @@ SKIP: {
                              quantity
                              quantityreceived
                              rrp
-                             serialid
                              sort1
                              sort2
-                             subscription
+                             subscriptionid
                              supplierreference
                              surname
                              timestamp
diff --git a/t/db_dependent/Acquisition/OrderFromSubscription.t b/t/db_dependent/Acquisition/OrderFromSubscription.t
new file mode 100644 (file)
index 0000000..91936a8
--- /dev/null
@@ -0,0 +1,79 @@
+use Modern::Perl;
+
+use Test::More tests => 10;
+use Data::Dumper;
+
+use_ok('C4::Serials');
+use_ok('C4::Budgets');
+use_ok('C4::Acquisition');
+my $supplierlist=eval{GetSuppliersWithLateIssues()};
+ok(length($@)==0,"No SQL problem in GetSuppliersWithLateIssues");
+
+my $biblionumber = 1;
+my $budgetid;
+my $bpid = AddBudgetPeriod({
+    budget_period_startdate => '01-01-2015',
+    budget_period_enddate   => '31-12-2015',
+    budget_description      => "budget desc"
+});
+
+my $budget_id = AddBudget({
+    budget_code        => "ABCD",
+    budget_amount      => "123.132",
+    budget_name        => "Périodiques",
+    budget_notes       => "This is a note",
+    budget_description => "Serials",
+    budget_active      => 1,
+    budget_period_id   => $bpid
+});
+
+my $subscriptionid = NewSubscription(
+    undef,      "",     undef, undef, $budget_id, $biblionumber, '01-01-2013',undef,
+    undef,      undef,  undef, undef, undef,      undef,         undef,  undef,
+    undef,      undef,  undef, undef, undef,      undef,         undef,  undef,
+    undef,      undef,  undef, undef, undef,      undef,         undef,  1,
+    "notes",    undef,  undef, undef, undef,      undef,         undef,  0,
+    "intnotes", 0,      undef, undef, 0,          undef,         '31-12-2013',
+);
+die unless $subscriptionid;
+my $cost = 42.00;
+my $subscription = GetSubscription( $subscriptionid );
+my ( $basketno, $ordernumber ) = NewOrder({
+    biblionumber => $subscription->{biblionumber},
+    entrydate => '01-01-2013',
+    quantity => 1,
+    currency => 'USD',
+    listprice => $cost,
+    notes => "This is a note",
+    basketno => 1,
+    rrp => $cost,
+    ecost => $cost,
+    gstrate => 0.0500,
+    orderstatus => 0,
+    subscriptionid => $subscription->{subscriptionid},
+    budget_id => $budget_id,
+});
+
+my $is_currently_on_order = subscriptionCurrentlyOnOrder( $subscription->{subscriptionid} );
+is ( $is_currently_on_order, 1, "The subscription is currently on order");
+
+my $order = GetLastOrderNotReceivedFromSubscriptionid( $subscription->{subscriptionid} );
+is ( $order->{subscriptionid}, $subscription->{subscriptionid}, "test subscriptionid for the last order not received");
+ok( $order->{ecost} == $cost, "test cost for the last order not received");
+
+my ( $datereceived, $new_ordernumber ) = ModReceiveOrder(
+    $biblionumber, $ordernumber, 1, undef, $cost, $cost,
+    undef, $cost, $budget_id, '02-01-2013', undef);
+
+$order = GetLastOrderReceivedFromSubscriptionid( $subscription->{subscriptionid} );
+is ( $order->{subscriptionid}, $subscription->{subscriptionid}, "test subscriptionid for the last order received");
+ok( $order->{ecost} == $cost, "test cost for the last order received");
+
+$order = GetLastOrderNotReceivedFromSubscriptionid( $subscription->{subscriptionid} );
+is ( $order, undef, "test no not received order for a received order");
+
+# cleaning
+DelSubscription( $subscription->{subscriptionid} );
+DelOrder( $subscription->{biblionumber}, $ordernumber );
+DelBudgetPeriod($bpid);
+DelBudget($budget_id);
index 6ec8b57..717f8fe 100755 (executable)
@@ -1,9 +1,8 @@
 use strict;
 use warnings;
-use Test::More tests=>17;
+use Test::More tests=>18;
 
 BEGIN {use_ok('C4::Budgets') }
-use C4::Budgets;
 use C4::Dates;
 
 use YAML;
@@ -99,7 +98,9 @@ ok(GetBudgets({budget_period_id=>$bpid},[{"budget_name"=>0}])>0,
 ok(GetBudgets({budget_period_id=>GetBudgetPeriod($bpid)->{budget_period_id}},[{"budget_name"=>0}])>0,
        "GetBudgets With Order 
        Getting Active budgetPeriod OK");
-ok($del_status=DelBudget($budget_id),
-       "DelBudget returned $del_status");
 
+my $budget_name = GetBudgetName( $budget_id );
+is($budget_name, $budget->{budget_name}, "Test the GetBudgetName routine");
 
+ok($del_status=DelBudget($budget_id),
+    "DelBudget returned $del_status");
index 8fab844..31e5960 100755 (executable)
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-use Test::More tests => 15;
+use Test::More tests => 16;
 
 BEGIN {
     use_ok('C4::Circulation');
@@ -108,3 +108,20 @@ is(
     $CircControl,
     'CircControl reset to its initial value'
 );
+
+# Test C4::Circulation::ProcessOfflinePayment
+my $sth = C4::Context->dbh->prepare("SELECT COUNT(*) FROM accountlines WHERE amount = '-123.45' AND accounttype = 'Pay'");
+$sth->execute();
+my ( $original_count ) = $sth->fetchrow_array();
+
+C4::Context->dbh->do("INSERT INTO borrowers ( cardnumber, surname, firstname, categorycode, branchcode ) VALUES ( '99999999999', 'Hall', 'Kyle', 'S', 'MPL' )");
+
+C4::Circulation::ProcessOfflinePayment({ cardnumber => '99999999999', amount => '123.45' });
+
+$sth->execute();
+my ( $new_count ) = $sth->fetchrow_array();
+
+ok( $new_count == $original_count  + 1, 'ProcessOfflinePayment makes payment correctly' );
+
+C4::Context->dbh->do("DELETE FROM accountlines WHERE borrowernumber IN ( SELECT borrowernumber FROM borrowers WHERE cardnumber = '99999999999' )");
+C4::Context->dbh->do("DELETE FROM borrowers WHERE cardnumber = '99999999999'");
diff --git a/t/db_dependent/Circulation_issuingrules.t b/t/db_dependent/Circulation_issuingrules.t
new file mode 100644 (file)
index 0000000..4303af7
--- /dev/null
@@ -0,0 +1,123 @@
+#!/usr/bin/perl
+
+use Modern::Perl;
+
+use t::lib::Mocks::Context;
+use Test::More tests => 7;
+use Test::MockModule;
+use DBI;
+use DateTime;
+
+my $contextmodule = new Test::MockModule('C4::Context');
+$contextmodule->mock('_new_dbh', sub {
+    my $dbh = DBI->connect( 'DBI:Mock:', '', '' )
+    || die "Cannot create handle: $DBI::errstr\n";
+    return $dbh
+});
+
+use_ok('C4::Circulation');
+
+my $dbh = C4::Context->dbh();
+
+my $issuelength = 10;
+my $renewalperiod = 5;
+my $lengthunit = 'days';
+
+my $expected = {
+    issuelength => $issuelength,
+    renewalperiod => $renewalperiod,
+    lengthunit => $lengthunit
+};
+
+my $default = {
+    issuelength => 21,
+    renewalperiod => 21,
+    lengthunit => 'days'
+};
+
+my $loanlength;
+my $mock_undef = [
+    []
+];
+
+my $mock_loan_length = [
+    ['issuelength', 'renewalperiod', 'lengthunit'],
+    [$issuelength, $renewalperiod, $lengthunit]
+];
+
+my $categorycode = 'B';
+my $itemtype = 'MX';
+my $branchcode = 'FPL';
+
+#=== GetLoanLength
+$dbh->{mock_add_resultset} = $mock_loan_length;
+$loanlength = C4::Circulation::GetLoanLength($categorycode, $itemtype, $branchcode);
+is_deeply($loanlength, $expected, 'first matches');
+
+$dbh->{mock_add_resultset} = $mock_undef;
+$loanlength = C4::Circulation::GetLoanLength($categorycode, $itemtype, $branchcode);
+is_deeply($loanlength, $default, 'none matches');
+
+#=== CalcDateDue
+
+#Set syspref ReturnBeforeExpiry = 1 and useDaysMode = 'Days'
+$contextmodule->mock('preference', sub {
+    my ($self, $syspref) = @_;
+    given ( $syspref ) {
+        when ("ReturnBeforeExpiry"){ return 1; }
+        when ("useDaysMode"){ return 'Days'; }
+        default{ return; }
+    }
+});
+
+my $dateexpiry = '2013-01-01';
+
+my $borrower = {categorycode => 'B', dateexpiry => $dateexpiry};
+my $start_date = DateTime->new({year => 2013, month => 2, day => 9});
+$dbh->{mock_add_resultset} = $mock_loan_length;
+my $date = C4::Circulation::CalcDateDue( $start_date, $itemtype, $branchcode, $borrower );
+is($date, $dateexpiry . 'T23:59:00', 'date expiry');
+
+$dbh->{mock_add_resultset} = $mock_loan_length;
+$date = C4::Circulation::CalcDateDue( $start_date, $itemtype, $branchcode, $borrower, 1 );
+
+
+#Set syspref ReturnBeforeExpiry = 1 and useDaysMode != 'Days'
+$contextmodule->mock('preference', sub {
+    my ($self, $syspref) = @_;
+    given ( $syspref ) {
+        when ("ReturnBeforeExpiry"){ return 1; }
+        when ("useDaysMode"){ return 'noDays'; }
+        default{ return; }
+    }
+});
+
+$borrower = {categorycode => 'B', dateexpiry => $dateexpiry};
+$start_date = DateTime->new({year => 2013, month => 2, day => 9});
+$dbh->{mock_add_resultset} = $mock_loan_length;
+$date = C4::Circulation::CalcDateDue( $start_date, $itemtype, $branchcode, $borrower );
+is($date, $dateexpiry . 'T23:59:00', 'date expiry');
+
+$dbh->{mock_add_resultset} = $mock_loan_length;
+$date = C4::Circulation::CalcDateDue( $start_date, $itemtype, $branchcode, $borrower, 1 );
+
+
+#Set syspref ReturnBeforeExpiry = 0 and useDaysMode = 'Days'
+$contextmodule->mock('preference', sub {
+    my ($self, $syspref) = @_;
+    given ( $syspref ) {
+        when ("ReturnBeforeExpiry"){ return 0; }
+        when ("useDaysMode"){ return 'Days'; }
+        default{ return; }
+    }
+});
+
+$borrower = {categorycode => 'B', dateexpiry => $dateexpiry};
+$start_date = DateTime->new({year => 2013, month => 2, day => 9});
+$dbh->{mock_add_resultset} = $mock_loan_length;
+$date = C4::Circulation::CalcDateDue( $start_date, $itemtype, $branchcode, $borrower );
+is($date, '2013-02-' . (9 + $issuelength) . 'T23:59:00', "date expiry ( 9 + $issuelength )");
+
+$dbh->{mock_add_resultset} = $mock_loan_length;
+$date = C4::Circulation::CalcDateDue( $start_date, $itemtype, $branchcode, $borrower, 1 );
+is($date, '2013-02-' . (9 + $renewalperiod) . 'T23:59:00', "date expiry ( 9 + $renewalperiod )");
index aea5245..1a68c7d 100644 (file)
@@ -32,9 +32,7 @@ subtest 'Authorized Values Tests' => sub {
 
 
 # Insert an entry into authorised_value table
-    my $query = "INSERT INTO authorised_values (category, authorised_value, lib, lib_opac, imageurl) VALUES (?,?,?,?,?);";
-    my $sth = $dbh->prepare($query);
-    my $insert_success = $sth->execute($data->{category}, $data->{authorised_value}, $data->{lib}, $data->{lib_opac}, $data->{imageurl});
+    my $insert_success = AddAuthorisedValue($data->{category}, $data->{authorised_value}, $data->{lib}, $data->{lib_opac}, $data->{imageurl});
     ok($insert_success, "Insert data in database");
 
 
@@ -57,8 +55,8 @@ subtest 'Authorized Values Tests' => sub {
 
 # Clean up
     if($insert_success){
-        $query = "DELETE FROM authorised_values WHERE category=? AND authorised_value=? AND lib=? AND lib_opac=? AND imageurl=?;";
-        $sth = $dbh->prepare($query);
+        my $query = "DELETE FROM authorised_values WHERE category=? AND authorised_value=? AND lib=? AND lib_opac=? AND imageurl=?;";
+        my $sth = $dbh->prepare($query);
         $sth->execute($data->{category}, $data->{authorised_value}, $data->{lib}, $data->{lib_opac}, $data->{imageurl});
     }
 };
index 03fa4bf..bb7a836 100755 (executable)
@@ -33,7 +33,7 @@ ok( $plugin->can('configure'), 'Test plugin can configure' );
 ok( $plugin->can('install'), 'Test plugin can install' );
 ok( $plugin->can('uninstall'), 'Test plugin can install' );
 
-ok( Koha::Plugins::Handler->run({ class => "Koha::Plugin::Test", method => 'report' }) eq "Koha::Plugin::Test::report", 'Test run plugin report method' );
+ok( Koha::Plugins::Handler->run({ class => "Koha::Plugin::Test", method => 'report', enable_plugins => 1 }) eq "Koha::Plugin::Test::report", 'Test run plugin report method' );
 
 my $metadata = $plugin->get_metadata();
 ok( $metadata->{'name'} eq 'Test Plugin', 'Test $plugin->get_metadata()' );
@@ -41,17 +41,24 @@ ok( $metadata->{'name'} eq 'Test Plugin', 'Test $plugin->get_metadata()' );
 ok( $plugin->get_qualified_table_name('mytable') eq 'koha_plugin_test_mytable', 'Test $plugin->get_qualified_table_name()' );
 ok( $plugin->get_plugin_http_path() eq '/plugin/Koha/Plugin/Test', 'Test $plugin->get_plugin_http_path()' );
 
-my @plugins = Koha::Plugins->new()->GetPlugins( 'report' );
+my @plugins = Koha::Plugins->new({ enable_plugins => 1 })->GetPlugins( 'report' );
 ok( $plugins[0]->get_metadata()->{'name'} eq 'Test Plugin', "Koha::Plugins::GetPlugins functions correctly" );
 
-my $plugins_dir = C4::Context->config("pluginsdir");
-my $ae = Archive::Extract->new( archive => "$Bin/KitchenSinkPlugin.kpz", type => 'zip' );
-unless ( $ae->extract( to => $plugins_dir ) ) {
-    warn "ERROR: " . $ae->error;
+SKIP: {
+    my $plugins_dir = C4::Context->config("pluginsdir");
+    skip "plugindir not set", 3 unless defined $plugins_dir;
+    skip "plugindir not writable", 3 unless -w $plugins_dir;
+    skip "KitchenSink plugin already installed", 3 if (-f "$plugins_dir/Koha/Plugin/Com/ByWaterSolutions/KitchenSink.pm");
+
+    my $ae = Archive::Extract->new( archive => "$Bin/KitchenSinkPlugin.kpz", type => 'zip' );
+    unless ( $ae->extract( to => $plugins_dir ) ) {
+        warn "ERROR: " . $ae->error;
+    }
+    use_ok('Koha::Plugin::Com::ByWaterSolutions::KitchenSink');
+    $plugin = Koha::Plugin::Com::ByWaterSolutions::KitchenSink->new({ enable_plugins => 1});
+
+    ok( -f $plugins_dir . "/Koha/Plugin/Com/ByWaterSolutions/KitchenSink.pm", "KitchenSink plugin installed successfully" );
+    Koha::Plugins::Handler->delete({ class => "Koha::Plugin::Com::ByWaterSolutions::KitchenSink" });
+    ok( !( -f $plugins_dir . "/Koha/Plugin/Com/ByWaterSolutions/KitchenSink.pm" ), "Koha::Plugins::Handler::delete works correctly." );
 }
-use_ok('Koha::Plugin::Com::ByWaterSolutions::KitchenSink');
-$plugin = Koha::Plugin::Com::ByWaterSolutions::KitchenSink->new({ enable_plugins => 1});
 
-ok( -f $plugins_dir . "/Koha/Plugin/Com/ByWaterSolutions/KitchenSink.pm", "KitchenSink plugin installed successfully" );
-Koha::Plugins::Handler->delete({ class => "Koha::Plugin::Com::ByWaterSolutions::KitchenSink" });
-ok( !( -f $plugins_dir . "/Koha/Plugin/Com/ByWaterSolutions/KitchenSink.pm" ), "Koha::Plugins::Handler::delete works correctly." );
index b3a1ff8..2ec90b2 100644 (file)
@@ -48,6 +48,7 @@ sub methods : Test( 1 ) {
                       CheckRepeatableSpecialHolidays
                       CheckValidBarcode
                       ReturnLostItem
+                      ProcessOfflinePayment
                 );
     
     can_ok( $self->testing_class, @methods );    
index 13eb1f2..07d9d41 100644 (file)
@@ -23,7 +23,6 @@ sub methods : Test( 1 ) {
                        BorType 
                        ReplacementCost 
                        GetFine 
-                       GetIssuingRules 
                        ReplacementCost2 
                        GetNextIdNotify 
                        NumberNotifyId
index 09449a3..bb04988 100755 (executable)
@@ -99,15 +99,20 @@ my @day_month_holidays;
 foreach my $monthDay (keys %$day_month_holidays) {
     # Determine date format on month and day.
     my $day_monthdate;
+    my $day_monthdate_sort;
     if (C4::Context->preference("dateformat") eq "metric") {
+      $day_monthdate_sort = "$day_month_holidays->{$monthDay}{month}-$day_month_holidays->{$monthDay}{day}";
       $day_monthdate = "$day_month_holidays->{$monthDay}{day}/$day_month_holidays->{$monthDay}{month}";
     } elsif (C4::Context->preference("dateformat") eq "us") {
       $day_monthdate = "$day_month_holidays->{$monthDay}{month}/$day_month_holidays->{$monthDay}{day}";
+      $day_monthdate_sort = $day_monthdate;
     } else {
       $day_monthdate = "$day_month_holidays->{$monthDay}{month}-$day_month_holidays->{$monthDay}{day}";
+      $day_monthdate_sort = $day_monthdate;
     }
     my %day_month;
     %day_month = (KEY => $monthDay,
+                  DATE_SORT => $day_monthdate_sort,
                   DATE => $day_monthdate,
                   TITLE => $day_month_holidays->{$monthDay}{title},
                   DESCRIPTION => $day_month_holidays->{$monthDay}{description});
@@ -120,6 +125,7 @@ foreach my $yearMonthDay (keys %$exception_holidays) {
     my $exceptiondate = C4::Dates->new($exception_holidays->{$yearMonthDay}{date}, "iso");
     my %exception_holiday;
     %exception_holiday = (KEY => $yearMonthDay,
+                          DATE_SORT => $exception_holidays->{$yearMonthDay}{date},
                           DATE => $exceptiondate->output("syspref"),
                           TITLE => $exception_holidays->{$yearMonthDay}{title},
                           DESCRIPTION => $exception_holidays->{$yearMonthDay}{description});
@@ -132,6 +138,7 @@ foreach my $yearMonthDay (keys %$single_holidays) {
     my $holidaydate = C4::Dates->new($single_holidays->{$yearMonthDay}{date}, "iso");
     my %holiday;
     %holiday = (KEY => $yearMonthDay,
+                DATE_SORT => $single_holidays->{$yearMonthDay}{date},
                 DATE => $holidaydate->output("syspref"),
                 TITLE => $single_holidays->{$yearMonthDay}{title},
                 DESCRIPTION => $single_holidays->{$yearMonthDay}{description});
index a462aba..68c6701 100755 (executable)
@@ -195,8 +195,9 @@ sub add_form {
     }
     else {
         push @{$field_selection}, add_fields('biblio','biblioitems'),
-            {value => q{},             text => '---ITEMS---'  },
+            add_fields('items'),
             {value => 'items.content', text => 'items.content'},
+            {value => 'items.fine',    text => 'items.fine'},
             add_fields('borrowers');
         if ($module eq 'circulation') {
             push @{$field_selection}, add_fields('opac_news');
index 29386b3..e48aaef 100755 (executable)
@@ -96,6 +96,7 @@ if ($src eq 'circ') {   # if we were called from circulation, use the circulatio
                         email           => $data->{'email'},
                         branchcode      => $data->{'branchcode'},
                         branchname             => GetBranchName($data->{'branchcode'}),
+                        RoutingSerials => C4::Context->preference('RoutingSerials'),
     );
 }