public function run()
 {
     ini_set("memory_limit", "-1");
     DB::table('edificios')->delete();
     for ($i = 0; $i < 10; $i++) {
         $faker = Faker::create();
         Edificio::create(['razon_social' => $faker->company, 'cuit' => $faker->randomNumber($nbDigits = 2) . '-' . $faker->randomNumber($nbDigits = 8) . '-' . $faker->randomNumber($nbDigits = 1), 'suterh' => $faker->randomNumber($nbDigits = 5) . '/' . $faker->randomNumber($nbDigits = 2), 'direccion' => $faker->streetAddress, 'admin_id' => $faker->numberBetween($min = 1, $max = 10)]);
     }
 }
 public function store(Request $request)
 {
     $this->validate($request, ['inicio' => 'required', 'fin' => 'required', 'titulo' => 'required']);
     $evento = new Evento();
     $evento->inicio = Input::get('inicio');
     $evento->fin = Input::get('fin');
     $evento->titulo = Input::get('titulo');
     if (Input::get('descripcion') !== NULL) {
         $evento->descripcion = Input::get('descripcion');
     }
     $evento->edificio_id = Session::get('edificio_id');
     if (Input::get('amenitie_id') != 999) {
         $evento->amenitie_id = Input::get('amenitie_id');
     }
     $evento->user_id = Auth::id();
     $evento->touch();
     $evento->save();
     if (isset($_POST['notificar'])) {
         $users = DB::table('pisos')->join('unidades', 'unidades.piso_id', '=', 'pisos.id')->join('users', 'users.id', '=', 'unidades.propietario_id')->where('pisos.edificio_id', '=', Session::get('edificio_id'))->distinct()->get();
         $edificio = Edificio::find(Session::get('edificio_id'));
         $de = User::find(Auth::user()->id);
         foreach ($users as $user) {
             Mail::send('emails.evento', ['de' => $de, 'user' => $user, 'evento' => $evento], function ($message) use($user, $edificio) {
                 $message->from('*****@*****.**', 'Vertical');
                 $message->sender('*****@*****.**', 'Vertical');
                 $message->to($user->email);
                 $message->subject('Evento Consorcio - ' . $edificio->razon_social);
             });
         }
         $users = DB::table('pisos')->join('unidades', 'unidades.piso_id', '=', 'pisos.id')->join('users', 'users.id', '=', 'unidades.inquilino_id')->where('pisos.edificio_id', '=', Session::get('edificio_id'))->distinct()->get();
         foreach ($users as $user) {
             Mail::send('emails.evento', ['de' => $de, 'user' => $user, 'evento' => $evento], function ($message) use($user, $edificio) {
                 $message->from('*****@*****.**', 'Vertical');
                 $message->sender('*****@*****.**', 'Vertical');
                 $message->to($user->email);
                 $message->subject('Evento Consorcio - ' . $edificio->razon_social);
             });
         }
         Session::flash('alert', '1');
     }
     return Redirect::route('eventos.index', ['id' => Session::get('edificio_id')]);
 }
 public function show($id)
 {
     $edificio_id = Input::get('id');
     $edificio = Edificio::find($edificio_id);
     $administrador = Administrador::find($edificio->admin_id);
     $items = Item::find($id);
     //obtengo el id de la espensa que vien por la url//
     $exp_uri = $_SERVER["REQUEST_URI"];
     $exp_uri = explode('/', $exp_uri);
     $exp_uri = explode('?', $exp_uri[4]);
     $exp_id = $exp_uri[0];
     $expensa = new Expensa();
     $expensa = $expensa::find($exp_id);
     $pisos = DB::table('items')->join('propietarios', 'propietarios.id', '=', 'items.unidad_id')->where('items.expensa_id', '=', $id)->get();
     if (Auth::user()->rol_id == 2) {
         //return View::make('administrador.expensas.show')
         //->with('items', $items)
         //->with('edificio', $edificio)
         //->with('admin', $administrador)
         //->with('pisos', $pisos);
         $view = \View::make('administrador.expensas.show')->with('items', $items)->with('edificio', $edificio)->with('admin', $administrador)->with('pisos', $pisos)->with('expensa', $expensa);
         $pdf = \App::make('dompdf.wrapper');
         $pdf->loadHTML($view);
         return $pdf->stream('Expensa.pdf');
     }
     if (Auth::user()->rol_id == 3) {
         $view = \View::make('propietario.expensas.show')->with('items', $items)->with('edificio', $edificio)->with('admin', $administrador)->with('pisos', $pisos)->with('expensa', $expensa);
         $pdf = \App::make('dompdf.wrapper');
         $pdf->loadHTML($view);
         return $pdf->stream('Expensa.pdf');
         //return View::make('propietario.expensas.index');
     }
     if (Auth::user()->rol_id == 4) {
         $view = \View::make('inquilino.expensas.show')->with('items', $items)->with('edificio', $edificio)->with('admin', $administrador)->with('pisos', $pisos)->with('expensa', $expensa);
         $pdf = \App::make('dompdf.wrapper');
         $pdf->loadHTML($view);
         return $pdf->stream('Expensa.pdf');
         //return View::make('propietario.expensas.index');
     }
 }
 public function show($id)
 {
     $reclamo = Reclamo::withTrashed()->where('id', $id)->first();
     $edificio = Edificio::find($reclamo->edificio_id);
     $usuario = User::find($reclamo->user_id);
     $unidad = DB::table('unidades')->join('pisos', 'pisos.id', '=', 'unidades.piso_id')->select('pisos.numero', 'unidades.letra')->where('unidades.id', '=', $reclamo->unidad_id)->whereNULL('unidades.deleted_at')->first();
     $grupos = DB::table('roles')->where('id', '=', 2)->orwhere('id', '=', 3)->orwhere('id', '=', 4)->get();
     $notas = DB::table('notas')->join('reclamos', 'reclamos.id', '=', 'notas.reclamo_id')->join('users', 'users.id', '=', 'notas.user_id')->select('notas.*', 'users.nombre', 'users.apellido', 'users.email')->where('reclamos.id', '=', $id)->orderBy('notas.created_at', 'desc')->get();
     if (Auth::user()->rol_id == 2) {
         return View::make('administrador.reclamos.show')->with('edificio', $edificio)->with('unidad', $unidad)->with('grupos', $grupos)->with('reclamo', $reclamo)->with('usuario', $usuario)->with('notas', $notas);
     }
     if (Auth::user()->rol_id == 3) {
         return View::make('propietario.reclamos.show')->with('edificio', $edificio)->with('unidad', $unidad)->with('grupos', $grupos)->with('reclamo', $reclamo)->with('usuario', $usuario)->with('notas', $notas);
     }
     if (Auth::user()->rol_id == 4) {
         return View::make('inquilino.reclamos.show')->with('edificio', $edificio)->with('unidad', $unidad)->with('grupos', $grupos)->with('reclamo', $reclamo)->with('usuario', $usuario)->with('notas', $notas);
     }
 }
 public function updateinquilino($id)
 {
     $unidad = Unidad::find($id);
     $inquilino_id = Input::get('inquilino_id');
     $unidad->inquilino_id = $inquilino_id;
     if (Input::get('inquilino_id') == "null") {
         $unidad->inquilino_id = null;
     }
     $unidad->save();
     if (Input::get('inquilino_id') != "null") {
         $piso = DB::table('pisos')->join('unidades', 'unidades.piso_id', '=', 'pisos.id')->distinct()->first();
         $edificio = Edificio::find(Session::get('edificio_id'));
         $user = User::find($inquilino_id);
         Mail::send('emails.inquilino', ['edificio' => $edificio, 'piso' => $piso, 'user' => $user, 'unidad' => $unidad], function ($message) use($user, $edificio) {
             $message->from('*****@*****.**', 'Vertical');
             $message->sender('*****@*****.**', 'Vertical');
             $message->to($user->email);
             $message->subject('Actualización Perfil - ' . $edificio->razon_social);
         });
     }
     return Redirect::route('edificios.show', ['id' => Session::get('edificio_id'), '#unidades']);
 }
 public function message($id)
 {
     $users = DB::table('pisos')->join('unidades', 'unidades.piso_id', '=', 'pisos.id')->join('users', 'users.id', '=', 'unidades.propietario_id')->where('pisos.edificio_id', '=', $id)->distinct()->get();
     $edificio = Edificio::find($id);
     $de = User::find(Auth::user()->id);
     $mensaje = Input::get('message');
     foreach ($users as $user) {
         Mail::send('emails.notificacion', ['de' => $de, 'user' => $user, 'mensaje' => $mensaje], function ($message) use($user, $edificio) {
             $message->from('*****@*****.**', 'Vertical');
             $message->to($user->email);
             $message->subject('Notificación Consorcio - ' . $edificio->razon_social);
         });
     }
     $users = DB::table('pisos')->join('unidades', 'unidades.piso_id', '=', 'pisos.id')->join('users', 'users.id', '=', 'unidades.inquilino_id')->where('pisos.edificio_id', '=', $id)->distinct()->get();
     foreach ($users as $user) {
         Mail::send('emails.notificacion', ['de' => $de, 'user' => $user, 'mensaje' => $mensaje], function ($message) use($user, $edificio) {
             $message->from('*****@*****.**', 'Vertical');
             $message->to($user->email);
             $message->subject('Notificación Consorcio - ' . $edificio->razon_social);
         });
     }
     Session::flash('alert', '1');
     return Redirect::route('edificios.index');
 }