');
wrt('');
}
function wrtXmplSnippetTbl(s_vfConfig, s_frmFrmLmnt) {
wrt('');
wrt('VF-Config Snippet | ');
wrt('' + s_vfConfig + ' | ');
wrt(' ');
wrt('Example Element | ');
wrt('' + s_frmFrmLmnt + ' | ');
wrt(' ');
}
function configVFandPD(s_formNmPost, s_cibcSctnPre, a_fncPosts, b_ppppToPoint, b_ddddToDash, b__toSpace) {
eval('configVF("CIBC_ON", -1, "my_form_' + s_formNmPost + '");');
var sCfgVFPD = 'configVFPD("ON", "CIBC_ON", "ON_LNK",\n' +
' "NO_OFF_LNK", "NO_RESET_LNK", "NO_SUCCESS_DDB", "' + s_cibcSctnPre + 'CIBC_SCTN", "CIBC_CRSH_DDB",\n' +
' [2, 1, 5], ' + a_fncPosts + ', "my_form_' + s_formNmPost + '");';
eval(sCfgVFPD);
bDBG_TEST_FUNC_CALLS = false;
bTST_FUNCS_ELIM_TYPE_POSTS = true;
bTST_FUNCS_pppp_TO_POINT = b_ppppToPoint;
bTST_FUNCS_dddd_TO_DASH = b_ddddToDash;
bTST_FUNCS___TO_SPACE = b__toSpace;
}
var sSMSG_PPRE = "The error message presented to the user when the";
var sSMSG_RLS = "Must be a string at least one character in length.";
var sBS_NOTE = 'Must be a string equal to \'true \'.Note for all BooleanStrings: The only legal values for a BooleanString vf-attributes (those whose names start with \'bs* \') are strings equal to either \'true \' or \'false \'. When \'true \', the attribute is considered \'associated\', and its concept is activated. When \'false \', the attribute is not associated (and, in fact, is explicitly undefined at the bottom of the FLStats constructor).';
function wrtAttributeTable(s_concept3Abrv, doc_attr) {
var sNm = doc_attr.a2c.ca.sNm;
if(sNm == "sMsgTxtZip5") {
sNm = "sMsgTxt*";
}
wrt(' ');
var sConcept = aDOC_C[getAllDCIdx("wrtAttributeTable", s_concept3Abrv, true)].sNameHtml;;
wrt('[TOP] ' + sConcept + ' attribute: ' + sNm + ' | ');
wrt(' ');
wrt('Value Purpose | ');
wrt('' + doc_attr.sValuePurpose + ' | ');
wrt(' ');
wrt('Value Rules | ');
wrt('' + doc_attr.sValueRules + ' | ');
wrtConceptCmptbltRows(doc_attr.a2c.ca.sNm);
wrtSpecialStringRows(doc_attr);
wrtRangeTable(doc_attr);
wrtPrvdNotPrvdRows(doc_attr);
wrt(' ');
}
function wrtRangeTable(doc_attr) {
if(!df(doc_attr.sNameMin)) {
return;
}
wrt(' |
');
wrt('Attribute Compatibility | ');
wrt('');
var asCmptblAttrs = [];
for(var i = 0; i < aCMPTBL_ATTRS.length; i++) {
var bMaybeCmptbl = true;
var caOther = aCMPTBL_ATTRS[i];
if(caOther.sNm == s_attribute) {
//Attributes are not compatible with themselves.
bMaybeCmptbl = false;
} else {
//Is this (other) attribute explicitly
//incompatible with s_attribute?
for(var j = 0; j < ca.aACAttrs_G4OT_B4A.length; j++) {
if(caOther.sNm == ca.aACAttrs_G4OT_B4A[j].sNm) {
bMaybeCmptbl = false;
break;
}
}
if(bMaybeCmptbl) {
//Well, at least not *in*compatible. Is it truly
//compatible? Only if they share a compatible
//object type.
var iPrevLength = asCmptblAttrs.length;
for(var j = 0; j < ca.aCObjTypes_G4A.length; j++) {
for(var k = 0; k < caOther.aCObjTypes_G4A.length; k++) {
if(ca.aCObjTypes_G4A[j].sNm == caOther.aCObjTypes_G4A[k].sNm) {
//They share this object type. Definitely
//compatible attributes.
asCmptblAttrs[asCmptblAttrs.length] = caOther.sNm;
break;
}
}
if(asCmptblAttrs.length > iPrevLength) {
//Only add each compatible attribute once.
break;
}
}
}
}
}
for(var i = 0; i < asCmptblAttrs.length; i++) {
if(i > 0) {
wrtnl(", ");
}
var iDaIdx = getAllA2CIdx("wrtConceptCmptbltRows", asCmptblAttrs[i], true);
var da = aATTR2C[iDaIdx];
var sHash;
if(iDaIdx >= 13) {
//This is an sif attribute. No sif attributes are
//explicitly listed on that concept page.
sHash = '';
} else {
sHash = '#' + asCmptblAttrs[i];
}
wrtnl('' + asCmptblAttrs[i] + ' ');
}
}
function DocAttr(attr_2Concept, s_valuePurpose, s_valueRules) {
//Basic info
this.a2c = attr_2Concept;
this.sValuePurpose = s_valuePurpose;
this.sValueRules = s_valueRules;
this.aSpecialStrings = [];
//Sub-range
this.sNameMin;
this.sPurposeMin;
this.sRulesMin;
this.sNameMax;
this.sPurposeMax;
this.sRulesMax;
//Provided
this.sWhenProvided;;
this.sWhenNotProvided;;
//Functions
this.setDC = pb_setDC;
this.setWhenPrvdNotPrvd = pb_setWhenPrvdNotPrvd;
this.addSpecialString = pb_addSpecialString;
this.setSubRange = pb_setSubRange;
}
function pb_setDC(doc_concept) {
this.docConcept = doc_concept;
}
function pb_setWhenPrvdNotPrvd(s_whenProvided, s_whenNotProvided) {
this.sWhenProvided = s_whenProvided;
this.sWhenNotProvided = s_whenNotProvided;
}
function pb_addSpecialString(s_name, s_translatedTo) {
this.aSpecialStrings[this.aSpecialStrings.length] = new SpecialString(s_name, s_translatedTo);
}
function pb_setSubRange(s_nameMin, s_purposeMin, s_rulesMin,
s_nameMax, s_purposeMax, s_rulesMax) {
this.sNameMin = s_nameMin;
this.sPurposeMin = s_purposeMin;
this.sRulesMin = s_rulesMin;
this.sNameMax = s_nameMax;
this.sPurposeMax = s_purposeMax;
this.sRulesMax = s_rulesMax;
}
function SpecialString(s_name, s_translatedTo) {
this.sName = s_name;
this.sTranslatedTo = s_translatedTo;
}
|