/// <summary> /// /// </summary> /// <param name="colSettings"></param> /// <param name="portalId"></param> /// <returns></returns> public static List <QaSettingInfo> GetOpThresholdCollection(List <SettingInfo> colSettings, int portalId) { // determine if operational threshold settings exist for this portal var colOpThreshSettings = (from t in colSettings where t.TypeId == (int)Constants.SettingTypes.OperationalThresholds select t); var colOpThresholds = new List <QaSettingInfo>(); switch (colOpThreshSettings.Count()) { case 0: colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.PostChangeVoteWindowMinutes.ToString(), Constants.DefaultOpPostChangeVoteWindowMinutes)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.PostFlagCompleteCount.ToString(), Constants.DefaultOpPostFlagCompleteCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.PostFlagWindowHours.ToString(), Constants.DefaultOpPostFlagWindowHours)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.QuestionCloseCompleteVoteCount.ToString(), Constants.DefaultOpQuestionCloseCompleteVoteCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.QuestionCloseWindowDays.ToString(), Constants.DefaultOpQuestionCloseWindowDays)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.QuestionFlagHomeRemoveCount.ToString(), Constants.DefaultOpQuestionFlagHomeRemoveCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.TagCloseWindowDays.ToString(), Constants.DefaultOpTagCloseWindowDays)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.TagFlagCompleteCount.ToString(), Constants.DefaultOpTagFlagCompleteCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.TagFlagWindowHours.ToString(), Constants.DefaultOpTagFlagWindowHours)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.TermSynonymApproveCount.ToString(), Constants.DefaultOpTermSynonymApproveCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.TermSynonymRejectCount.ToString(), Constants.DefaultOpTermSynonymRejectCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.TermSynonymMaxCount.ToString(), Constants.DefaultOpTermSynonymMaxCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.UserCloseVoteCount.ToString(), Constants.DefaultOpUserCloseVoteCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.UserFlagPostModerateCount.ToString(), Constants.DefaultOpUserFlagPostModerateCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.UserFlagPostSpamCount.ToString(), Constants.DefaultOpUserFlagPostSpamCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.UserTermSynonymCreateMinAnswerCount.ToString(), Constants.DefaultOpUserTermSynonymCreateMinAnswerCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.UserTermSynonymVoteMinAnswerScoreCount.ToString(), Constants.DefaultOpUserTermSynonymVoteMinAnswerScoreCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.UserUpVoteAnswerCount.ToString(), Constants.DefaultOpUserUpVoteAnswerCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.UserUpVoteQuestionCount.ToString(), Constants.DefaultOpUserUpVoteQuestionCount)); colOpThresholds.Add(BuildOpThreshold(Constants.OpThresholds.QuestionHomeMinScore.ToString(), Constants.DefaultOpHomeQuestionMinScore)); break; case 19: var objNewSetting = new SettingInfo { PortalId = portalId, TypeId = (int)Constants.SettingTypes.OperationalThresholds, Key = Constants.OpThresholds.QuestionHomeMinScore.ToString(), Value = Constants.DefaultOpHomeQuestionMinScore.ToString() }; var cntQa = new DnnqaController(); cntQa.UpdateQaPortalSetting(objNewSetting); DataCache.RemoveCache(Constants.ModuleCacheKey + Constants.QaSettingsCacheKey + portalId); colOpThreshSettings = (from t in colSettings where t.TypeId == (int)Constants.SettingTypes.OperationalThresholds select t); colOpThresholds.AddRange(colOpThreshSettings.Select(objSetting => BuildOpThreshold(objSetting.Key, Convert.ToInt32(objSetting.Value)))); break; default: colOpThresholds.AddRange(colOpThreshSettings.Select(objSetting => BuildOpThreshold(objSetting.Key, Convert.ToInt32(objSetting.Value)))); break; } return(colOpThresholds); }
/// <summary> /// /// </summary> private void UpdateQaPortalSettings() { var cntQa = new DnnqaController(); var objSetting = new SettingInfo { PortalId = ModuleContext.PortalId, TypeId = (int)Constants.SettingTypes.OperationalThresholds, Key = Constants.OpThresholds.QuestionCloseCompleteVoteCount.ToString(), Value = dntbQCCVC.Text }; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.QuestionCloseWindowDays.ToString(); objSetting.Value = dntbQCWD.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.QuestionFlagHomeRemoveCount.ToString(); objSetting.Value = dntbQFHRC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.PostChangeVoteWindowMinutes.ToString(); objSetting.Value = dntbPCVWM.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.PostFlagCompleteCount.ToString(); objSetting.Value = dntbPFCC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.PostFlagWindowHours.ToString(); objSetting.Value = dntbPFWH.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.TagCloseWindowDays.ToString(); objSetting.Value = dntbTCWD.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.TagFlagWindowHours.ToString(); objSetting.Value = dntbTFWH.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.TagFlagCompleteCount.ToString(); objSetting.Value = dntbTFCC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.TermSynonymApproveCount.ToString(); objSetting.Value = dntbTSAC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.TermSynonymRejectCount.ToString(); objSetting.Value = dntbTSRC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.TermSynonymMaxCount.ToString(); objSetting.Value = dntbTSMC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.UserCloseVoteCount.ToString(); objSetting.Value = dntbUCVC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.UserFlagPostModerateCount.ToString(); objSetting.Value = dntbUFPMC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.UserFlagPostSpamCount.ToString(); objSetting.Value = dntbFPSC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.UserTermSynonymCreateMinAnswerCount.ToString(); objSetting.Value = dntbUTSCMAC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.UserTermSynonymVoteMinAnswerScoreCount.ToString(); objSetting.Value = dntbUTSVMASC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.UserUpVoteAnswerCount.ToString(); objSetting.Value = dntbUUVAC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.UserUpVoteQuestionCount.ToString(); objSetting.Value = dntbUUVQC.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.OpThresholds.QuestionHomeMinScore.ToString(); objSetting.Value = dntbQHMS.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.TypeId = (int)Constants.SettingTypes.Email; objSetting.Key = Constants.EmailSettings.FromAddress.ToString(); objSetting.Value = txtbxFromEmail.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.EmailSettings.CommentTemplate.ToString(); objSetting.Value = txtbxCommentEmailTemplate.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.EmailSettings.SingleQuestionTemplate.ToString(); objSetting.Value = txtbxQuestionEmailTemplate.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.EmailSettings.AnswerTemplate.ToString(); objSetting.Value = txtAnswerEmailTemplate.Text; cntQa.UpdateQaPortalSetting(objSetting); objSetting.Key = Constants.EmailSettings.SummaryTemplate.ToString(); objSetting.Value = txtbxSummaryEmailTemplate.Text; cntQa.UpdateQaPortalSetting(objSetting); // handle cache clearing DataCache.RemoveCache(Constants.ModuleCacheKey + Constants.QaSettingsCacheKey + ModuleContext.PortalId); DataCache.RemoveCache(Constants.ModuleCacheKey + Constants.HomeQuestionsCacheKey + ModuleContext.ModuleId); DataCache.RemoveCache(Constants.ModuleCacheKey + Constants.HomeTermsCacheKey + ModuleContext.ModuleId); }
/// <summary> /// /// </summary> /// <param name="colSettings"></param> /// <param name="portalId"></param> /// <returns></returns> public static List <QaSettingInfo> GetUserScoringCollection(List <SettingInfo> colSettings, int portalId) { // determine if user scoring action settings exist for this portal var colUserScoringSettings = (from t in colSettings where t.TypeId == (int)Constants.SettingTypes.UserScoringActionValue select t); var x = colUserScoringSettings.Count(); var colScoringActions = new List <QaSettingInfo>(); switch (colUserScoringSettings.Count()) { case 0: colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.AdminEntered.ToString(), Constants.DefaultScoreAdminEntered)); // static 0 colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.ApprovedPostEdit.ToString(), Constants.DefaultScoreApprovedPostEdit)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.ApprovedTagEdit.ToString(), Constants.DefaultScoreApprovedTagEdit)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.AskedFlaggedQuestion.ToString(), Constants.DefaultScoreAskedFlaggedQuestion)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.AskedQuestion.ToString(), Constants.DefaultScoreAskedQuestion)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.AskedQuestionVotedDown.ToString(), Constants.DefaultScoreAskedQuestionVotedDown)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.AskedQuestionVotedUp.ToString(), Constants.DefaultScoreAskedQuestionVotedUp)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.BountyPaid.ToString(), Constants.DefaultScoreBountyPaid)); // static 0 colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.BountyReceived.ToString(), Constants.DefaultScoreBountyReceived)); // static 0 //createtag colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.CreatedTagSynonym.ToString(), Constants.DefaultScoreCreatedTagSynonym)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.Commented.ToString(), Constants.DefaultScoreCommented)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.EditedPost.ToString(), Constants.DefaultScoreEditedPost)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.EditedTag.ToString(), Constants.DefaultScoreEditedTag)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.EditedTagVotedDown.ToString(), Constants.DefaultScoreEditedTagVotedDown)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.EditedTagVotedUp.ToString(), Constants.DefaultScoreEditedTagVotedUp)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.FirstLoggedInView.ToString(), Constants.DefaultScoreFirstLoggedInView)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.ProvidedAcceptedAnswer.ToString(), Constants.DefaultScoreProvidedAcceptedAnswer)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.ProvidedAnswer.ToString(), Constants.DefaultScoreProvidedAnswer)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.ProvidedAnswerVotedDown.ToString(), Constants.DefaultScoreProvidedAnswerVotedDown)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.ProvidedAnswerVotedUp.ToString(), Constants.DefaultScoreProvidedAnswerVotedUp)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.ProvidedFlaggedAnswer.ToString(), Constants.DefaultScoreProvidedFlaggedAnswer)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.VotedDownAnswer.ToString(), Constants.DefaultScoreVotedDownAnswer)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.VotedDownQuestion.ToString(), Constants.DefaultScoreVotedDownQuestion)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.VotedSynonymDown.ToString(), Constants.DefaultScoreVotedSynonymDown)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.VotedSynonymUp.ToString(), Constants.DefaultScoreVotedSynonymUp)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.VotedTagDown.ToString(), Constants.DefaultScoreVotedTagDown)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.VotedTagUp.ToString(), Constants.DefaultScoreVotedTagUp)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.VotedUpAnswer.ToString(), Constants.DefaultScoreVotedUpAnswer)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.VotedUpQuestion.ToString(), Constants.DefaultScoreVotedUpQuestion)); colScoringActions.Add(BuildUserScore(Constants.UserScoringActions.AcceptedQuestionAnswer.ToString(), Constants.DefaultScoreAcceptedAnswer)); // new break; case 29: var objNewSetting = new SettingInfo { PortalId = portalId, TypeId = (int)Constants.SettingTypes.UserScoringActionValue, Key = Constants.UserScoringActions.AcceptedQuestionAnswer.ToString(), Value = Constants.DefaultScoreAcceptedAnswer.ToString() }; var cntQa = new DnnqaController(); cntQa.UpdateQaPortalSetting(objNewSetting); DataCache.RemoveCache(Constants.ModuleCacheKey + Constants.QaSettingsCacheKey + portalId); colUserScoringSettings = (from t in colSettings where t.TypeId == (int)Constants.SettingTypes.UserScoringActionValue select t); colScoringActions.AddRange(colUserScoringSettings.Select(objSetting => BuildUserScore(objSetting.Key, Convert.ToInt32(objSetting.Value)))); break; default: colScoringActions.AddRange(colUserScoringSettings.Select(objSetting => BuildUserScore(objSetting.Key, Convert.ToInt32(objSetting.Value)))); break; } return(colScoringActions); }