/**
  * Execute the job.
  *
  * @return void
  */
 public function handle()
 {
     $contract_id = $this->contract->contract_id;
     //Get the subscribed users for the contract
     $subscribed_users = $this->contract->get_subscribers();
     $mailer = new Mailer();
     foreach ($subscribed_users as $user) {
         $mailer->send_contract_notification($user, $contract_id, $this->type);
     }
     //Also notifiy the contract Moderators for new contracts
     if ($this->type == 'new') {
         $contract_mods_role = SiteRole::findOrFail(config('aurora.role_syndie_contract_mods_id'));
         $contract_mods_users = $contract_mods_role->get_users();
         foreach ($contract_mods_users as $mod) {
             $mailer->send_contract_new_mod($mod, $contract_id);
         }
     }
 }
 public function removeUser(Request $request, $role_id)
 {
     if ($request->user()->cannot('site_roles_edit')) {
         abort('403', 'You do not have the required permission');
     }
     $role = SiteRole::findOrFail($role_id);
     $user = ForumUserModel::findOrFail($request->input('user'));
     $user->roles()->detach($role);
     Log::notice('perm.site_role.remove_user - Site Role User removed', ['user_id' => $request->user()->user_id, 'role_id' => $role->id, 'role_name' => $role->name, 'target_user_id' => $user->user_id, 'target_user_name' => $user->username_clean]);
     return redirect()->route('site.roles.edit.get', ['role_id' => $role_id]);
 }