Merge remote-tracking branch 'origin/new/bug_7178'
[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         <li>
293             [% IF ( biblionumber ) %]
294             <span class="label">Series: </span>
295                 <input type="hidden" size="50" name="series" id="series" value="[% seriestitle %]" />[% seriestitle %]
296             [% ELSE %]
297             <label for="series">Series: </label>
298                 <input type="text" size="50" name="series" id="series" value="[% seriestitle %]" />
299             [% END %]
300         </li>
301         </li>
302             [% UNLESS ( biblionumber ) %]
303             [% IF ( itemtypeloop ) %]
304             <li>
305                 <span class="label">Item type:</span>
306                 <select name="itemtype" style="width:12em;">
307                 [% FOREACH itemtype IN itemtypeloop %]
308                     [% IF ( itemtype.selected ) %]
309                         <option value="[% itemtype.itemtype %]" selected="selected">[% itemtype.description %]</option>
310                     [% ELSE %]
311                         <option value="[% itemtype.itemtype %]">[% itemtype.description %]</option>
312                     [% END %]
313                 [% END %]
314                 </select>
315             </li>
316             [% END %]
317             [% END %]
318         </ol>
319     </fieldset>
320
321     [% IF ( suggestionid ) %]
322         <fieldset class="rows">
323         <legend>Suggestion</legend>
324         <ol>
325           <li>
326             <span class="label">Suggested by: </span>
327             [% surnamesuggestedby %][% IF ( firstnamesuggestedby ) %], [% firstnamesuggestedby %][% END %] (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% suggestionid %]&amp;op=show">suggestion #[% suggestionid %]</a>)
328           </li>
329         </ol>
330         </fieldset>
331     [% END %]
332
333     [% IF (AcqCreateItemOrdering) %]
334
335     <div id="items_list" style="display:none">
336         <p><b>Items list</b></p>
337         <div style="width:100%;overflow:auto;">
338             <table>
339                 <thead>
340                     <tr>
341                         <th>&nbsp;</th>
342                         <th>&nbsp;</th>
343                         <th>Barcode</th>
344                         <th>Home branch</th>
345                         <th>Holding branch</th>
346                         <th>Not for loan</th>
347                         <th>Restricted</th>
348                         <th>Location</th>
349                         <th>Call number</th>
350                         <th>Copy number</th>
351                         <th>Stock number</th>
352                         <th>Collection code</th>
353                         <th>Item type</th>
354                         <th>Materials</th>
355                         <th>Notes</th>
356                     </tr>
357                 </thead>
358                 <tbody>
359                 </tbody>
360             </table>
361         </div>
362     </div>
363
364     <fieldset class="rows" id="itemfieldset">
365         <legend>Item</legend>
366         [% IF ( NoACQframework ) %]
367             <div class="dialog message">No ACQ framework, using default. You should create a framework with code ACQ, the items framework would be used</div>
368         [% END %]
369
370         <div id="outeritemblock"></div>
371
372     </fieldset>
373     [% END %][%# IF (AcqCreateItemOrdering) %]
374     <fieldset class="rows">
375         <legend>Accounting Details</legend>
376         <ol>
377             <li>
378                 [% IF ( close ) %]
379             <span class="label required">Quantity: </span>
380                     <input type="hidden" size="20" name="quantity" value="[% quantity %]" />[% quantity %]
381                 [% ELSE %]
382                     <label class="required" for="quantity">Quantity: </label>
383                     [% IF (AcqCreateItemOrdering) %]
384                         <input type="text" readonly="readonly" size="20" id="quantity" name="quantity" value="0" />
385                     [% ELSE %]
386                         <input type="text" size="20" id="quantity" name="quantity" value="[% quantityrec %]" />
387                     [% END %]
388                 [% END %]
389                 <!-- origquantityrec only here for javascript compatibility (additem.js needs it, useless here, usefull when receiveing an order -->
390                 <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="1" />
391             </li>
392             <li>
393                 [% IF ( close ) %]
394             <span class="label required">Fund: </span>
395                     <input type="hidden" size="20" name="budget_id" id="budget_id" value="[% budget_id %]" />[% Budget_name %]
396                 [% ELSE %]
397                 <label class="required" for="budget_id">Fund: </label>
398                 <select id="budget_id" onchange="fetchSortDropbox(this.form)" size="1" name="budget_id">
399                         <option value="">Select a budget</option>
400                 [% FOREACH budget_loo IN budget_loop %]
401                     [% IF ( budget_loo.b_sel ) %]
402                         <option value="[% budget_loo.b_id %]" selected="selected">[% budget_loo.b_txt %]</option>
403                     [% ELSE %]
404                         [% IF ( budget_loo.b_active ) %]<option value="[% budget_loo.b_id %]">[% budget_loo.b_txt %]</option>
405                         [% ELSE %]<option value="[% budget_loo.b_id %]" class="b_inactive" style="display : none;">[% budget_loo.b_txt %]</option>    
406                         [% END %]
407                     [% END %]
408                 [% END %]
409                 </select>
410                 <label for="showallbudgets" style="float:none;width:auto;">&nbsp;Show all:</label>
411                 <input type="checkbox" id="showallbudgets" />
412                 [% END %]
413             </li>
414                 <li>
415                 [% IF ( close ) %]
416                         <span class="label">Currency: </span>
417                         <input type="hidden" size="10" name="currency" id="currency" value="[% currency %]" />[% currency %]
418                 [% ELSE %]
419                         <label for="currency">Currency:</label>
420                         <select name="currency" id="currency" onchange="calcNeworderTotal();">
421                         [% FOREACH loop_currencie IN loop_currencies %]
422                         [% 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 %]
423                         </select>
424                 [% END %]
425                 </li>
426             <li>
427                 [% IF ( close ) %]
428             <span class="label">Vendor price: </span>
429                     <input type="hidden" size="20" name="listprice" id="listprice" value="[% listprice %]" />[% listprice %]
430                 [% ELSE %]
431                 <label for="listprice">Vendor price: </label>
432                     <input type="text" size="20" name="listprice" id="listprice" value="[% listprice %]" onchange="calcNeworderTotal()" />
433                 [% END %]
434             </li>
435             [% UNLESS ( close ) %]
436             <li>
437                     <label for="uncertainprice">Uncertain price: </label>
438                     [% IF ( uncertainprice ) %]
439                     <input type="checkbox" name="uncertainprice"  id="uncertainprice" value="1" checked="checked" />
440                     [% ELSE %]
441                     <input type="checkbox" name="uncertainprice" id="uncertainprice" value="1" />
442                 [% END %]
443             </li>
444             [% END %]
445                         <li>
446                 [% IF ( close ) %]
447             <span class="label">Replacement cost: </span>
448                     <input type="hidden" size="20" name="rrp" id="rrp" value="[% rrp %]" />[% rrp %]
449                 [% ELSE %]
450                 <label for="rrp">Replacement cost: </label>
451                     <input type="text" size="20" name="rrp" id="rrp" value="[% rrp %]" /> (adjusted for [% cur_active %])
452                 [% END %]
453             </li>
454             <li>
455                 [% IF ( close ) %]
456             <label for="ecost">Budgeted cost: </label>
457                     <input type="text" size="20" name="ecost" id="ecost" value="[% ecost %]" readonly="readonly"  />
458                 [% ELSE %]
459                 <label for="ecost">Budgeted cost: </label>
460                     <input type="text" size="20" name="ecost" id="ecost" value="[% ecost %]" />
461                 [% END %]
462                 [% IF ( discount_2dp ) %]  (adjusted for [% discount_2dp %]% discount)  [% END %]
463
464             </li>
465             [% IF ( GST ) %]
466             <li>
467                 [% IF ( close ) %]
468             <label for="GST">Budgeted GST: </label>
469                 <input type="text" id="" size="20" name="gst" value="" id="GST" readonly="readonly" />
470                 [% ELSE %]
471                 <label for="GST">Budgeted GST: </label>
472                 <input type="text" size="20" name="gst" id="GST" value="" />
473                 [% END %]
474             </li>
475             [% END %]
476             <li>
477                 [% IF ( close ) %]
478             <label for="total">Total: </label>
479                 <input type="text" id="total" size="20" name="total" value="[% total %]" readonly="readonly" />
480                 [% ELSE %]
481                 <label for="total">Total: </label>
482                 <input type="text" id="total" size="20" name="total" value="[% total %]" /> (budgeted cost * quantity)
483                 [% END %]
484             </li>
485             <li>
486                 [% IF ( close ) %]
487             <label for="cost">Actual cost: </label>
488                 <input type="text" id="unitprice" size="20" name="unitprice" value="[% unitprice %]" readonly="readonly" />
489                 [% ELSE %]
490                 <label for="cost">Actual cost: </label>
491                 <input type="text" id="unitprice" size="20" name="unitprice" value="[% unitprice %]" />
492                 [% END %]
493             </li>
494             <li>
495                 <label for="notes">Notes: </label>
496                 <textarea id="notes" cols="30" rows="3" name="notes" >[% notes %]</textarea>
497             </li>
498             <li><div class="hint">The 2 following fields are available for your own usage. They can be useful for statistical purposes</div>
499                 <label for="sort1">Statistic 1: </label>
500
501                 [% IF CGIsort1 %]
502                     <select id="sort1" size="1" name="sort1">
503                     [% FOREACH sort_opt IN CGIsort1 %]
504                        [% IF sort_opt.default %]
505                           <option value="[% sort_opt.value %]" selected="selected">[% sort_opt.label %]</option>
506                         [% ELSE %]
507                           <option value="[% sort_opt.value %]">[% sort_opt.label %]</option>
508                         [% END %]
509                     [% END %]
510                     </select>
511                 [% ELSE %]
512
513                     <input type="text" id="sort1" size="20" name="sort1" value="[% sort1 %]" />
514                 [% END %]
515             </li>
516             <li>
517                 <label for="sort2">Statistic 2: </label>
518
519                 [% IF CGIsort2 %]
520                     <select id="sort2" size="1" name="sort2">
521                     [% FOREACH sort_opt IN CGIsort2 %]
522                        [% IF sort_opt.default %]
523                           <option value="[% sort_opt.value %]" selected="selected">[% sort_opt.label %]</option>
524                         [% ELSE %]
525                           <option value="[% sort_opt.value %]">[% sort_opt.label %]</option>
526                         [% END %]
527                     [% END %]
528                     </select>
529                 [% ELSE %]
530                     <input type="text" id="sort2" size="20" name="sort2" value="[% sort2 %]" />
531                 [% END %]
532             </li>
533 </ol>
534     </fieldset>
535     <fieldset class="action">
536         <input type="submit" value="Save" />
537         [% IF (suggestionid) %]
538             <a class="cancel" href="/cgi-bin/koha/acqui/newordersuggestion.pl?booksellerid=[% booksellerid %]&amp;basketno=[% basketno %]">Cancel</a>
539         [% ELSE %]
540             <a class="cancel" href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno %]">Cancel</a>
541         [% END %]
542     </fieldset>
543 </form>
544 </div>
545 </div>
546 <div class="yui-b">
547 [% INCLUDE 'acquisitions-menu.inc' %]
548 </div>
549 </div>
550 [% INCLUDE 'intranet-bottom.inc' %]