/**
  * @param $username
  */
 public function deleteUser($username)
 {
     if ($provider = parent::connectAsAdmin()) {
         $user = $provider->search()->getQuery()->findBy('samaccountname', $username);
         if ($user->exists) {
             if ($user->delete()) {
                 // Successfully deleted user.
                 return TRUE;
                 // Returns false.
             }
         }
     }
     return FALSE;
 }
 /**
  * Get all OUs from Active Directory
  *
  * @return array|\Illuminate\Support\Collection
  * @throws \Exception
  */
 public function getAllOus()
 {
     $provider = parent::connectAsAdmin();
     $search = $provider->search();
     return $search->ous()->get();
 }
 /**
  * return Active Directory Default Containers (Most used folders Users, Computers and Builtin)
  *
  * @return mixed
  * @throws \Exception
  */
 public function getDefaultContainers()
 {
     $provider = parent::connect();
     $search = $provider->search();
     return $search->orWhereEquals("cn", "Users")->orWhereEquals("cn", "Computers")->orWhereContains('cn', 'Builtin')->get();
 }
 /**
  * @param $groupname
  */
 public function deleteGroup($groupname)
 {
     if ($provider = parent::connectAsAdmin()) {
         $group = $provider->search()->getQuery()->findBy('name', $groupname);
         if ($group->exists) {
             if ($group->delete()) {
                 // Successfully deleted user.
                 return TRUE;
                 // Returns false.
             }
         }
     }
     return FALSE;
 }