Advertisement
Guest User

Testing ASQ Cookie Script

a guest
Nov 24th, 2014
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.48 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Testing ASQ Cookie Test</title>
  5. </head>
  6.  
  7. <body>
  8. isLoggedIn is: <input name="isLoggedIn" id="isLoggedIn" value="" /><br />
  9. loginState is: <input name="loginState" id="loginState" value="" /><br />
  10. usrName is: <input name="usrName" id="usrName" value="" /><br />
  11. mbType is: <input name="mbType" id="mbType" value="" /><br />
  12. mbNb is: <input name="mbNb" id="mbNb" value="" /><br />
  13.  
  14. <script type="text/javascript">
  15. // ASQ authentication detection script for ASQTV
  16. // BCM 07 NOV 2014
  17. //
  18. // This should be all you need to detect and
  19. // parse the authentication cookies for ASQ.org
  20. // "isLoggedIn" will tell you logged-in status.
  21. // "mbType" will tell you is they are a NON-MEMBER
  22. // or MEMBER (and other various member types).
  23. // Also, just the presence of "nebsuc" cookie tells
  24. // you that the user is a Logged in Member. That may
  25. // be all you really need, unless you need to parse
  26. // for other information.
  27. var usrGlbl;
  28. var bsf = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
  29. var cd1 = '01234567890123456';
  30. var mbType; // this will be member-type
  31. var usrName; // this will be user's name
  32. var mbNb; // this will be user's member number
  33. var isLeader;
  34. var hq = location.href.indexOf("hq.") > -1 ? 'hq.' : '';
  35. var mb;
  36. var Comment = '';
  37. var isLoggedIn = 0;
  38. var CO;
  39. getUsrGlbl();
  40.  
  41. function rot07(input) {
  42. if (!input) return '';
  43. for (var output = '', i = 0; i < input.length; i++) {
  44. character = input.charAt(i);
  45. position = cd1.indexOf(character);
  46. if (position > -1)
  47. character = cd1.charAt(position + 5);
  48. output += character;
  49. }
  50. return output;
  51. }
  52.  
  53. function decode(encStr) {
  54. var bits, decOut = '',
  55. i = 0;
  56. for (; i < encStr.length; i += 4) {
  57. bits =
  58. (bsf.indexOf(encStr.charAt(i)) & 0xff) << 18 |
  59. (bsf.indexOf(encStr.charAt(i + 1)) & 0xff) << 12 |
  60. (bsf.indexOf(encStr.charAt(i + 2)) & 0xff) << 6 |
  61. bsf.indexOf(encStr.charAt(i + 3)) & 0xff;
  62. decOut += String.fromCharCode(
  63. (bits & 0xff0000) >> 16, (bits & 0xff00) >> 8, bits & 0xff);
  64. }
  65. if (encStr.charCodeAt(i - 2) == 61)
  66. undecOut = decOut.substring(0, decOut.length - 2);
  67. else if (encStr.charCodeAt(i - 1) == 61)
  68. undecOut = decOut.substring(0, decOut.length - 1);
  69. else undecOut = decOut;
  70.  
  71. return unescape(undecOut); //line add for chinese char
  72. }
  73.  
  74. function getUsrGlbl() {
  75. var allCookies = document.cookie.toString();
  76. if (allCookies.indexOf("10.1.7.144") > -1) {
  77. //alert (allCookies);
  78. }
  79. if (document.cookie.toString().indexOf("caf") > -1) { /* this part does the caf addition 3 OCT 2014 */
  80. var startAt = allCookies.indexOf("caf") + 4;
  81. var remainingPart = allCookies.substring(startAt);
  82. cafId = remainingPart.substring(0, remainingPart.indexOf(";"));
  83. console.log(cafId);
  84. }
  85. if (document.cookie.toString().indexOf("nebsuc") > -1) {
  86. var startAt = allCookies.indexOf("nebsuc") + 7;
  87. var remainingPart = allCookies.substring(startAt);
  88.  
  89. usrGlbl = remainingPart.indexOf(";") > -1 ? remainingPart.substring(0, remainingPart.indexOf(";")) : remainingPart;
  90. usrGlbl = decode(usrGlbl);
  91. if (document.cookie.toString().indexOf("qazqsa29") > -1) {
  92. startAt = allCookies.indexOf("qazqsa29") + 9;
  93. remainingPart = allCookies.substring(startAt);
  94.  
  95. var mbNb = remainingPart.indexOf(";") > -1 ? remainingPart.substring(0, remainingPart.indexOf(";")) : remainingPart;
  96. this.mbNb = rot07(mbNb);
  97. }
  98. if (usrGlbl != null) {
  99. var posa = usrGlbl.indexOf("~");
  100. var usrNm = usrGlbl.substring(0, usrGlbl.indexOf("~"));
  101. //alert(usrNm);
  102. var pos1 = usrGlbl.indexOf("~", usrGlbl.indexOf("~") + 1) + 1;
  103. var pos2 = usrGlbl.indexOf("~", pos1);
  104.  
  105. this.usrGlbl = usrGlbl;
  106. this.usrNm = usrNm;
  107. this.mbType = this.usrGlbl.substring(pos1, pos2);
  108.  
  109. pos1 = usrGlbl.indexOf("~CO:");
  110. if (pos1 > -1) {
  111. CO = usrGlbl.substring(pos1 + 4);
  112. if (CO.indexOf("~") > -1) {
  113. CO = CO.substring(0, CO.indexOf("~"));
  114. // alert(CO);
  115. }
  116. }
  117. //alert(CO);
  118.  
  119. // to support Ray's Flash NON-MEMBER introduction
  120. var aYrFromNow = new Date(new Date().getTime() + (1000 * 3600 * 24 * 365));
  121. //alert(aYrFromNow.toGMTString());
  122. document.cookie = "mbtype=" + this.mbType + ";path=/;domain=asq.org;expires=" + aYrFromNow;
  123.  
  124. //alert("<!-- JR temp...\n" + usrGlbl + "-->");
  125. //document.write(this.usrNm) ;
  126. this.isLeader = (usrGlbl.indexOf("LEADER") > -1 ? 1 : 0);
  127. //alert("isLeader: " + this.isLeader);
  128. }
  129. return usrGlbl;
  130. }
  131. }
  132. if (usrGlbl != null) {
  133. loginState = "Logged In";
  134. if (CO != null) {
  135. dlCo = CO;
  136. } else {
  137. dlCo = "NULL";
  138. };
  139. if (mbType != null) {
  140. dlType = mbType;
  141. } else {
  142. dlType = "NULL";
  143. };
  144. } else {
  145. var loginState = "Logged Out";
  146. var dlType = "NULL";
  147. var dlCo = "NULL";
  148. };
  149.  
  150. document.getElementById('isLoggedIn').value = isLoggedIn;
  151. document.getElementById('loginState').value = loginState;
  152. document.getElementById('usrName').value = usrName;
  153. document.getElementById('mbType').value = mbType;
  154. document.getElementById('mbNb').value = mbNb;
  155. </script>
  156. </body>
  157.  
  158. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement