public function completecadastro(Request $request)
 {
     if (!($user = User::find($request->id))) {
         return ['status' => 'erro', 'response' => 'Erro ao atualizar os dados'];
     }
     if (!$request->facebookfoto && $request->file) {
         $user->foto = $this->profilepicture($request->nome, $request->file);
     } elseif ($request->foto) {
         $user->foto = $request->foto;
     } else {
         $user->foto = $this->profilepicture($request->nome, null);
     }
     if ($endereco = AppEnderecos::where('id_pessoa', $user->id)->where('principal', 1)->first()) {
         $endereco->rua = $request->endereco['rua'];
         $endereco->numero = $request->endereco['numero'];
         $endereco->bairro = $request->endereco['bairro'];
         $endereco->complemento = $request->endereco['complemento'];
         $endereco->responsavel = $request->nome;
         $endereco->save();
     } else {
         $endereco = new AppEnderecos();
         $endereco->rua = $request->endereco['rua'];
         $endereco->numero = $request->endereco['numero'];
         $endereco->bairro = $request->endereco['bairro'];
         $endereco->complemento = $request->endereco['complemento'];
         $endereco->responsavel = $request->nome;
         $endereco->principal = 1;
         $endereco->save();
     }
     $user->nome = $request->nome;
     $user->email = $request->email;
     if ($request->data_nasc) {
         $user->data_nasc = $request->data_nasc;
     }
     if ($request->cpf) {
         $user->cpf = $request->cpf;
     }
     if ($request->fone2) {
         $user->fone2 = $request->fone2;
     }
     $user->fone = $request->fone;
     $user->cad_complet = 1;
     if ($user->save()) {
         return ['status' => 'sucesso', 'response' => $user];
     } else {
         return ['status' => 'erro', 'response' => 'Erro ao Atualizar dados'];
     }
 }
 public function create(Request $request)
 {
     $v = Validator::make($request->all(), ['nome' => 'required', 'sobrenome' => 'required', 'email' => 'required|email|unique:users']);
     if ($v->fails()) {
         return redirect()->back()->withInput()->withErrors($v->errors());
     }
     $cliente = new User();
     $cliente->nome = $request->nome;
     $cliente->sobrenome = $request->sobrenome;
     $cliente->cpf = $request->cpf;
     $cliente->data_nasc = $request->data_nasc;
     $cliente->email = $request->email;
     $cliente->fone = $request->fone;
     $cliente->fone2 = $request->fone2;
     $cliente->tipo = 'CLIENTE';
     $cliente->foto = $this->profilepicture($request->nome . ' ' . $request->sobrenome, null);
     $cliente->password = Hash::make($request->data_nasc);
     if ($cliente->save()) {
         $endereco = new AppEnderecos();
         $endereco->id_pessoa = $cliente->id;
         $endereco->status = 1;
         $endereco->principal = 1;
         $endereco->rua = $request->rua;
         $endereco->numero = $request->numero;
         $endereco->bairro = $request->bairro;
         $endereco->complemento = $request->complemento;
         $endereco->responsavel = $request->nome;
         $endereco->referencia = $request->referencia;
         $endereco->observacao = $request->observacao;
         if ($endereco->save()) {
             return redirect('/painel/clientes');
             # code...
         } else {
             return redirect()->back()->withInput()->withErrors(['cadastro' => 'Erro ao Fazer cadastro do Endereço']);
         }
     } else {
         return redirect()->back()->withInput()->withErrors(['cadastro' => 'Erro ao Fazer cadastro']);
     }
 }