Advertisement
Guest User

Untitled

a guest
Dec 8th, 2017
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.95 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Threading.Tasks;
  4. using Microsoft.AspNetCore.Mvc;
  5. using Microsoft.AspNetCore.Http;
  6. using DbConnection;
  7. using loginReg.Models;
  8.  
  9. namespace loginReg.Controllers
  10. {
  11. public class HomeController : Controller
  12. {
  13. [HttpGet]
  14. [Route("")]
  15. public IActionResult Index()
  16. {
  17. return View();
  18. }
  19.  
  20. [HttpGet]
  21. [Route("/logout")]
  22. public IActionResult LogOut()
  23. {
  24. HttpContext.Session.Clear();
  25. return RedirectToAction("Index");
  26. }
  27.  
  28. [HttpGet]
  29. [Route("/loggedIn")]
  30. public IActionResult Logged()
  31. {
  32. List<Dictionary<string, object>> UsertoMessages = DbConnector.Query("SELECT users.id, first_name, message, messageposted_at FROM users JOIN messages ON users.id = messages.user_id");
  33. List<Dictionary<string, object>> UsertoComments = DbConnector.Query("SELECT users.id, first_name, comment, commentposted_at FROM users JOIN comments ON users.id = comments.user_id");
  34. List<Dictionary<string, object>> MessagestoComments = DbConnector.Query("SELECT message, comment, commentposted_at FROM messages JOIN comments ON messages.messages_id = comments.message_id");
  35. ViewBag.messages = UsertoMessages;
  36. ViewBag.comments = UsertoComments;
  37. ViewBag.messcomms = MessagestoComments;
  38. return View();
  39. }
  40.  
  41. [HttpPost]
  42. [Route("/loggingIn")]
  43. public IActionResult Logging(string useremail, string userpassword)
  44. {
  45. List<Dictionary<string, object>> Userid = DbConnector.Query($"SELECT * from users where email = '{useremail}'");
  46. int id = (int)Userid[0]["id"];
  47. HttpContext.Session.SetInt32("UserId", id);
  48. User NewUser = new User
  49. {
  50. Email = useremail,
  51. Password = userpassword,
  52. };
  53. TryValidateModel(NewUser);
  54. ViewBag.errors = ModelState.Values;
  55. int? v = HttpContext.Session.GetInt32("UserId");
  56. List<Dictionary<string, object>> userVIAemail = DbConnector.Query($"SELECT * FROM users where id = '{v}'");
  57. if ((string)userVIAemail[0]["email"] != useremail || (string)userVIAemail[0]["password"] != userpassword)
  58. {
  59. return RedirectToAction("Index");
  60. }
  61. else
  62. {
  63. return RedirectToAction("Logged");
  64. }
  65. }
  66.  
  67. [HttpPost]
  68. [Route("/register")]
  69. public IActionResult Registrate(string fname, string lname, string useremail, string userpassword)
  70. {
  71. User NewUser = new User
  72. {
  73. First_Name = fname,
  74. Last_Name = lname,
  75. Email = useremail,
  76. Password = userpassword,
  77. };
  78. TryValidateModel(NewUser);
  79. ViewBag.errors = ModelState.Values;
  80. string firstname = fname;
  81. string lastname = fname;
  82. string email = useremail;
  83. string password = userpassword;
  84. if (firstname == null && lastname == null && email == null && password == null)
  85. {
  86. return RedirectToAction("Index");
  87. }
  88. else
  89. {
  90. List<Dictionary<string, object>> Users = DbConnector.Query($"INSERT INTO users (first_name, last_name, email, password) VALUES ('{firstname}', '{lastname}', '{email}', '{password}')");
  91. return RedirectToAction("Index");
  92. }
  93. }
  94.  
  95.  
  96. [HttpPost]
  97. [Route("/comment")]
  98. public IActionResult Comment(string content)
  99. {
  100. Comment NewComment = new Comment
  101. {
  102. PostComment = content,
  103. };
  104. TryValidateModel(NewComment);
  105. ViewBag.errors = ModelState.Values;
  106. string comment = content;
  107. if (comment == null)
  108. {
  109. return RedirectToAction("Logged");
  110. }
  111. else
  112. {
  113. int? x = HttpContext.Session.GetInt32("UserId");
  114. int? y = HttpContext.Session.GetInt32("MsgId");
  115. Console.WriteLine(x);
  116. Console.WriteLine(y);
  117. // List<Dictionary<string, object>> MessageTObe = DbConnector.Query($"SELECT * FROM messages WHERE messages_id = '{y}'");
  118. // List<Dictionary<string, object>> Comment = DbConnector.Query($"INSERT INTO comments (comment, commentposted_at, user_id, message_id) VALUES ('{content}', NOW(), '{x}', '{y}')");
  119. return RedirectToAction("Logged");
  120. }
  121. }
  122.  
  123. [HttpPost]
  124. [Route("/postmessage")]
  125. public IActionResult MessagePosting(string message)
  126. {
  127. Message NewMessage = new Message
  128. {
  129. MessagePost = message,
  130. };
  131. TryValidateModel(NewMessage);
  132. ViewBag.errors = ModelState.Values;
  133. string msg = message;
  134. if (msg == null)
  135. {
  136. return RedirectToAction("Logged");
  137. }
  138. else
  139. {
  140. int? x = HttpContext.Session.GetInt32("UserId");
  141. List<Dictionary<string, object>> PostMessage = DbConnector.Query($"INSERT INTO messages (message, user_id, messageposted_at) VALUES ('{message}', '{x}', NOW())");
  142. List<Dictionary<string, object>> Messages = DbConnector.Query($"SELECT * FROM messages");
  143. Dictionary<string,object> unique = new Dictionary<string, object>();
  144. foreach(var n in Messages){
  145. unique.Add((string) n["messages_id"], n);
  146. }
  147. HttpContext.Session.SetInt32("MsgId", n);
  148. return RedirectToAction("Logged");
  149. }
  150. }
  151. }
  152. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement