New Entity

Draft 1.1:
Index


Source Code: cleanValue.js



Purpose: I/O Response Value Formatting

Additional Usage: Replace form Input variables, extend allowed strings and create transparent rulesets for clients. Rulesets can be alterend or extended according to needed policy.

           
// Copyright (C) 2020 New Entity Operations Inc.
// P1: cleanValue.js
// https://www.NewEntity.io/section/1/
// cleanValue.js
// Version 0.4 (12/24/2020)
// On top of server side validation which is also in place, values can be stripped of harmful content before posting
var urlFullPathContact = "https://www.newentity.io/contact/";
const buttonContact = document.getElementById("buttonContact");
const enforceHTTPS = 1;
let listCurred = [];
// By field Map

function inputCleanValue (assembledString, a=0, b=0, c=0) {
  // Submit here
  if (a>0) {
    let neededStringA = assembledString;
    console.log(neededStringA);
  }
  if (b>0) {
    let neededStringB = assembledString;
    console.log(neededStringB);
  }
  if (c>0) {
    let neededStringC = assembledString;
    console.log(neededStringC);
  }
  // console.log("The contact button was pressed. Thank you. I'll be in touch soon.");
}
function moduleContactInstance (fieldValue) {
  let counterCure = 0;
  // Call stack begins here
  var valueCleanInplaceList = new Map([
    ["<", "\/<\/"],
    [">", "\/>\/"],
    ["?", "\/?\/"],
    ["/", "\/(/)\/"],
    ["#", "\/#\/"],
    ["&", "\/&\/"]
  ]);
  function processTranslation (a=0, b=0, c=0) {
    var assessValue = fieldValue[counterCure];
    try {
      var cureThisValue = valueCleanInplaceList.get(assessValue);
      listCurred.push(cureThisValue);
    } catch (err) {
      listCurred.push(assessValue);
    }
  }
  while (counterCure < fieldValue.length) {
    processTranslation();
    counterCure++;
  }
  let assembledString = listCurred.toString();
  inputCleanValue(assembledString, a, b, c);
}

try {
buttonContact.addEventListener('click', function () {
  // perform the routine for each required field
  let retrievalDOMFieldValueA = document.getElementById("name").value;
  fieldValueA = [];
  function StringA () {
     fieldValueA = retrievalDOMFieldValueA.split();
  }
  StringA(a=1, b=0, c=0);
  moduleContactInstance(fieldValue=fieldValueA);

  let retrievalDOMFieldValueB = document.getElementById("your_message").value;
  fieldValueB = [];
  function StringB () {
    fieldValueB = retrievalDOMFieldValueB.split();
  }
  StringB(a=0, b=1, c=0);
  moduleContactInstance(fieldValue=fieldValueB);

  let retrievalDOMFieldValueC = document.getElementById("contact_here").value;
  fieldValueC = [];
  function StringC () {
    fieldValueC = retrievalDOMFieldValueC.split();
  }
  StringC(a=0, b=0, c=1);
  moduleContactInstance(fieldValue=fieldValueC);
  // Finalize the run
  listCurred = [];
  // Finalize Request
  const tokenCSRF = document.getElementById("csrf_token").value;
  const fieldType = document.getElementById("type").value;
  const ageRange = document.getElementById("age").value;

  let objectRequestPOST = {
    "csrf_token": tokenCSRF,
    "name": neededStringA,
    "type": fieldType,
    "your_message": neededStringB,
    "contact_here": neededStringC,
    "age": ageRange
  }
  makeRequestPOST(objectRequestPOST);
  console.log("Token: generated");
})
} catch (error) {
  console.log("Token: none");
}