Advertisement
Guest User

Untitled

a guest
Jan 12th, 2017
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.38 KB | None | 0 0
  1. 'use strict';
  2.  
  3. //set cookie
  4. function setCookie(cname, cvalue, cmaxDay) {
  5. const d = new Date();
  6. d.setTime(d.getTime() + (cmaxDay*24*60*60*1000));
  7. const expires = "expires=" + d.toUTCString();
  8. document.cookie = cname + "=" + cvalue + ";" + expires;
  9. }
  10.  
  11. //get cookie
  12. function getCookie(cname) {
  13. const name = cname + "=";
  14. const ca = document.cookie.split(';');
  15. for (let i = 0; i < ca.length; i++) {
  16. let c = ca[i];
  17. while (c.charAt(0)== ' ') {
  18. c = c.substring(1);
  19. }
  20. if (c.indexOf(name) == 0) {
  21. return c.substring(name.length, c.length);
  22. }
  23. }
  24. return "";
  25. }
  26.  
  27. //check if there is a cookie
  28. function checkCookie() {
  29. const accept = getCookie('accept-cookie');
  30. if (accept == "") {
  31. document.querySelector('.cookie-box').style.display = 'flex';
  32. const cbutton = document.querySelector('.cookie-box-button');
  33. cbutton.addEventListener('click', event => {
  34. setCookie('accept-cookie', '1', 1);
  35. document.querySelector('.cookie-box').style.display = 'none';
  36. });
  37. }
  38. }
  39.  
  40. //check username and password cookie
  41. function checkLoginCookie() {
  42. const username = getCookie('username');
  43. const password = getCookie('password');
  44.  
  45. const usernameField = document.getElementsByName('username')[0];
  46. const passwordField = document.getElementsByName('password')[0];
  47. if(usernameField != null && passwordField != null) {
  48. usernameField.value = username;
  49. passwordField.value = password;
  50. }
  51. }
  52.  
  53. document.addEventListener("DOMContentLoaded", function(event) {
  54. checkCookie();
  55. checkLoginCookie();
  56.  
  57. //show and hide effect on login form if clicked on login button
  58. const button = document.querySelector('.login-button');
  59. const login = document.querySelector('.login-wrapper');
  60. //if login button is null nothing happens, otherwise show/hide when clicked
  61. if (button != null) {
  62. button.addEventListener('click', event => {
  63. if (login.style.display != 'block') {
  64. login.style.display = 'block';
  65. } else {
  66. login.style.display = 'none';
  67. }
  68. });
  69. }
  70.  
  71. //show and hide effect on register form if clicked on register button
  72. const regButton = document.querySelector('.register-button');
  73. const register = document.querySelector('.register-wrapper');
  74. //if register button is null nothing happens, otherwise show/hide when cicked
  75. if (regButton != null) {
  76. regButton.addEventListener('click', event => {
  77. if (register.style.display != 'block') {
  78. register.style.display = 'block';
  79. } else {
  80. register.style.display = 'none';
  81. }
  82. });
  83. }
  84.  
  85. //intercepts click events on the body and checks if login or register forms are open
  86. document.body.addEventListener('click', event => {
  87. if (login != null && register != null) {
  88. const clickInsideLogin = login.contains(event.target);
  89. const clickInsideRegister = register.contains(event.target);
  90. const clickLoginButton = button.contains(event.target);
  91. const clickRegButton = regButton.contains(event.target)
  92.  
  93. if ((!clickInsideLogin && !clickLoginButton) && login.style.display == 'block') {
  94. login.style.display = 'none';
  95. } else if ((!clickInsideRegister && !clickRegButton) && register.style.display == 'block') {
  96. register.style.display = 'none';
  97. }
  98. }
  99. });
  100.  
  101. //show edit post form when clicked on editbutton
  102. const editButton = document.querySelector('.posts-edit');
  103. editButton.addEventListener('click', event => {
  104.  
  105. let editPost = document.querySelectorAll('.' + event.target.classList[0] + '.edit-post');
  106. let post = document.querySelectorAll('.' + event.target.classList[0] + '.posts');
  107.  
  108. if (editButton != null) {
  109. if (editPost[0].style.display != 'block') {
  110. editPost[0].style.display = 'block';
  111. post[0].style.display = 'none';
  112. }
  113. }
  114. });
  115.  
  116. //hide edit post form when clicked on closebutton
  117. const closeButton = document.querySelector('.edit-post-cross');
  118. closeButton.addEventListener('click', event => {
  119.  
  120. let editPost = document.querySelectorAll('.' + event.target.classList[0] + '.edit-post');
  121. let post = document.querySelectorAll('.' + event.target.classList[0] + '.posts');
  122.  
  123. if (closeButton != null) {
  124. if (post[0].style.display != 'block') {
  125. editPost[0].style.display = 'none';
  126. post[0].style.display = 'block';
  127. }
  128. }
  129. });
  130. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement