public enuMeetingState GetMeetingState(string strMeetingID)
        {
            // Quick error checks
            if (strMeetingID == null || strMeetingID.Length == 0)
            {
                throw new ArgumentException("Invalid meeting ID", "strMeetingID");
            }

            OdbcDataReader  dr    = null;
            enuMeetingState state = new enuMeetingState();

            try
            {
                StringBuilder strQueryBuilder = new StringBuilder();
                strQueryBuilder.Append(" SELECT ");
                strQueryBuilder.Append(Constants.MTG_STATE);
                strQueryBuilder.Append(" FROM ");
                strQueryBuilder.Append(Constants.MEETINGS_TABLENAME);
                strQueryBuilder.Append(" WHERE ");
                strQueryBuilder.Append(Constants.MTG_ID);
                strQueryBuilder.Append("=");
                strQueryBuilder.Append("'" + QueryService.MakeQuotesafe(strMeetingID) + "'");

                dr = QueryService.ExecuteReader(this.DBConnect, strQueryBuilder.ToString());

                if (dr == null)
                {
                    throw new Exception("Null data reader returned from query");
                }

                // Scroll thru list returned
                if (dr.Read())
                {
                    state = (enuMeetingState)enuMeetingState.Parse(typeof(enuMeetingState), (string)dr[Constants.MTG_STATE], true);
                }
            }
            catch (Exception /*e*/)
            {
            }
            finally
            {
                if (dr != null)
                {
                    dr.Close();
                }
            }

            return(state);
        }
        public ArrayList GetMeetingIDs(enuMeetingState state)
        {
            ArrayList      lstMeetings = new ArrayList();
            OdbcDataReader dr          = null;

            try
            {
                StringBuilder strQueryBuilder = new StringBuilder();
                strQueryBuilder.Append(" SELECT ");
                strQueryBuilder.Append(Constants.MTG_ID);
                strQueryBuilder.Append(" FROM ");
                strQueryBuilder.Append(Constants.MEETINGS_TABLENAME);
                strQueryBuilder.Append(" WHERE ");
                strQueryBuilder.Append(Constants.MTG_STATE);
                strQueryBuilder.Append("=");
                strQueryBuilder.Append("'" + QueryService.MakeQuotesafe(state.ToString()) + "'");

                dr = QueryService.ExecuteReader(this.DBConnect, strQueryBuilder.ToString());

                if (dr == null)
                {
                    throw new Exception("Null data reader returned from query");
                }

                // Scroll thru list returned
                while (dr.Read())
                {
                    // Add participant to list
                    lstMeetings.Add((string)dr[Constants.MTG_ID]);
                }
            }
            catch (Exception /*e*/)
            {
            }
            finally
            {
                if (dr != null)
                {
                    dr.Close();
                }
            }

            return(lstMeetings);
        }
        public bool UpdateMeetingState(string strMeetingID, enuMeetingState state)
        {
            // Quick error checks
            if (strMeetingID == null || strMeetingID.Length == 0)
            {
                throw new ArgumentException("Invalid meeting ID", "strMeetingID");
            }

            bool bRetVal = false;

            try
            {
                StringBuilder strQueryBuilder = new StringBuilder();
                strQueryBuilder.Append(" UPDATE ");
                strQueryBuilder.Append(Constants.MEETINGS_TABLENAME);
                strQueryBuilder.Append(" SET ");
                strQueryBuilder.Append(Constants.MTG_STATE);
                strQueryBuilder.Append("=");
                strQueryBuilder.Append("'" + state.ToString() + "'");
                strQueryBuilder.Append(" WHERE ");
                strQueryBuilder.Append(Constants.MTG_ID);
                strQueryBuilder.Append("=");
                strQueryBuilder.Append("'" + QueryService.MakeQuotesafe(strMeetingID) + "'");

                int nRowsAffected = QueryService.ExecuteNonQuery(this.DBConnect, strQueryBuilder.ToString());
                if (nRowsAffected == 1)
                {
                    bRetVal = true;
                }
            }
            catch (Exception /*e*/)
            {
            }
            finally
            {
            }

            return(bRetVal);
        }