Merge remote-tracking branch 'origin/new/bug_7818'
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / acqui / neworderempty.tt
1 [% USE KohaDates %]
2 [% INCLUDE 'doc-head-open.inc' %]
3 <title>Koha &rsaquo; Acquisitions &rsaquo; Basket [% basketno %] &rsaquo; [% IF ( ordernumber ) %]Modify order details (line #[% ordernumber %])[% ELSE %]New order[% END %]</title>
4 [% INCLUDE 'doc-head-close.inc' %]
5
6 <script type="text/javascript" src="[% themelang %]/js/acq.js"></script>
7 [% INCLUDE 'additem.js.inc' %]
8 <script type="text/javascript" src="[% themelang %]/js/additem.js"></script>
9 <script type="text/javascript">
10 //<![CDATA[
11 actTotal = "";
12
13 function Check(ff) {
14     [% IF (AcqCreateItemOrdering) %]
15         // Remove last itemblock if it is not in items_list
16         var lastitemblock = $("#outeritemblock > div:last");
17         var tobedeleted = true;
18         var listitems = $("#items_list tr");
19         $(listitems).each(function(){
20             if($(this).attr('idblock') == $(lastitemblock).attr('id')){
21                 tobedeleted = false;
22             }
23         });
24         if(tobedeleted){
25             $(lastitemblock).remove();
26         }
27     [% END %]
28
29     var ok=0;
30     var _alertString= _("Form not submitted because of the following problem(s)")+"\n";
31
32     _alertString +="-------------------------------------------------------------------\n\n";
33
34     if ( isNull(ff.title,1)  &&  isNull(ff.entertitle,1)   ){
35         ok=1;
36                     _alertString += "\n- " + _("Title cannot be empty");
37     }
38     
39     if(isNull(ff.budget_id,1)){
40                 ok=1;
41                                         _alertString += "\n- "+ _("You must select a budget");
42     }
43
44     if (!(isNum(ff.quantity,0)) || ff.quantity.value == 0){
45         ok=1;
46                     _alertString += "\n- " + _("Quantity must be greater than '0'");
47     }
48
49     if (!(isNum(ff.listprice,0))){
50         ok=1;
51                     _alertString += "\n- " + _("Vendor price must be a number");
52     }
53
54     if (!(isNum(ff.total,0))){
55         ok=1;
56                     _alertString += "\n- " + _("Total must be a number");
57     }
58
59     if (totalExceedsBudget(ff.budget_id.value, ff.total.value  )  ) {
60         ok=1;
61         _alertString += "\n- " + _("Order total (") + ff.total.value +
62             _(") exceeds budget available (") + actTotal+")";
63     }
64
65     if ( ff.field_value ) {
66         var empty_item_mandatory = 0;
67         for (i = 0; i < ff.field_value.length; i++) {
68             //alert("i = " + i + " => " + ff.kohafield[i] );
69             if (ff.field_value[i].value.length == 0 && ff.mandatory[i].value == 1) {
70                 empty_item_mandatory++;
71             }
72         }
73         if (empty_item_mandatory > 0) {
74             ok = 1;
75             _alertString +=
76                 "\n- " + empty_item_mandatory + _(" item mandatory fields empty");
77         }
78
79     }
80
81     if (ok) {
82         alert(_alertString);
83         [% IF (AcqCreateItemOrdering) %]
84             if(tobedeleted) {
85                 $(lastitemblock).appendTo('#outeritemblock');
86             }
87         [% END %]
88         return false;
89     }
90
91     [% IF (AcqCreateItemOrdering) %]
92         if(check_additem('[% UniqueItemFields %]') == false) {
93             alert(_('Duplicate values detected. Please correct the errors and resubmit.') );
94             if(tobedeleted) {
95                 $(lastitemblock).appendTo('#outeritemblock');
96             }
97             return false;
98         }
99     [% END %]
100 }
101
102 $(document).ready(function() 
103     {
104         [% IF (AcqCreateItemOrdering) %]
105             cloneItemBlock(0, '[% UniqueItemFields %]');
106         [% END %]
107
108         $("#quantity").change(function() {
109             calcNeworderTotal();
110         });
111
112         //We apply the fonction only for modify option
113         [% IF ( quantityrec ) %]
114         $('#quantity').blur(function() 
115         {
116             // if user decreases the quantity
117             if($(this).val() < [% quantityrec %]) 
118             {
119                 alert(_("You have deleted item(s) in the order, don't forget to delete it(them) in the catalog"));
120                 return true;
121             } 
122             else 
123             {
124                 // if user increases the quantity
125                 alert(_("You can't add a new item, please create a new order line"));
126                 // and we replace the original value
127                 $(this).val([% quantityrec %])
128                 return false;
129             }
130         });
131         [% END %]
132         
133         $('#showallbudgets').click(function() {
134             if ( $('#budget_id .b_inactive').is(":visible") )
135             {
136             $('#budget_id .b_inactive').hide();
137             }
138             else {
139             $('#budget_id .b_inactive').show();
140             }
141         });
142     });
143 //]]>
144 </script>
145 </head>
146 <body id="acq_neworderempty" class="acq">
147
148 [% INCLUDE 'header.inc' %]
149 [% INCLUDE 'acquisitions-search.inc' %]
150
151 <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?booksellerid=[% booksellerid %]">[% name %]</a> &rsaquo; <a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno %]">Basket [% basketno %]</a> &rsaquo; [% IF ( ordernumber ) %]Modify order details (line #[% ordernumber %])[% ELSE %]New order[% END %]</div>
152
153 <div id="doc3" class="yui-t2">
154
155 <div id="bd">
156     <div id="yui-main">
157     <div class="yui-b">
158
159 <h2>
160     [% IF ( ordernumber ) %]
161         Modify order line
162     [% ELSE %]
163         New order
164     [% END %]
165 </h2>
166
167 <div class="error" style="display:none"></div>
168
169 [% IF ( basketno ) %]
170     <div id="acqui_basket_summary"  class="yui-g">
171     <fieldset class="rows">
172         <legend>Basket details</legend>
173         <ol>
174         [% IF ( basketnote ) %]<li><span class="label">Internal note:</span> [% basketnote %]</li>[% END %]
175         [% IF ( basketbooksellernote ) %]<li><span class="label">Vendor note:</span> [% basketbooksellernote %]</li>[% END %]
176         [% IF ( basketcontractno ) %]
177             <li><span class="label">Contract number: </span>[% basketcontractno %]</li>
178             <li><span class="label">Contract name:</span> <a href="/cgi-bin/koha/admin/aqcontract.pl?op=add_form&amp;contractnumber=[% basketcontractno %]">[% basketcontractname %]</a></li>
179         [% END %]
180         [% IF ( authorisedbyname ) %]<li><span class="label">Managed by:</span>  [% authorisedbyname %]</li>[% END %]
181         [% IF ( creationdate ) %]<li><span class="label">Open on:</span>  [% creationdate | $KohaDates %]</li>[% END %]
182         [% IF ( closedate ) %]
183         <form action="/cgi-bin/koha/acqui/basketgroup.pl" method="post">
184         <li><span class="label">Closed on:</span>  [% closedate | $KohaDates %]</li>
185         [% IF ( basketgroups ) %]
186             <li>Basketgroup: <select id="basketgroupid" name="basketgroupid">
187                 [% FOREACH basketgroup IN basketgroups %]
188                     [% IF ( basketgroup.default ) %]
189                     <option value="[% basketgroup.id %]" selected="selected">[% basketgroup.name %]</option>
190                     [% ELSE %]
191                     <option value="[% basketgroup.id %]">[% basketgroup.name %]</option>
192                     [% END %]
193                 [% END %]
194                 </select>
195                 <input type="hidden" id="basketno" value="[% basketno %]" name="basketno" />
196                 <input type="hidden" value="mod_basket" name="op" />
197                 <input type="hidden" name="booksellerid" value="[% booksellerid %]" />
198             </li>
199             <fieldset class="action"><input type="submit" value="Change basketgroup" /></fieldset>
200         [% END %]
201         </form>
202         [% END %]
203         </ol>
204     </fieldset>
205     </div>
206 [% END %]
207
208 <form action="/cgi-bin/koha/acqui/addorder.pl" method="post" id="Aform" onsubmit="return Check(this);">
209
210 <fieldset class="rows">
211         <legend>
212             Catalog details
213             [% IF ( biblionumber ) %]
214                 <span><a href="/cgi-bin/koha/cataloguing/addbiblio.pl?biblionumber=[% biblionumber %]"> Edit record</a></span>
215             [% END %]
216         </legend>
217         [% UNLESS ( existing ) %]
218         <input type="hidden" name="existing" value="no" />
219         [% END %]
220         <input type="hidden" name="ordernumber" value="[% ordernumber %]" />
221         <input type="hidden" name="basketno" value="[% basketno %]" />
222         <input type="hidden" name="booksellerid" value="[% booksellerid %]" />
223         <input type="hidden" name="biblionumber" value="[% biblionumber %]" />
224         <input type="hidden" name="biblioitemnumber" value="[% biblioitemnumber %]" />
225         <input type="hidden" name="discount" value="[% discount %]" />
226         <input type="hidden" name="listinc" value="[% listincgst %]" />
227 <!--        <input type="hidden" name="currency" value="[% currency %]" />-->
228         <input type="hidden" name="applygst" value="[% gstreg %]" />
229         <input type="hidden" name="invoiceincgst" value="[% invoiceincgst %]" />
230         <input type="hidden" name="gstrate" value="[% gstrate %]" />
231         <input type="hidden" name="suggestionid" value="[% suggestionid %]" />
232         <input type="hidden" name="import_batch_id" value="[% import_batch_id %]" />
233
234         [% FOREACH loop_currencie IN loop_currencies %]
235             <input type="hidden" id="[% loop_currencie.currcode %]"  name="[% loop_currencie.currcode %]" value="[% loop_currencie.rate %]" />
236         [% END %]
237         <ol><li>
238             [% IF ( biblionumber ) %]
239             <span class="label">Title</span>
240                 <input type="hidden" size="50" name="title" value="[% title |html %]" /> <span class="title">[% title |html %]</span>
241             [% ELSE %]
242             <label for="entertitle" class="required">Title: </label>
243                 <input type="text" id="entertitle" size="50" name="title" value="[% title |html %]" />
244             [% END %]
245         </li>
246         <li>
247             [% IF ( biblionumber ) %]
248             <span class="label">Author: </span>
249                 <input type="hidden" size="50" name="author" id="author" value="[% author %]" />[% author %]
250             [% ELSE %]
251             <label for="author">Author: </label>
252                 <input type="text" size="50" name="author" id="author" value="[% author %]" />
253             [% END %]
254         </li>
255         <li>
256             [% IF ( biblionumber ) %]
257             <span class="label">Publisher: </span>
258                 <input type="hidden" size="50" name="publishercode" id="publishercode" value="[% publishercode %]" />[% publishercode %]
259             [% ELSE %]
260             <label for="publishercode"> Publisher: </label>
261                 <input type="text" size="50" name="publishercode" id="publishercode" value="[% publishercode %]" />
262             [% END %]
263         </li>
264         <li>
265             [% IF ( biblionumber ) %]
266             <span class="label">Edition: </span>
267                 <input type="hidden" size="20" name="editionstatement" id="editionstatement" value="[% editionstatement %]" />[% editionstatement %]
268
269             [% ELSE %]
270             <label for="editionstatement">Edition: </label>
271                 <input type="text" size="20" name="editionstatement" id="editionstatement" value="[% editionstatement %]" />
272             [% END %]
273         </li>
274         <li>
275             [% IF ( biblionumber ) %]
276             <span class="label">Publication year: </span>
277                 <input type="hidden" size="10" name="publicationyear" id="publicationyear" value="[% publicationyear %]" />[% publicationyear %]
278             [% ELSE %]
279             <label for="publicationyear">Publication year: </label>
280                 <input type="text" size="10" name="publicationyear" id="publicationyear" value="[% publicationyear %]" />
281             [% END %]
282         </li>
283         <li>
284             [% IF ( biblionumber ) %]
285             <span class="label">ISBN: </span>
286                 <input type="hidden" size="50" name="isbn" id="ISBN" value="[% isbn %]" />[% isbn %]
287             [% ELSE %]
288             <label for="ISBN">ISBN: </label>
289                 <input type="text" size="50" name="isbn" id="ISBN" value="[% isbn %]" />
290             [% END %]
291         </li>
292         [% IF (UNIMARC) %]
293         <li>
294             [% IF ( biblionumber ) %]
295             <span class="label">EAN: </span>
296                 <input type="hidden" size="20" name="ean" id="EAN" value="[% ean %]" />[% ean %]
297             [% ELSE %]
298             <label for="EAN">EAN: </label>
299                 <input type="text" size="20" name="ean" id="EAN" value="[% ean %]" />
300             [% END %]
301         </li>
302         [% END %]
303         <li>
304             [% IF ( biblionumber ) %]
305             <span class="label">Series: </span>
306                 <input type="hidden" size="50" name="series" id="series" value="[% seriestitle %]" />[% seriestitle %]
307             [% ELSE %]
308             <label for="series">Series: </label>
309                 <input type="text" size="50" name="series" id="series" value="[% seriestitle %]" />
310             [% END %]
311         </li>
312         </li>
313             [% UNLESS ( biblionumber ) %]
314             [% IF ( itemtypeloop ) %]
315             <li>
316                 <span class="label">Item type:</span>
317                 <select name="itemtype" style="width:12em;">
318                 [% FOREACH itemtype IN itemtypeloop %]
319                     [% IF ( itemtype.selected ) %]
320                         <option value="[% itemtype.itemtype %]" selected="selected">[% itemtype.description %]</option>
321                     [% ELSE %]
322                         <option value="[% itemtype.itemtype %]">[% itemtype.description %]</option>
323                     [% END %]
324                 [% END %]
325                 </select>
326             </li>
327             [% END %]
328             [% END %]
329         </ol>
330     </fieldset>
331
332     [% IF ( suggestionid ) %]
333         <fieldset class="rows">
334         <legend>Suggestion</legend>
335         <ol>
336           <li>
337             <span class="label">Suggested by: </span>
338             [% surnamesuggestedby %][% IF ( firstnamesuggestedby ) %], [% firstnamesuggestedby %][% END %] (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% suggestionid %]&amp;op=show">suggestion #[% suggestionid %]</a>)
339           </li>
340         </ol>
341         </fieldset>
342     [% END %]
343
344     [% IF (AcqCreateItemOrdering) %]
345
346     <div id="items_list" style="display:none">
347         <p><b>Items list</b></p>
348         <div style="width:100%;overflow:auto;">
349             <table>
350                 <thead>
351                     <tr>
352                         <th>&nbsp;</th>
353                         <th>&nbsp;</th>
354                         <th>Barcode</th>
355                         <th>Home branch</th>
356                         <th>Holding branch</th>
357                         <th>Not for loan</th>
358                         <th>Restricted</th>
359                         <th>Location</th>
360                         <th>Call number</th>
361                         <th>Copy number</th>
362                         <th>Stock number</th>
363                         <th>Collection code</th>
364                         <th>Item type</th>
365                         <th>Materials</th>
366                         <th>Notes</th>
367                     </tr>
368                 </thead>
369                 <tbody>
370                 </tbody>
371             </table>
372         </div>
373     </div>
374
375     <fieldset class="rows" id="itemfieldset">
376         <legend>Item</legend>
377         [% IF ( NoACQframework ) %]
378             <div class="dialog message">No ACQ framework, using default. You should create a framework with code ACQ, the items framework would be used</div>
379         [% END %]
380
381         <div id="outeritemblock"></div>
382
383     </fieldset>
384     [% END %][%# IF (AcqCreateItemOrdering) %]
385     <fieldset class="rows">
386         <legend>Accounting Details</legend>
387         <ol>
388             <li>
389                 [% IF ( close ) %]
390             <span class="label required">Quantity: </span>
391                     <input type="hidden" size="20" name="quantity" value="[% quantity %]" />[% quantity %]
392                 [% ELSE %]
393                     <label class="required" for="quantity">Quantity: </label>
394                     [% IF (AcqCreateItemOrdering) %]
395                         <input type="text" readonly="readonly" size="20" id="quantity" name="quantity" value="0" />
396                     [% ELSE %]
397                         <input type="text" size="20" id="quantity" name="quantity" value="[% quantityrec %]" />
398                     [% END %]
399                 [% END %]
400                 <!-- origquantityrec only here for javascript compatibility (additem.js needs it, useless here, usefull when receiveing an order -->
401                 <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="1" />
402             </li>
403             <li>
404                 [% IF ( close ) %]
405             <span class="label required">Fund: </span>
406                     <input type="hidden" size="20" name="budget_id" id="budget_id" value="[% budget_id %]" />[% Budget_name %]
407                 [% ELSE %]
408                 <label class="required" for="budget_id">Fund: </label>
409                 <select id="budget_id" onchange="fetchSortDropbox(this.form)" size="1" name="budget_id">
410                         <option value="">Select a budget</option>
411                 [% FOREACH budget_loo IN budget_loop %]
412                     [% IF ( budget_loo.b_sel ) %]
413                         <option value="[% budget_loo.b_id %]" selected="selected">[% budget_loo.b_txt %]</option>
414                     [% ELSE %]
415                         [% IF ( budget_loo.b_active ) %]<option value="[% budget_loo.b_id %]">[% budget_loo.b_txt %]</option>
416                         [% ELSE %]<option value="[% budget_loo.b_id %]" class="b_inactive" style="display : none;">[% budget_loo.b_txt %]</option>    
417                         [% END %]
418                     [% END %]
419                 [% END %]
420                 </select>
421                 <label for="showallbudgets" style="float:none;width:auto;">&nbsp;Show all:</label>
422                 <input type="checkbox" id="showallbudgets" />
423                 [% END %]
424             </li>
425                 <li>
426                 [% IF ( close ) %]
427                         <span class="label">Currency: </span>
428                         <input type="hidden" size="10" name="currency" id="currency" value="[% currency %]" />[% currency %]
429                 [% ELSE %]
430                         <label for="currency">Currency:</label>
431                         <select name="currency" id="currency" onchange="calcNeworderTotal();">
432                         [% FOREACH loop_currencie IN loop_currencies %]
433                         [% IF ( loop_currencie.selected ) %]<option value="[% loop_currencie.currcode %]" selected="selected">[% loop_currencie.currcode %]</option>[% ELSE %]<option value="[% loop_currencie.currcode %]">[% loop_currencie.currcode %]</option>[% END %][% END %]
434                         </select>
435                 [% END %]
436                 </li>
437             <li>
438                 [% IF ( close ) %]
439             <span class="label">Vendor price: </span>
440                     <input type="hidden" size="20" name="listprice" id="listprice" value="[% listprice %]" />[% listprice %]
441                 [% ELSE %]
442                 <label for="listprice">Vendor price: </label>
443                     <input type="text" size="20" name="listprice" id="listprice" value="[% listprice %]" onchange="calcNeworderTotal()" />
444                 [% END %]
445             </li>
446             [% UNLESS ( close ) %]
447             <li>
448                     <label for="uncertainprice">Uncertain price: </label>
449                     [% IF ( uncertainprice ) %]
450                     <input type="checkbox" name="uncertainprice"  id="uncertainprice" value="1" checked="checked" />
451                     [% ELSE %]
452                     <input type="checkbox" name="uncertainprice" id="uncertainprice" value="1" />
453                 [% END %]
454             </li>
455             [% END %]
456                         <li>
457                 [% IF ( close ) %]
458             <span class="label">Replacement cost: </span>
459                     <input type="hidden" size="20" name="rrp" id="rrp" value="[% rrp %]" />[% rrp %]
460                 [% ELSE %]
461                 <label for="rrp">Replacement cost: </label>
462                     <input type="text" size="20" name="rrp" id="rrp" value="[% rrp %]" /> (adjusted for [% cur_active %])
463                 [% END %]
464             </li>
465             <li>
466                 [% IF ( close ) %]
467             <label for="ecost">Budgeted cost: </label>
468                     <input type="text" size="20" name="ecost" id="ecost" value="[% ecost %]" readonly="readonly"  />
469                 [% ELSE %]
470                 <label for="ecost">Budgeted cost: </label>
471                     <input type="text" size="20" name="ecost" id="ecost" value="[% ecost %]" />
472                 [% END %]
473                 [% IF ( discount_2dp ) %]  (adjusted for [% discount_2dp %]% discount)  [% END %]
474
475             </li>
476             [% IF ( GST ) %]
477             <li>
478                 [% IF ( close ) %]
479             <label for="GST">Budgeted GST: </label>
480                 <input type="text" id="" size="20" name="gst" value="" id="GST" readonly="readonly" />
481                 [% ELSE %]
482                 <label for="GST">Budgeted GST: </label>
483                 <input type="text" size="20" name="gst" id="GST" value="" />
484                 [% END %]
485             </li>
486             [% END %]
487             <li>
488                 [% IF ( close ) %]
489             <label for="total">Total: </label>
490                 <input type="text" id="total" size="20" name="total" value="[% total %]" readonly="readonly" />
491                 [% ELSE %]
492                 <label for="total">Total: </label>
493                 <input type="text" id="total" size="20" name="total" value="[% total %]" /> (budgeted cost * quantity)
494                 [% END %]
495             </li>
496             <li>
497                 [% IF ( close ) %]
498             <label for="cost">Actual cost: </label>
499                 <input type="text" id="unitprice" size="20" name="unitprice" value="[% unitprice %]" readonly="readonly" />
500                 [% ELSE %]
501                 <label for="cost">Actual cost: </label>
502                 <input type="text" id="unitprice" size="20" name="unitprice" value="[% unitprice %]" />
503                 [% END %]
504             </li>
505             <li>
506                 <label for="notes">Notes: </label>
507                 <textarea id="notes" cols="30" rows="3" name="notes" >[% notes %]</textarea>
508             </li>
509             <li><div class="hint">The 2 following fields are available for your own usage. They can be useful for statistical purposes</div>
510                 <label for="sort1">Statistic 1: </label>
511
512                 [% IF CGIsort1 %]
513                     <select id="sort1" size="1" name="sort1">
514                     [% FOREACH sort_opt IN CGIsort1 %]
515                        [% IF sort_opt.default %]
516                           <option value="[% sort_opt.value %]" selected="selected">[% sort_opt.label %]</option>
517                         [% ELSE %]
518                           <option value="[% sort_opt.value %]">[% sort_opt.label %]</option>
519                         [% END %]
520                     [% END %]
521                     </select>
522                 [% ELSE %]
523
524                     <input type="text" id="sort1" size="20" name="sort1" value="[% sort1 %]" />
525                 [% END %]
526             </li>
527             <li>
528                 <label for="sort2">Statistic 2: </label>
529
530                 [% IF CGIsort2 %]
531                     <select id="sort2" size="1" name="sort2">
532                     [% FOREACH sort_opt IN CGIsort2 %]
533                        [% IF sort_opt.default %]
534                           <option value="[% sort_opt.value %]" selected="selected">[% sort_opt.label %]</option>
535                         [% ELSE %]
536                           <option value="[% sort_opt.value %]">[% sort_opt.label %]</option>
537                         [% END %]
538                     [% END %]
539                     </select>
540                 [% ELSE %]
541                     <input type="text" id="sort2" size="20" name="sort2" value="[% sort2 %]" />
542                 [% END %]
543             </li>
544 </ol>
545     </fieldset>
546     <fieldset class="action">
547         <input type="submit" value="Save" />
548         [% IF (suggestionid) %]
549             <a class="cancel" href="/cgi-bin/koha/acqui/newordersuggestion.pl?booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]">Cancel</a>
550         [% ELSE %]
551             <a class="cancel" href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno %]">Cancel</a>
552         [% END %]
553     </fieldset>
554 </form>
555 </div>
556 </div>
557 <div class="yui-b">
558 [% INCLUDE 'acquisitions-menu.inc' %]
559 </div>
560 </div>
561 [% INCLUDE 'intranet-bottom.inc' %]