docs: def get_computers(self, filterTerm=None, domain=None):
          """
          Return hosts from the database.
          """
  
          cur = self.conn.cursor()
  
          # if we're returning a single host by ID
          if self.is_computer_valid(filterTerm):
              cur.execute("SELECT * FROM computers WHERE id=? LIMIT 1", [filterTerm])
  
          # if we're filtering by domain controllers
          elif filterTerm == 'dc':
              if domain:
                  cur.execute("SELECT * FROM computers WHERE dc=1 AND LOWER(domain)=LOWER(?)", [domain])
              else:
                  cur.execute("SELECT * FROM computers WHERE dc=1")
  
          # if we're filtering by ip/hostname
          elif filterTerm and filterTerm != "":
              cur.execute("SELECT * FROM computers WHERE ip LIKE ? OR LOWER(hostname) LIKE LOWER(?)", ['%{}%'.format(filterTerm), '%{}%'.format(filterTerm)])
  
          # otherwise return all computers
          else:
              cur.execute("SELECT * FROM computers")
  
          results = cur.fetchall()
          cur.close()
          return results