jamescolin

PIN Code in Cheetah iFrame

Nov 13th, 2021 (edited)
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.82 KB | None | 0 0
  1. <div id="pin">
  2. <div class="dots">
  3. <div class="dot"></div>
  4. <div class="dot"></div>
  5. <div class="dot"></div>
  6. <div class="dot"></div>
  7. <div class="dot"></div>
  8. <div class="dot"></div>
  9. </div>
  10. <p>Enter PIN Number</p>
  11. <div class="numbers">
  12. <div class="number">1</div>
  13. <div class="number">2</div>
  14. <div class="number">3</div>
  15. <div class="number">4</div>
  16. <div class="number">5</div>
  17. <div class="number">6</div>
  18. <div class="number">7</div>
  19. <div class="number">8</div>
  20. <div class="number">9</div>
  21. </div>
  22. </div>
  23.  
  24.  
  25. <style>
  26. body {
  27. background: #ffffff80;
  28. display: -webkit-box;
  29. display: -webkit-flex;
  30. display: -ms-flexbox;
  31. display: flex;
  32. -webkit-box-align: center;
  33. -webkit-align-items: center;
  34. -ms-flex-align: center;
  35. align-items: center;
  36. -webkit-box-pack: center;
  37. -webkit-justify-content: center;
  38. -ms-flex-pack: center;
  39. justify-content: center;
  40. font-family: Open Sans;
  41. }
  42.  
  43.  
  44. body.wrong {
  45. -webkit-animation: bg-red 1s ease-in;
  46. animation: bg-red 1s ease-in;
  47. }
  48.  
  49. body.correct {
  50. -webkit-animation: bg-green 1s ease-in;
  51. animation: bg-green 1s ease-in;
  52. }
  53.  
  54. #pin {
  55. background: #212121;
  56. width: 18em;
  57. display: -webkit-box;
  58. display: -webkit-flex;
  59. display: -ms-flexbox;
  60. display: flex;
  61. -webkit-box-pack: center;
  62. -webkit-justify-content: center;
  63. -ms-flex-pack: center;
  64. justify-content: center;
  65. -webkit-box-align: center;
  66. -webkit-align-items: center;
  67. -ms-flex-align: center;
  68. align-items: center;
  69. -webkit-box-orient: vertical;
  70. -webkit-box-direction: normal;
  71. -webkit-flex-direction: column;
  72. -ms-flex-direction: column;
  73. flex-direction: column;
  74. padding: 0.5em;
  75. border-radius: .3em;
  76. box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.3);
  77. margin: auto;
  78. color: rgba(255, 255, 255, 0.4);
  79. }
  80.  
  81. .dots {
  82. width: 50%;
  83. display: -webkit-box;
  84. display: -webkit-flex;
  85. display: -ms-flexbox;
  86. display: flex;
  87. -webkit-justify-content: space-around;
  88. -ms-flex-pack: distribute;
  89. justify-content: space-around;
  90. padding: 1em;
  91. padding-top: 2em;
  92. }
  93.  
  94. .dot {
  95. position: relative;
  96. background: rgba(255, 255, 255, 0.3);
  97. border-radius: 0.8em;
  98. width: 0.8em;
  99. height: 0.8em;
  100. -webkit-transform: scale3d(0.7, 0.7, 0.7);
  101. transform: scale3d(0.7, 0.7, 0.7);
  102. }
  103.  
  104. .dot.active {
  105. -webkit-animation: growDot .5s ease;
  106. animation: growDot .5s ease;
  107. -webkit-animation-fill-mode: forwards;
  108. animation-fill-mode: forwards;
  109. }
  110.  
  111. .dot.wrong {
  112. -webkit-animation: wrong .9s ease;
  113. animation: wrong .9s ease;
  114. }
  115.  
  116. .dot.correct {
  117. -webkit-animation: correct .9s ease;
  118. animation: correct .9s ease;
  119. }
  120.  
  121. #pin p { font-size: 1.2em; }
  122.  
  123. .numbers {
  124. display: -webkit-box;
  125. display: -webkit-flex;
  126. display: -ms-flexbox;
  127. display: flex;
  128. -webkit-flex-flow: row wrap;
  129. -ms-flex-flow: row wrap;
  130. flex-flow: row wrap;
  131. -webkit-box-align: center;
  132. -webkit-align-items: center;
  133. -ms-flex-align: center;
  134. align-items: center;
  135. -webkit-justify-content: space-around;
  136. -ms-flex-pack: distribute;
  137. justify-content: space-around;
  138. -webkit-align-content: flex-end;
  139. -ms-flex-line-pack: end;
  140. align-content: flex-end;
  141. margin: 1.5em 0;
  142. }
  143.  
  144. .number {
  145. position: relative;
  146. width: 2em;
  147. height: 2em;
  148. margin: 0.5em;
  149. border-radius: 2em;
  150. border: 2px solid rgba(255, 255, 255, 0);
  151. text-align: center;
  152. line-height: 2em;
  153. font-weight: 400;
  154. font-size: 1.8em;
  155. -webkit-user-select: none;
  156. -moz-user-select: none;
  157. -ms-user-select: none;
  158. user-select: none;
  159. -webkit-transition: all .5s ease;
  160. transition: all .5s ease;
  161. }
  162.  
  163. .number:hover { color: rgba(255, 255, 255, 0.6); }
  164.  
  165. .number:hover:before { border: 2px solid rgba(255, 255, 255, 0.6); }
  166.  
  167. .number:before {
  168. content: "";
  169. position: absolute;
  170. left: -2px;
  171. width: 2em;
  172. height: 2em;
  173. border: 2px solid rgba(255, 255, 255, 0.2);
  174. border-radius: 2em;
  175. -webkit-transition: all .5s ease;
  176. transition: all .5s ease;
  177. }
  178.  
  179. .number.grow:before {
  180. -webkit-animation: grow .6s ease;
  181. animation: grow .6s ease;
  182. }
  183.  
  184. @-webkit-keyframes
  185. growDot { 100% {
  186. background: white;
  187. -webkit-transform: scale3d(0.9, 0.9, 0.9);
  188. transform: scale3d(0.9, 0.9, 0.9);
  189. }
  190. }
  191.  
  192. @keyframes
  193. growDot { 100% {
  194. background: white;
  195. -webkit-transform: scale3d(0.9, 0.9, 0.9);
  196. transform: scale3d(0.9, 0.9, 0.9);
  197. }
  198. }
  199.  
  200. @-webkit-keyframes
  201. grow { 50% {
  202. -webkit-transform: scale3d(1.5, 1.5, 1.5);
  203. transform: scale3d(1.5, 1.5, 1.5);
  204. }
  205. 100% {
  206. -webkit-transform: scale3d(1, 1, 1);
  207. transform: scale3d(1, 1, 1);
  208. }
  209. }
  210.  
  211. @keyframes
  212. grow { 50% {
  213. -webkit-transform: scale3d(1.5, 1.5, 1.5);
  214. transform: scale3d(1.5, 1.5, 1.5);
  215. }
  216. 100% {
  217. -webkit-transform: scale3d(1, 1, 1);
  218. transform: scale3d(1, 1, 1);
  219. }
  220. }
  221.  
  222. @-webkit-keyframes
  223. wrong { 20% {
  224. background: crimson;
  225. }
  226. 40% {
  227. -webkit-transform: translate(-15px, 0);
  228. transform: translate(-15px, 0);
  229. }
  230. 60% {
  231. -webkit-transform: translate(10px, 0);
  232. transform: translate(10px, 0);
  233. }
  234. 80% {
  235. -webkit-transform: translate(-5px, 0);
  236. transform: translate(-5px, 0);
  237. }
  238. }
  239.  
  240. @keyframes
  241. wrong { 20% {
  242. background: crimson;
  243. }
  244. 40% {
  245. -webkit-transform: translate(-15px, 0);
  246. transform: translate(-15px, 0);
  247. }
  248. 60% {
  249. -webkit-transform: translate(10px, 0);
  250. transform: translate(10px, 0);
  251. }
  252. 80% {
  253. -webkit-transform: translate(-5px, 0);
  254. transform: translate(-5px, 0);
  255. }
  256. }
  257.  
  258. @-webkit-keyframes
  259. correct { 20% {
  260. background: limegreen;
  261. }
  262. 40% {
  263. -webkit-transform: translate(0, -15px);
  264. transform: translate(0, -15px);
  265. }
  266. 60% {
  267. -webkit-transform: translate(0, 10px);
  268. transform: translate(0, 10px);
  269. }
  270. 80% {
  271. -webkit-transform: translate(0, -5px);
  272. transform: translate(0, -5px);
  273. }
  274. }
  275.  
  276. @keyframes
  277. correct { 20% {
  278. background: limegreen;
  279. }
  280. 40% {
  281. -webkit-transform: translate(0, -15px);
  282. transform: translate(0, -15px);
  283. }
  284. 60% {
  285. -webkit-transform: translate(0, 10px);
  286. transform: translate(0, 10px);
  287. }
  288. 80% {
  289. -webkit-transform: translate(0, -5px);
  290. transform: translate(0, -5px);
  291. }
  292. }
  293.  
  294. @-webkit-keyframes
  295. bg-red { 50% {
  296. background: crimson;
  297. }
  298. }
  299.  
  300. @keyframes
  301. bg-red { 50% {
  302. background: crimson;
  303. }
  304. }
  305.  
  306. @-webkit-keyframes
  307. bg-green { 50% {
  308. background: limegreen;
  309. }
  310. }
  311.  
  312. @keyframes
  313. bg-green { 50% {
  314. background: limegreen;
  315. }
  316. }
  317.  
  318. </style>
  319.  
  320. <script>
  321. (function() {
  322. var input = "";
  323. var correct = ["123456","234567","345678"]; // pin codes
  324. var redirect = "https://pastebin.com/DfHP3RMP"; // redirect if PIN is correct
  325.  
  326. var dots = document.querySelectorAll(".dot"),
  327. numbers = document.querySelectorAll(".number");
  328. dots = Array.prototype.slice.call(dots);
  329. numbers = Array.prototype.slice.call(numbers);
  330.  
  331. numbers.forEach(function(number, index) {
  332.  
  333. number.addEventListener('click', function() {
  334. number.className += ' grow';
  335. input += (index+1);
  336.  
  337. dots[input.length-1].className += ' active';
  338. if(input.length >= 6) {
  339. if(!correct.includes(input)) {
  340. dots.forEach(function(dot, index) {
  341. dot.className += " wrong";
  342. });
  343. localStorage.removeItem("pincode");
  344. document.body.className += " wrong";
  345. }
  346. else {
  347. dots.forEach(function(dot, index) {
  348. dot.className += " correct";
  349. });
  350. localStorage.setItem("pincode", "yes");
  351. document.body.className += " correct";
  352. setTimeout(function() {
  353. window.top.location.replace(redirect);
  354. }, 1000);
  355. }
  356. setTimeout(function() {
  357. dots.forEach(function(dot, index) {
  358. dot.className = "dot";
  359. });
  360. input = "";
  361. }, 900);
  362. setTimeout(function() {
  363. document.body.className = "";
  364. }, 1000);
  365. }
  366. setTimeout(function() {
  367. number.className = 'number';
  368. }, 1000);
  369. });
  370. });
  371. })();
  372. </script>
Add Comment
Please, Sign In to add comment