示例#1
0
 public function update(UserFormRequest $request, $id)
 {
     $user = User::findOrFail($id);
     $user->load(['profile', 'profile.extendedProfile']);
     $user->username = $request->input('username');
     $user->status = $request->input('status');
     $user->email = $request->input('email');
     if ($request->input('remove_profile_picture') == 1) {
         $user->profile->removeProfilePicture();
     }
     if ($request->hasFile('profile.profile_picture') && $request->file('profile.profile_picture')->isValid()) {
         $user->profile->profile_picture = $user->profile->saveProfilePicture($request->file('profile.profile_picture'));
     }
     if ($request->has('password')) {
         $user->password = bcrypt($request->input('password'));
     }
     $user->profile->fill($request->input('profile'));
     $user->profile->extendedProfile->fill($request->input('profile.extendedProfile'));
     $user->push();
     $subscriptions = [];
     foreach ($request->input('subscriptions', []) as $subscriptionSlug) {
         $subscriptions[] = Subscription::findBySlug($subscriptionSlug)->id;
     }
     $user->subscriptions()->sync($subscriptions);
     return redirect($request->get('backUrl', route('admin.member.index')))->with('messages', [$user->getName() . ' has been updated.']);
 }
示例#2
0
 protected function create(array $data)
 {
     $user = new User($data);
     $user->password = bcrypt($data['password']);
     $user->save();
     $profile = new Profile($data['profile']);
     $profile->user()->associate($user);
     if (!empty($data['profile']['profile_picture']) && $data['profile']['profile_picture']->isValid()) {
         $profile->profile_picture = $profile->saveProfilePicture($data['profile']['profile_picture']);
     }
     $profile->save();
     $extendedProfile = new ExtendedProfile($data['profile']['extendedProfile']);
     $profile->extendedProfile()->save($extendedProfile);
     if (isset($data['subscriptions'])) {
         $subscriptions = [];
         foreach ($data['subscriptions'] as $subscriptionSlug) {
             $subscriptions[] = Subscription::findBySlug($subscriptionSlug)->id;
         }
         $user->subscriptions()->sync($subscriptions);
     }
     return $user;
 }
示例#3
0
 protected function update(array $data)
 {
     $user = Auth::user();
     if (!empty($data['password'])) {
         $user->password = bcrypt($data['password']);
     }
     $user->email = $data['email'];
     $user->save();
     $user->profile->fill($data['profile']);
     if (!empty($data['profile']['profile_picture']) && $data['profile']['profile_picture']->isValid()) {
         $user->profile->profile_picture = $user->profile->saveProfilePicture($data['profile']['profile_picture']);
     }
     $user->profile->save();
     $user->profile->extendedProfile->fill($data['profile']['extendedProfile']);
     $user->profile->extendedProfile->save();
     $subscriptions = [];
     foreach ($data['subscriptions'] as $subscriptionSlug) {
         $subscriptions[] = Subscription::findBySlug($subscriptionSlug)->id;
     }
     $user->subscriptions()->sync($subscriptions);
     return $user;
 }