Advertisement
Guest User

Untitled

a guest
Aug 17th, 2016
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.45 KB | None | 0 0
  1. <?php
  2.  
  3. namespace app\control;
  4.  
  5. require_once 'app/model/user.model.php';
  6.  
  7. use app\core\CRenderer;
  8. use app\model\CUserModel;
  9. use Exception;
  10. use app\core\CDatabase;
  11.  
  12. class CUserController
  13. {
  14. private $m_renderer = null;
  15.  
  16. public function __construct()
  17. {
  18. $this->m_renderer = CRenderer::getInstance();
  19. }
  20. public function viewAllUser()
  21. {
  22. try
  23. {
  24. $userArray = CUserModel::getAllUserAsArray();
  25. var_dump($userArray);
  26.  
  27. foreach($userArray as $user)
  28. {
  29. $this->m_renderer->loadTemplate('user.html');
  30. $this->m_renderer->assign(array('user_fullname' => $user->getName()
  31.  
  32. ));
  33. $this->m_renderer->render();
  34. echo "test";
  35.  
  36. }
  37. }
  38. catch (Exception $e)
  39. {
  40. $this->m_renderer->loadTemplate('error.html');
  41. $this->m_renderer->assign(array('errorcode' => 6000, 'errormessage' => $e->getMessage()));
  42. $this->m_renderer->render();
  43. }
  44. }
  45.  
  46. /* public function viewAllUser($_i)
  47. * {
  48.  
  49. * try
  50. * {
  51. * if ($_i == 0) $userArray = CUserModel::getAllUserAsArray();
  52. * if ($_i == 1) $userArray = CUserModel::getAllSeriesAsArray();
  53.  
  54. * foreach($userArray as $user)
  55. * {
  56. * $this->m_renderer->loadTemplate('user.html');
  57. * $this->m_renderer->assign(array('user_fullname' => $user->getFirstname().' '.$user->getLastname(),
  58. * 'user_member_since' => $user->getMemberSince(),
  59. * //'user_image' => 'app/view/assets/img/user_images/'.$user->getProfileImage(),
  60. * 'user_image' => $user->getProfileImage(),
  61. * 'user_image_alt' => $user->getFirstname().' '.$user->getLastname().' - Profilbild',
  62. * 'user_description' => $user->getDescription(),
  63. * 'user_link' => '?page=team&user_id='.$user->getId()));
  64. * $this->m_renderer->render();
  65. * }
  66. * }
  67. * catch (Exception $e)
  68. * {
  69. * $this->m_renderer->loadTemplate('error.html');
  70. * $this->m_renderer->assign(array('errorcode' => 6000, 'errormessage' => $e->getMessage()));
  71. * $this->m_renderer->render();
  72. * }
  73. * }
  74. * */
  75. public function viewUserById($_id)
  76. {
  77. $_id = intval($_id);
  78.  
  79. try
  80. {
  81. $user = new CUserModel($_id);
  82.  
  83. $this->m_renderer->loadTemplate('user.html');
  84. $this->m_renderer->assign(array('user_fullname' => $user->getFirstname().' '.$user->getLastname(),
  85. 'user_member_since' => date("d.m.Y", $user->getMemberSince()),
  86. 'user_image' => 'app/view/assets/img/user_images/'.$user->getProfileImage(),
  87. 'user_image_alt' => $user->getFirstname().' '.$user->getLastname().' - Profilbild',
  88. 'user_description' => $user->getDescription(),
  89. 'user_link' => '?page=team&user_id='.$user->getId()));
  90. $this->m_renderer->render();
  91. }
  92. catch(Exception $e)
  93. {
  94. $this->m_renderer->loadTemplate('error.html');
  95. $this->m_renderer->assign(array('errorcode' => 6000, 'errormessage' => $e->getMessage()));
  96. $this->m_renderer->render();
  97. }
  98. }
  99.  
  100. public function showLogin(){
  101. try
  102. {
  103. $this->m_renderer->loadTemplate('login.html');
  104. $this->m_renderer->render();
  105. }
  106. catch(Exception $e)
  107. {
  108. $this->m_renderer->loadTemplate('error.html');
  109. $this->m_renderer->assign(array('errorcode' => 6000, 'errormessage' => $e->getMessage()));
  110. $this->m_renderer->render();
  111. }
  112. }
  113.  
  114. public function loginUser(){
  115. if (isset($_POST['name']) && isset($_POST['password'])){
  116. try
  117. {
  118. $name = $_POST["name"];
  119. $password = $_POST['password'];
  120.  
  121. $db = CDatabase::getInstance();
  122. $db->prepare("SELECT * FROM user where LOWER(name) = LOWER(?)");
  123. $db->bindParams(array($name));
  124. $db->execute();
  125.  
  126. $result = $db->fetch();
  127. if ($result->num_rows > 0){
  128. $row = $result->fetch_assoc();
  129. $hash = $row["password"];
  130. if (password_verify($password, $hash)) {
  131. $_SESSION["user_id"] = $row["user_id"];
  132. echo "true";
  133. } else {
  134. echo 'Error: password incorrect';
  135.  
  136. }
  137. }else{
  138. echo "Error: username does not exist";
  139. }
  140. }
  141. catch(Exception $e)
  142. {
  143. $this->m_renderer->loadTemplate('error.html');
  144. $this->m_renderer->assign(array('errorcode' => 6000, 'errormessage' => $e->getMessage()));
  145. $this->m_renderer->render();
  146. }
  147. }
  148. }
  149.  
  150. public function insertUser(){
  151. if (isset($_POST['name']) && isset($_POST['password'])){
  152. try
  153. {
  154. $name = $_POST['name'];
  155. $password = $_POST['password'];
  156.  
  157. $db = CDatabase::getInstance();
  158. //check if username is already in use
  159. $db->prepare("SELECT * FROM user where LOWER(name) = LOWER(?)");
  160. $db->bindParams(array($name));
  161. $db->execute();
  162.  
  163. $result = $db->fetch();
  164. //if no user with the same name was found
  165. if ($result->num_rows == 0){
  166. //insert user without password
  167. $hash = password_hash($password, PASSWORD_BCRYPT);
  168. $db->prepare("INSERT INTO user (name, password) VALUES(?, ?)");
  169. $db->bindParams(array($name, $hash));
  170. $db->execute();
  171. $_SESSION["user_id"] = $db->getLastInsertedId();
  172. echo "true";
  173. }else{
  174. echo "Error: name is already in use";
  175. }
  176. }
  177. catch(Exception $e)
  178. {
  179. $this->m_renderer->loadTemplate('error.html');
  180. $this->m_renderer->assign(array('errorcode' => 6000, 'errormessage' => $e->getMessage()));
  181. $this->m_renderer->render();
  182. }
  183. }
  184. }
  185.  
  186. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement