using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using Essai.Business.Content.Controler; using Essai.Business.Users; using Essai.Business.Content.Critic; using Essai.Business.Content.Howto; using System.Collections.Generic; using System.Linq; namespace Essai.Front.espaceperso { public partial class Redacteur : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { LUser m = Essai.Business.Users.LUser.GetConnectedUser(); entete.ThisMember = m; cla.ThisMember = m; mefav.ThisMember = cla.ThisMember; lblCriticAccept.Text = m.NbAcceptedCritics.ToString(); lblHowtoAccept.Text = m.NbAcceptedHowTo.ToString(); SetTextLblCurrentMonth(); SetTextLblCurrentYear(); SetLblStatsRedacteur(m); int positiveCritic = ContentControler.GetPositiveVotesForAMember(m.Guid, Essai.Business.Content.Controler.ContentType.Critic); int negativeCritic = ContentControler.GetNegativeVotesForAMember(m.Guid, Essai.Business.Content.Controler.ContentType.Critic); int pertCritic = positiveCritic + negativeCritic != 0 ? (positiveCritic) * 100 / (positiveCritic + negativeCritic) : 0; int positiveHowto = ContentControler.GetPositiveVotesForAMember(m.Guid, Essai.Business.Content.Controler.ContentType.Howto); int negativeHowto = ContentControler.GetNegativeVotesForAMember(m.Guid, Essai.Business.Content.Controler.ContentType.Howto); int pertHowto = positiveHowto + negativeHowto != 0 ? (positiveHowto) * 100 / (positiveHowto + negativeHowto) : 0; lblCriticPertinence.Text = String.Format("{0:##}", pertCritic); divCriticPertinence.Style["width"] = String.Format("{0:##}%", pertCritic); if (positiveCritic + negativeCritic == 0) critp.Attributes["class"] += " None"; else lblCriticPertinence.Text += "%"; lblHowtoPertinence.Text = String.Format("{0:##}", pertHowto); divHowtoPertinence.Style["width"] = String.Format("{0:##}%", pertHowto); if (positiveHowto + negativeHowto == 0) howp.Attributes["class"] += " None"; else lblHowtoPertinence.Text += "%"; pagerBottom.Click += Pagechange; pagerBottom.AdditionalHistoryPoints = new Dictionary() { { filterCritic.SelectedValue, filterCritic.SelectedValue } }; pagerBottom2.Click += Pagechange; pagerBottom2.AdditionalHistoryPoints = new Dictionary() { { filterCritic.SelectedValue, filterCritic.SelectedValue } }; pagerBottomHowto.Click += Pagechange; pagerBottomHowto.AdditionalHistoryPoints = new Dictionary() { { filterHowto.SelectedValue, filterHowto.SelectedValue } }; //pagerBottomHowto2.Click += Pagechange; //pagerBottomHowto2.AdditionalHistoryPoints = new Dictionary() { { filterHowto.SelectedValue, filterHowto.SelectedValue } }; } protected void BtnFilterClick(object sender, EventArgs e) { //odsThreads.DataBind(); pagerBottom.DefineCurrentPage(0); pagerBottom2.DefineCurrentPage(0); repeatCritics.DataBind(); //udpCritics.Update(); } protected void BtnFilterClickHowto(object sender, EventArgs e) { pagerBottomHowto.DefineCurrentPage(0); //pagerBottomHowto2.DefineCurrentPage(0); repeatHowto.DataBind(); } public int CurrentPage { get { if (ViewState["CurrentPage"] == null) ViewState["CurrentPage"] = 1; if (Request.QueryString["DiscPage"] != null) ViewState["CurrentPage"] = int.Parse(Request.QueryString["DiscPage"]); return (int)ViewState["CurrentPage"]; } set { ViewState["CurrentPage"] = value; } } protected void Pagechange(object sender, Essai.Business.Controls.EventArgsPage p) { CurrentPage = p.Page + 1; repeatCritics.DataBind(); //udpCritics.Update(); //--------------- pagerBottom.DefineCurrentPage(p.Page); pagerBottom2.DefineCurrentPage(p.Page); } protected void PagechangeHowto(object sender, Essai.Business.Controls.EventArgsPage p) { CurrentPage = p.Page + 1; repeatHowto.DataBind(); pagerBottomHowto.DefineCurrentPage(p.Page); //pagerBottomHowto2.DefineCurrentPage(p.Page); } protected void lbDelete_Command(object sender, CommandEventArgs e) { ContentControler.Delete(Convert.ToInt32(e.CommandArgument)); // repeatCritics.DataBind(); repeatHowto.DataBind(); } private void SetTextLblCurrentYear() { lblCurrentYear.Text = DateTime.Now.Year.ToString(); } private void SetTextLblCurrentMonth() { lblCurrentMonth.Text = IntToStringMonth(); } private string IntToStringMonth() { int monthInInt = DateTime.Now.Month; string monthInString = string.Empty; switch (monthInInt) { case 1: monthInString = "Janvier"; break; case 2: monthInString = "Février"; break; case 3: monthInString = "Mars"; break; case 4: monthInString = "Avril"; break; case 5: monthInString = "Mai"; break; case 6: monthInString = "Juin"; break; case 7: monthInString = "Juillet"; break; case 8: monthInString = "Août"; break; case 9: monthInString = "Septembre"; break; case 10: monthInString = "Octobre"; break; case 11: monthInString = "Novembre"; break; case 12: monthInString = "Décembre"; break; default: monthInString = "Erreur"; break; } return string.Format("{0} {1}", monthInString, DateTime.Now.Year); } private void SetLblStatsRedacteur(LUser currentUser) { lblCriticVisitMonth.Text = currentUser.NbVisitesCriticsMonth.ToString(); lblCriticVisitYear.Text = currentUser.NbVisitesCriticsYear.ToString(); lblHowtoVisitMonth.Text = currentUser.NbVisitesHowToMonth.ToString(); lblHowtoVisitYear.Text = currentUser.NbVisitesHowToYear.ToString(); } protected void odsCriterias_Selecting(object sender, ObjectDataSourceSelectingEventArgs e) { //e.InputParameters["CategoriesGuid"] = SelectedProduct.CategoriesGuid; //e.InputParameters["CategoriesGuid"] = ((RepeaterItem)repeatCritics.Items[].DataItem). } private List criteriasToEdit = null; // --------------------------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------------------------- protected void odsCritics_Selected(object sender, ObjectDataSourceStatusEventArgs e) { //get total if (((List)e.ReturnValue).Count > 0) { //Guid? guid = null; //if (Request.QueryString["MembersGuid"] != null) // guid = new Guid(Request.QueryString["MembersGuid"]); //int TotalNbResults = CriticContent.GetCriticsForMemberCount(LUser.GetGuidOfConnectedUser().Value, null, null, filterCritic.SelectedValue); //pagerBottom.Visible = true; //pagerBottom.CountElements = TotalNbResults; //pagerBottom.CountPerPage = 20; if (filterCriticStatus.SelectedValue == "") { int TotalNbResultsAttente = CriticContent.GetCriticsForMemberCount(LUser.GetGuidOfConnectedUser().Value, null, null, filterCriticStatus.SelectedValue); pagerBottom.CountElements = TotalNbResultsAttente; pagerBottom.Visible = true; pagerBottom2.CountElements = TotalNbResultsAttente; pagerBottom2.Visible = true; } else { if (filterCriticStatus.SelectedValue == "Wait") { int TotalNbResultsAttente = CriticContent.GetCriticsForMemberCount(LUser.GetGuidOfConnectedUser().Value,ContentStatus.Wait, null, null, null, filterCritic.SelectedValue); pagerBottom.CountElements = TotalNbResultsAttente; pagerBottom.Visible = true; pagerBottom2.CountElements = TotalNbResultsAttente; pagerBottom2.Visible = true; } else { if (filterCriticStatus.SelectedValue == "Accept") { int TotalNbResultsAccepte = CriticContent.GetCriticsForMemberCount(LUser.GetGuidOfConnectedUser().Value, ContentStatus.Accept, null, null, null, filterCritic.SelectedValue); pagerBottom.CountElements = TotalNbResultsAccepte; pagerBottom.Visible = true; pagerBottom2.CountElements = TotalNbResultsAccepte; pagerBottom2.Visible = true; } else { if (filterCriticStatus.SelectedValue == "Deny") { int TotalNbResultsRefuse = CriticContent.GetCriticsForMemberCount(LUser.GetGuidOfConnectedUser().Value, ContentStatus.Deny, null, null, null, filterCritic.SelectedValue); pagerBottom.CountElements = TotalNbResultsRefuse; pagerBottom.Visible = true; pagerBottom2.CountElements = TotalNbResultsRefuse; pagerBottom2.Visible = true; } } } } } else { pagerBottom.Visible = false; } } protected void odsCritics_Selecting(object sender, ObjectDataSourceSelectingEventArgs e) { e.InputParameters["membersGuid"] = LUser.GetGuidOfConnectedUser().Value; e.InputParameters["countFirst"] = 2; e.InputParameters["first"] = pagerBottom.CurrentPage * 2; } protected void odsHowto_Selecting(object sender, ObjectDataSourceSelectingEventArgs e) { e.InputParameters["membersGuid"] = LUser.GetGuidOfConnectedUser().Value; e.InputParameters["countFirst"] = 3; } protected void odsHowto_Selected(object sender, ObjectDataSourceStatusEventArgs e) { //get total if (((List)e.ReturnValue).Count > 0) { if (filterHowtoStatus.SelectedValue == "") { //int TotalNbResultsAttente = HowtoContent.GetHowtoForMemberCount(LUser.GetGuidOfConnectedUser().Value, ContentStatus.Accept, false); int TotalNbResultsHowTo = HowtoContent.GetHowtoForMember(LUser.GetGuidOfConnectedUser().Value).Count; pagerBottomHowto.CountElements = TotalNbResultsHowTo; pagerBottomHowto.Visible = true; //pagerBottomHowto2.CountElements = TotalNbResultsHowTo; //pagerBottomHowto2.Visible = true; } else { if (filterHowtoStatus.SelectedValue == "Wait") { int TotalNbResultsHowToAttente = HowtoContent.GetHowtoForMemberCount(LUser.GetGuidOfConnectedUser().Value, ContentStatus.Wait, false); pagerBottomHowto.CountElements = TotalNbResultsHowToAttente; pagerBottomHowto.Visible = true; //pagerBottomHowto2.CountElements = TotalNbResultsHowToAttente; //pagerBottomHowto2.Visible = true; } else { if (filterHowtoStatus.SelectedValue == "Accept") { int TotalNbResultsHowToAccepte = HowtoContent.GetHowtoForMemberCount(LUser.GetGuidOfConnectedUser().Value, ContentStatus.Accept, false); pagerBottomHowto.CountElements = TotalNbResultsHowToAccepte; pagerBottomHowto.Visible = true; //pagerBottomHowto2.CountElements = TotalNbResultsHowToAccepte; //pagerBottomHowto2.Visible = true; } else { if (filterHowtoStatus.SelectedValue == "Deny") { int TotalNbResultsHowToRefuse = HowtoContent.GetHowtoForMemberCount(LUser.GetGuidOfConnectedUser().Value, ContentStatus.Deny, false); pagerBottomHowto.CountElements = TotalNbResultsHowToRefuse; pagerBottomHowto.Visible = true; //pagerBottomHowto2.CountElements = TotalNbResultsHowToRefuse; //pagerBottomHowto2.Visible = true; } } } } } else { pagerBottomHowto.Visible = false; //pagerBottomHowto2.Visible = false; } } // --------------------------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------------------------- protected void OnItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { ((DataList)e.Item.FindControl("DLStars")).DataSource = CategoriesCriterias.GetCategoriesCriterias(((CriticContent)e.Item.DataItem).ProductInfo.CategoriesGuid); ((DataList)e.Item.FindControl("DLStars")).DataBind(); } } protected int GetGrade(object criteriaGuid, object productGuid) { criteriasToEdit = CriticCriteria.GetCriticCriterias(new Guid(productGuid.ToString()));//.GetCriticCriteriasToEdit(LUser.GetGuidOfConnectedUser().Value, new Guid(productGuid.ToString()), null); var criteria = criteriasToEdit.SingleOrDefault(c => c.CriteriasGuid == (Guid)criteriaGuid); if (criteria == null) return 0; else return criteria.Grade; } } }