protected SQLParamList GetFilters()
        {
            Dashboard    dm        = Master as Dashboard;
            SQLParamList sqlParams = new SQLParamList();

            if (dm != null)
            {
                sqlParams = dm.GetFilters();
                if (dm.IsPropertyUser)
                {
                    SQLParamList sp2 = new SQLParamList();
                    foreach (SqlParameter sp in sqlParams.ToArray())
                    {
                        if (sp.ParameterName.Equals("@Property"))
                        {
                            sp2.Add("@PropertyID", (int)User.PropertyShortCode);
                        }
                        else
                        {
                            sp2.Add(sp);
                        }
                    }
                    sqlParams = sp2;
                }
                else
                {
                    sqlParams.Add("@PropertyID", (int)PropertyShortCode);
                }
            }
            else
            {
                sqlParams.Add("@PropertyID", (int)PropertyShortCode);
            }
            return(sqlParams);
        }
Exemple #2
0
        protected void Page_LoadComplete(object sender, EventArgs e)
        {
            string currentSort    = RequestVars.Get("s", "F");;           //Feedback status
            string currentSortDir = RequestVars.Get("d", "D");;           //Desc

            SQLDatabase sql = new SQLDatabase();    sql.CommandTimeout = 120;

            sql.CommandTimeout = 120;
            SQLParamList sqlParams = Master.GetFilters()
                                     .Add("@Sort", currentSort)
                                     .Add("@SortDir", currentSortDir);

            if (CurrentPage == -1)
            {
                sqlParams.Add("@ShowAllRows", true);
            }
            else
            {
                sqlParams.Add("@Page", CurrentPage)
                .Add("@RowsPerPage", ROWS_PER_PAGE);
            }
            if (txtRecordIDSearch.Text.Length > 0)
            {
                sqlParams.Add("RecordID", txtRecordIDSearch.Text);
            }
            DataTable dt = sql.ExecStoredProcedureDataTable("[spFeedback_GetList]", sqlParams);

            if (!sql.HasError)
            {
                Data = dt;
            }
        }
        protected void Page_LoadComplete(object sender, EventArgs e)
        {
            string currentSort    = RequestVars.Get("s", "D");; //Date
            string currentSortDir = RequestVars.Get("d", "D");; //Desc

            SQLDatabase  sql       = new SQLDatabase();    sql.CommandTimeout = 120;
            SQLParamList sqlParams = Master.GetFilters()
                                     .Add("@Sort", currentSort)
                                     .Add("@SortDir", currentSortDir);

            if (CurrentPage == -1)
            {
                sqlParams.Add("@ShowAllRows", true);
            }
            else
            {
                sqlParams.Add("@Page", CurrentPage)
                .Add("@RowsPerPage", ROWS_PER_PAGE);
            }
            DataTable dt = sql.ExecStoredProcedureDataTable("spReports_Survey_List", sqlParams);

            if (!sql.HasError)
            {
                Data = dt;
            }
        }
Exemple #4
0
        public void LogInUser(string usernameOrEmail, string password, bool useEmailForLogin, int clientID, out int outputValue)
        {
            outputValue = -1;
            //Set up the sql request
            SQLDatabaseReporting sql       = new SQLDatabaseReporting();
            SQLParamList         sqlParams = new SQLParamList();

            sqlParams.Add(useEmailForLogin ? "@Email" : "@Username", usernameOrEmail);

            SqlParameter outParam;

            sqlParams.Add("@Password", password)
            .Add("@ClientID", clientID)
            .Add("@IP", RequestVars.GetRequestIPv4Address())
            .AddOutputParam("@OutputValue", 4, out outParam);

            //Try and get the user's info
            DataTable dt = sql.ExecStoredProcedureDataTable("spCOM_WebReportingLogon", sqlParams);

            if (!sql.HasError)
            {
                outputValue = Conversion.StringToInt(outParam.Value.ToString(), -1);
                if (outputValue == 0 && dt.Rows.Count > 0)
                {
                    //Success!
                    SetUserDataFromDr(dt.Rows[0]);
                    //SessionWrapper.Add<UserInfoModel>("AccountDetail", this);
                    return;
                }
            }
            UserID = -1;
        }
        public static void SaveWordCounts(SurveyType surveyType, int recordID, Dictionary <string, int> wordCounts)
        {
            SQLDatabase   sql       = new SQLDatabase();    sql.CommandTimeout = 120;
            StringBuilder query     = new StringBuilder();
            SQLParamList  sqlParams = new SQLParamList();
            int           i         = 1;

            sqlParams.Add("@RecordID", recordID);
            foreach (string key in wordCounts.Keys)
            {
                i += 2;
                query.AppendFormat("INSERT INTO [tblSurveyWords] VALUES ({0}, @RecordID, @Word{1}, @Count{1});\n", (int)surveyType, i);
                sqlParams.Add("@Word" + i, key).Add("@Count" + i, wordCounts[key]);
                if (i >= 2097)
                {
                    //Only ~2100 parameters are allowed
                    query.Append("DELETE FROM [tblSurveyWords] WHERE Word IN (SELECT [Word] FROM [tblSurveyWords_Banned]);");
                    sql.NonQuery(query.ToString(), sqlParams);
                    i         = 1;
                    sqlParams = new SQLParamList().Add("@RecordID", recordID);
                }
            }
            if (i > 1)
            {
                query.Append("DELETE FROM [tblSurveyWords] WHERE Word IN (SELECT [Word] FROM [tblSurveyWords_Banned]);");
                sql.NonQuery(query.ToString(), sqlParams);
            }
            if (sql.HasError)
            {
                ErrorHandler.WriteLog("SharedClasses.SurveyTools.SaveWordCounts", String.Format("Unable to save word counts for {0} record ID {1}", surveyType.ToString(), recordID), ErrorHandler.ErrorEventID.SQLError, sql.ExceptionList[0]);
            }
        }
Exemple #6
0
 public void PrepareQuestionForDB(StringBuilder columnList, SQLParamList sqlParams)
 {
     columnList.AppendFormat(",[{0}]", DBColumn);
     if (Checked)
     {
         sqlParams.Add("@" + DBColumn, DBValue);
     }
     else
     {
         sqlParams.Add("@" + DBColumn, DBNull.Value);
     }
 }
Exemple #7
0
 public void AddToQuery(SQLParamList sqlParams)
 {
     if (IsActive)
     {
         //Adjust dates from user's timezone
         if (BeginDate.HasValue)
         {
             sqlParams.Add("@" + DBColumn + "_Begin", BeginDate.Value);
         }
         if (EndDate.HasValue)
         {
             sqlParams.Add("@" + DBColumn + "_End", EndDate.Value);
         }
     }
 }
Exemple #8
0
        protected void Page_Load(object sender, EventArgs e)
        {
            int loginUserID = RequestVars.Get <int>("luid", -1);

            if (loginUserID >= 0)
            {
                LoginResponse = TryLogUserIn(loginUserID);
                switch (LoginResponse)
                {
                case LoginErrorCode.Success:
                    Response.Redirect("/Director.ashx");
                    break;

                case LoginErrorCode.PasswordExpired:
                    Response.Redirect("/Director.ashx");                               //This will redirect to password change
                    break;

                default:
                    TopMessage.ErrorMessage = LoginResponse.ToString();
                    break;
                }
            }

            Title = "GCC Users";
            Master.HideAllFilters = true;
            SQLDatabase  sql       = new SQLDatabase();    sql.CommandTimeout = 120;
            SQLParamList sqlParams = new SQLParamList();

            if (CurrentPage == -1)
            {
                sqlParams.Add("@ShowAllRows", true);
            }
            else
            {
                sqlParams.Add("@Page", CurrentPage)
                .Add("@RowsPerPage", ROWS_PER_PAGE);
            }
            if (!String.IsNullOrEmpty(txtNameSearch.Text.Trim()))
            {
                sqlParams.Add("@TextSearch", txtNameSearch.Text.Trim());
            }
            DataTable dt = sql.ExecStoredProcedureDataTable("spAdmin_User_List", sqlParams);

            if (!sql.HasError)
            {
                Data = dt;
            }
        }
Exemple #9
0
        protected void btnExport_Click(object sender, EventArgs e)
        {
            string[]     dateDetails = ddlMonthYear.SelectedValue.Split('-');
            SQLDatabase  sql         = new SQLDatabase();    sql.CommandTimeout = 120;
            SQLParamList sqlParams   = new SQLParamList()
                                       .Add("@Year", dateDetails[0].StringToInt())
                                       .Add("@Month", dateDetails[1].StringToInt());
            SqlParameter isNewParam = new SqlParameter("@IsNew", SqlDbType.Bit);

            isNewParam.Direction = ParameterDirection.Output;
            sqlParams.Add(isNewParam);
            DataTable dt = sql.ExecStoredProcedureDataTable("spAdmin_GetGEIWinners", sqlParams);

            if (sql.HasError)
            {
                TopMessage.ErrorMessage = "Unable to query the details from the database.";
            }
            else
            {
                string fileName = String.Format("WinnerSelection-{0}.csv", ReportingTools.AdjustAndDisplayDate(DateTime.Now, "yyyy-MM-dd-hh-mm-ss", User));
                string fullPath = Server.MapPath(Path.Combine(Config.CacheFileDirectory, fileName));
                if (dt.DataTableToCSV(fullPath, true))
                {
                    Response.Clear();
                    Response.ContentType = "text/csv";
                    Response.AddHeader("content-disposition", String.Format(@"attachment;filename=""{0}""", fileName));
                    Response.WriteFile(fullPath);
                    Response.End();
                }
            }
        }
        protected void Page_LoadComplete(object sender, EventArgs e)
        {
            if (!String.IsNullOrEmpty(GUID))
            {
                SQLDatabase  sql       = new SQLDatabase();    sql.CommandTimeout = 120;
                SQLParamList sqlParams = new SQLParamList();
                UserInfo     ui        = SessionWrapper.Get <UserInfo>("UserInfo");
                sqlParams.Add("@GUID", GUID)
                .Add("@UpdateLastViewedTime", !(ui != null || RequestVars.Get <string>("a", null) != null));
                DataSet ds = sql.ExecStoredProcedureDataSet("[spFeedback_GetGuestItem]", sqlParams);
                if (!sql.HasError)
                {
                    Data = ds;

                    GCCPropertyShortCode sc = (GCCPropertyShortCode)Conversion.StringToInt(ds.Tables[0].Rows[0]["PropertyID"].ToString(), 1);

                    Master.ForceSpecificProperty      = sc;
                    MessageTimeline.PropertyShortCode = sc;

                    MessageTimeline.Messages = ds.Tables[1];
                    int feedbackStatus = Conversion.StringToInt(ds.Tables[0].Rows[0]["FeedbackStatusID"].ToString());
                    MessageTimeline.HideReplyBox = ui != null || RequestVars.Get <string>("a", null) != null;

                    Title = PropertyTools.GetCasinoName((int)sc) + " Feedback";
                }
            }
        }
Exemple #11
0
 public void AddToQuery(SQLParamList sqlParams)
 {
     if (IsActive)
     {
         sqlParams.Add("@" + DBColumn, SelectedValue);
     }
 }
        protected bool SaveData(out int rowID)
        {
            StringBuilder columnList = new StringBuilder();
            SQLParamList  sqlParams  = new SQLParamList();

            fbkEmail.PrepareQuestionForDB(columnList, sqlParams);
            fbkProperty.PrepareQuestionForDB(columnList, sqlParams);
            radGAG_Everett.PrepareQuestionForDB(columnList, sqlParams);
            radGAG_Lakewood.PrepareQuestionForDB(columnList, sqlParams);
            radGAG_Tukwila.PrepareQuestionForDB(columnList, sqlParams);
            radGAG_DeMoines.PrepareQuestionForDB(columnList, sqlParams);
            fbkQ1.PrepareQuestionForDB(columnList, sqlParams);
            fbkQ2.PrepareQuestionForDB(columnList, sqlParams);
            fbkQ3.PrepareQuestionForDB(columnList, sqlParams);
            fbkQ4.PrepareQuestionForDB(columnList, sqlParams);
            fbkQ5.PrepareQuestionForDB(columnList, sqlParams);
            txtName.PrepareQuestionForDB(columnList, sqlParams);
            txtTelephoneNumber.PrepareQuestionForDB(columnList, sqlParams);
            txtEmailContact.PrepareQuestionForDB(columnList, sqlParams);
            // fbkDirectQuestion.PrepareQuestionForDB(columnList, sqlParams);

            columnList.Append(",[PropertyID],[DateEntered]");
            sqlParams.Add("@PropertyID", Master.PropertyID)
            .Add("@DateEntered", DateTime.Now);

            if (IsStaffSurvey)
            {
                columnList.Append(",[StaffMemberID]");
                sqlParams.Add("@StaffMemberID", User.UserID);
                ddlStaffContact.PrepareQuestionForDB(columnList, sqlParams);
            }

            columnList.Remove(0, 1);
            SQLDatabase sql = new SQLDatabase();    sql.CommandTimeout = 120;

            rowID = sql.QueryAndReturnIdentity(String.Format("INSERT INTO [tblSurveyFeedback] ({0}) VALUES ({1});", columnList, columnList.ToString().Replace("[", "@").Replace("]", String.Empty)), sqlParams);
            if (!sql.HasError && rowID != -1)
            {
                Dictionary <string, int> wordCounts = SurveyTools.GetWordCount(fbkQ3.Text);
                SurveyTools.SaveWordCounts(SharedClasses.SurveyType.Feedback, rowID, wordCounts);
                return(true);
            }
            else
            {
                return(false);
            }
        }
 public void PrepareQuestionForDB(StringBuilder columnList, SQLParamList sqlParams)
 {
     if (SelectedValue != -1)
     {
         columnList.AppendFormat(",[{0}]", DBColumn);
         sqlParams.Add("@" + DBColumn, GetValue());
     }
 }
 public void PrepareQuestionForDB(StringBuilder columnList, SQLParamList sqlParams)
 {
     if (Checked && !String.IsNullOrEmpty(DBColumn))
     {
         columnList.AppendFormat(",[{0}]", DBColumn);
         sqlParams.Add("@" + DBColumn, DBValue);
     }
 }
Exemple #15
0
        /// <summary>
        /// Get all users list
        /// </summary>
        /// <returns></returns>
        public DataTable GetUsersList(int userId)
        {
            SQLDatabaseReporting sql       = new SQLDatabaseReporting();
            SQLParamList         sqlParams = new SQLParamList();

            sqlParams.Add("@UserID", userId);
            sqlParams.Add("@TextSearch", null);

            DataTable dt = sql.ExecStoredProcedureDataTable("spAdmin_User_List", sqlParams);

            if (!sql.HasError)
            {
                return(dt);
            }

            return(null);
        }
Exemple #16
0
        /// <summary>
        /// Get Report per question based on month
        /// </summary>
        /// <returns></returns>
        public static DataTable GetMonthlyRecordOfQuestion(string rptType, string QsnId, int fromMnth, int toMnth)
        {
            SQLDatabaseReporting sql       = new SQLDatabaseReporting();
            SQLParamList         sqlParams = new SQLParamList();

            sqlParams.Add("@ReportSelection", rptType);
            sqlParams.Add("@Question", QsnId);
            sqlParams.Add("@FromMnth", fromMnth);
            sqlParams.Add("@ToMnth", toMnth);

            DataTable dt = sql.ExecStoredProcedureDataTable("sp_GetMonthlyRecordsOfQuestion", sqlParams);

            if (!sql.HasError)
            {
                return(dt);
            }
            return(null);
        }
        protected void LoadData()
        {
            SQLDatabase  sql       = new SQLDatabase();    sql.CommandTimeout = 120;
            SQLParamList sqlParams = Master.GetFilters();

            sqlParams.Add("@IsCompetitor", RequestVars.Get <int>("competitor", 0));
            sqlParams.Add("@IsPositive", RequestVars.Get <int>("positive", 0));
            sqlParams.Add("@IsNegative", RequestVars.Get <int>("negative", 0));
            string keyword = RequestVars.Get <string>("keyword", "");

            if (keyword != "")
            {
                sqlParams.Add("@SpecificKeyword", keyword);
            }
            Data = sql.ExecStoredProcedureDataSet("spGetSocialMediaData", sqlParams);
            if (Data.Tables.Count > 0)
            {
                Master.RecordCount = Data.Tables[0].Rows.Count.ToString();
            }
        }
Exemple #18
0
        /// <summary>
        /// Delete user from list
        /// </summary>
        /// <returns></returns>
        public static int DeleteUser(int userID)
        {
            SQLDatabaseReporting sql       = new SQLDatabaseReporting();
            SQLParamList         sqlParams = new SQLParamList();
            SqlParameter         output;
            SqlParameter         rowsUpdated;

            sqlParams.Add("@UserID", userID);
            sqlParams.Add("@ClientID", Config.clientId);
            sqlParams.AddOutputParam("@OutputCode", 4, out output);
            sqlParams.AddOutputParam("@RowCount", 4, out rowsUpdated);

            DataTable dt = sql.ExecStoredProcedureDataTable("spCOM_DeleteUser", sqlParams);

            if (!sql.HasError)
            {
                return(Convert.ToInt32(dt.Rows[0]["AffectedRows"]));
            }

            return(0);
        }
Exemple #19
0
 public void AddToQuery(SQLParamList sqlParams)
 {
     if (ReplaceAddToQuery != null)
     {
         ReplaceAddToQuery(this, sqlParams);
     }
     else
     {
         if (IsActive)
         {
             if (IsNumericTableType)
             {
                 DataTable dt = new DataTable();
                 dt.Columns.Add("Number", typeof(Int32));
                 foreach (int i in GetSelectedIndices())
                 {
                     DataRow dr = dt.NewRow();
                     dr["Number"] = Conversion.StringToInt(Items[i].Value, -1);
                     dt.Rows.Add(dr);
                 }
                 SqlParameter sqlP = new SqlParameter("@" + DBColumn, dt);
                 sqlP.SqlDbType = SqlDbType.Structured;
                 sqlParams.Add(sqlP);
             }
             else
             {
                 StringBuilder sb = new StringBuilder();
                 foreach (int i in GetSelectedIndices())
                 {
                     sb.AppendFormat(",{0}", Items[i].Value);
                 }
                 if (sb.Length > 1)
                 {
                     sb.Remove(0, 1);
                 }
                 sqlParams.Add("@" + DBColumn, sb.ToString());
             }
         }
     }
 }
        protected void Page_LoadComplete(object sender, EventArgs e)
        {
            if (!String.IsNullOrEmpty(GUID))
            {
                SQLDatabase  sql       = new SQLDatabase();    sql.CommandTimeout = 120;
                SQLParamList sqlParams = new SQLParamList();
                sqlParams.Add("@GUID", GUID);
                DataSet ds = sql.ExecStoredProcedureDataSet("[spFeedback_GetItem]", sqlParams);
                if (!sql.HasError)
                {
                    Data = ds;

                    //Check permissions
                    GCCPropertyShortCode sc = (GCCPropertyShortCode)Data.Tables[0].Rows[0]["PropertyID"].ToString().StringToInt(1);
                    if ((User.Group == UserGroups.PropertyManagers && User.PropertyShortCode != sc && User.PropertyShortCode != GCCPropertyShortCode.None) ||
                        (User.Group == UserGroups.PropertyStaff && User.PropertyShortCode != sc)
                        )
                    {
                        Data = null;
                        TopMessage.ErrorMessage  = "You do not have permission to view this piece of feedback.";
                        TopMessage.TitleOverride = "Unauthorized";
                        return;
                    }


                    MessageTimeline.Messages = ds.Tables[1];
                    int feedbackStatus = Conversion.StringToInt(ds.Tables[0].Rows[0]["FeedbackStatusID"].ToString());
                    MessageTimeline.HideReplyBox      = IssueIsClosed;
                    MessageTimeline.PropertyShortCode = (GCCPropertyShortCode)ds.Tables[0].Rows[0]["PropertyID"].ToString().StringToInt(1);

                    //Reset tier DDL item labels
                    ddlTier.Items[0].Text = "Tier 1";
                    ddlTier.Items[1].Text = "Tier 2";
                    ddlTier.Items[2].Text = "Tier 3";

                    //Set the selected values and append " (Current)" to the current one for this record
                    ddlTier.SelectedValue      = Data.Tables[0].Rows[0]["Tier"].ToString();
                    hdnOldTier.Value           = ddlTier.SelectedValue;
                    ddlTier.SelectedItem.Text += " (Current)";

                    //Add JS check to notify the user what happens on change to Tier 3
                    btnSaveTier.OnClientClick = "var oldTier=" + ds.Tables[0].Rows[0]["Tier"] + ",newTier=parseInt($('#" + ddlTier.ClientID + "').val());if(oldTier!=newTier&&3==newTier&&!confirm('Are you sure you want to set this to Tier 3? This will cause a notification to be sent to the appropriate staff members.'))return false;";

                    //Hide Invalid Button if Case Closed
                    if (IssueIsClosed)
                    {
                        //Work in progress
                        //btnShowInvalidModal.Visible = false;
                    }
                }
            }
        }
        protected void Page_LoadComplete(object sender, EventArgs e)
        {
            SQLDatabase sql = new SQLDatabase();    sql.CommandTimeout = 120;

            sql.CommandTimeout = 120;
            SQLParamList sqlParams = GetFilters();

            if (PropertyShortCode == GCCPropertyShortCode.GCC)
            {
                sqlParams.Add("@RestaurantID", ddlSelectedLocation.SelectedValue);
            }
            DataSet ds = sql.ExecStoredProcedureDataSet("[spReports_FoodAndBev]", sqlParams);

            if (!sql.HasError)
            {
                DataFull = ds;
                //Set the dashboard counts
                if (PropertyShortCode == GCCPropertyShortCode.GCC)
                {
                    //Set it up if we're looking at all locations
                    Data = ds.Tables[1];
                }
                else
                {
                    Data = ds.Tables[0];
                    //Set it up if we're looking at a particular location
                    if (!IsPostBack)
                    {
                        for (int i = 0; i < 13; i++)
                        {
                            string name;
                            if (PropertyTools.HasFoodAndBev(PropertyShortCode, i + 1, out name))
                            {
                                ddlSelectedLocation.Items[i].Enabled = true;
                                ddlSelectedLocation.Items[i].Text    = name;
                            }
                            else
                            {
                                ddlSelectedLocation.Items[i].Enabled = false;
                            }
                        }
                    }
                }
                if (Data.Rows.Count > 0)
                {
                    string suffix = PropertyShortCode == GCCPropertyShortCode.GCC ? String.Empty : "_M" + SelectedMention;
                    Master.RecordCount = Data.Rows[0]["Count" + suffix].ToString();
                }
            }
        }
Exemple #22
0
        /// <summary>
        /// Get list of Call Center follow-up questions
        /// </summary>
        /// <returns></returns>
        public static DataTable GetQuestions(string rptType)
        {
            SQLDatabaseReporting sql       = new SQLDatabaseReporting();
            SQLParamList         sqlParams = new SQLParamList();

            sqlParams.Add("@ReportType", rptType);

            DataTable dt = sql.ExecStoredProcedureDataTable("spAdmin_Question_List", sqlParams);

            if (!sql.HasError)
            {
                return(dt);
            }

            return(null);
        }
Exemple #23
0
 public void AddToQuery(SQLParamList sqlParams)
 {
     if (ReplaceAddToQuery != null)
     {
         ReplaceAddToQuery(this, sqlParams);
     }
     else
     {
         if (IsActive)
         {
             //if ( IsExactSearch ) {
             //    sqlParams.Add( "@" + DBColumn, Text );
             //} else {
             sqlParams.Add("@" + DBColumn, Text.Replace(@"\", @"\\").Replace(@"%", @"\%").Replace(@"_", @"\_"));
             //}
         }
     }
 }
Exemple #24
0
        /// <summary>
        /// Update user
        /// </summary>
        /// <returns></returns>
        public static string UpdateUser(int userId, int modifiedUserID, string firstName, string lastName, string email, string phone, int groupId, int status)
        {
            SQLDatabaseReporting sql       = new SQLDatabaseReporting();
            SQLParamList         sqlParams = new SQLParamList();

            sqlParams.Add("@UserID", userId);
            sqlParams.Add("@FirstName", firstName);
            sqlParams.Add("@LastName", lastName);
            sqlParams.Add("@Email", email);
            sqlParams.Add("@Phone", phone);
            sqlParams.Add("@ModifiedUserID", modifiedUserID);
            sqlParams.Add("@GroupID", groupId);
            sqlParams.Add("@Active", status);

            sql.ExecStoredProcedureDataTable("spAdmin_User_Update", sqlParams);
            if (sql.HasError)
            {
                return(UserResource.Error_UnableToUpdateUser);
            }
            else
            {
                return(UserResource.Message_UpdateSuccess);
            }
        }
        protected bool SaveData(out int rowID)
        {
            StringBuilder columnList = new StringBuilder();
            SQLParamList  sqlParams  = new SQLParamList();

            radQ1_Slots.PrepareQuestionForDB(columnList, sqlParams);
            radQ1_Tables.PrepareQuestionForDB(columnList, sqlParams);
            radQ1_Poker.PrepareQuestionForDB(columnList, sqlParams);
            radQ1_Food.PrepareQuestionForDB(columnList, sqlParams);
            radQ1_Entertainment.PrepareQuestionForDB(columnList, sqlParams);
            radQ1_Hotel.PrepareQuestionForDB(columnList, sqlParams);
            radQ1_LiveRacing.PrepareQuestionForDB(columnList, sqlParams);
            radQ1_Racebook.PrepareQuestionForDB(columnList, sqlParams);
            radQ1_Bingo.PrepareQuestionForDB(columnList, sqlParams);
            radQ1_Lottery.PrepareQuestionForDB(columnList, sqlParams);
            radQ1_None.PrepareQuestionForDB(columnList, sqlParams);
            chkQ2_Slots.PrepareQuestionForDB(columnList, sqlParams);
            chkQ2_Tables.PrepareQuestionForDB(columnList, sqlParams);
            chkQ2_Poker.PrepareQuestionForDB(columnList, sqlParams);
            chkQ2_Food.PrepareQuestionForDB(columnList, sqlParams);
            chkQ2_Entertainment.PrepareQuestionForDB(columnList, sqlParams);
            chkQ2_Hotel.PrepareQuestionForDB(columnList, sqlParams);
            chkQ2_LiveRacing.PrepareQuestionForDB(columnList, sqlParams);
            chkQ2_Racebook.PrepareQuestionForDB(columnList, sqlParams);
            chkQ2_Bingo.PrepareQuestionForDB(columnList, sqlParams);
            chkQ2_Lottery.PrepareQuestionForDB(columnList, sqlParams);
            Q7A.PrepareQuestionForDB(columnList, sqlParams);
            Q7B.PrepareQuestionForDB(columnList, sqlParams);
            Q7C.PrepareQuestionForDB(columnList, sqlParams);
            Q7D.PrepareQuestionForDB(columnList, sqlParams);
            Q7E.PrepareQuestionForDB(columnList, sqlParams);
            Q7F.PrepareQuestionForDB(columnList, sqlParams);
            Q8.PrepareQuestionForDB(columnList, sqlParams);
            Q36Male.PrepareQuestionForDB(columnList, sqlParams);
            Q36Female.PrepareQuestionForDB(columnList, sqlParams);
            Q37_1.PrepareQuestionForDB(columnList, sqlParams);
            Q37_2.PrepareQuestionForDB(columnList, sqlParams);
            Q37_3.PrepareQuestionForDB(columnList, sqlParams);
            Q37_4.PrepareQuestionForDB(columnList, sqlParams);
            Q37_5.PrepareQuestionForDB(columnList, sqlParams);
            Q37_6.PrepareQuestionForDB(columnList, sqlParams);

            if (SurveyType == GSEISurveyType.GA)
            {
                radLocation_Lakewood.PrepareQuestionForDB(columnList, sqlParams);
                radLocation_Tukwila.PrepareQuestionForDB(columnList, sqlParams);
                radLocation_Everett.PrepareQuestionForDB(columnList, sqlParams);
                radLocation_DeMoines.PrepareQuestionForDB(columnList, sqlParams);
            }

            columnList.Append(",[SurveyType],[PropertyID],[DateEntered],[PIN],[BenchmarkYear]");
            sqlParams.Add("@SurveyType", (int)GEISurveyType.Email)
            .Add("@PropertyID", (int)Master.PropertyShortCode)
            .Add("@DateEntered", DateTime.Now)
            .Add("@PIN", Master.EmailPIN)
            .Add("@BenchmarkYear", 2017);
            if (Master.EmailPINRow != null)
            {
                columnList.Append(",[EmailBatch]");
                sqlParams.Add("@EmailBatch", Master.EmailPINRow["BatchID"]);
            }

            columnList.Remove(0, 1);
            SQLDatabase sql = new SQLDatabase();    sql.CommandTimeout = 120;

            rowID = sql.QueryAndReturnIdentity(String.Format("INSERT INTO [tblSurveyGEI] ({0}) VALUES ({1});", columnList, columnList.ToString().Replace("[", "@").Replace("]", String.Empty)), sqlParams);
            if (!sql.HasError && rowID != -1)
            {
                sql.NonQuery("UPDATE [tblSurveyGEI_EmailPINs] SET [SurveyCompleted] = 1 WHERE PIN = @PIN", new SqlParameter("@PIN", Master.EmailPIN));
                if (sql.HasError)
                {
                    //TODO: Do we want to do something here?
                }
                return(true);
            }
            else
            {
                return(false);
            }
        }
        protected void btnReloadData_Click(object sender, EventArgs e)
        {
            SQLDatabase sql_keywords = new SQLDatabase();
            DataTable   dt           = sql_keywords.QueryDataTable("SELECT PropertyID, Keyword, Includes FROM tblGCC_SocialMediaKeywords");

            if (sql_keywords.HasError)
            {
                mmMessage.ErrorMessage = "There was a database error loading property keywords.  Please try again later.";
                return;
            }
            else
            {
                foreach (DataRow dr in dt.Rows)
                {
                    string keyword    = dr["Keyword"].ToString();
                    string includes   = dr["Includes"].ToString();
                    int    propertyID = Conversion.StringToInt(dr["PropertyID"].ToString());
                    json = new WebClient().DownloadString(String.Format("http://api.trackur.com/api/v2/?api_key=65c0c2c7-2ea2-4f7c-b50f-c9bec7b6ad7b&keyword={0}&includes={1}&limit=100", keyword, includes));
                    json = json.Trim();
                    JObject o = JObject.Parse(json);
                    if (o["results"] != null)
                    {
                        List <object> results = o["results"].ToList <object>();
                        foreach (object result in results)
                        {
                            JObject      parsed_result = JObject.Parse(result.ToString());
                            SQLDatabase  sql           = new SQLDatabase();    sql.CommandTimeout = 120;
                            SQLParamList sqlParams     = new SQLParamList();
                            sqlParams.Add("@keyword", keyword);
                            sqlParams.Add("@propertyID", propertyID);
                            sqlParams.Add("@id", parsed_result["id"].ToString());
                            sqlParams.Add("@title", parsed_result["title"].ToString());
                            sqlParams.Add("@source", parsed_result["source"].ToString());

                            string   published = parsed_result["published"].ToString();
                            DateTime published_date;
                            if (!DateTime.TryParse(published, null,
                                                   DateTimeStyles.None, out published_date))
                            {
                                published_date = DateTime.MinValue;
                            }

                            sqlParams.Add("@published", published_date);
                            sqlParams.Add("@url", parsed_result["url"].ToString());
                            sqlParams.Add("@influence", DBNull.Value);
                            sqlParams.Add("@content", parsed_result["content"].ToString());
                            sqlParams.Add("@sentiment", parsed_result["sentiment"].ToString());
                            sqlParams.Add("@location", parsed_result["location"].ToString());
                            sql.ExecStoredProcedureDataSet("[spMergeSocialMedia]", sqlParams);
                            if (sql.HasError)
                            {
                                mmMessage.ErrorMessage = "There was a database error.  Please try again later.";
                                return;
                            }
                        }
                    }
                }
            }
            mmMessage.InfoMessage = "Data loaded successfully.";
        }
        protected bool SaveData(out int rowID)
        {
            StringBuilder columnList = new StringBuilder();
            SQLParamList  sqlParams  = new SQLParamList();

            Q1.PrepareQuestionForDB(columnList, sqlParams);
            if (Session["CurrentUI"].ToString() == "fr-CA")
            {
                Q2_F.PrepareQuestionForDB(columnList, sqlParams);
            }
            else
            {
                Q2.PrepareQuestionForDB(columnList, sqlParams);
            }
            Q3.PrepareQuestionForDB(columnList, sqlParams);
            Q4.PrepareQuestionForDB(columnList, sqlParams);
            Q5Name.PrepareQuestionForDB(columnList, sqlParams);
            Q5Title.PrepareQuestionForDB(columnList, sqlParams);
            Q5Telephone.PrepareQuestionForDB(columnList, sqlParams);
            Q5Email.PrepareQuestionForDB(columnList, sqlParams);
            Q6Street.PrepareQuestionForDB(columnList, sqlParams);
            Q6City.PrepareQuestionForDB(columnList, sqlParams);
            Q6Province.PrepareQuestionForDB(columnList, sqlParams);
            Q6PostalCode.PrepareQuestionForDB(columnList, sqlParams);
            Q7.PrepareQuestionForDB(columnList, sqlParams);
            Q8.PrepareQuestionForDB(columnList, sqlParams);
            Q9A.PrepareQuestionForDB(columnList, sqlParams);
            Q9B.PrepareQuestionForDB(columnList, sqlParams);
            Q9C.PrepareQuestionForDB(columnList, sqlParams);
            Q9C_Explanation.PrepareQuestionForDB(columnList, sqlParams);
            Q10.PrepareQuestionForDB(columnList, sqlParams);
            Q11A_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11A_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            Q11B_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11B_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            Q11C_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11C_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            //Q11D_PastSupport.PrepareQuestionForDB( columnList, sqlParams );
            //Q11D_CurrentRequest.PrepareQuestionForDB( columnList, sqlParams );
            Q11E_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11E_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            Q11F_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11F_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            Q11G_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11G_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            Q11H_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11H_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            Q11I_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11I_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            Q11J_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11J_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            Q11K_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11K_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            Q11L_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11L_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);
            Q11M_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11M_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            //2017-11-14  Adding 3 new ontario locations
            Q11N_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11N_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            Q11O_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11O_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            Q11P_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11P_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            Q11Q_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11Q_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            Q11R_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11R_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            Q11S_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11S_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            Q11T_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11T_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            Q11U_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11U_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);


            Q11V_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11V_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            Q11W_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11W_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            Q11X_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11X_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);



            Q11Y_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11Y_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);

            Q11Z_PastSupport.PrepareQuestionForDB(columnList, sqlParams);
            Q11Z_CurrentRequest.PrepareQuestionForDB(columnList, sqlParams);



            Q12.PrepareQuestionForDB(columnList, sqlParams);
            Q13.PrepareQuestionForDB(columnList, sqlParams);
            Q14.PrepareQuestionForDB(columnList, sqlParams);

            columnList.Append(",[PropertyID],[DateEntered]");
            sqlParams.Add("@PropertyID", Master.PropertyID)
            .Add("@DateEntered", DateTime.Now);

            columnList.Remove(0, 1);
            SQLDatabase sql = new SQLDatabase();    sql.CommandTimeout = 120;

            rowID = sql.QueryAndReturnIdentity(String.Format("INSERT INTO [tblSurveyDonation] ({0}) VALUES ({1});", columnList, columnList.ToString().Replace("[", "@").Replace("]", String.Empty)), sqlParams);
            return(!sql.HasError && rowID != -1);
        }
Exemple #28
0
        protected void btnExport_Click(object sender, EventArgs e)
        {
            SQLDatabase sql = new SQLDatabase();    sql.CommandTimeout = 120;

            SQLParamList sqlParams = new SQLParamList()
                                     .Add("@DateRange_Begin", drDateRange.BeginDate)
                                     .Add("@DateRange_End", Convert.ToDateTime(drDateRange.EndDate))
                                     .Add("@SurveyType", ddlSurvey.SelectedValue);

            if (ddlProperty.SelectedIndex == 0)
            {
                sqlParams.Add("@PropertyID", DBNull.Value);
            }
            else
            {
                sqlParams.Add("@PropertyID", ddlProperty.SelectedValue);
            }

            DataSet ds = sql.ExecStoredProcedureDataSet("spData_Export", sqlParams);

            if (sql.HasError)
            {
                TopMessage.ErrorMessage = "Oops. Something went wrong when exporting the data. Please try again. (EDE100)";
            }
            else
            {
                string       lFileName = string.Format("{0}_{1}", ddlSurvey.SelectedItem.Text, ReportingTools.AdjustAndDisplayDate(DateTime.Now, "yyyy-MM-dd-hh-mm-ss", User));
                const string lPath     = "~/Files/Cache/";

                string lOutput = string.Concat(MapPath(lPath), lFileName);

                using (CSVWriter csv = new CSVWriter(lOutput + ".csv"))
                {
                    csv.WriteLine("{0} Data Extract", ddlSurvey.SelectedItem.Text);
                    csv.WriteLine("Date Range: {0}", drDateRange.BeginDate.HasValue ? String.Format("{0} - {1}", drDateRange.BeginDate.Value.ToString("yyyy-MM-dd"), drDateRange.EndDate.Value.ToString("yyyy-MM-dd")) : "All");
                    csv.WriteLine("Property: {0}", ddlProperty.SelectedItem.Text);

                    //CSVRow longLabelRow = new CSVRow();
                    //CSVRow shortLabelRow = new CSVRow();
                    CSVRow headerRow = new CSVRow();
                    foreach (DataColumn dc in ds.Tables[0].Columns)
                    {
                        headerRow.Add(dc.ColumnName);
                        string kv = dc.ColumnName;
                        //if ( QuestionLookup.ContainsKey( kv ) ) {
                        //    string[] vals = QuestionLookup[kv].Split( '|' );
                        //    longLabelRow.Add( vals[0] );
                        //    if ( vals.Length > 1 ) {
                        //        shortLabelRow.Add( vals[1] );
                        //    } else {
                        //        shortLabelRow.Add( vals[1] );
                        //    }
                        //} else {
                        //    longLabelRow.Add( "" );
                        //    shortLabelRow.Add( "" );
                        //}
                    }
                    //csv.WriteRow( longLabelRow );
                    //csv.WriteRow( shortLabelRow );
                    csv.WriteRow(headerRow);

                    int colCount = ds.Tables[0].Columns.Count;
                    foreach (DataRow dr in ds.Tables[0].Rows)
                    {
                        CSVRow row = new CSVRow();
                        for (int i = 0; i < colCount; i++)
                        {
                            row.Add(dr[i].ToString());
                        }
                        csv.WriteRow(row);
                    }
                    csv.Close();
                    csv.Dispose();
                }
                //Conversion.DataTableToExcel(lResultSet, ddlQID.SelectedItem.Text, lOutput, true);
                hlDownload.Text        = "Download File - " + String.Concat(lFileName, ".csv");
                hlDownload.NavigateUrl = String.Format("{0}{1}", lPath, String.Concat(lFileName, ".csv"));
            }
        }
        protected bool SaveData(out int rowID)
        {
            StringBuilder columnList = new StringBuilder();
            SQLParamList  sqlParams  = new SQLParamList();

            //Add details for email surveys
            //if (SurveyType == GEISurveyType.Email)
            //{
            //    columnList.Append(",[EmailBatch],[PIN]");
            //    sqlParams.Add("@EmailBatch", EmailPINRow["BatchID"])
            //             .Add("@PIN", EmailPIN);
            //    if (String.IsNullOrWhiteSpace(txtQ4_CardNumber.Text))
            //    {
            //        //If they erased the encore number, we'll put in a new one
            //        Q4.SelectedValue = 1;
            //        txtQ4_CardNumber.Text = EmailPINRow["Encore"].ToString();
            //    }
            //}

            txtEmail.PrepareQuestionForDB(columnList, sqlParams);
            Q1_1.PrepareQuestionForDB(columnList, sqlParams);
            Q1_2to4.PrepareQuestionForDB(columnList, sqlParams);
            Q1_5to9.PrepareQuestionForDB(columnList, sqlParams);
            Q1_10.PrepareQuestionForDB(columnList, sqlParams);

            Q2_No.PrepareQuestionForDB(columnList, sqlParams);
            Q2_Yes.PrepareQuestionForDB(columnList, sqlParams);

            Q3_No.PrepareQuestionForDB(columnList, sqlParams);
            Q3_Yes.PrepareQuestionForDB(columnList, sqlParams);

            Q4_Yes.PrepareQuestionForDB(columnList, sqlParams);
            Q4_No.PrepareQuestionForDB(columnList, sqlParams);
            Q4_EncoreNumber.PrepareQuestionForDB(columnList, sqlParams);

            Q5_Tarmac.PrepareQuestionForDB(columnList, sqlParams);
            Q5_BoxSeats.PrepareQuestionForDB(columnList, sqlParams);
            Q5_GroupPatio.PrepareQuestionForDB(columnList, sqlParams);
            Q5_MarqueeTent.PrepareQuestionForDB(columnList, sqlParams);
            Q5_SilksBuffet.PrepareQuestionForDB(columnList, sqlParams);
            Q5_DiamondClub.PrepareQuestionForDB(columnList, sqlParams);

            Q6_Excellent.PrepareQuestionForDB(columnList, sqlParams);
            Q6_VeryGood.PrepareQuestionForDB(columnList, sqlParams);
            Q6_Good.PrepareQuestionForDB(columnList, sqlParams);
            Q6_Fair.PrepareQuestionForDB(columnList, sqlParams);
            Q6_Poor.PrepareQuestionForDB(columnList, sqlParams);

            Q7_Excellent.PrepareQuestionForDB(columnList, sqlParams);
            Q7_VeryGood.PrepareQuestionForDB(columnList, sqlParams);
            Q7_Good.PrepareQuestionForDB(columnList, sqlParams);
            Q7_Fair.PrepareQuestionForDB(columnList, sqlParams);
            Q7_Poor.PrepareQuestionForDB(columnList, sqlParams);

            Q8_DefinitelyWould.PrepareQuestionForDB(columnList, sqlParams);
            Q8_ProbablyWould.PrepareQuestionForDB(columnList, sqlParams);
            Q8_MightMightNot.PrepareQuestionForDB(columnList, sqlParams);
            Q8_ProbablyWouldNot.PrepareQuestionForDB(columnList, sqlParams);
            Q8_DefinitelyWouldNot.PrepareQuestionForDB(columnList, sqlParams);

            Q9_Male.PrepareQuestionForDB(columnList, sqlParams);
            Q9_Female.PrepareQuestionForDB(columnList, sqlParams);

            Q10_19to24.PrepareQuestionForDB(columnList, sqlParams);
            Q10_25to34.PrepareQuestionForDB(columnList, sqlParams);
            Q10_35to44.PrepareQuestionForDB(columnList, sqlParams);
            Q10_45to54.PrepareQuestionForDB(columnList, sqlParams);
            Q10_55to64.PrepareQuestionForDB(columnList, sqlParams);
            Q10_65orOlder.PrepareQuestionForDB(columnList, sqlParams);

            Q11_35000.PrepareQuestionForDB(columnList, sqlParams);
            Q11_35000to59999.PrepareQuestionForDB(columnList, sqlParams);
            Q11_60000to89999.PrepareQuestionForDB(columnList, sqlParams);
            Q11_90000.PrepareQuestionForDB(columnList, sqlParams);
            Q11_NoSay.PrepareQuestionForDB(columnList, sqlParams);

            Q12_PostalCode.PrepareQuestionForDB(columnList, sqlParams);

            Q13_FirstName.PrepareQuestionForDB(columnList, sqlParams);
            Q13_LastName.PrepareQuestionForDB(columnList, sqlParams);
            Q13_Email.PrepareQuestionForDB(columnList, sqlParams);

            columnList.Append(",[PropertyID],[DateEntered]");
            sqlParams.Add("@PropertyID", 5)
            .Add("@DateEntered", DateTime.Now);



            columnList.Remove(0, 1);
            SQLDatabase sql = new SQLDatabase();    sql.CommandTimeout = 120;

            rowID = sql.QueryAndReturnIdentity(String.Format("INSERT INTO [tblHastingsSurvey] ({0}) VALUES ({1});", columnList, columnList.ToString().Replace("[", "@").Replace("]", String.Empty)), sqlParams);
            if (!sql.HasError && rowID != -1)
            {
                //Dictionary<string, int> wordCounts = SurveyTools.GetWordCount(Q11.Text, txtQ27A_OtherExplanation.Text, txtQ27B.Text, Q32.Text, Q34.Text, Q35.Text, Q39_16Explanation.Text);
                //SurveyTools.SaveWordCounts(SharedClasses.SurveyType.GEI, rowID, wordCounts);

                return(true);
            }
            else
            {
                return(false);
            }
        }
        protected bool SaveData()
        {
            StringBuilder columnList = new StringBuilder();
            SQLParamList  sqlParams  = new SQLParamList();

            if (QueryPropertyShortCode == GCCPropertyShortCode.GCC || (QueryPropertyShortCode == GCCPropertyShortCode.GAG && QueryGAGLocation == GLocation.None))
            {
                //User had to select location
                string propSel = fbkProperty.SelectedValue;
                if (propSel.Length > 3)
                {
                    //GAG
                    if (propSel.Substring(0, 2).Equals("13"))
                    {
                        columnList.AppendFormat(",[{0}]", fbkProperty.DBColumn);
                        sqlParams.Add("@" + fbkProperty.DBColumn, 13);
                    }
                }
                else
                {
                    fbkProperty.PrepareQuestionForDB(columnList, sqlParams);
                }
            }

            ddlDepartment.PrepareQuestionForDB(columnList, sqlParams);
            Q1.PrepareQuestionForDB(columnList, sqlParams);
            Q2.PrepareQuestionForDB(columnList, sqlParams);
            Q3.PrepareQuestionForDB(columnList, sqlParams);
            Q4.PrepareQuestionForDB(columnList, sqlParams);
            Q5.PrepareQuestionForDB(columnList, sqlParams);
            Q6.PrepareQuestionForDB(columnList, sqlParams);
            Q7.PrepareQuestionForDB(columnList, sqlParams);
            Q8.PrepareQuestionForDB(columnList, sqlParams);
            Q9.PrepareQuestionForDB(columnList, sqlParams);
            Q10.PrepareQuestionForDB(columnList, sqlParams);
            Q11.PrepareQuestionForDB(columnList, sqlParams);
            Q12.PrepareQuestionForDB(columnList, sqlParams);
            Q13.PrepareQuestionForDB(columnList, sqlParams);
            Q14.PrepareQuestionForDB(columnList, sqlParams);
            Q15.PrepareQuestionForDB(columnList, sqlParams);
            Q16.PrepareQuestionForDB(columnList, sqlParams);
            Q17.PrepareQuestionForDB(columnList, sqlParams);
            Q18.PrepareQuestionForDB(columnList, sqlParams);
            Q19.PrepareQuestionForDB(columnList, sqlParams);
            Q20.PrepareQuestionForDB(columnList, sqlParams);
            Q21.PrepareQuestionForDB(columnList, sqlParams);
            Q22.PrepareQuestionForDB(columnList, sqlParams);
            Q23.PrepareQuestionForDB(columnList, sqlParams);
            Q24.PrepareQuestionForDB(columnList, sqlParams);
            Q25.PrepareQuestionForDB(columnList, sqlParams);
            Q26.PrepareQuestionForDB(columnList, sqlParams);
            Q27.PrepareQuestionForDB(columnList, sqlParams);
            Q28.PrepareQuestionForDB(columnList, sqlParams);
            Q29A.PrepareQuestionForDB(columnList, sqlParams);
            Q29B.PrepareQuestionForDB(columnList, sqlParams);
            Q29C.PrepareQuestionForDB(columnList, sqlParams);
            Q30.PrepareQuestionForDB(columnList, sqlParams);
            radQ31_Hourly.PrepareQuestionForDB(columnList, sqlParams);
            radQ31_Salary.PrepareQuestionForDB(columnList, sqlParams);
            radQ32_1.PrepareQuestionForDB(columnList, sqlParams);
            radQ32_2.PrepareQuestionForDB(columnList, sqlParams);
            radQ32_3.PrepareQuestionForDB(columnList, sqlParams);
            radQ32_4.PrepareQuestionForDB(columnList, sqlParams);
            radQ32_5.PrepareQuestionForDB(columnList, sqlParams);
            Q33.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_1.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_2.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_3.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_4.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_5.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_6.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_7.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_8.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_9.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_10.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_11.PrepareQuestionForDB(columnList, sqlParams);
            chkQ34_12.PrepareQuestionForDB(columnList, sqlParams);

            if (radFFContinue.Checked)
            {
                CSR_Q1.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q2.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q3.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q4.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q5_1.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q5_2.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q5_3.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q5_4.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q6.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q7.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q8_1.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q8_2.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q8_3.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q8_4.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q8_5.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q8_6.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q8_7.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q8_8.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q8_9.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q8_OtherExplanation.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q9A.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q9B.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q9C.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q9D.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q9E.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q9F.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q9G.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q9H.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q10A.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q10B.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q10C.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q10D.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q10E.PrepareQuestionForDB(columnList, sqlParams);
                radCSR_Q11_1.PrepareQuestionForDB(columnList, sqlParams);
                radCSR_Q11_2.PrepareQuestionForDB(columnList, sqlParams);
                radCSR_Q11_3.PrepareQuestionForDB(columnList, sqlParams);
                radCSR_Q11_4.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q12.PrepareQuestionForDB(columnList, sqlParams);
                CSR_Q13.PrepareQuestionForDB(columnList, sqlParams);
            }

            columnList.Append(",[PropertyID],[DateEntered],[SurveyType]");
            sqlParams.Add("@PropertyID", Master.PropertyID)
            .Add("@DateEntered", DateTime.Now)
            .Add("@SurveyType", IsKioskSurvey ? "K" : "D");
            if (GAGLocation != GLocation.None)
            {
                columnList.Append(",[GAGLocation]");
                sqlParams.Add("@GAGLocation", GAGLocation.ToString());
            }

            columnList.Remove(0, 1);
            SQLDatabase sql   = new SQLDatabase();    sql.CommandTimeout = 120;
            int         rowID = sql.QueryAndReturnIdentity(String.Format("INSERT INTO [tblSurveySnapshot2017] ({0}) VALUES ({1});", columnList, columnList.ToString().Replace("[", "@").Replace("]", String.Empty)), sqlParams);

            if (!sql.HasError && rowID != -1)
            {
                Dictionary <string, int> wordCounts = SurveyTools.GetWordCount(Q33.Text, CSR_Q8_OtherExplanation.Text, CSR_Q13.Text);
                SurveyTools.SaveWordCounts(SharedClasses.SurveyType.Employee, rowID, wordCounts);
                return(true);
            }
            else
            {
                return(false);
            }
        }