|
Lines 18-36
Link Here
|
| 18 |
//]]> |
18 |
//]]> |
| 19 |
</script> |
19 |
</script> |
| 20 |
<script type="text/javascript" src="[% themelang %]/js/marc_modification_templates.js"></script> |
20 |
<script type="text/javascript" src="[% themelang %]/js/marc_modification_templates.js"></script> |
|
|
21 |
<style type="text/css"> |
| 22 |
#add_action { display: none; } |
| 23 |
</style> |
| 21 |
</head> |
24 |
</head> |
| 22 |
|
25 |
|
| 23 |
<body id="tools_marc_modification_templates" class="tools"> |
26 |
<body id="tools_marc_modification_templates" class="tools"> |
| 24 |
[% INCLUDE 'header.inc' %] |
27 |
[% INCLUDE 'header.inc' %] |
| 25 |
[% INCLUDE 'cat-search.inc' %] |
28 |
[% INCLUDE 'cat-search.inc' %] |
| 26 |
|
29 |
|
| 27 |
<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a> › MARC modification templates</div> |
30 |
[% IF ( TemplatesLoop ) %] |
|
|
31 |
[% FOREACH TemplatesLoo IN TemplatesLoop %] |
| 32 |
[% IF ( TemplatesLoo.selected ) %] |
| 33 |
[% SET template_name = TemplatesLoo.name %] |
| 34 |
[% END %] |
| 35 |
[% END %] |
| 36 |
[% END %] |
| 37 |
|
| 38 |
<div id="breadcrumbs"> |
| 39 |
<a href="/cgi-bin/koha/mainpage.pl">Home</a> › |
| 40 |
<a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a> › |
| 41 |
[% IF ( template_name ) %] |
| 42 |
<a href="/cgi-bin/koha/tools/marc_modification_templates.pl">MARC modification templates</a> |
| 43 |
› [% template_name %] |
| 44 |
[% ELSE %] |
| 45 |
MARC modification templates |
| 46 |
[% END %] |
| 47 |
</div> |
| 28 |
|
48 |
|
| 29 |
<div id="doc3" class="yui-t2"> |
49 |
<div id="doc3" class="yui-t2"> |
| 30 |
<div id="bd"> |
50 |
<div id="bd"> |
| 31 |
<div id="yui-main"> |
51 |
<div id="yui-main"> |
| 32 |
<div class="yui-b"> |
52 |
<div class="yui-b"> |
| 33 |
<h2>MARC modification templates</h2> |
53 |
|
|
|
54 |
<div id="toolbar" class="btn-toolbar"> |
| 55 |
<a href="#" data-toggle="modal" data-template_id="" data-target="#createTemplate" id="new_template" class="btn btn-small duplicate_template"><i class="fa fa-plus"></i> New template</a> |
| 56 |
[% IF ( template_id != '' ) %] |
| 57 |
<a href="#" id="new_action" class="btn btn-small"><i class="fa fa-plus"></i> New action</a> |
| 58 |
[% END %] |
| 59 |
</div> |
| 34 |
|
60 |
|
| 35 |
[% IF error %] |
61 |
[% IF error %] |
| 36 |
[% IF error == 'no_from_field' %] |
62 |
[% IF error == 'no_from_field' %] |
|
Lines 40-285
Link Here
|
| 40 |
|
66 |
|
| 41 |
[% IF ( TemplatesLoop ) %] |
67 |
[% IF ( TemplatesLoop ) %] |
| 42 |
|
68 |
|
| 43 |
<form method="get" action="/cgi-bin/koha/tools/marc_modification_templates.pl" id="select_template"> |
69 |
[% IF ( template_id == '' ) %] |
| 44 |
<label for="select_template">Template: </label> |
|
|
| 45 |
<select name="template_id" id="select_template" style="width:20em;"> |
| 46 |
[% FOREACH TemplatesLoo IN TemplatesLoop %] |
| 47 |
[% IF ( TemplatesLoo.selected ) %] |
| 48 |
<option value="[% TemplatesLoo.template_id %]" selected="selected"> [% TemplatesLoo.name %]</option> |
| 49 |
[% ELSE %] |
| 50 |
<option value="[% TemplatesLoo.template_id %]"> [% TemplatesLoo.name %]</option> |
| 51 |
[% END %] |
| 52 |
[% END %] |
| 53 |
</select> |
| 54 |
<input type="hidden" name="op" value="select_template"> |
| 55 |
<input type="submit" value="Go" /> |
| 56 |
</form> |
| 57 |
|
| 58 |
<form method="get" action="/cgi-bin/koha/tools/marc_modification_templates.pl" id="delete_template"> |
| 59 |
<input type="hidden" name="template_id" value="[% template_id %]" /> |
| 60 |
<input type="hidden" name="op" value="delete_template"> |
| 61 |
<input type="submit" value="Delete template" onClick="return confirmDelete()" /> |
| 62 |
</form> |
| 63 |
|
| 64 |
|
| 65 |
[% IF ( ActionsLoop ) %] |
| 66 |
<table> |
| 67 |
<caption>Actions for this template</caption> |
| 68 |
|
70 |
|
| 69 |
<tr> |
71 |
<h2>MARC modification templates [% template_id %]</h2> |
| 70 |
<th>Change order</th> |
|
|
| 71 |
<th>Order</th> |
| 72 |
<th>Action</th> |
| 73 |
<th>Description</th> |
| 74 |
<th> </th> |
| 75 |
<th> </th> |
| 76 |
</tr> |
| 77 |
|
72 |
|
| 78 |
[% FOREACH ActionsLoo IN ActionsLoop %] |
73 |
<table id="templatest"> |
|
|
74 |
<thead> |
| 79 |
<tr> |
75 |
<tr> |
| 80 |
<td style="white-space:nowrap;"> |
76 |
<th>Template</th> |
| 81 |
<a title="Move action up" href="marc_modification_templates.pl?op=move_action&where=up&template_id=[% ActionsLoo.template_id %]&mmta_id=[% ActionsLoo.mmta_id %]"> |
77 |
<th>Actions</th> |
| 82 |
<img src="[% interface %]/[% theme %]/img/go-up.png" border="0" alt="Go up" /> |
|
|
| 83 |
</a> |
| 84 |
|
| 85 |
<a title="Move action to top" href="marc_modification_templates.pl?op=move_action&where=top&template_id=[% ActionsLoo.template_id %]&mmta_id=[% ActionsLoo.mmta_id %]"> |
| 86 |
<img src="[% interface %]/[% theme %]/img/go-top.png" border="0" alt="Go top" /> |
| 87 |
</a> |
| 88 |
|
| 89 |
<a title="Move action to bottom" href="marc_modification_templates.pl?op=move_action&where=bottom&template_id=[% ActionsLoo.template_id %]&mmta_id=[% ActionsLoo.mmta_id %]"> |
| 90 |
<img src="[% interface %]/[% theme %]/img/go-bottom.png" border="0" alt="Go bottom" /> |
| 91 |
</a> |
| 92 |
|
| 93 |
<a title="Move action down" href="marc_modification_templates.pl?op=move_action&where=down&template_id=[% ActionsLoo.template_id %]&mmta_id=[% ActionsLoo.mmta_id %]"> |
| 94 |
<img src="[% interface %]/[% theme %]/img/go-down.png" border="0" alt="Go down" /> |
| 95 |
</a> |
| 96 |
</td> |
| 97 |
|
| 98 |
<td>[% ActionsLoo.ordering %]</td> |
| 99 |
<td> |
| 100 |
[% IF ( ActionsLoo.action_delete_field ) %] Delete [% END %] |
| 101 |
[% IF ( ActionsLoo.action_update_field ) %] Update [% END %] |
| 102 |
[% IF ( ActionsLoo.action_move_field ) %] Move [% END %] |
| 103 |
[% IF ( ActionsLoo.action_copy_field ) %] Copy [% END %] |
| 104 |
[% IF ( ActionsLoo.action_copy_and_replace_field ) %] Copy and replace [% END %] |
| 105 |
|
| 106 |
[% UNLESS ( ActionsLoo.action_update_field ) %] |
| 107 |
[% IF ( ActionsLoo.field_number ) %] |
| 108 |
1st |
| 109 |
[% END %] |
| 110 |
[% END %] |
| 111 |
|
| 112 |
field |
| 113 |
|
| 114 |
[% ActionsLoo.from_field %][% IF ( ActionsLoo.from_subfield ) %]$[% ActionsLoo.from_subfield %][% END %] |
| 115 |
|
| 116 |
[% IF ( ActionsLoo.field_value ) %] |
| 117 |
with value <i>[% ActionsLoo.field_value %]</i> |
| 118 |
[% END %] |
| 119 |
|
| 120 |
[% IF ( ActionsLoo.to_field ) %] |
| 121 |
to [% ActionsLoo.to_field %][% IF ( ActionsLoo.to_subfield ) %]$[% ActionsLoo.to_subfield %][% END %] |
| 122 |
|
| 123 |
[% IF ( ActionsLoo.to_regex_search ) %] |
| 124 |
using RegEx s<strong>/[% ActionsLoo.to_regex_search %]/[% ActionsLoo.to_regex_replace %]/[% ActionsLoo.to_regex_modifiers %]</strong> |
| 125 |
[% END %] |
| 126 |
[% END %] |
| 127 |
|
| 128 |
[% IF ( ActionsLoo.conditional ) %] |
| 129 |
[% IF ( ActionsLoo.conditional_if ) %] if [% END %] |
| 130 |
[% IF ( ActionsLoo.conditional_unless ) %] unless [% END %] |
| 131 |
|
| 132 |
[% ActionsLoo.conditional_field %][% IF ( ActionsLoo.conditional_subfield ) %]$[% ActionsLoo.conditional_subfield %][% END %] |
| 133 |
|
| 134 |
[% IF ( ActionsLoo.conditional_comparison_exists ) %] exists [% END %] |
| 135 |
[% IF ( ActionsLoo.conditional_comparison_not_exists ) %] does not exist [% END %] |
| 136 |
[% IF ( ActionsLoo.conditional_comparison_equals ) %] matches [% END %] |
| 137 |
[% IF ( ActionsLoo.conditional_comparison_not_equals ) %] does not match [% END %] |
| 138 |
|
| 139 |
[% IF ( ActionsLoo.conditional_regex ) %] RegEx m/[% END %] |
| 140 |
<strong>[% ActionsLoo.conditional_value %]</strong> |
| 141 |
[% IF ( ActionsLoo.conditional_regex ) %]/[% END %] |
| 142 |
[% END %] |
| 143 |
</td> |
| 144 |
<td>[% ActionsLoo.description %]</td> |
| 145 |
<td><a href="#modaction" onclick='editAction( |
| 146 |
"[% ActionsLoo.mmta_id |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 147 |
"[% ActionsLoo.ordering |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 148 |
"[% ActionsLoo.action |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 149 |
"[% ActionsLoo.field_number |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 150 |
"[% ActionsLoo.from_field |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 151 |
"[% ActionsLoo.from_subfield |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 152 |
"[% ActionsLoo.field_value |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 153 |
"[% ActionsLoo.to_field |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 154 |
"[% ActionsLoo.to_subfield |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 155 |
"[% ActionsLoo.to_regex_search |replace('\\\\', '\\\\') |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 156 |
"[% ActionsLoo.to_regex_replace |replace('\\\\', '\\\\') |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 157 |
"[% ActionsLoo.to_regex_modifiers |replace('\\\\', '\\\\') |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 158 |
"[% ActionsLoo.conditional |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 159 |
"[% ActionsLoo.conditional_field |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 160 |
"[% ActionsLoo.conditional_subfield |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 161 |
"[% ActionsLoo.conditional_comparison |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 162 |
"[% ActionsLoo.conditional_value |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 163 |
"[% ActionsLoo.conditional_regex |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 164 |
"[% ActionsLoo.description |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]" |
| 165 |
);updateAllEvery();'>Edit</a></td> |
| 166 |
<td><a href="marc_modification_templates.pl?template_id=[% ActionsLoo.template_id %]&op=delete_action&mmta_id=[% ActionsLoo.mmta_id %]" onclick="return confirmDeleteAction();">Delete</a></td> |
| 167 |
</tr> |
78 |
</tr> |
| 168 |
[% END %] |
79 |
</thead> |
|
|
80 |
<tbody> |
| 81 |
[% FOREACH TemplatesLoo IN TemplatesLoop %] |
| 82 |
<tr> |
| 83 |
<td>[% TemplatesLoo.name %]</td> |
| 84 |
<td class="actions"> |
| 85 |
<div class="btn-group"> |
| 86 |
<button data-toggle="dropdown" class="btn btn-small dropdown-toggle">Actions <span class="caret"></span></button> |
| 87 |
<ul class="dropdown-menu"> |
| 88 |
<li> |
| 89 |
<a href="/cgi-bin/koha/tools/marc_modification_templates.pl?template_id=[% TemplatesLoo.template_id %]&op=select_template" ><i class="fa fa-fw fa-pencil"></i> Edit actions</a> |
| 90 |
</li> |
| 91 |
<li> |
| 92 |
<a class="duplicate_template" href="#" data-toggle="modal" data-template_id="[% TemplatesLoo.template_id %]" data-target="#createTemplate"><i class="fa fa-fw fa-copy"></i> Duplicate</a> |
| 93 |
</li> |
| 94 |
<li> |
| 95 |
<a href="/cgi-bin/koha/tools/marc_modification_templates.pl?template_id=[% TemplatesLoo.template_id %]&op=delete_template" class="delete_template"><i class="fa fa-fw fa-trash"></i> Delete</a> |
| 96 |
</li> |
| 97 |
</ul> |
| 98 |
</div> |
| 99 |
</td> |
| 100 |
</tr> |
| 101 |
[% END %] |
| 102 |
</tbody> |
| 169 |
</table> |
103 |
</table> |
|
|
104 |
|
| 170 |
[% ELSE %] |
105 |
[% ELSE %] |
| 171 |
<div class="dialog message"><p>There are no defined actions for this template.</p></div> |
|
|
| 172 |
[% END %] |
| 173 |
|
106 |
|
| 174 |
<form method="post" action="/cgi-bin/koha/tools/marc_modification_templates.pl" id="add_action" > |
107 |
<h2>Actions for <i>[% template_name %]</i></h2> |
| 175 |
<a name="modaction"></a> |
108 |
|
| 176 |
<fieldset> |
109 |
[% IF ( ActionsLoop ) %] |
| 177 |
<legend id="modaction_legend">Add a new action</legend> |
110 |
|
| 178 |
<div id="warning_multivalued" style="color:red; display:none;">You have chosen a condition on the same field as the original field. If your records contain multivalued fields it is highly recommended not to do that.</div> |
111 |
<table id="template_actions" class="template_actions"> |
| 179 |
|
112 |
<thead> |
| 180 |
<select name="action" id="action" onchange="onActionChange(this);"> |
113 |
<tr> |
| 181 |
<option value="delete_field">Delete</option> |
114 |
<th>Change order</th> |
| 182 |
<option value="update_field">Add/Update</option> |
115 |
<th>Order</th> |
| 183 |
<option value="move_field">Move</option> |
116 |
<th>Action</th> |
| 184 |
<option value="copy_field">Copy</option> |
117 |
<th>Description</th> |
| 185 |
<option value="copy_and_replace_field">Copy and replace</option> |
118 |
<th> </th> |
| 186 |
</select> |
119 |
<th> </th> |
| 187 |
|
120 |
</tr> |
| 188 |
<span id="field_number_block"> |
121 |
</thead> |
| 189 |
<select name="field_number" id="field_number"> |
122 |
<tbody> |
| 190 |
<option value="0">All</option> |
123 |
[% FOREACH ActionsLoo IN ActionsLoop %] |
| 191 |
<option value="1">1st</option> |
124 |
<tr> |
|
|
125 |
<td class="actions"> |
| 126 |
<a title="Move action up" href="marc_modification_templates.pl?op=move_action&where=up&template_id=[% ActionsLoo.template_id %]&mmta_id=[% ActionsLoo.mmta_id %]"> |
| 127 |
<img src="[% interface %]/[% theme %]/img/go-up.png" alt="Move action up" /> |
| 128 |
</a> |
| 129 |
|
| 130 |
<a title="Move action to top" href="marc_modification_templates.pl?op=move_action&where=top&template_id=[% ActionsLoo.template_id %]&mmta_id=[% ActionsLoo.mmta_id %]"> |
| 131 |
<img src="[% interface %]/[% theme %]/img/go-top.png" alt="Move action to the top" /> |
| 132 |
</a> |
| 133 |
|
| 134 |
<a title="Move action to bottom" href="marc_modification_templates.pl?op=move_action&where=bottom&template_id=[% ActionsLoo.template_id %]&mmta_id=[% ActionsLoo.mmta_id %]"> |
| 135 |
<img src="[% interface %]/[% theme %]/img/go-bottom.png" alt="Move action to the bottom" /> |
| 136 |
</a> |
| 137 |
|
| 138 |
<a title="Move action down" href="marc_modification_templates.pl?op=move_action&where=down&template_id=[% ActionsLoo.template_id %]&mmta_id=[% ActionsLoo.mmta_id %]"> |
| 139 |
<img src="[% interface %]/[% theme %]/img/go-down.png" alt="Move action down" /> |
| 140 |
</a> |
| 141 |
</td> |
| 142 |
|
| 143 |
<td>[% ActionsLoo.ordering %]</td> |
| 144 |
<td> |
| 145 |
[% IF ( ActionsLoo.action_delete_field ) %] Delete [% END %] |
| 146 |
[% IF ( ActionsLoo.action_update_field ) %] Update [% END %] |
| 147 |
[% IF ( ActionsLoo.action_move_field ) %] Move [% END %] |
| 148 |
[% IF ( ActionsLoo.action_copy_field ) %] Copy [% END %] |
| 149 |
[% IF ( ActionsLoo.action_copy_and_replace_field ) %] Copy and replace [% END %] |
| 150 |
|
| 151 |
[% UNLESS ( ActionsLoo.action_update_field ) %] |
| 152 |
[% IF ( ActionsLoo.field_number ) %] |
| 153 |
1st |
| 154 |
[% END %] |
| 155 |
[% END %] |
| 156 |
|
| 157 |
field |
| 158 |
|
| 159 |
[% ActionsLoo.from_field %][% IF ( ActionsLoo.from_subfield ) %]$[% ActionsLoo.from_subfield %][% END %] |
| 160 |
|
| 161 |
[% IF ( ActionsLoo.field_value ) %] |
| 162 |
with value <i>[% ActionsLoo.field_value %]</i> |
| 163 |
[% END %] |
| 164 |
|
| 165 |
[% IF ( ActionsLoo.to_field ) %] |
| 166 |
to [% ActionsLoo.to_field %][% IF ( ActionsLoo.to_subfield ) %]$[% ActionsLoo.to_subfield %][% END %] |
| 167 |
|
| 168 |
[% IF ( ActionsLoo.to_regex_search ) %] |
| 169 |
using RegEx s<strong>/[% ActionsLoo.to_regex_search %]/[% ActionsLoo.to_regex_replace %]/[% ActionsLoo.to_regex_modifiers %]</strong> |
| 170 |
[% END %] |
| 171 |
[% END %] |
| 172 |
|
| 173 |
[% IF ( ActionsLoo.conditional ) %] |
| 174 |
[% IF ( ActionsLoo.conditional_if ) %] if [% END %] |
| 175 |
[% IF ( ActionsLoo.conditional_unless ) %] unless [% END %] |
| 176 |
|
| 177 |
[% ActionsLoo.conditional_field %][% IF ( ActionsLoo.conditional_subfield ) %]$[% ActionsLoo.conditional_subfield %][% END %] |
| 178 |
|
| 179 |
[% IF ( ActionsLoo.conditional_comparison_exists ) %] exists [% END %] |
| 180 |
[% IF ( ActionsLoo.conditional_comparison_not_exists ) %] does not exist [% END %] |
| 181 |
[% IF ( ActionsLoo.conditional_comparison_equals ) %] matches [% END %] |
| 182 |
[% IF ( ActionsLoo.conditional_comparison_not_equals ) %] does not match [% END %] |
| 183 |
|
| 184 |
[% IF ( ActionsLoo.conditional_regex ) %] RegEx m/[% END %] |
| 185 |
<strong>[% ActionsLoo.conditional_value %]</strong> |
| 186 |
[% IF ( ActionsLoo.conditional_regex ) %]/[% END %] |
| 187 |
[% END %] |
| 188 |
</td> |
| 189 |
<td>[% ActionsLoo.description %]</td> |
| 190 |
<td> |
| 191 |
<a class="btn btn-mini" href="#modaction" onclick='editAction( |
| 192 |
"[% ActionsLoo.mmta_id |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 193 |
"[% ActionsLoo.ordering |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 194 |
"[% ActionsLoo.action |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 195 |
"[% ActionsLoo.field_number |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 196 |
"[% ActionsLoo.from_field |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 197 |
"[% ActionsLoo.from_subfield |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 198 |
"[% ActionsLoo.field_value |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 199 |
"[% ActionsLoo.to_field |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 200 |
"[% ActionsLoo.to_subfield |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 201 |
"[% ActionsLoo.to_regex_search |replace('\\\\', '\\\\') |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 202 |
"[% ActionsLoo.to_regex_replace |replace('\\\\', '\\\\') |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 203 |
"[% ActionsLoo.to_regex_modifiers |replace('\\\\', '\\\\') |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 204 |
"[% ActionsLoo.conditional |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 205 |
"[% ActionsLoo.conditional_field |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 206 |
"[% ActionsLoo.conditional_subfield |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 207 |
"[% ActionsLoo.conditional_comparison |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 208 |
"[% ActionsLoo.conditional_value |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 209 |
"[% ActionsLoo.conditional_regex |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]", |
| 210 |
"[% ActionsLoo.description |replace('\\\\', '\\\\') |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]" |
| 211 |
);updateAllEvery();'><i class="fa fa-pencil"></i> Edit</a> |
| 212 |
</td> |
| 213 |
<td> |
| 214 |
<a class="btn btn-mini" href="marc_modification_templates.pl?template_id=[% ActionsLoo.template_id %]&op=delete_action&mmta_id=[% ActionsLoo.mmta_id %]" onclick="return confirmDeleteAction();"><i class="fa fa-trash"></i> Delete</a> |
| 215 |
</td> |
| 216 |
</tr> |
| 217 |
[% END # /FOREACH ActionsLoo %] |
| 218 |
</tbody> |
| 219 |
</table> |
| 220 |
[% ELSE %] |
| 221 |
<div class="dialog message template_actions"><p>There are no defined actions for this template.</p></div> |
| 222 |
[% END # /IF ActionsLoop %] |
| 223 |
|
| 224 |
<form method="post" action="/cgi-bin/koha/tools/marc_modification_templates.pl" id="add_action" > |
| 225 |
<a name="modaction"></a> |
| 226 |
<fieldset> |
| 227 |
<legend id="modaction_legend">Add a new action</legend> |
| 228 |
<div id="warning_multivalued" style="color:red; display:none;">You have chosen a condition on the same field as the original field. If your records contain multivalued fields it is highly recommended not to do that.</div> |
| 229 |
|
| 230 |
<select name="action" id="action" onchange="onActionChange(this);"> |
| 231 |
<option value="delete_field">Delete</option> |
| 232 |
<option value="update_field">Add/Update</option> |
| 233 |
<option value="move_field">Move</option> |
| 234 |
<option value="copy_field">Copy</option> |
| 235 |
<option value="copy_and_replace_field">Copy and replace</option> |
| 192 |
</select> |
236 |
</select> |
| 193 |
</span> |
|
|
| 194 |
|
237 |
|
| 195 |
field(s) <input type="text" name="from_field" id="from_field" size="3" maxlength="3" /> <input type="text" name="from_subfield" id="from_subfield" size="1" maxlength="1" title="let blank for the entire field" /> |
238 |
<span id="field_number_block"> |
|
|
239 |
<select name="field_number" id="field_number"> |
| 240 |
<option value="0">All</option> |
| 241 |
<option value="1">1st</option> |
| 242 |
</select> |
| 243 |
</span> |
| 244 |
|
| 245 |
field(s) <input type="text" name="from_field" id="from_field" size="3" maxlength="3" /> <input type="text" name="from_subfield" id="from_subfield" size="1" maxlength="1" title="let blank for the entire field" /> |
| 196 |
|
246 |
|
| 197 |
<span name="with_value_block" id="with_value_block" style="display:none;"> |
247 |
<span name="with_value_block" id="with_value_block" style="display:none;"> |
| 198 |
with value <input type="text" name="field_value" id="field_value" /> |
248 |
with value <input type="text" name="field_value" id="field_value" /> |
| 199 |
</span> |
249 |
</span> |
| 200 |
|
250 |
|
| 201 |
<span name="to_field_block" id="to_field_block" style="display:none;"> |
251 |
<span name="to_field_block" id="to_field_block" style="display:none;"> |
| 202 |
to field <input type="text" name="to_field" id="to_field" size="3" maxlength="3" /> <input type="text" name="to_subfield" id="to_subfield" size="1" maxlength="1" title="let blank for the entire field" /> |
252 |
to field <input type="text" name="to_field" id="to_field" size="3" maxlength="3" /> <input type="text" name="to_subfield" id="to_subfield" size="1" maxlength="1" title="let blank for the entire field" /> |
| 203 |
|
253 |
|
| 204 |
<span name="to_field_regex_block" id="to_field_regex_block"> |
254 |
<span name="to_field_regex_block" id="to_field_regex_block"> |
| 205 |
<sup> |
255 |
<sup> |
| 206 |
<label for="to_field_regex">RegEx</label> |
256 |
<label for="to_field_regex">RegEx</label> |
| 207 |
<input type="checkbox" name="to_field_regex" id="to_field_regex" onchange="onToFieldRegexChange(this);" /> |
257 |
<input type="checkbox" name="to_field_regex" id="to_field_regex" onchange="onToFieldRegexChange(this);" /> |
| 208 |
|
258 |
|
| 209 |
<span name="to_field_regex_value_block" id="to_field_regex_value_block" style="display:none;"> |
259 |
<span name="to_field_regex_value_block" id="to_field_regex_value_block" style="display:none;"> |
| 210 |
s/<input type="text" name="to_regex_search" id="to_regex_search" placeholder="regex pattern" />/<input type="text" name="to_regex_replace" id="to_regex_replace" placeholder="regex replacement" />/<input type="text" name="to_regex_modifiers" id="to_regex_modifiers" placeholder="ig" size="3" /> |
260 |
s/<input type="text" name="to_regex_search" id="to_regex_search" placeholder="regex pattern" />/<input type="text" name="to_regex_replace" id="to_regex_replace" placeholder="regex replacement" />/<input type="text" name="to_regex_modifiers" id="to_regex_modifiers" placeholder="ig" size="3" /> |
| 211 |
</span> |
261 |
</span> |
| 212 |
</sup> |
262 |
</sup> |
|
|
263 |
</span> |
| 213 |
</span> |
264 |
</span> |
| 214 |
</span> |
|
|
| 215 |
|
265 |
|
| 216 |
<p/> |
266 |
<p/> |
| 217 |
|
267 |
|
| 218 |
<select name="conditional" id="conditional" onchange="onConditionalChange(this);"> |
268 |
<select name="conditional" id="conditional" onchange="onConditionalChange(this);"> |
| 219 |
<option value="" selected="selected" /> |
269 |
<option value="" selected="selected" /> |
| 220 |
<option value="if">if</option> |
270 |
<option value="if">if</option> |
| 221 |
<option value="unless">unless</option> |
271 |
<option value="unless">unless</option> |
| 222 |
</select> |
272 |
</select> |
| 223 |
|
273 |
|
| 224 |
<span name="conditional_block" id="conditional_block" style="display:none;"> |
274 |
<span name="conditional_block" id="conditional_block" style="display:none;"> |
| 225 |
field <input type="text" name="conditional_field" id="conditional_field" size="3" maxlength="3" /> <input type="text" name="conditional_subfield" id="conditional_subfield" size="1" maxlength="1" /> |
275 |
field <input type="text" name="conditional_field" id="conditional_field" size="3" maxlength="3" /> <input type="text" name="conditional_subfield" id="conditional_subfield" size="1" maxlength="1" /> |
| 226 |
|
276 |
|
| 227 |
<select name="conditional_comparison" id="conditional_comparison" onchange="onConditionalComparisonChange(this);"> |
277 |
<select name="conditional_comparison" id="conditional_comparison" onchange="onConditionalComparisonChange(this);"> |
| 228 |
<option value="" /> |
278 |
<option value="" /> |
| 229 |
<option value="exists">exists</option> |
279 |
<option value="exists">exists</option> |
| 230 |
<option value="not_exists">doesn't exist</option> |
280 |
<option value="not_exists">doesn't exist</option> |
| 231 |
<option value="equals">matches</option> |
281 |
<option value="equals">matches</option> |
| 232 |
<option value="not_equals">doesn't match</option> |
282 |
<option value="not_equals">doesn't match</option> |
| 233 |
</select> |
283 |
</select> |
| 234 |
|
284 |
|
| 235 |
<span name="conditional_comparison_block" id="conditional_comparison_block" style="display:none;"> |
285 |
<span name="conditional_comparison_block" id="conditional_comparison_block" style="display:none;"> |
| 236 |
|
286 |
|
| 237 |
<span class="match_regex_prefix">m/</span><input type="text" id="conditional_value" name="conditional_value" /><span class="match_regex_suffix">/</span> |
287 |
<span class="match_regex_prefix">m/</span><input type="text" id="conditional_value" name="conditional_value" /><span class="match_regex_suffix">/</span> |
| 238 |
|
288 |
|
| 239 |
<sup> |
289 |
<sup> |
| 240 |
<label for="conditional_regex">RegEx</label> |
290 |
<label for="conditional_regex">RegEx</label> |
| 241 |
<input type="checkbox" name="conditional_regex" id="conditional_regex" onchange="onConditionalRegexChange(this);" /> |
291 |
<input type="checkbox" name="conditional_regex" id="conditional_regex" onchange="onConditionalRegexChange(this);" /> |
| 242 |
</sup> |
292 |
</sup> |
| 243 |
|
293 |
|
|
|
294 |
</span> |
| 244 |
</span> |
295 |
</span> |
| 245 |
</span> |
|
|
| 246 |
|
296 |
|
| 247 |
<input type="hidden" name="template_id" value="[% template_id %]" /> |
297 |
<input type="hidden" name="template_id" value="[% template_id %]" /> |
| 248 |
<input type="hidden" name="mmta_id" id="mmta_id" /> |
298 |
<input type="hidden" name="mmta_id" id="mmta_id" /> |
| 249 |
<input type="hidden" name="op" value="add_action" /> |
299 |
<input type="hidden" name="op" value="add_action" /> |
| 250 |
|
300 |
|
| 251 |
<br/><br/> |
301 |
<br/><br/> |
| 252 |
<label for="description">Description:</label> |
302 |
<label for="description">Description:</label> |
| 253 |
<input type="text" name="description" id="description" size="60" /> |
303 |
<input type="text" name="description" id="description" size="60" /> |
| 254 |
|
304 |
|
| 255 |
<br/><br/> |
305 |
<br/><br/> |
| 256 |
<input id="action_submit" type="submit" value="Add action" /> <a href="#modaction" id="cancel_edit" onclick="cancelEditAction();" style="display:none;">Cancel</a> |
306 |
<input id="action_submit" type="submit" value="Add action" /> <a href="#modaction" id="cancel_edit" onclick="cancelEditAction();">Cancel</a> |
| 257 |
|
307 |
|
| 258 |
</fieldset> |
308 |
</fieldset> |
| 259 |
</form> |
309 |
</form> |
|
|
310 |
|
| 311 |
[% END %] |
| 260 |
|
312 |
|
| 261 |
[% ELSE %] |
313 |
[% ELSE %] |
| 262 |
<div class="dialog message"><p>There are no defined templates. Please create a template first.</p></div> |
314 |
<div class="dialog message"><p>There are no defined templates. Please create a template first.</p></div> |
| 263 |
[% END %] |
315 |
[% END # /IF TemplatesLoop %] |
| 264 |
|
316 |
|
| 265 |
<form method="post" action="/cgi-bin/koha/tools/marc_modification_templates.pl" id="add_template" class="validated"> |
317 |
<!-- Modal to create new template --> |
| 266 |
<fieldset> |
318 |
<div class="modal hide" id="createTemplate" tabindex="-1" role="dialog" aria-labelledby="LabelcreateTemplate" aria-hidden="true"> |
| 267 |
<legend>Create a new template</legend> |
319 |
<div class="modal-header"> |
| 268 |
|
320 |
<button type="button" class="closebtn" data-dismiss="modal" aria-hidden="true">×</button> |
| 269 |
<label for="template_name" class="required">Name: </label> |
321 |
<h3 id="LabelcreateTemplate">Create a new template</h3> |
| 270 |
<input name="template_name" id="template_name" type="text" size="30" required="required" class="required" /> |
322 |
</div> |
| 271 |
<span class="required">Required</span> |
323 |
<form method="post" action="/cgi-bin/koha/tools/marc_modification_templates.pl" id="add_template" class="validated"> |
| 272 |
|
324 |
<div class="modal-body"> |
| 273 |
<input type="hidden" name="op" value="create_template" /> |
325 |
<fieldset> |
| 274 |
<input type="submit" value="Create template" /> |
326 |
<p> |
| 275 |
|
327 |
<label for="template_name" class="required">Name: </label> |
| 276 |
[% IF ( template_id ) %] |
328 |
<input name="template_name" id="template_name" type="text" size="30" required="required" class="required" /> |
| 277 |
<input type="hidden" name="template_id" value="[% template_id %]" /> |
329 |
<span class="required">Required</span> |
| 278 |
<input type="checkbox" name="duplicate_current_template" id="duplicate_current_template" /> |
330 |
</p> |
| 279 |
<label for="duplicate_current_template">Duplicate current template</label> |
331 |
|
| 280 |
[% END %] |
332 |
<input type="hidden" name="op" value="create_template" /> |
| 281 |
</fieldset> |
333 |
|
| 282 |
</form> |
334 |
<p> |
|
|
335 |
<label for="duplicate_a_template">Duplicate a template:</label> |
| 336 |
<select name="template_id" id="duplicate_a_template"> |
| 337 |
<option value=""> -- None --</option> |
| 338 |
[% FOREACH TemplatesLoo IN TemplatesLoop %] |
| 339 |
<option value="[% TemplatesLoo.template_id %]"> [% TemplatesLoo.name %]</option> |
| 340 |
[% END %] |
| 341 |
</select> |
| 342 |
<input type="hidden" name="duplicate_current_template" id="duplicate_current_template" /> |
| 343 |
</p> |
| 344 |
</fieldset> |
| 345 |
</div> |
| 346 |
<div class="modal-footer"> |
| 347 |
<button type="submit" class="btn">Submit</button> |
| 348 |
<button class="btn btn-link" data-dismiss="modal" aria-hidden="true">Cancel</button> |
| 349 |
</div> |
| 350 |
</form> |
| 351 |
</div> |
| 283 |
</div> |
352 |
</div> |
| 284 |
</div> |
353 |
</div> |
| 285 |
|
354 |
|
|
Lines 287-291
Link Here
|
| 287 |
[% INCLUDE 'tools-menu.inc' %] |
356 |
[% INCLUDE 'tools-menu.inc' %] |
| 288 |
</div> |
357 |
</div> |
| 289 |
</div> |
358 |
</div> |
| 290 |
</div> |
359 |
|
| 291 |
[% INCLUDE 'intranet-bottom.inc' %] |
360 |
[% INCLUDE 'intranet-bottom.inc' %] |