Added check for mandatory tags, and distinguish between mandatory subfields
in mandatory and optional tags (Incomplete merge, new error messages need to be retranslated)
This commit is contained in:
parent
e85ad950e2
commit
f296bdf464
|
|
@ -49,6 +49,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</tmpl_loop>
|
||||
|
|
@ -70,6 +71,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</TMPL_LOOP>
|
||||
|
|
@ -91,6 +93,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</TMPL_LOOP>
|
||||
|
|
@ -112,6 +115,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</TMPL_LOOP>
|
||||
|
|
@ -133,6 +137,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</TMPL_LOOP>
|
||||
|
|
@ -154,6 +159,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</TMPL_LOOP>
|
||||
|
|
@ -175,6 +181,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</TMPL_LOOP>
|
||||
|
|
@ -196,6 +203,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</TMPL_LOOP>
|
||||
|
|
@ -217,6 +225,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</TMPL_LOOP>
|
||||
|
|
@ -238,6 +247,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</TMPL_LOOP>
|
||||
|
|
@ -257,6 +267,7 @@
|
|||
<input type="hidden" name="tag" value="<TMPL_VAR name="tag">">
|
||||
<input type="hidden" name="subfield" value="<TMPL_VAR name="subfield">">
|
||||
<input type="hidden" name="mandatory" value="<TMPL_VAR name="mandatory">">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</td>
|
||||
</tr>
|
||||
</TMPL_LOOP>
|
||||
|
|
@ -271,6 +282,7 @@
|
|||
<input type="hidden" name="subfield" value="<TMPL_VAR name="oldbiblioitemnumtagsubfield">">
|
||||
<input type="hidden" name="field_value" value="<TMPL_VAR name="oldbiblioitemnumber">">
|
||||
<input type="hidden" name="mandatory" value="0">
|
||||
<input type="hidden" name="tag_mandatory" value="<TMPL_VAR name="tag_mandatory">">
|
||||
</TMPL_IF>
|
||||
</form>
|
||||
|
||||
|
|
@ -293,25 +305,58 @@ function active(numlayer)
|
|||
}
|
||||
}
|
||||
function Check(f) {
|
||||
var total_errors=0;
|
||||
// alert(f.field_value.length);
|
||||
// Scan for nonempty fields
|
||||
var field_is_nonempty_p = new Array();
|
||||
for (i=0 ; i<f.field_value.length ; i++) {
|
||||
field_is_nonempty_p[f.tag[i].value] = 0;
|
||||
}
|
||||
for (i=0 ; i<f.field_value.length ; i++) {
|
||||
if (f.field_value[i].value.length != 0) {
|
||||
field_is_nonempty_p[f.tag[i].value] += 1;
|
||||
}
|
||||
}
|
||||
|
||||
// Scan for missing mandatory subfields
|
||||
var total_missing_mandatory_subfields = 0;
|
||||
for (i=0 ; i<f.field_value.length-2 ; i++) {
|
||||
// alert (f.field_value[i].value);
|
||||
if (f.field_value[i].value.length==0 && f.mandatory[i].value==1) {
|
||||
// We should not flag an error unless the tag is also
|
||||
// mandatory, or if something else in the tag is entered
|
||||
|
||||
if (f.tag_mandatory[i].value == 1 || field_is_nonempty_p[f.tag[i].value]) {
|
||||
document.getElementById("error"+i).style.backgroundColor="#FF0000";
|
||||
total_errors++;
|
||||
total_missing_mandatory_subfields++;
|
||||
}
|
||||
} else {
|
||||
document.getElementById("error"+i).style.backgroundColor="#FFFFFF";
|
||||
}
|
||||
}
|
||||
|
||||
// Scan for missing mandatory tags
|
||||
var total_missing_mandatory_tags = 0;
|
||||
var seen_mandatory_tag_p = new Array();
|
||||
for (i=0 ; i<f.field_value.length ; i++) {
|
||||
var j = f.tag[i].value;
|
||||
if (!field_is_nonempty_p[j] && f.tag_mandatory[i].value == 1) {
|
||||
if (seen_mandatory_tag_p[j] != 1) {
|
||||
seen_mandatory_tag_p[j] = 1;
|
||||
total_missing_mandatory_tags++;
|
||||
}
|
||||
document.getElementById("error"+i).style.backgroundColor="#ffff00";
|
||||
}
|
||||
}
|
||||
|
||||
var total_errors = total_missing_mandatory_tags + total_missing_mandatory_subfields;
|
||||
var alertString2;
|
||||
if (total_errors==0) {
|
||||
document.f.submit();
|
||||
} else {
|
||||
if (total_errors!=0) {
|
||||
alertString2 = "No se envío el formulario por los siguientes problemas\n";
|
||||
alertString2 += "------------------------------------------------------------------------------------\n\n";
|
||||
// alertString2 += "- "+ total_missing_mandatory_tags +" mandatory tags empty\n";
|
||||
// alertString2 += "- "+ total_missing_mandatory_subfields +" mandatory fields empty (see bold subfields)";
|
||||
alertString2 += "- "+ total_errors+" campos vacíos (revise los campos en negrita)";
|
||||
alert(alertString2);
|
||||
} else {
|
||||
document.f.submit();
|
||||
}
|
||||
}
|
||||
function Dopop(link,i) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue