JAVASCRIPT   18

cq functions js

Guest on 13th August 2022 12:27:32 AM

  1. //================================================================================  
  2. // cq-_functions.js
  3. //================================================================================  
  4.  
  5. //================================================================================  
  6. // TABLE OF CONTENTS
  7. //  Start Function getUrlVars
  8. //  start function getCurrentDate
  9. //  start function doesFileExist
  10. //  start function var getTargetFile
  11. //  start Cookie Functions
  12. //================================================================================  
  13.  
  14. //================================================================================  
  15. // Start functions
  16. //================================================================================  
  17.  
  18. // ========================================
  19. //  start Function getUrlVars -- Read a page's GET URL variables and return them as an associative array.
  20. // ========================================
  21.  
  22.  
  23. function getUrlVars()
  24. {
  25.     var vars = [], hash;
  26.     var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
  27.     for(var i = 0; i < hashes.length; i++)
  28.     {
  29.         hash = hashes[i].split('=');
  30.         vars.push(hash[0]);
  31.         vars[hash[0]] = hash[1];
  32.     }
  33.     return vars;
  34. }
  35.  
  36. // ========================================
  37. //  end Function getUrlVars -- Read a page's GET URL variables and return them as an associative array.
  38. // ========================================
  39.  
  40.  
  41. // ========================================
  42. //  start function getCurrentDate
  43. // ========================================
  44.  
  45. var currentDate;
  46. var twoDigitMonth;  
  47. var twoDigitDate;
  48. var fourDigitYear;
  49. var getDate224;
  50.  
  51. function getCurrentDate(options) {
  52.   currentDate = new Date();
  53.   twoDigitMonth=((
  54. currentDate.getMonth()+1)>=10)? (currentDate.getMonth()+1) : '0' + (currentDate.getMonth()+1);  
  55.   twoDigitDate=((currentDate.getDate())>=10)? (currentDate.getDate()) : '0' + (currentDate.getDate());
  56.   fourDigitYear = currentDate.getFullYear();
  57.   getDate224 = currentDate.getFullYear() + "-" + twoDigitMonth + "-" + twoDigitDate;
  58.  
  59.   var formToReturn;
  60.  
  61.  
  62.   if (options == 'currentDate') {
  63.     //alert(currentDate);
  64.     formToReturn = currentDate;
  65.   } else if (options == 'twoDigitMonth' || options == 'mm') {
  66.     //alert(twoDigitMonth);
  67.     formToReturn = twoDigitMonth;
  68.   } else if (options == 'twoDigitDate' || options == 'dd') {
  69.     //alert(twoDigitDate);
  70.     formToReturn = twoDigitDate;
  71.   } else if (options == 'fourDigitYear' || options == 'yyyy') {
  72.     //alert(fourDigitYear);
  73.     formToReturn = fourDigitYear;
  74.   } else if (options == 'getDate224' || options == 'yyyy-mm-dd') {
  75.     //alert(getDate224);
  76.     formToReturn = getDate224;
  77.   } else {
  78.     //alert(getDate224);
  79.     formToReturn = getDate224;
  80.   }
  81.   //alert(getDate224);
  82.  
  83.   return formToReturn;
  84. }
  85. // ========================================
  86. //  end function getCurrentDate
  87. // ========================================
  88.  
  89.  
  90. // ========================================
  91. //  start function doesFileExist
  92. // ========================================
  93. // EX:
  94. //    if(doesFileExist(FileLoc) == true) {
  95. //      alert('true');
  96. //    }
  97.  
  98.  
  99. function doesFileExist(urlToFile) {
  100.     var xhr = new XMLHttpRequest();
  101.     xhr.open('HEAD', urlToFile, false);
  102.     xhr.send();
  103.      
  104.     if (xhr.status == "404") {
  105.       //alert('file does not exist')
  106.       return false;
  107.     } else {
  108.       //alert('poop file exists')
  109.       return true;
  110.     }
  111. }
  112. // ========================================
  113. //  end function doesFileExist
  114. // ========================================
  115.  
  116. // ========================================
  117. //  start function var getTargetFile
  118. // ========================================
  119. // works in  conjuction with cgi created array printed html
  120.  
  121. function getTargetFile(thisObj) {
  122.  
  123.   //alert('getTargetFile this obj: ' + thisObj);
  124.  
  125.   var dataFileName = thisObj.attr('data-file-name');
  126.   var dataFileLoc = thisObj.attr('data-file-loc');
  127.   var dataFileType = thisObj.attr('data-file-type');
  128.   var dataFilePrefix = thisObj.attr('data-file-prefix');
  129.   var dataFileOverride = thisObj.attr('data-file-override');
  130.  
  131.   //alert('dataFileOverride: ' + dataFileOverride);
  132.  
  133.   //set defaults if undefined
  134.   if (typeof dataFileOverride === 'undefined' || dataFileOverride == "") {
  135.     //dataFileOverride = "default,defaultname,date,datename,lastmod,lastmodname";
  136.     dataFileOverride = "override,overridename,date,datename,default,defaultname,lastmod,lastmodname";
  137.  
  138.   }
  139.  
  140.   //alert('dataFileOverride: ' + dataFileOverride);
  141.  
  142.   var dFOverrideValArr = new Array();
  143.   var dFOverrideValArr = dataFileOverride.split(',');
  144.  
  145.  
  146.   /*
  147.   lastmod_Menu_150 //Menu_150_2018-03-06.docx
  148.   date_Menu_150 //Menu_150_2018-03-04.docx
  149.   default_Menu_150 //default_Menu_150
  150.   override_Menu_150 //override_Menu_150
  151.   lastmod //Menu_150_2018-03-06.docx
  152.   date //Menu_Park_2018-03-04.docx
  153.   default //default.docx
  154.   override  //override.docx
  155.   */
  156.  
  157.   //var defaultLoc = dataFileLoc + "/" + "default.docx";
  158.   //var defaultNameLoc = dataFileLoc + "/" + "default_" + dataFilePrefix + ".docx";
  159.   //alert('defaultLoc:' + defaultLoc + 'defaultNameLoc: ' + defaultNameLoc);
  160.  
  161.   /*
  162.   data-docx-override
  163.   dataatt,default,defaultname,date,datename,lastmod,lastmodname
  164.   */
  165.  
  166.   var fileToShow;
  167.   var fileHit = "false";
  168.  
  169.   var dataatt = dataFileName;
  170.  
  171.  
  172. //alert('dataatt:' + dataatt);
  173.  
  174.  var fileBaseName = dataFilePrefix;
  175.   //alert('fileBaseName: ' + fileBaseName);
  176.  
  177.   //alert('dFOverrideValArr: ' + dFOverrideValArr);
  178.  
  179.   $.each( dFOverrideValArr, function( index, dFOverrideVal ){
  180.      //alert('dFOverrideVal: ' + dFOverrideVal);
  181.  
  182.     if (dFOverrideVal == "dataatt" && fileHit != "true") {
  183.  
  184.       if ( typeof dataatt !== 'undefined' && dataatt != "") {
  185.         //alert('dataatt: ' + dataatt);
  186.         fileToShow = dataatt;
  187.         fileHit = "true";
  188.       }
  189.     }
  190.  
  191.     if (dFOverrideVal == "default" && fileHit != "true") {
  192.  
  193.       if ( typeof file_data_obj[dataFileType + "_default"] !== 'undefined' && file_data_obj[dataFileType + "_default"] != "") {
  194.         //alert('default: ' + file_data_obj[dataFileType + "_default"]);
  195.         fileToShow = file_data_obj[dataFileType + "_default"];
  196.         fileHit = "true";
  197.       }
  198.     }
  199.  
  200.     if (dFOverrideVal == "defaultname" && fileHit != "true") {
  201.       var defaultName = dataFileType + '_default_' + fileBaseName;
  202.       //alert('defaultName: ' + defaultName);
  203.  
  204.       if ( typeof file_data_obj[defaultName] !== 'undefined' && file_data_obj[defaultName] != "") {
  205.         //alert('defaultname: ' + file_data_obj[defaultName]);
  206.         fileToShow = file_data_obj[defaultName];
  207.         fileHit = "true";
  208.       }
  209.     }
  210.  
  211.     if (dFOverrideVal == "override" && fileHit != "true") {
  212.  
  213.       if ( typeof file_data_obj[dataFileType + "_override"] !== 'undefined' && file_data_obj[dataFileType + "_override"] != "") {
  214.         //alert('override: ' + file_data_obj[dataFileType + "_override"]);
  215.         fileToShow = file_data_obj[dataFileType + "_override"];
  216.         fileHit = "true";
  217.       }
  218.     }
  219.  
  220.     if (dFOverrideVal == "overridename" && fileHit != "true") {
  221.       var overrideName = dataFileType + '_override_' + fileBaseName;
  222.       //alert('overrideName: ' + overrideName);
  223.  
  224.       if ( typeof file_data_obj[overrideName] !== 'undefined' && file_data_obj[overrideName] != "") {
  225.         //alert('overridename: ' + file_data_obj[overrideName]);
  226.         fileToShow = file_data_obj[overrideName];
  227.         fileHit = "true";
  228.       }
  229.     }
  230.  
  231.  
  232.     if (dFOverrideVal == "date" && fileHit != "true") {
  233.       if ( typeof file_data_obj[dataFileType + "_date"] !== 'undefined' && file_data_obj[dataFileType + "_date"] != "") {
  234.        //alert('date: ' + file_data_obj[dataFileType + "_date"]);
  235.  
  236.         fileToShow = file_data_obj[dataFileType + "_date"];
  237.         fileHit = "true";
  238.       }
  239.     }
  240.  
  241.  
  242.  
  243.     if (dFOverrideVal == "datename" && fileHit != "true") {
  244.       var dateName = dataFileType + '_date_' + fileBaseName;
  245.       //alert('dateName: ' + dateName);
  246.  
  247.       if ( typeof file_data_obj[dateName] !== 'undefined' && file_data_obj[dateName] != "") {
  248.         //alert('datename: ' + file_data_obj["datename"]);
  249.         fileToShow = file_data_obj[dateName];
  250.         fileHit = "true";
  251.       }
  252.     }
  253.  
  254.     if (dFOverrideVal == "lastmod" && fileHit != "true") {
  255.  
  256.       if ( typeof file_data_obj[dataFileType + "_lastmod"] !== 'undefined' && file_data_obj[dataFileType + "_lastmod"] != "") {
  257.         //alert('lastmod: ' + file_data_obj[dataFileType + "_lastmod"]);
  258.         fileToShow = file_data_obj[dataFileType + "_lastmod"];
  259.         fileHit = "true";
  260.       }
  261.     }
  262.  
  263.  
  264.     if (dFOverrideVal == "lastmodname" && fileHit != "true") {
  265.  
  266.       var lastmodName = dataFileType + '_lastmod_' + fileBaseName;
  267.       //alert('lastmodName: ' + lastmodName);
  268.  
  269.       if ( typeof file_data_obj[lastmodName] !== 'undefined' && file_data_obj[lastmodName] != "") {
  270.         //alert('lastmodname: ' + file_data_obj[lastmodName]);
  271.         fileToShow = file_data_obj[lastmodName];
  272.         fileHit = "true";
  273.       }
  274.     }
  275.  
  276.  
  277.   });
  278.  
  279.  
  280.     //alert('fileToShow: ' + fileToShow);
  281.  
  282.     //var targetFileLoc = dataFileLoc + "/" + fileToShow;
  283.     var targetFileLoc = dataFileLoc + "/" + fileToShow;
  284.  
  285.     // var targetFileLoc = dataFileLoc + "/" + dataFileName;
  286.  
  287.     //alert('CQ: targetFileLoc: ' + targetFileLoc);
  288.  
  289.   //return targetFileLoc;
  290.  
  291.   return targetFileLoc;
  292.  
  293. }// end getTargetFile
  294. // ========================================
  295. //  end function var getTargetFile
  296. // ========================================
  297.  
  298.  
  299. // ========================================
  300. //  start Cookie Functions
  301. // ========================================
  302.  
  303.     function setCookie(c_name, value, exdays) {
  304.             var exdate = new Date();
  305.             exdate.setDate(exdate.getDate() + exdays);
  306.             var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
  307.             document.cookie = c_name + "=" + c_value;
  308.         }
  309.  
  310.  
  311.     function getCookie(cname) {
  312.         var name = cname + "=";
  313.         var decodedCookie = decodeURIComponent(document.cookie);
  314.         var ca = decodedCookie.split(';');
  315.         for(var i = 0; i <ca.length; i++) {
  316.             var c = ca[i];
  317.             while (c.charAt(0) == ' ') {
  318.                 c = c.substring(1);
  319.             }
  320.             if (c.indexOf(name) == 0) {
  321.                 return c.substring(name.length, c.length);
  322.             }
  323.         }
  324.         return "";
  325.     }
  326.  
  327.     function DeleteCookie(name) {
  328.             document.cookie = name + '=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
  329.         }
  330.  
  331. // ========================================
  332. //  end Cookie Functions
  333. // ========================================
  334.  
  335.  
  336. //================================================================================  
  337. // End functions
  338. //================================================================================

Raw Paste


Login or Register to edit or fork this paste. It's free.