Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace App\Http\Controllers;
- namespace App\Http\Controllers;
- use App\Http\Controllers\Controller;
- use App\Http\Requests\CityRequest;
- use App\State;
- use App\User;
- use Auth;
- use Carbon\Carbon;
- use DB;
- use Illuminate\Http\Request;
- use \input as Input;
- class UserController extends Controller {
- /**
- * Create a new controller instance.
- *
- * @return void
- */
- public function __construct() {
- $this->middleware('auth');
- }
- public function finishRegister() {
- $states = State::all();
- return view('finishRegister', ['states' => $states]);
- }
- public function finishRegisterPost(CityRequest $request) {
- mkdir(str_replace("app", "", app_path()) . 'resources/views/' . str_replace(".", "_", str_replace(" ", "_", $request['nameCompany'])));
- DB::table('cities')->insert(array(
- 'nameCity' => $request->input('nameCity'),
- 'ptt' => $request->input('ptt'),
- 'stateID' => $request->input('stateID'),
- ));
- $city = DB::table('cities')->orderBy('cityID', 'desc')->first();
- DB::table('companies')->insert(array(
- 'nameCompany' => $request->input('nameCompany'),
- 'cityID' => $city->cityID,
- 'numberUsers' => 1,
- 'numberLicenses' => 1,
- 'adress' => $request->input('adress'),
- 'phoneNumber' => $request->input('phoneNumber'),
- 'created_at' => date('Y-m-d H:i:s'),
- 'updated_at' => date('Y-m-d H:i:s'),
- ));
- $company = DB::table('companies')->orderBy('companyID', 'desc')->first();
- $id = Auth::user()->id;
- $user = User::find($id);
- $user->companyID = $company->companyID;
- $user->privilege = 'sa';
- $user->save();
- $KontrolerFirme = app_path() . "/Http/Controllers/" . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . "Controller.php";
- if (!file_exists($KontrolerFirme)) {
- $content = "<?php
- namespace App\Http\Controllers;
- use Illuminate\Http\Request;
- use DB;
- use File;
- use App\User;
- use Auth;
- use Carbon\Carbon;
- class " . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . "Controller extends Controller
- {
- public function __construct()
- {
- \$this->middleware('auth');
- }
- //Kraj funkcija
- }";
- //ubacivanje kontrolera u file "NazivFirmeController"
- $fp = fopen(app_path() . "/Http/Controllers/" . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . "Controller.php", "wb");
- fwrite($fp, $content);
- fclose($fp);
- }
- $RuteFirme = app_path() . "/Http/Routes/" . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . ".php";
- if (!file_exists($RuteFirme)) {
- $fp = fopen(app_path() . "/Http/Routes/" . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . ".php", "wb");
- fwrite($fp, "<?php \n ");
- fclose($fp);
- }
- $routesPutanja = app_path() . "/Http/routes.php";
- $content = "require app_path('Http/Routes/" . str_replace('.', '_', str_replace(' ', '_', $company->nameCompany)) . ".php');\n //Kraj ruta";
- $search = "//Kraj ruta";
- $replace = "\n" . $content;
- file_put_contents($routesPutanja, str_replace($search, $replace, file_get_contents($routesPutanja)));
- return redirect()->action('ActivityController@getActivities');
- }
- /**
- * Display a listing of the resource.
- *
- * @return \Illuminate\Http\Response
- */
- public function index() {
- $currentPage = "Users";
- $msg = NULL;
- $id = Auth::user()->companyID;
- $users = User::all()->where('companyID', $id);
- return view('users.users')->with('users', $users)->with('currentPage', $currentPage);
- }
- /**
- * Store a newly created resource in storage.
- *
- * @param \Illuminate\Http\Request $request
- * @return \Illuminate\Http\Response
- */
- public function store(Request $request) {
- $userid = Auth::user()->id;
- $user = User::find($userid);
- $companyID = Auth::user()->companyID;
- $password = $request['password'];
- $password_confirmation = $request['password_confirmation'];
- if ($password !== $password_confirmation) {
- $msg = "Password do not match";
- return redirect()->action('UserController@getUsers')->with('msg', $msg);
- }
- $image = $request->file('image');
- $name = $request['name'];
- $email = $request['email'];
- $password = bcrypt($request['password']);
- $privilege = $request['privilege'];
- $companyID = Auth::user()->companyID;
- if ($request->hasFile('image')) {
- $image->move(str_replace("\app", "", app_path()) . '/images/', $image->getClientOriginalName());
- DB::table('users')->insert(array(
- 'name' => $name,
- 'email' => $email,
- 'photoName' => '/../images/' . $image->getClientOriginalName(),
- 'password' => $password,
- 'privilege' => $privilege,
- 'companyID' => $companyID,
- ));
- } else {
- DB::table('users')->insert(array(
- 'name' => $name,
- 'email' => $email,
- 'photoName' => '',
- 'password' => $password,
- 'privilege' => $privilege,
- 'companyID' => $companyID,
- ));
- }
- DB::table('log')->insert(array(
- 'companyID' => $companyID,
- 'UserName' => $user->name,
- 'Action' => 'AU',
- 'Description' => $name,
- 'created_at' => Carbon::now(),
- 'updated_at' => Carbon::now(),
- ));
- DB::table('companies')->increment('numberUsers');
- $msg = "You have secessfully added a user!";
- return redirect()->action('UserController@getUsers')->with('msg', $msg);
- }
- /**
- * Display the specified resource.
- *
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function show($id) {
- $user = DB::table('users')
- ->join('companies', 'users.companyID', '=', 'companies.companyID')
- ->where('id', $id)
- ->first();
- $currentPage = "Users";
- return view('users.infoUser')->with('user', $user)->with('currentPage', $currentPage);
- }
- /**
- * Update the specified resource in storage.
- *
- * @param \Illuminate\Http\Request $request
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function update(Request $request, $id) {
- $userid = Auth::user()->id;
- $user = User::find($userid);
- $companyID = Auth::user()->companyID;
- $userForEdit = DB::table('users')->where('id', $id)->first();
- $password = $request['password'];
- $password_confirmation = $request['password_confirmation'];
- if ($password !== $password_confirmation) {
- $msg = "Password do not match";
- return redirect()->action('UserController@getUsers')->with('msg', $msg);
- }
- $wizardInput = $request['wizard'];
- $wizard = false;
- if ($wizardInput === "on") {
- $wizard = true;
- }
- if ($request->hasFile('image')) {
- $image = $request->file('image');
- $image->move(str_replace("app", "", app_path()) . 'images/', $image->getClientOriginalName());
- $img = $image->getClientOriginalName();
- } else {
- $img = $userForEdit->photoName;
- }
- $name = $request['name'];
- $email = $request['email'];
- $privilege = $request['privilege'];
- if ($password == "") {
- DB::table('users')->where('id', $id)->update(array(
- 'name' => $name,
- 'email' => $email,
- 'photoName' => '/../images/' . $img,
- 'wizard' => $wizard,
- 'privilege' => $privilege,
- ));
- } else {
- $password = bcrypt($request['password']);
- DB::table('users')->where('id', $id)->update(array(
- 'name' => $name,
- 'email' => $email,
- 'photoName' => '/../images/' . $img,
- 'password' => $password,
- 'wizard' => $wizard,
- 'privilege' => $privilege,
- ));
- }
- DB::table('log')->insert(array(
- 'companyID' => $companyID,
- 'UserName' => $user->name,
- 'Action' => 'EU',
- 'Description' => $userForEdit->name,
- 'created_at' => Carbon::now(),
- 'updated_at' => Carbon::now(),
- ));
- $msg = "You have secessfully edited user!";
- return redirect()->action('UserController@getUsers')->with('msg', $msg);
- }
- /**
- * Remove the specified resource from storage.
- *
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function destroy($id) {
- $userid = Auth::user()->id;
- $LogedUser = User::find($userid);
- $companyID = Auth::user()->companyID;
- $user = DB::table('users')->where('id', $id)->first();
- if (Auth::user()->id == $id) {
- $msg = "You can't delete yourself!";
- return redirect()->action('UserController@getUsers')->with('msg', $msg);
- }
- if ($user->privilege !== 'SA') {
- User::destroy($id);
- DB::table('log')->insert(array(
- 'companyID' => $companyID,
- 'UserName' => $LogedUser->name,
- 'Action' => 'DU',
- 'Description' => $user->name,
- 'created_at' => Carbon::now(),
- 'updated_at' => Carbon::now(),
- ));
- $msg = "You have secessfully deleted user!";
- DB::table('companies')->decrement('numberUsers');
- } else {
- $msg = "You are not allowed to do this action!";
- }
- return redirect()->action('UserController@getUsers')->with('msg', $msg);
- }
- public function rateProduct($ocjena, $opis) {
- DB::table('rating')->insert(array(
- 'userId' => Auth::user()->id,
- 'ocjena' => $ocjena,
- 'opis' => $opis,
- ));
- return "thank you for your feedback";
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement