profile.php 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. <?php
  2. class profile extends Controller {
  3. public function index() {
  4. //noope
  5. }
  6. public function settings($action='') {
  7. if ($this->isUser()) {
  8. $model = $this->loadModel('profile_model');
  9. $view = $this->loadView('profile_settings_view');
  10. if ($action=='save') {
  11. $model->saveSettings($_REQUEST);
  12. echo 'ok';
  13. die();
  14. }
  15. if ($action=='newpass') {
  16. $model->savePass($_REQUEST['pass']);
  17. echo 'ok';
  18. die();
  19. }
  20. if ($action=='checkpass') {
  21. echo $model->checkPass($_REQUEST['pass']);
  22. die();
  23. }
  24. $view->set('action',$action);
  25. $view->set('settings',$model->loadSettings($_SESSION['userid']));
  26. $view->set('searchCount',$model->getUserFavoriteSearchesCount($_SESSION['userid']));
  27. $view->set('propertyCount',$model->getUserFavoritePropertiesCount($_SESSION['userid']));
  28. $view->set('agentCount',$model->getUserFavoriteAgentsCount($_SESSION['userid']));
  29. $view->set('officeCount',$model->getUserFavoriteOfficesCount($_SESSION['userid']));
  30. $view->render();
  31. }
  32. else {
  33. header("Location: /");
  34. die();
  35. }
  36. }
  37. public function isUser() {
  38. if ($_SESSION['userid']!='') {
  39. return true;
  40. }
  41. else {
  42. return false;
  43. }
  44. }
  45. public function properties($action='') {
  46. if ($this->isUser()) {
  47. $model = $this->loadModel('profile_model');
  48. $view = $this->loadView('profile_properties_view');
  49. if ($action=='delete') {
  50. $model->deleteProfileProperty($_REQUEST['id']);
  51. }
  52. $view->set('properties',$model->getPropertyListByID($_SESSION['userid']));
  53. $view->set('searchCount',$model->getUserFavoriteSearchesCount($_SESSION['userid']));
  54. $view->set('propertyCount',$model->getUserFavoritePropertiesCount($_SESSION['userid']));
  55. $view->set('agentCount',$model->getUserFavoriteAgentsCount($_SESSION['userid']));
  56. $view->set('officeCount',$model->getUserFavoriteOfficesCount($_SESSION['userid']));
  57. $view->render();
  58. }
  59. else {
  60. header("Location: /");
  61. die();
  62. }
  63. }
  64. public function agents($action='') {
  65. if ($this->isUser()) {
  66. $model = $this->loadModel('profile_model');
  67. $view = $this->loadView('profile_agents_view');
  68. if ($action=='delete') {
  69. $model->deleteProfileAgent($_REQUEST['id']);
  70. }
  71. $view->set('agents',$model->getAgentListByID($_SESSION['userid']));
  72. $view->set('searchCount',$model->getUserFavoriteSearchesCount($_SESSION['userid']));
  73. $view->set('propertyCount',$model->getUserFavoritePropertiesCount($_SESSION['userid']));
  74. $view->set('agentCount',$model->getUserFavoriteAgentsCount($_SESSION['userid']));
  75. $view->set('officeCount',$model->getUserFavoriteOfficesCount($_SESSION['userid']));
  76. $view->render();
  77. }
  78. else {
  79. header("Location: /");
  80. die();
  81. }
  82. }
  83. public function offices($action='') {
  84. if ($this->isUser()) {
  85. $model = $this->loadModel('profile_model');
  86. $view = $this->loadView('profile_offices_view');
  87. if ($action=='delete') {
  88. $model->deleteProfileOffice($_REQUEST['id']);
  89. }
  90. $view->set('offices',$model->getOfficesListByID($_SESSION['userid']));
  91. $view->set('searchCount',$model->getUserFavoriteSearchesCount($_SESSION['userid']));
  92. $view->set('propertyCount',$model->getUserFavoritePropertiesCount($_SESSION['userid']));
  93. $view->set('agentCount',$model->getUserFavoriteAgentsCount($_SESSION['userid']));
  94. $view->set('officeCount',$model->getUserFavoriteOfficesCount($_SESSION['userid']));
  95. $view->render();
  96. }
  97. else {
  98. header("Location: /");
  99. die();
  100. }
  101. }
  102. public function favorites($action='') {
  103. $model = $this->loadModel('profile_model');
  104. if ($action=='add') {
  105. if ($_SESSION['userid']=='') die('login');
  106. if ($model->add_to_favorites($_REQUEST['property_id'])) {
  107. die('ok');
  108. }
  109. else {
  110. die('error');
  111. }
  112. }
  113. elseif ($action=='addagent') {
  114. if ($_SESSION['userid']=='') die('login');
  115. if ($model->add_agent_to_favorites($_REQUEST['agent_id'])) {
  116. die('ok');
  117. }
  118. else {
  119. die('error');
  120. }
  121. }
  122. elseif ($action=='addoffice') {
  123. if ($_SESSION['userid']=='') die('login');
  124. if ($model->add_office_to_favorites($_REQUEST['office_id'])) {
  125. die('ok');
  126. }
  127. else {
  128. die('error');
  129. }
  130. }
  131. elseif ($action=='addsearch') {
  132. if ($_SESSION['userid']=='') die('login');
  133. if ($model->save_search($_SESSION['search'])) {
  134. die('ok');
  135. }
  136. else {
  137. die('error');
  138. }
  139. }
  140. }
  141. public function searches($action='') {
  142. if ($this->isUser()) {
  143. $model = $this->loadModel('profile_model');
  144. $view = $this->loadView('profile_searches_view');
  145. if ($action=='delete') {
  146. $model->deleteSearch($_REQUEST['id']);
  147. }
  148. $view->set('searches',$model->getSearchesListByID($_SESSION['userid']));
  149. $view->set('searchCount',$model->getUserFavoriteSearchesCount($_SESSION['userid']));
  150. $view->set('propertyCount',$model->getUserFavoritePropertiesCount($_SESSION['userid']));
  151. $view->set('agentCount',$model->getUserFavoriteAgentsCount($_SESSION['userid']));
  152. $view->set('officeCount',$model->getUserFavoriteOfficesCount($_SESSION['userid']));
  153. $view->render();
  154. }
  155. else {
  156. header("Location: /");
  157. die();
  158. }
  159. }
  160. public function overview($action='') {
  161. if ($this->isUser()) {
  162. $model = $this->loadModel('profile_model');
  163. $view = $this->loadView('profile_overview_view');
  164. $view->set('properties',$model->getPropertyListByID($_SESSION['userid']));
  165. $view->set('agents',$model->getAgentListByID($_SESSION['userid']));
  166. $view->set('offices',$model->getOfficesListByID($_SESSION['userid']));
  167. $view->set('searchCount',$model->getUserFavoriteSearchesCount($_SESSION['userid']));
  168. $view->set('propertyCount',$model->getUserFavoritePropertiesCount($_SESSION['userid']));
  169. $view->set('agentCount',$model->getUserFavoriteAgentsCount($_SESSION['userid']));
  170. $view->set('officeCount',$model->getUserFavoriteOfficesCount($_SESSION['userid']));
  171. $view->render();
  172. }
  173. else {
  174. header("Location: /");
  175. die();
  176. }
  177. }
  178. }