protected void gvFB_SelectedIndexChanged(object sender, EventArgs e) { Panel1.Visible = true; if (Session["ftemp"].ToString() == "2") { AFeedback afa = answeredlist[gvFB.PageSize * gvFB.PageIndex + gvFB.SelectedIndex]; FillForm(afa); } else if (Session["ftemp"].ToString() == "3") { AFeedback afu = unansweredlist[gvFB.PageSize * gvFB.PageIndex + gvFB.SelectedIndex]; FillForm(afu); } else if (Session["ftemp"].ToString() == "4") { AFeedback afr = reportlist[gvFB.PageSize * gvFB.PageIndex + gvFB.SelectedIndex]; FillForm(afr); } else { List <AFeedback> allfeebacks = AFeedbackDB.getallFeedbacks(); AFeedback af = allfeebacks[gvFB.PageSize * gvFB.PageIndex + gvFB.SelectedIndex]; FillForm(af); } }
//get Feedback by feedbackID public static AFeedback getFeedbackbyID(string feedbackID) { AFeedback f = new AFeedback(); try { SqlCommand command = new SqlCommand("Select * from feedback where feedbackID = @feedbackID"); command.Parameters.AddWithValue("@feedbackID", feedbackID); command.Connection = connection; connection.Open(); SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { f.feedbackID = reader["feedbackID"].ToString(); f.name = reader["name"].ToString(); f.email = reader["Email"].ToString(); f.subject = reader["subject"].ToString(); f.question = reader["question"].ToString(); f.answer = reader["answer"].ToString(); f.status = reader["status"].ToString(); f.answerby = reader["answerby"].ToString(); } reader.Close(); } finally { connection.Close(); } return(f); }
//get all feedback by status from database public static List <AFeedback> getFeedbacksbyStatus(string status) { List <AFeedback> feedbacks = new List <AFeedback>(); try { SqlCommand command = new SqlCommand("Select * from feedback where status=@status"); command.Parameters.AddWithValue("@status", status); command.Connection = connection; connection.Open(); SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { AFeedback f = new AFeedback(); f.feedbackID = reader["feedbackID"].ToString(); f.name = reader["name"].ToString(); f.email = reader["Email"].ToString(); f.subject = reader["subject"].ToString(); f.question = reader["question"].ToString(); f.answer = reader["answer"].ToString(); f.status = reader["status"].ToString(); f.answerby = reader["answerby"].ToString(); feedbacks.Add(f); } reader.Close(); } finally { connection.Close(); } return(feedbacks); }
//add new feedback to database public static int insertFeedback(AFeedback u) { int num = -1; try { SqlCommand command = new SqlCommand("insert into feedback values(@name, @email, @subject,@question,@answer,@status,@answerby)"); command.Parameters.AddWithValue("@name", u.Name); command.Parameters.AddWithValue("@email", u.Email); command.Parameters.AddWithValue("@subject", u.subject); command.Parameters.AddWithValue("@question", u.question); command.Parameters.AddWithValue("@answer", u.answer); command.Parameters.AddWithValue("@status", u.status); command.Parameters.AddWithValue("@answerby", u.answerby); command.Connection = connection; connection.Open(); if (command.ExecuteNonQuery() > 0) { num = 1; } } finally { connection.Close(); } return(num); }
//update status by admin protected void btnUpdate_Click(object sender, EventArgs e) { AFeedback af = AFeedbackDB.getFeedbackbyID(tbxfeedbackID.Text); if (tbxAnswer.Text == "") { af.answer = "null"; } else { af.answer = tbxAnswer.Text; } af.status = ddlStatus.SelectedValue; Admins a = AdminDB.getAdminbyEmail(Session["email"].ToString()); af.Answerby = a.AdminId; int num = AFeedbackDB.updateFeedback(af); if (num != 1) { lblOutput.Text = "Cannot Update Feedback!"; } else { lblOutput.Text = "Update Successful!"; if (ddlFBChoose.SelectedIndex == 1) { gvFB.DataSource = AFeedbackDB.getallFeedbacks(); gvFB.DataBind(); } else if (ddlFBChoose.SelectedIndex == 2) { gvFB.DataSource = answeredlist; gvFB.DataBind(); } else if (ddlFBChoose.SelectedIndex == 3) { gvFB.DataSource = unansweredlist; gvFB.DataBind(); } else if (ddlFBChoose.SelectedIndex == 4) { gvFB.DataSource = reportlist; gvFB.DataBind(); } } }
//class to fill the form public void FillForm(AFeedback af) { tbxfeedbackID.Text = af.feedbackID; tbxName.Text = af.name; tbxEmail.Text = af.email; tbxQuestion.Text = af.question; tbxsubject.Text = af.subject; if (af.answer == null) { tbxAnswer.Text = ""; } else { tbxAnswer.Text = af.answer; } ddlStatus.SelectedValue = af.status; }
//Update Feedback in the database public static int updateFeedback(AFeedback u) { int result; try { SqlCommand command = new SqlCommand("Update feedback set answer=@answer,status=@status,answerby=@answerby where feedbackID=@feedbackID"); command.Parameters.AddWithValue("@feedbackID", u.feedbackID); command.Parameters.AddWithValue("@answer", u.answer); command.Parameters.AddWithValue("@status", u.status); command.Parameters.AddWithValue("@answerby", u.answerby); command.Connection = connection; connection.Open(); result = command.ExecuteNonQuery(); } finally { connection.Close(); } return(result); }