Advertisement
Guest User

Untitled

a guest
Apr 20th, 2016
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.11 KB | None | 0 0
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Http\Controllers\Controller;
  4. use App\Http\Requests\CityRequest;
  5. use App\State;
  6. use App\User;
  7. use Auth;
  8. use Carbon\Carbon;
  9. use DB;
  10. use Illuminate\Http\Request;
  11.  
  12. class UserController extends Controller {
  13. /**
  14. * Create a new controller instance.
  15. *
  16. * @return void
  17. */
  18. public function __construct() {
  19. $this->middleware('auth');
  20. }
  21. public function finishRegister() {
  22. $states = State::all();
  23. return view('finishRegister', ['states' => $states]);
  24. }
  25. public function finishRegisterPost(CityRequest $request) {
  26.  
  27. //mkdir('/opt/lampp/htdocs/resources/views/' . str_replace(".", "_", str_replace(" ", "_", $request['nameCompany'])));
  28.  
  29. DB::table('cities')->insert(array(
  30. 'nameCity' => $request->input('nameCity'),
  31. 'ptt' => $request->input('ptt'),
  32. 'stateID' => $request->input('stateID'),
  33. ));
  34. $city = DB::table('cities')->orderBy('cityID', 'desc')->first();
  35. DB::table('companies')->insert(array(
  36. 'nameCompany' => $request->input('nameCompany'),
  37. 'cityID' => $city->cityID,
  38. 'numberUsers' => 1,
  39. 'numberLicenses' => 1,
  40. 'adress' => $request->input('adress'),
  41. 'phoneNumber' => $request->input('phoneNumber'),
  42. 'created_at' => date('Y-m-d H:i:s'),
  43. 'updated_at' => date('Y-m-d H:i:s'),
  44. ));
  45. $company = DB::table('companies')->orderBy('companyID', 'desc')->first();
  46. $id = Auth::user()->id;
  47. $user = User::find($id);
  48. $user->companyID = $company->companyID;
  49. $user->privilege = 'sa';
  50. $user->save();
  51.  
  52. $KontrolerFirme = app_path() . "/Http/Controllers/" . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . "Controller.php";
  53. if (!file_exists($KontrolerFirme)) {
  54. $content = "<?php
  55. namespace App\Http\Controllers;
  56. use Illuminate\Http\Request;
  57. use DB;
  58. use File;
  59. use App\User;
  60. use Auth;
  61. use Carbon\Carbon;
  62.  
  63. class " . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . "Controller extends Controller
  64. {
  65. //Kraj funkcija
  66. }";
  67. //ubacivanje kontrolera u file "NazivFirmeController"
  68. $fp = fopen(app_path() . "/Http/Controllers/" . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . "Controller.php", "wb");
  69. fwrite($fp, $content);
  70. fclose($fp);
  71. }
  72. $RuteFirme = app_path() . "/Http/Routes/" . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . ".php";
  73. if (!file_exists($RuteFirme)) {
  74. $fp = fopen(app_path() . "/Http/Routes/" . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . ".php", "wb");
  75. fwrite($fp, "<?php \n ");
  76. fclose($fp);
  77. }
  78. $routesPutanja = app_path() . "/Http/routes.php";
  79. $content = "require app_path('Http/Routes/" . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . ".php');\n //Kraj ruta";
  80. $search = "//Kraj ruta";
  81. $replace = "\n" . $content;
  82. file_put_contents($routesPutanja, str_replace($search, $replace, file_get_contents($routesPutanja)));
  83. return view('activities');
  84. }
  85. public function getUsers() {
  86. $msg = NULL;
  87. $id = Auth::user()->companyID;
  88. $users = User::all()->where('companyID', $id);
  89. return view('users.users')->with('users', $users);
  90. }
  91. public function addUser() {
  92. $companyid = Auth::user()->companyID;
  93. $company = DB::table('companies')->where('companyID', $companyid)->first();
  94. if ($company->numberUsers == $company->numberLicenses) {
  95. $msg = "You need to buy more licences!";
  96. return redirect()->action('UserController@getUsers')->with('msg', $msg);
  97. }
  98. return view('users.addUser');
  99. }
  100. public function infoUser($id) {
  101. $user = DB::table('users')
  102. ->join('companies', 'users.companyID', '=', 'companies.companyID')
  103. ->where('id', $id)
  104. ->first();
  105. return view('users.infoUser')->with('user', $user);
  106. }
  107. public function editUser($id) {
  108. $user = DB::table('users')->where('id', $id)
  109. ->first();
  110. return view('users.editUser')->with('user', $user);
  111. }
  112. public function deleteUser($id) {
  113. $userid = Auth::user()->id;
  114. $LogedUser = User::find($userid);
  115. $companyID = Auth::user()->companyID;
  116. $user = DB::table('users')->where('id', $id)->first();
  117.  
  118. if ($user->privilege !== 'SA') {
  119. User::destroy($id);
  120. DB::table('log')->insert(array(
  121. 'companyID' => $companyID,
  122. 'UserName' => $LogedUser->name,
  123. 'UserID' => $user->id,
  124. 'Action' => 'DU',
  125. 'Description' => $user->name,
  126. 'created_at' => Carbon::now(),
  127. 'updated_at' => Carbon::now(),
  128. ));
  129. $msg = "You have secessfully deleted user!";
  130. DB::table('companies')->decrement('numberUsers');
  131. } else {
  132. $msg = "You are not allowed to do this action!";
  133. }
  134.  
  135. return redirect()->action('UserController@getUsers')->with('msg', $msg);
  136. }
  137. public function updateUser($id, Request $request) {
  138.  
  139. $userid = Auth::user()->id;
  140. $user = User::find($userid);
  141. $companyID = Auth::user()->companyID;
  142. $userForEdit = DB::table('users')->where('id', $id)->first();
  143. $password = $request['password'];
  144. $password_confirmation = $request['password_confirmation'];
  145.  
  146. if ($password !== $password_confirmation) {
  147. $msg = "Password do not match";
  148. return redirect()->action('UserController@getUsers')->with('msg', $msg);
  149. }
  150. $name = $request['name'];
  151. $email = $request['email'];
  152. $password = bcrypt($request['password']);
  153. $privilege = $request['privilege'];
  154.  
  155. DB::table('users')->where('id', $id)->update(array(
  156. 'name' => $name,
  157. 'email' => $email,
  158. 'password' => $password,
  159. 'privilege' => $privilege,
  160. ));
  161.  
  162. DB::table('log')->insert(array(
  163. 'companyID' => $companyID,
  164. 'UserName' => $user->name,
  165. 'UserID' => $user->id,
  166. 'Action' => 'EU',
  167. 'Description' => $userForEdit->name,
  168. 'created_at' => Carbon::now(),
  169. 'updated_at' => Carbon::now(),
  170. ));
  171.  
  172. $msg = "You have secessfully edited user!";
  173. return redirect()->action('UserController@getUsers')->with('msg', $msg);
  174. }
  175. public function addUserPost(Request $request) {
  176. $userid = Auth::user()->id;
  177. $user = User::find($userid);
  178. $companyID = Auth::user()->companyID;
  179.  
  180. $password = $request['password'];
  181. $password_confirmation = $request['password_confirmation'];
  182.  
  183. if ($password !== $password_confirmation) {
  184. $msg = "Password do not match";
  185. return redirect()->action('UserController@getUsers')->with('msg', $msg);
  186. }
  187. $name = $request['name'];
  188. $email = $request['email'];
  189. $password = bcrypt($request['password']);
  190. $privilege = $request['privilege'];
  191. $companyID = Auth::user()->companyID;
  192. DB::table('users')->insert(array(
  193. 'name' => $name,
  194. 'email' => $email,
  195. 'password' => $password,
  196. 'privilege' => $privilege,
  197. 'companyID' => $companyID,
  198. ));
  199.  
  200. DB::table('log')->insert(array(
  201. 'companyID' => $companyID,
  202. 'UserName' => $user->name,
  203. 'UserID' => $user->id,
  204. 'Action' => 'AU',
  205. 'Description' => $name,
  206. 'created_at' => Carbon::now(),
  207. 'updated_at' => Carbon::now(),
  208. ));
  209.  
  210. DB::table('companies')->increment('numberUsers');
  211. $msg = "You have secessfully added a user!";
  212. return redirect()->action('UserController@getUsers')->with('msg', $msg);
  213. }
  214. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement