ed49537002
- # Subroutines::ProhibitExplicitReturnUndef: Got 1 violation(s) in C4::Serials::GetSubscriptionIrregularities - Bad template constructions fixed in serials/subscription-add.tt Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Signed-off-by: Paul Poulain <paul.poulain@biblibre.com> Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
852 lines
44 KiB
Text
852 lines
44 KiB
Text
[% USE KohaDates %]
|
|
|
|
[% INCLUDE 'doc-head-open.inc' %]
|
|
<title>Koha › Serials › [% IF ( modify ) %][% bibliotitle |html %] › Modify subscription[% ELSE %]New subscription[% END %]</title>
|
|
[% INCLUDE 'doc-head-close.inc' %]
|
|
[% INCLUDE 'calendar.inc' %]
|
|
<style type="text/css">
|
|
fieldset.rows li.radio { width: 100%; } /* override staff-global.css */
|
|
.yui-u li p label.widelabel {
|
|
width: 300px; /* not enough for IE7 apparently */
|
|
}
|
|
</style>
|
|
<script type="text/javascript">
|
|
//<![CDATA[
|
|
|
|
var globalnumpatterndata;
|
|
var globalfreqdata;
|
|
var advancedpatternlocked;
|
|
var patternneedtobetested = 0;
|
|
|
|
function check_issues(){
|
|
if (globalfreqdata.unit.length >0) {
|
|
if (document.f.subtype.value == globalfreqdata.unit){
|
|
document.f.issuelengthcount.value=(document.f.sublength.value*globalfreqdata.issuesperunit)/globalfreqdata.unitsperissue;
|
|
} else if (document.f.subtype.value != "issues"){
|
|
alert(_("Frequency and subscription length provided doesn't combine well. Please consider entering an issue count rather than a time period."));
|
|
}
|
|
}
|
|
}
|
|
|
|
function addbiblioPopup(biblionumber) {
|
|
var destination = "/cgi-bin/koha/cataloguing/addbiblio.pl?mode=popup";
|
|
if(biblionumber){
|
|
destination += "&biblionumber="+biblionumber;
|
|
}
|
|
window.open(destination,'AddBiblioPopup','width=1024,height=768,toolbar=no,scrollbars=yes');
|
|
}
|
|
|
|
function Plugin(f)
|
|
{
|
|
window.open('subscription-bib-search.pl','FindABibIndex','width=800,height=400,toolbar=no,scrollbars=yes');
|
|
}
|
|
|
|
function FindAcqui(f)
|
|
{
|
|
window.open('acqui-search.pl','FindASupplier','width=800,height=400,toolbar=no,scrollbars=yes');
|
|
}
|
|
|
|
function Find_ISSN(f)
|
|
{
|
|
window.open('issn-search.pl','FindABibIndex','width=800,height=400,toolbar=no,scrollbars=yes');
|
|
}
|
|
|
|
function Clear(id) {
|
|
$("#"+id).val('');
|
|
}
|
|
|
|
function Check_page1() {
|
|
if ( $("#aqbooksellerid").val().length == 0) {
|
|
input_box = confirm(_("If you wish to claim late or missing issues you must link this subscription to a vendor. Click OK to ignore or Cancel to return and enter a vendor"));
|
|
if (input_box==false) {
|
|
return false;
|
|
}
|
|
}
|
|
if ($("#biblionumber").val().length == 0) {
|
|
alert(_("You must choose or create a biblio"));
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
function Check_page2(){
|
|
[% UNLESS (more_than_one_serial) %]
|
|
if($("#acqui_date").val().length == 0){
|
|
alert(_("You must choose a first publication date"));
|
|
return false;
|
|
}
|
|
[% END %]
|
|
if($("#frequency").val().length == 0){
|
|
alert(_("You must choose a frequency"));
|
|
return false;
|
|
}
|
|
if($("input[name='startdate']").val().length == 0){
|
|
alert(_("You must choose a start date"));
|
|
return false;
|
|
}
|
|
if($("#sublength").val().length == 0 && $("input[name='enddate']").val().length == 0){
|
|
alert(_("You must choose a subscription length or an end date."));
|
|
return false;
|
|
}
|
|
if($("#numberpattern").val().length == 0){
|
|
alert(_("You must choose a numbering pattern"));
|
|
return false;
|
|
}
|
|
if(advancedpatternlocked == 0){
|
|
alert(_("You have modified the advanced prediction pattern. Please save your work or cancel modifications."));
|
|
return false;
|
|
}
|
|
if(patternneedtobetested){
|
|
alert(_("Please click on 'Test prediction pattern' before saving subscription."));
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
function frequencyload(){
|
|
$.getJSON("subscription-frequency.pl",{"frequency_id":document.f.frequency.value,ajax:'true'},
|
|
function(freqdata){
|
|
globalfreqdata=freqdata;
|
|
if ( globalfreqdata.unit.length == 0 ) {
|
|
var option = $("#subtype option[value='issues']");
|
|
$(option).attr('selected', 'selected');
|
|
$("#subtype option[value!='issues']").attr('disabled', 'disabled')
|
|
} else {
|
|
$("#subtype option").attr('disabled', false)
|
|
}
|
|
}
|
|
)
|
|
}
|
|
|
|
function numberpatternload(){
|
|
$.getJSON("subscription-numberpattern.pl",{"numberpattern_id":document.f.numbering_pattern.value,ajax:'true'},
|
|
function(numpatterndata){
|
|
globalnumpatterndata=numpatterndata;
|
|
if (globalnumpatterndata==undefined){
|
|
return false;
|
|
}
|
|
displaymoreoptions();
|
|
restoreAdvancedPattern();
|
|
}
|
|
);
|
|
}
|
|
|
|
function displaymoreoptions() {
|
|
if(globalnumpatterndata == undefined){
|
|
$("#moreoptionst").hide();
|
|
return false;
|
|
}
|
|
|
|
var X = 0, Y = 0, Z = 0;
|
|
var numberingmethod = unescape(globalnumpatterndata.numberingmethod);
|
|
if(numberingmethod.match(/{X}/)) X = 1;
|
|
if(numberingmethod.match(/{Y}/)) Y = 1;
|
|
if(numberingmethod.match(/{Z}/)) Z = 1;
|
|
|
|
if(X || Y || Z) {
|
|
$("#moreoptionst").show();
|
|
} else {
|
|
$("#moreoptionst").hide();
|
|
}
|
|
|
|
if(X) {
|
|
if(globalnumpatterndata.label1) {
|
|
$("#headerX").html(unescape(globalnumpatterndata.label1));
|
|
} else {
|
|
$("#headerX").html("X");
|
|
}
|
|
$("#headerX").show();
|
|
$("#beginsX").show();
|
|
$("#innerX").show();
|
|
} else {
|
|
$("#headerX").hide();
|
|
$("#beginsX").hide();
|
|
$("#innerX").hide();
|
|
$("#lastvaluetemp1").val('');
|
|
$("#innerlooptemp1").val('');
|
|
}
|
|
if(Y) {
|
|
if(globalnumpatterndata.label2) {
|
|
$("#headerY").html(unescape(globalnumpatterndata.label2));
|
|
} else {
|
|
$("#headerY").html("Y");
|
|
}
|
|
$("#headerY").show();
|
|
$("#beginsY").show();
|
|
$("#innerY").show();
|
|
} else {
|
|
$("#headerY").hide();
|
|
$("#beginsY").hide();
|
|
$("#innerY").hide();
|
|
$("#lastvaluetemp2").val('');
|
|
$("#innerlooptemp2").val('');
|
|
}
|
|
if(Z) {
|
|
if(globalnumpatterndata.label3) {
|
|
$("#headerZ").html(unescape(globalnumpatterndata.label3));
|
|
} else {
|
|
$("#headerZ").html("Z");
|
|
}
|
|
$("#headerZ").show();
|
|
$("#beginsZ").show();
|
|
$("#innerZ").show();
|
|
} else {
|
|
$("#headerZ").hide();
|
|
$("#beginsZ").hide();
|
|
$("#innerZ").hide();
|
|
$("#lastvaluetemp3").val('');
|
|
$("#innerlooptemp3").val('');
|
|
}
|
|
}
|
|
|
|
function toggleAdvancedPattern() {
|
|
$("#advancedpredictionpattern").toggle();
|
|
}
|
|
|
|
function modifyAdvancedPattern() {
|
|
$("#patternname").attr("readonly", false).val('');
|
|
$("#numberingmethod").attr("readonly", false);
|
|
|
|
$("#advancedpredictionpatternt input").each(function() {
|
|
$(this).attr("readonly", false);
|
|
});
|
|
$("#advancedpredictionpatternt select").each(function() {
|
|
$(this).attr("disabled", false);
|
|
});
|
|
|
|
$("#restoreadvancedpatternbutton").show();
|
|
$("#saveadvancedpatternbutton").show();
|
|
$("#modifyadvancedpatternbutton").hide();
|
|
|
|
advancedpatternlocked = 0;
|
|
}
|
|
|
|
function restoreAdvancedPattern() {
|
|
$("#patternname").attr("readonly", true).val(unescape(globalnumpatterndata.label));
|
|
$("#numberingmethod").attr("readonly", true).val(unescape(globalnumpatterndata.numberingmethod));
|
|
|
|
$("#advancedpredictionpatternt input").each(function() {
|
|
$(this).attr("readonly", true);
|
|
var id = $(this).attr('id');
|
|
if(id.match(/lastvalue/) || id.match(/innerloop/)) {
|
|
var tempid = id.replace(/(\d)/, "temp$1");
|
|
$(this).val($("#"+tempid).val());
|
|
} else {
|
|
$(this).val(unescape(globalnumpatterndata[id]));
|
|
}
|
|
});
|
|
$("#advancedpredictionpatternt select").each(function() {
|
|
$(this).attr("disabled", true);
|
|
var id = $(this).attr('id');
|
|
$(this).val(unescape(globalnumpatterndata[id]));
|
|
});
|
|
|
|
$("#restoreadvancedpatternbutton").hide();
|
|
$("#saveadvancedpatternbutton").hide();
|
|
$("#modifyadvancedpatternbutton").show();
|
|
|
|
advancedpatternlocked = 1;
|
|
}
|
|
|
|
function testPredictionPattern() {
|
|
var frequencyid = $("#frequency").val();
|
|
var acquidate;
|
|
var error = 0;
|
|
var error_msg = "";
|
|
if(frequencyid == undefined || frequencyid == ""){
|
|
error_msg += _("- Frequency is not defined\n");
|
|
error ++;
|
|
}
|
|
acquidate = $("#acqui_date").val();
|
|
if(acquidate == undefined || acquidate == ""){
|
|
error_msg += _("- First publication date is not defined\n");
|
|
error ++;
|
|
}
|
|
[% IF (more_than_one_serial) %]
|
|
var nextacquidate = $("#nextacquidate").val();
|
|
if(nextacquidate == undefined || nextacquidate == ""){
|
|
error_msg += _("- Next issue publication date is not defined\n");
|
|
error ++;
|
|
}
|
|
[% END %]
|
|
|
|
if(error){
|
|
alert(_("Cannot test prediction pattern for the following reason(s):\n\n")
|
|
+ error_msg);
|
|
return false;
|
|
}
|
|
|
|
var custompattern = 0;
|
|
if(advancedpatternlocked == 0) {
|
|
custompattern = 1;
|
|
}
|
|
|
|
var ajaxData = {
|
|
'custompattern': custompattern,
|
|
[% IF (subscriptionid) %]
|
|
'subscriptionid': [% subscriptionid %],
|
|
[% END %]
|
|
[% IF (more_than_one_serial) %]
|
|
'nextacquidate': nextacquidate,
|
|
[% END %]
|
|
'firstacquidate': acquidate
|
|
};
|
|
var ajaxParams = [
|
|
'to', 'subtype', 'sublength', 'frequency', 'numberingmethod',
|
|
'lastvalue1', 'lastvalue2', 'lastvalue3', 'add1', 'add2', 'add3',
|
|
'every1', 'every2', 'every3', 'innerloop1', 'innerloop2', 'innerloop3',
|
|
'setto1', 'setto2', 'setto3', 'numbering1', 'numbering2', 'numbering3',
|
|
'whenmorethan1', 'whenmorethan2', 'whenmorethan3', 'locale'
|
|
];
|
|
for(i in ajaxParams) {
|
|
var param = ajaxParams[i];
|
|
var value = $("#"+param).val();
|
|
if(value.length > 0)
|
|
ajaxData[param] = value;
|
|
}
|
|
|
|
$.ajax({
|
|
url:"/cgi-bin/koha/serials/showpredictionpattern.pl",
|
|
data: ajaxData,
|
|
success: function(data) {
|
|
$("#displayexample").html(data);
|
|
patternneedtobetested = 0;
|
|
}
|
|
});
|
|
}
|
|
|
|
function saveAdvancedPattern() {
|
|
if ($("#patternname").val().length == 0) {
|
|
alert(_("Please enter a name for this pattern"));
|
|
return false;
|
|
}
|
|
|
|
// Check if patternname already exists, and modify pattern
|
|
// instead of creating it if so
|
|
var found = 0;
|
|
$("#numberpattern option").each(function(){
|
|
if($(this).text() == $("#patternname").val()){
|
|
found = 1;
|
|
return false;
|
|
}
|
|
});
|
|
var cnfrm = 1;
|
|
if(found){
|
|
var msg = _("This pattern name already exists. Do you want to modify it?")
|
|
+ "\n" + _("Warning: it will modify the pattern for all subscriptions")
|
|
+ _("that are using it.");
|
|
cnfrm = confirm(msg);
|
|
}
|
|
|
|
if(cnfrm) {
|
|
var ajaxData = {};
|
|
var ajaxParams = [
|
|
'patternname', 'numberingmethod', 'label1', 'label2', 'label3',
|
|
'add1', 'add2', 'add3', 'every1', 'every2', 'every3',
|
|
'setto1', 'setto2', 'setto3', 'numbering1', 'numbering2', 'numbering3',
|
|
'whenmorethan1', 'whenmorethan2', 'whenmorethan3', 'locale'
|
|
];
|
|
for(i in ajaxParams) {
|
|
var param = ajaxParams[i];
|
|
var value = $("#"+param).val();
|
|
if(value.length > 0)
|
|
ajaxData[param] = value;
|
|
}
|
|
|
|
$.getJSON(
|
|
"/cgi-bin/koha/serials/create-numberpattern.pl",
|
|
ajaxData,
|
|
function(data){
|
|
if (data.numberpatternid) {
|
|
if(found == 0){
|
|
$("#numberpattern").append("<option value=\""+data.numberpatternid+"\">"+$("#patternname").val()+"</option>");
|
|
}
|
|
$("#numberpattern").val(data.numberpatternid);
|
|
numberpatternload();
|
|
} else {
|
|
alert(_("Something went wrong. Unable to create a new numbering pattern."));
|
|
}
|
|
}
|
|
);
|
|
}
|
|
}
|
|
|
|
function show_page_1() {
|
|
$("#page_1").show();
|
|
$("#page_2").hide();
|
|
$("#page_number").text("1/2");
|
|
}
|
|
|
|
function show_page_2() {
|
|
$("#page_1").hide();
|
|
$("#page_2").show();
|
|
$("#page_number").text("2/2");
|
|
displaymoreoptions();
|
|
}
|
|
|
|
|
|
$(document).ready(function() {
|
|
$("select#frequency").change(function(){
|
|
patternneedtobetested = 1;
|
|
$("input[name='enddate']").val('');
|
|
frequencyload();
|
|
});
|
|
$("select#numberpattern").change(function(){
|
|
patternneedtobetested = 1;
|
|
numberpatternload();
|
|
});
|
|
$("#subtype").change(function(){
|
|
$("input[name='enddate']").val('');
|
|
});
|
|
$("#sublength").change(function(){
|
|
$("input[name='enddate']").val('');
|
|
});
|
|
$("#lastvaluetemp1").keyup(function(){
|
|
$("#lastvalue1").val($(this).val());
|
|
});
|
|
$("#lastvaluetemp2").keyup(function(){
|
|
$("#lastvalue2").val($(this).val());
|
|
});
|
|
$("#lastvaluetemp3").keyup(function(){
|
|
$("#lastvalue3").val($(this).val());
|
|
});
|
|
$("#lastvalue1").keyup(function(){
|
|
$("#lastvaluetemp1").val($(this).val());
|
|
});
|
|
$("#lastvalue2").keyup(function(){
|
|
$("#lastvaluetemp2").val($(this).val());
|
|
});
|
|
$("#lastvalue3").keyup(function(){
|
|
$("#lastvaluetemp3").val($(this).val());
|
|
});
|
|
|
|
$("#innerlooptemp1").keyup(function(){
|
|
$("#innerloop1").val($(this).val());
|
|
});
|
|
$("#innerlooptemp2").keyup(function(){
|
|
$("#innerloop2").val($(this).val());
|
|
});
|
|
$("#innerlooptemp3").keyup(function(){
|
|
$("#innerloop3").val($(this).val());
|
|
});
|
|
$("#innerloop1").keyup(function(){
|
|
$("#innerlooptemp1").val($(this).val());
|
|
});
|
|
$("#innerloop2").keyup(function(){
|
|
$("#innerlooptemp2").val($(this).val());
|
|
});
|
|
$("#innerloop3").keyup(function(){
|
|
$("#innerlooptemp3").val($(this).val());
|
|
});
|
|
|
|
if($("#frequency").val() != ""){
|
|
frequencyload();
|
|
}
|
|
if($("#numberpattern").val() != ""){
|
|
numberpatternload();
|
|
}
|
|
|
|
var node;
|
|
[% FOREACH field IN dont_export_field_loop %]
|
|
node = $("#[% field.fieldid %]");
|
|
if ( $(node).is('input') || $(node).is('textarea') ) {
|
|
$(node).val("");
|
|
} else if ( $(node).is('select') ) {
|
|
$(node).find("option:first").attr('selected','selected');
|
|
}
|
|
[% END %]
|
|
|
|
show_page_1();
|
|
});
|
|
//]]>
|
|
</script>
|
|
</head>
|
|
<body id="ser_subscription-add" class="ser">
|
|
[% INCLUDE 'header.inc' %]
|
|
[% INCLUDE 'serials-search.inc' %]
|
|
|
|
<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/serials/serials-home.pl">Serials</a> › [% IF ( modify ) %]<a href="/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=[% subscriptionid %]"><i>[% bibliotitle |html %]</i></a> › Modify subscription[% ELSE %]New subscription[% END %]</div>
|
|
|
|
<div id="doc3" class="yui-t7">
|
|
<div id="bd">
|
|
<div class="yui-g">
|
|
<h1>[% IF ( modify ) %] Modify subscription for <i>[% bibliotitle |html %]</i>[% ELSE %]Add a new subscription[% END %] (<span id="page_number">1/2</span>)</h1>
|
|
<form method="post" name="f" action="/cgi-bin/koha/serials/subscription-add.pl">
|
|
[% IF ( modify ) %]
|
|
<input type="hidden" name="op" value="modsubscription" />
|
|
<input type="hidden" name="subscriptionid" value="[% subscriptionid %]" />
|
|
[% ELSE %]
|
|
<input type="hidden" name="op" value="addsubscription" />
|
|
[% END %]
|
|
<input type="hidden" name="user" value="[% loggedinusername %]" />
|
|
<input type="hidden" name="irreg_check" value="0" />
|
|
|
|
<div id="page_1">
|
|
<div class="yui-u first">
|
|
<fieldset id="subscription_add_information" class="rows">
|
|
<legend>Subscription details</legend>
|
|
<ol>
|
|
[% IF ( subscriptionid ) %]
|
|
<li><span class="label">Subscription #</span> [% subscriptionid %]</li>
|
|
[% END %]
|
|
<li>
|
|
<label for="aqbooksellerid">Vendor: </label>
|
|
<input type="text" name="aqbooksellerid" id="aqbooksellerid" value="[% aqbooksellerid %]" size="8" /> (<input type="text" name="aqbooksellername" value="[% aqbooksellername %]" disabled="disabled" readonly="readonly" />) <a href="#" onclick="FindAcqui(f)">Search for a vendor</a>
|
|
</li>
|
|
<li>
|
|
<label for="biblionumber" class="required" title="Subscriptions must be associated with a bibliographic record">Biblio:</label>
|
|
<input type="text" name="biblionumber" id="biblionumber" value="[% bibnum %]" size="8" />
|
|
(<input type="text" name="title" value="[% bibliotitle %]" disabled="disabled" readonly="readonly" />) <span class="required" title="Subscriptions must be associated with a bibliographic record">Required</span>
|
|
<div class="inputnote"> <a href="#" onclick="Plugin(f)">Search for Biblio</a>
|
|
[% IF ( CAN_user_editcatalogue ) %]
|
|
[% IF ( modify ) %]
|
|
| <a href="#" onclick="addbiblioPopup([% bibnum %]); return false;">Edit biblio</a>
|
|
[% ELSE %]
|
|
| <a href="#" onclick="addbiblioPopup(); return false;">Create Biblio</a>
|
|
[% END %]
|
|
[% END %]
|
|
</div>
|
|
</li>
|
|
<li class="radio">
|
|
[% IF ( serialsadditems ) %]
|
|
<p><input type="radio" id="serialsadditems-yes" name="serialsadditems" value="1" checked="checked" /><label class="widelabel" for="serialsadditems-yes">create an item record when receiving this serial</label></p>
|
|
<p><input type="radio" id="serialsadditems-no" name="serialsadditems" value="0" /><label class="widelabel" for="serialsadditems-no">do not create an item record when receiving this serial </label></p>
|
|
[% ELSE %]
|
|
<p><input type="radio" id="serialsadditems-yes" name="serialsadditems" value="1"/><label class="widelabel" for="serialsadditems-yes">create an item record when receiving this serial</label></p>
|
|
<p><input type="radio" id="serialsadditems-no" name="serialsadditems" value="0" checked="checked" /><label class="widelabel" for="serialsadditems-no">do not create an item record when receiving this serial</label></p>
|
|
[% END %]
|
|
</li>
|
|
<li class="radio">
|
|
<p>When there is an irregular issue:</p>
|
|
[% IF (skip_serialseq) %]
|
|
<p>
|
|
<input type="radio" id="skip_serialseq_yes" name="skip_serialseq" value="1" checked="checked" />
|
|
<label for="skip_serialseq_yes">Skip issue number</label>
|
|
</p>
|
|
<p>
|
|
<input type="radio" id="skip_serialseq_no" name="skip_serialseq" value="0" />
|
|
<label for="skip_serialseq_no">Keep issue number</label>
|
|
</p>
|
|
[% ELSE %]
|
|
<p>
|
|
<input type="radio" id="skip_serialseq_yes" name="skip_serialseq" value="1" />
|
|
<label for="skip_serialseq_yes">Skip issue number</label>
|
|
</p>
|
|
<p>
|
|
<input type="radio" id="skip_serialseq_no" name="skip_serialseq" value="0" checked="checked" />
|
|
<label for="skip_serialseq_no">Keep issue number</label>
|
|
</p>
|
|
[% END %]
|
|
</li>
|
|
<li>
|
|
<label for="manualhistory">Manual history</label>
|
|
[% IF (manualhistory) %]
|
|
<input type="checkbox" id="manualhistory" name="manualhist" checked="checked" />
|
|
[% ELSE %]
|
|
<input type="checkbox" id="manualhistory" name="manualhist" />
|
|
[% END %]
|
|
</li>
|
|
<li>
|
|
<label for="callnumber">Call number</label>
|
|
<input type="text" name="callnumber" id="callnumber" value="[% callnumber %]" size="20" />
|
|
</li>
|
|
<li>
|
|
<label for="branchcode">Library:</label>
|
|
<select name="branchcode" id="branchcode" style="width: 20em;">
|
|
[% UNLESS ( Independantbranches ) %]
|
|
<option value="">None</option>
|
|
[% END %]
|
|
[% 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> (select a library)
|
|
</li>
|
|
<li>
|
|
<label for="notes">Public note:</label>
|
|
<textarea name="notes" id="notes" cols="30" rows="2">[% notes %]</textarea>
|
|
</li>
|
|
<li>
|
|
<label for="internalnotes">Nonpublic note:</label>
|
|
<textarea name="internalnotes" id="internalnotes" cols="30" rows="2">[% internalnotes %]</textarea>
|
|
</li>
|
|
<li>
|
|
[% IF ( letterloop ) %]
|
|
<label for="letter">Patron notification: </label>
|
|
<select name="letter" id="letter">
|
|
<option value="">None</option>
|
|
[% FOREACH letterloo IN letterloop %]
|
|
[% IF ( letterloo.selected ) %]
|
|
<option value="[% letterloo.value %]" selected="selected">[% letterloo.lettername %]</option>
|
|
[% ELSE %]
|
|
<option value="[% letterloo.value %]">[% letterloo.lettername %]</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
<div class="hint">Select a notice and patrons on the routing list will be notified when new issues are received.</div>
|
|
[% ELSE %]
|
|
<span class="label">Patron notification: </span>
|
|
<div class="hint">To notify patrons of new serial issues, you must <a href="/cgi-bin/koha/tools/letter.pl">define a notice</a>.</div>
|
|
[% END %]
|
|
</li>
|
|
<li>
|
|
<label for="location">Location:</label>
|
|
<select name="location" id="location">
|
|
<option value="">None</option>
|
|
[% FOREACH locations_loo IN locations_loop %]
|
|
[% IF ( locations_loo.selected ) %]
|
|
<option value="[% locations_loo.authorised_value %]" selected="selected">[% locations_loo.lib %]</option>
|
|
[% ELSE %]
|
|
<option value="[% locations_loo.authorised_value %]">[% locations_loo.lib %]</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
<li>
|
|
<label for="graceperiod">Grace period:</label>
|
|
<input type="text" name="graceperiod" id="graceperiod" value="[% graceperiod %]" size="5"/> day(s)
|
|
</li>
|
|
<li>
|
|
<label class="widelabel" for="staffdisplaycount">Number of issues to display to staff: </label>
|
|
<input type="text" name="staffdisplaycount" id="staffdisplaycount" value="[% staffdisplaycount %]" size="4"/>
|
|
</li>
|
|
<li>
|
|
<label class="widelabel" for="opacdisplaycount">Number of issues to display to the public: </label>
|
|
<input type="text" name="opacdisplaycount" id="opacdisplaycount" value="[% opacdisplaycount %]" size="4"/>
|
|
</li>
|
|
</ol>
|
|
</fieldset>
|
|
<fieldset class="action">
|
|
<input type="button" value="Next >>" onclick="if ( Check_page1() ) show_page_2();" style="float:right;" />
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="page_2">
|
|
<div class="yui-u first">
|
|
<div id="subscription_form_planning">
|
|
<fieldset class="rows">
|
|
<legend>Serials planning</legend>
|
|
<ol>
|
|
<li>
|
|
<label for="firstacquidate">First issue publication date: (*)</label>
|
|
[% UNLESS (more_than_one_serial) %]
|
|
<input type="text" size="10" id="acqui_date" name="firstacquidate" value="[% firstacquidate | $KohaDates %]" class="datepicker" readonly="readonly"/>
|
|
[% ELSE %]
|
|
[% firstacquidate | $KohaDates %]
|
|
<input type="hidden" size="10" id="acqui_date" name="firstacquidate" value="[% firstacquidate | $KohaDates %]"/>
|
|
[% END %]
|
|
</li>
|
|
[% IF (more_than_one_serial) %]
|
|
<li>
|
|
<label for="nextacquidate">Next issue publication date:</label>
|
|
<input type="text" size="10" id="nextacquidate" name="nextacquidate" value="[% nextacquidate | $KohaDates %]" class="datepicker" readonly="readonly"/>
|
|
</li>
|
|
[% END %]
|
|
<li>
|
|
<label for="frequency">Frequency: (*)</label>
|
|
<select name="frequency" size="1" id="frequency">
|
|
<option value="">-- please choose --</option>
|
|
[% FOREACH frequency IN frequencies %]
|
|
[% IF (frequency.selected) %]
|
|
<option value="[% frequency.id %]" selected="selected">
|
|
[% ELSE %]
|
|
<option value="[% frequency.id %]">
|
|
[% END %]
|
|
[% frequency.label %]
|
|
</option>
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
<li>
|
|
<label for="subtype">Subscription length:</label>
|
|
<select name="subtype" id="subtype">
|
|
[% FOREACH subt IN subtype %]
|
|
[% IF (subt.selected) %]
|
|
<option value="[% subt.name %]" selected="selected">
|
|
[% ELSE %]
|
|
<option value="[% subt.name %]">
|
|
[% END %]
|
|
[% subt.name %]
|
|
</option>
|
|
[% END %]
|
|
</select>
|
|
<input type="text" name="sublength" id="sublength" value="[% sublength %]" size="3" /> (enter amount in numerals)
|
|
<input type="hidden" name="issuelengthcount">
|
|
</li>
|
|
<li>
|
|
<label for="startdate"> Subscription start date: (*)</label>
|
|
<input type="text" size="10" id="from" name="startdate" value="[% startdate | $KohaDates %]" class="datepickerfrom" readonly="readonly"/>
|
|
</li>
|
|
<li>
|
|
<label for="enddate">Subscription end date:</label>
|
|
<input type="text" size="10" id="to" name="enddate" value="[% enddate | $KohaDates %]" class="datepickerto" readonly="readonly"/>
|
|
</li>
|
|
<li>
|
|
<label for="numberpattern">Numbering pattern:</label>
|
|
<select name="numbering_pattern" size="1" id="numberpattern">
|
|
<option value="">-- please choose --</option>
|
|
[% FOREACH numberpattern IN numberpatterns %]
|
|
[% IF (numberpattern.selected) %]
|
|
<option value="[% numberpattern.id %]">
|
|
[% ELSE %]
|
|
<option value="[% numberpattern.id %]">
|
|
[% END %]
|
|
[% numberpattern.label %]
|
|
</option>
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
<li>
|
|
<label for="locale">Locale</label>
|
|
<select id="locale" name="locale">
|
|
<option value=""></option>
|
|
[% FOREACH locale IN locales %]
|
|
<option value="[% locale %]">
|
|
[% locale %]
|
|
</option>
|
|
[% END %]
|
|
</select>
|
|
<span class="hint">If empty, system locale is used</span>
|
|
</li>
|
|
<li id="more_options">
|
|
<table id="moreoptionst">
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th id="headerX"> </th>
|
|
<th id="headerY"> </th>
|
|
<th id="headerZ"> </th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>
|
|
[% IF (more_than_one_serial) %]
|
|
Last value
|
|
[% ELSE %]
|
|
Begins with
|
|
[% END %]
|
|
</td>
|
|
<td id="beginsX"><input type="text" id="lastvaluetemp1" name="lastvaluetemp1" value="[% lastvalue1 %]" /></td>
|
|
<td id="beginsY"><input type="text" id="lastvaluetemp2" name="lastvaluetemp2" value="[% lastvalue2 %]" /></td>
|
|
<td id="beginsZ"><input type="text" id="lastvaluetemp3" name="lastvaluetemp3" value="[% lastvalue3 %]" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Inner counter</td>
|
|
<td id="innerX"><input type="text" id="innerlooptemp1" name="innerlooptemp1" value="[% innerloop1 %]" /></td>
|
|
<td id="innerY"><input type="text" id="innerlooptemp2" name="innerlooptemp2" value="[% innerloop2 %]" /></td>
|
|
<td id="innerZ"><input type="text" id="innerlooptemp3" name="innerlooptemp3" value="[% innerloop3 %]" /></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</li>
|
|
<li><a style="cursor:pointer" onclick="toggleAdvancedPattern();">Show/Hide advanced pattern</a></li>
|
|
<div id="advancedpredictionpattern" style="display:none">
|
|
<li>
|
|
<label for="patternname">Pattern name: (*)</label>
|
|
<input id="patternname" name="patternname" type="text" readonly="readonly" />
|
|
</li>
|
|
<li>
|
|
<label for="numberingmethod">Numbering formula:</label>
|
|
<input readonly="readonly" type="text" name="numberingmethod" id="numberingmethod" size="50" value="[% numberingmethod %]" />
|
|
</li>
|
|
<table id="advancedpredictionpatternt">
|
|
<thead>
|
|
<tr>
|
|
<th colspan="4">Advanced prediction pattern</td>
|
|
</tr>
|
|
<tr>
|
|
<th> </th>
|
|
<th>X</th>
|
|
<th>Y</th>
|
|
<th>Z</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>Label</td>
|
|
<td><input type="text" readonly="readonly" id="label1" name="label1" /></td>
|
|
<td><input type="text" readonly="readonly" id="label2" name="label2" /></td>
|
|
<td><input type="text" readonly="readonly" id="label3" name="label3" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Begins with</td>
|
|
<td><input type="text" readonly="readonly" id="lastvalue1" name="lastvalue1" /></td>
|
|
<td><input type="text" readonly="readonly" id="lastvalue2" name="lastvalue2" /></td>
|
|
<td><input type="text" readonly="readonly" id="lastvalue3" name="lastvalue3" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Add</td>
|
|
<td><input type="text" readonly="readonly" id="add1" name="add1" /></td>
|
|
<td><input type="text" readonly="readonly" id="add2" name="add2" /></td>
|
|
<td><input type="text" readonly="readonly" id="add3" name="add3" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Every</td>
|
|
<td><input type="text" readonly="readonly" id="every1" name="every1" /></td>
|
|
<td><input type="text" readonly="readonly" id="every2" name="every2" /></td>
|
|
<td><input type="text" readonly="readonly" id="every3" name="every3" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Set back to</td>
|
|
<td><input type="text" readonly="readonly" id="setto1" name="setto1" /></td>
|
|
<td><input type="text" readonly="readonly" id="setto2" name="setto2" /></td>
|
|
<td><input type="text" readonly="readonly" id="setto3" name="setto3" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td>When more than</td>
|
|
<td><input type="text" readonly="readonly" id="whenmorethan1" name="whenmorethan1" /></td>
|
|
<td><input type="text" readonly="readonly" id="whenmorethan2" name="whenmorethan2" /></td>
|
|
<td><input type="text" readonly="readonly" id="whenmorethan3" name="whenmorethan3" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Inner counter</td>
|
|
<td><input type="text" readonly="readonly" id="innerloop1" name="innerloop1" /></td>
|
|
<td><input type="text" readonly="readonly" id="innerloop2" name="innerloop2" /></td>
|
|
<td><input type="text" readonly="readonly" id="innerloop3" name="innerloop3" /></td>
|
|
</tr>
|
|
<tr>
|
|
[% BLOCK numbering_select %]
|
|
<select disabled="disabled" id="[% name %]" name="[% name %]" />
|
|
<option value=""></option>
|
|
<option value="dayname">Name of day</option>
|
|
<option value="monthname">Name of month</option>
|
|
<option value="season">Name of season</option>
|
|
</select>
|
|
[% END %]
|
|
<td>Formatting</td>
|
|
<td>[% PROCESS numbering_select name="numbering1" %]</td>
|
|
<td>[% PROCESS numbering_select name="numbering2" %]</td>
|
|
<td>[% PROCESS numbering_select name="numbering3" %]</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<input id="modifyadvancedpatternbutton" type="button" value="Modify pattern" onclick="modifyAdvancedPattern();" />
|
|
<input id="restoreadvancedpatternbutton" type="button" value="Cancel modifications" onclick="restoreAdvancedPattern();" style="display:none" />
|
|
<input id="saveadvancedpatternbutton" type="button" value="Save as new pattern" onclick="saveAdvancedPattern();" style="display:none" />
|
|
</div>
|
|
</ol>
|
|
</fieldset>
|
|
<fieldset class="action">
|
|
<input type="button" value="<< Previous" onclick="show_page_1();" style="float:left;"/>
|
|
<input id="testpatternbutton" type="button" value="Test prediction pattern" onclick="testPredictionPattern();" />
|
|
<input type="button" value="Save subscription" onclick="if (Check_page2()) submit();" style="float:right;" accesskey="w" />
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
<div class="yui-u">
|
|
<li id="displayexample"></li>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
[% INCLUDE 'intranet-bottom.inc' %]
|