public void buildList(Connection db) throws SQLException {
   StringBuffer sqlSelect = new StringBuffer();
   StringBuffer sqlFilter = new StringBuffer();
   StringBuffer sqlOrder = new StringBuffer();
   sqlSelect.append("SELECT ");
   sqlSelect.append("lpl.* " + "FROM lookup_project_language lpl " + "WHERE lpl.id > -1 ");
   createFilter(sqlFilter, db);
   sqlOrder.append("ORDER BY language_name ");
   PreparedStatement pst =
       db.prepareStatement(sqlSelect.toString() + sqlFilter.toString() + sqlOrder.toString());
   prepareFilter(pst);
   ResultSet rs = pst.executeQuery();
   while (rs.next()) {
     WebSiteLanguage thisLanguage = new WebSiteLanguage(rs);
     this.add(thisLanguage);
   }
   rs.close();
   pst.close();
   if (buildTeamMembers) {
     Iterator i = this.iterator();
     while (i.hasNext()) {
       WebSiteLanguage thisLanguage = (WebSiteLanguage) i.next();
       thisLanguage.getTeamList().setLanguageId(thisLanguage.getId());
       thisLanguage.getTeamList().buildList(db);
     }
   }
 }
 public HtmlSelect getHtmlSelectByLocale() {
   HtmlSelect thisSelect = new HtmlSelect();
   for (WebSiteLanguage thisItem : this) {
     thisSelect.addItem(thisItem.getLanguageLocale(), thisItem.getLanguageName());
   }
   return thisSelect;
 }
 public boolean hasLanguage(WebSiteLanguage thisLanguage) {
   Iterator i = this.iterator();
   while (i.hasNext()) {
     WebSiteLanguage language = (WebSiteLanguage) i.next();
     if (language.getId() == thisLanguage.getId()) {
       return true;
     }
   }
   return false;
 }
 public WebSiteLanguage getLanguage(int languageId) {
   Iterator i = this.iterator();
   while (i.hasNext()) {
     WebSiteLanguage language = (WebSiteLanguage) i.next();
     if (language.getId() == languageId) {
       return language;
     }
   }
   return null;
 }
 public String getDefault() {
   Iterator i = this.iterator();
   while (i.hasNext()) {
     WebSiteLanguage language = (WebSiteLanguage) i.next();
     if (language.getDefaultItem()) {
       return language.getLanguageLocale();
     }
   }
   return "en_US";
 }
 public int getDefaultId() {
   Iterator i = this.iterator();
   while (i.hasNext()) {
     WebSiteLanguage language = (WebSiteLanguage) i.next();
     if (language.getDefaultItem()) {
       return language.getId();
     }
   }
   return -1;
 }
 public String getLanguage(HttpServletRequest request) {
   String uri = request.getRequestURL().toString();
   Iterator<WebSiteLanguage> i = this.iterator();
   while (i.hasNext()) {
     WebSiteLanguage thisItem = i.next();
     if (uri.indexOf(thisItem.getLanguageLocale()) > -1) {
       return thisItem.getLanguageLocale();
     }
   }
   return null;
 }
 public WebSiteLanguage getLanguage(String languageLocale) {
   if (languageLocale == null) {
     return null;
   }
   Iterator i = this.iterator();
   while (i.hasNext()) {
     WebSiteLanguage language = (WebSiteLanguage) i.next();
     if (language.getLanguageLocale().equals(languageLocale)) {
       return language;
     }
   }
   return null;
 }
 public int getLanguageId(HttpServletRequest request) {
   int defaultId = -1;
   String uri = request.getRequestURL().toString();
   Iterator<WebSiteLanguage> i = this.iterator();
   while (i.hasNext()) {
     WebSiteLanguage thisItem = i.next();
     if (uri.indexOf(thisItem.getLanguageLocale()) > -1) {
       return thisItem.getId();
     }
     if (thisItem.getDefaultItem()) {
       defaultId = thisItem.getId();
     }
   }
   return defaultId;
 }