Advertisement
Guest User

Untitled

a guest
Nov 10th, 2018
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.36 KB | None | 0 0
  1. var mysql = require("mysql");
  2. var app = require('express')();
  3. var http = require('http').Server(app);
  4. var io = require('socket.io')(http);
  5. var isOnline = require('is-online');
  6.  
  7. http.listen(5000, function(){
  8. console.log('listening on *:3000');
  9. });
  10. var con = mysql.createConnection({
  11. host: "localhost",
  12. user: "root",
  13. password: "",
  14. database: "cieszy"
  15. });
  16.  
  17. app.get('/dodaj', function (req, res) {
  18. res.sendFile(__dirname + '/public/dodaj.html');
  19. })
  20. app.get('/zarejestruj', function (req, res) {
  21. res.sendFile(__dirname + '/public/zarejestruj.html');
  22. })
  23. app.get('/zaloguj', function (req, res) {
  24. res.sendFile(__dirname + '/public/zaloguj.html');
  25. })
  26. app.get('/post', function (req, res) {
  27. res.sendFile(__dirname + '/public/post.html');
  28. })
  29. app.get('/logo', function (req, res) {
  30. res.sendFile(__dirname + '/public/img/logo.png');
  31. })
  32. app.get('/style', function (req, res) {
  33. res.sendFile(__dirname + '/public/css/style.css');
  34. })
  35. app.get('/js', function (req, res) {
  36. res.sendFile(__dirname + '/public/js/all.js');
  37. })
  38.  
  39. app.param('page', function (req, res, next, page) {
  40. next();
  41. console.log(page);
  42. var PageOd = (10*page) - 9 ;
  43. var PageDo = (10*page);
  44. console.log(PageOd +" Od");
  45. console.log(PageDo +" Do");
  46. });
  47.  
  48. app.get('/:page', function(req, res){
  49. res.sendFile(__dirname + '/public/index.html');
  50. socket.emit("JUREASR");
  51.  
  52. });
  53.  
  54. app.get('/', function(req, res){
  55. res.sendFile(__dirname + '/public/index.html');
  56.  
  57. });
  58.  
  59.  
  60. socketCount =[];
  61. io.on('connection', function (socket) {
  62. socket.on("JUREASR", function(){
  63. console.log("JAREK");
  64. });
  65.  
  66. socketCount++;
  67. io.emit("onlinePlayers", {online:socketCount});
  68. socket.emit("authLogin", );
  69. socket.on("authLogout",function(){
  70. socket.emit("authLogin");
  71. });
  72.  
  73.  
  74. console.log(socketCount);
  75.  
  76. con.query('SELECT * FROM posts',function(err,rows){
  77. if(err) throw err;
  78. socket.emit('showrows', rows);
  79. });
  80.  
  81. socket.on("dodajPost", function(data){
  82. var title = data.title;
  83. var description = data.description;
  84. var author = data.author;
  85. var date = data.date;
  86. con.query('INSERT INTO posts (author, title, description, created) VALUES ("'+ author +'","'+title+'","'+description+'","'+date+'")',function(err,rows){
  87. if(err) throw err;
  88. console.log('Nowy Post!' + author + date);
  89. con.query('SELECT * FROM posts',function(err,rows){
  90. if(err) throw err;
  91. socket.emit('showrows', rows);
  92. });
  93. });
  94. });
  95.  
  96. socket.on('rejestracja', function(data){
  97.  
  98. var nickname = data.nickname;
  99. var email = data.email;
  100. var password = data.password;
  101. var data = data.data;
  102. con.query('INSERT INTO users (nickname, email, password, created) VALUES ("'+nickname+'","'+email+'","'+password+'","'+data+'")',function(err,rows){
  103. if(err) throw err;
  104. console.log('Nowy użytkownik! - ' + nickname);
  105. });
  106. });
  107.  
  108. socket.on('zaloguj', function(data){
  109.  
  110. var nickname = data.nickname;
  111. var password = data.password;
  112. var auth = con.query('SELECT COUNT(*) as total FROM users WHERE nickname="' + nickname + '" AND password="'+password+'"',function(err,rows){
  113. if(err) throw err;
  114. var logged = rows[0].total;
  115. if (logged > 0) {
  116. console.log("SUCCES");
  117. socket.emit("loginSuccess", {nickname:nickname});
  118. }
  119. else{
  120. socket.emit("loginFailed");
  121. }
  122. });
  123. });
  124.  
  125. socket.on('requestPost', function(data){
  126. var id = data.id;
  127. con.query('SELECT * FROM posts WHERE id="'+id+'"',function(err,rows){
  128. if(err) throw err;
  129. socket.emit('showPost', rows);
  130. });
  131.  
  132. });
  133.  
  134.  
  135.  
  136. socket.on('addComment', function(data){
  137. var id = data.id;
  138. var content = data.content;
  139. var author = data.author;
  140. var data = data.date;
  141. con.query('INSERT INTO comments (author, post_id, content, created) VALUES ("'+author+'","'+id+'","'+content+'","'+data+'")',function(err,rows){
  142. if(err) throw err;
  143. console.log('Nowy komentarz! - ' + content);
  144.  
  145. });
  146. });
  147. // Pobieranie komentarzy po ID posta
  148. socket.on('getComments', function(data){
  149. var commentid = data.id;
  150. con.query('SELECT * FROM comments WHERE post_id = "'+commentid+'" ',function(err,rows){
  151. if(err) throw err;
  152. // Wysłanie listy komentarzy przypisanych dla danego posta
  153. io.emit('showComments', rows);
  154. });
  155. });
  156. socket.on('getSubComments', function(data){
  157. var commentid = data.id;
  158. con.query('SELECT * FROM subcomments WHERE comment_id = "'+commentid+'" ',function(err,rows){
  159. if(err) throw err;
  160. // Wysłanie listy komentarzy przypisanych dla danego posta
  161. io.emit('showSubComments', rows);
  162. });
  163. });
  164.  
  165.  
  166.  
  167. socket.on('disconnect', function () {
  168. socketCount--;
  169. io.emit("onlinePlayers", {online:socketCount});
  170. console.log(socketCount);
  171. });
  172.  
  173. // Cala procedura dodawania like
  174. socket.on('SprawdzamyKtoryLike', function(data){
  175. var id = data.id;
  176. var author = data.author;
  177. console.log(id);
  178. var auth = con.query('SELECT COUNT(*) as total FROM likes WHERE post_id="' + id + '" AND author="'+author+'"',function(err,rows){
  179. if(err) throw err;
  180. var CheckLike = rows[0].total;
  181. if (CheckLike > 0) {
  182. console.log("Like był już dany, a więc usuwamy");
  183. // Jesli like już jest, usuwamy go i wyswietlamy na stronie
  184. con.query('DELETE FROM likes WHERE post_id = "'+id+'" AND author="'+author+'"',function(err,rows){
  185. if(err) throw err;
  186. var auth = con.query('SELECT COUNT(*) as total FROM likes WHERE post_id="' + id + '"',function(err,rows){
  187. if(err) throw err;
  188. var logged = rows[0].total;
  189. io.emit('dodajemyLike', {id:id, likes:logged});
  190. });
  191. });
  192. }
  193. else{
  194. // Jeśli like dla danego postu nie był dany, dodajemy i wyswietlamy
  195. con.query('INSERT INTO likes (post_id, author) VALUES ("'+id+'","'+author+'")',function(err,rows){
  196. if(err) throw err;
  197. var auth = con.query('SELECT COUNT(*) as total FROM likes WHERE post_id="' + id + '"',function(err,rows){
  198. if(err) throw err;
  199. var logged = rows[0].total;
  200. if (logged > 0) {
  201. io.emit('dodajemyLike', {id:id, likes:logged});
  202. }
  203. });
  204. });
  205. }
  206. });
  207. });
  208. // Dodawanie i usuwanie DISLIKE
  209. socket.on('SprawdzamyKtoryDisLike', function(data){
  210. var id = data.id;
  211. var author = data.author;
  212. console.log(id);
  213. var auth = con.query('SELECT COUNT(*) as total FROM dislikes WHERE post_id="' + id + '" AND author="'+author+'"',function(err,rows){
  214. if(err) throw err;
  215. var CheckLike = rows[0].total;
  216. if (CheckLike > 0) {
  217. console.log("Like był już dany, a więc usuwamy");
  218. // Jesli like już jest, usuwamy go i wyswietlamy na stronie
  219. con.query('DELETE FROM dislikes WHERE post_id = "'+id+'" AND author="'+author+'"',function(err,rows){
  220. if(err) throw err;
  221. var auth = con.query('SELECT COUNT(*) as total FROM dislikes WHERE post_id="' + id + '"',function(err,rows){
  222. if(err) throw err;
  223. var logged = rows[0].total;
  224. io.emit('dodajemyDisLike', {id:id, likes:logged});
  225. });
  226. });
  227. }
  228. else{
  229. // Jeśli like dla danego postu nie był dany, dodajemy i wyswietlamy
  230. con.query('INSERT INTO dislikes (post_id, author) VALUES ("'+id+'","'+author+'")',function(err,rows){
  231. if(err) throw err;
  232. var auth = con.query('SELECT COUNT(*) as total FROM dislikes WHERE post_id="' + id + '"',function(err,rows){
  233. if(err) throw err;
  234. var logged = rows[0].total;
  235. if (logged > 0) {
  236. io.emit('dodajemyDisLike', {id:id, likes:logged});
  237. }
  238. });
  239. });
  240. }
  241. });
  242. });
  243. // Potrzebne do wyswietlenia Like oraz Dislike
  244. socket.on('LikeUpPlus', function(data){
  245. con.query('SELECT * FROM posts',function(err,rows){
  246. if(err) throw err;
  247. io.emit('showLikes', rows);
  248. io.emit('showDisLikes', rows);
  249. });
  250. });
  251. // Wyswietlamy Like
  252. socket.on('displayLikes', function(data){
  253. var id = data.id;
  254. var auth = con.query('SELECT COUNT(*) as total FROM likes WHERE post_id="' + id + '"',function(err,rows){
  255. if(err) throw err;
  256. var logged = rows[0].total;
  257. if (logged > 0) {
  258. io.emit('DodajemyLike', {likes:logged, id:id});
  259.  
  260. }
  261. });
  262. });
  263. // Wyswietlamy DisLike
  264. socket.on('displayDisLikes', function(data){
  265. var id = data.id;
  266. var auth = con.query('SELECT COUNT(*) as total FROM dislikes WHERE post_id="' + id + '"',function(err,rows){
  267. if(err) throw err;
  268. var logged = rows[0].total;
  269. if (logged > 0) {
  270. io.emit('DodajemyDisLike', {likes:logged, id:id});
  271.  
  272. }
  273. });
  274. });
  275.  
  276. //Sprawdzamy podczas dodawania LIKE czy był DISLIKe, jesli tak usuwamy go
  277. socket.on('UsuwamyDisLike', function(data){
  278. var id = data.id;
  279. var author = data.author;
  280. console.log("ADSSAD");
  281. var auth = con.query('SELECT COUNT(*) as total FROM dislikes WHERE post_id="' + id + '" AND author="'+author+'"',function(err,rows){
  282. if(err) throw err;
  283. var CheckLike = rows[0].total;
  284. if (CheckLike > 0) {
  285. console.log("Wyjebalo");
  286. // Jesli like już jest, usuwamy go i wyswietlamy na stronie
  287. con.query('DELETE FROM dislikes WHERE post_id = "'+id+'" AND author="'+author+'"',function(err,rows){
  288. if(err) throw err;
  289. var auth = con.query('SELECT COUNT(*) as total FROM dislikes WHERE post_id="' + id + '"',function(err,rows){
  290. if(err) throw err;
  291. var logged = rows[0].total;
  292. io.emit('DodajemyDisLike', {id:id, likes:logged});
  293. });
  294. });
  295. }
  296. });
  297. });
  298. // Sprawdzamy podczas dodawania DisLike czy jest Like, jesli tak to usuwamy
  299. socket.on('UsuwamyLike', function(data){
  300. var id = data.id;
  301. var author = data.author;
  302. console.log("ADSSAD");
  303. var auth = con.query('SELECT COUNT(*) as total FROM likes WHERE post_id="' + id + '" AND author="'+author+'"',function(err,rows){
  304. if(err) throw err;
  305. var CheckLike = rows[0].total;
  306. if (CheckLike > 0) {
  307. // Jesli like już jest, usuwamy go i wyswietlamy na stronie
  308. con.query('DELETE FROM likes WHERE post_id = "'+id+'" AND author="'+author+'"',function(err,rows){
  309. if(err) throw err;
  310. var auth = con.query('SELECT COUNT(*) as total FROM likes WHERE post_id="' + id + '"',function(err,rows){
  311. if(err) throw err;
  312. var logged = rows[0].total;
  313. io.emit('DodajemyLike', {id:id, likes:logged});
  314. });
  315. });
  316. }
  317. });
  318. });
  319.  
  320. // Walidacja rejestracji
  321.  
  322. socket.on("CheckLogin", function(data){
  323. var nickname = data.nickname;
  324. var email = data.email;
  325. var password = data.password;
  326. var data = data.data;
  327. con.query('SELECT COUNT(*) as ValidateLogin FROM users WHERE nickname="'+nickname+'"',function(err,rows){
  328. var Validate = rows[0].ValidateLogin;
  329. if (Validate > 0) {
  330. socket.emit("ZajetyLogin");
  331. }else{
  332. console.log("login"+nickname + " " + password);
  333. socket.emit("WolnyLogin", {nickname:nickname, password:password, email:email, data:data});
  334. }
  335. });
  336.  
  337. });
  338. socket.on("CheckEmail", function(data){
  339. var nickname = data.nickname;
  340. var email = data.email;
  341. var password = data.password;
  342. var data = data.data;
  343. con.query('SELECT COUNT(*) as ValidateEmail FROM users WHERE email="'+email+'"',function(err,rows){
  344. var ValidateEmail = rows[0].ValidateEmail;
  345. if (ValidateEmail > 0) {
  346. socket.emit("ZajetyEmail");
  347. }else{
  348. socket.emit("WolnyEmail", {nickname:nickname, password:password, email:email, data:data});
  349. }
  350. });
  351.  
  352. });
  353.  
  354. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement