private void LocalizePage() { _menuIndex = (Request["menuindex"] == null) ? -1 : Convert.ToInt32(Request["menuindex"]); PageBase page = (PageBase)Page; INSurveyPrincipal user = page.NSurveyUser; if (!page.IsSingleUserMode(false) && user.Identity.IsAuthenticated) { MenuUserName.Visible = true; } MenuUserName.Text = page.GetPageResource("LoggedInAs") + " " + page.NSurveyUser.Identity.FirstName + " " + page.NSurveyUser.Identity.LastName; if (!page.IsSingleUserMode(false) && user.Identity.IsAuthenticated) { LogoutButton.Visible = true; LogoutButton.ToolTip = page.GetPageResource("LogOutHyperlink"); // LogoutButton.Text = page.NSurveyUser.Identity.Name + page.GetPageResource("LoggedInAs"); } /// if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessHelpFiles)) /// { /// HelpButton.Visible = true; /// HelpButton.Text = page.GetPageResource("HelpFilesHyperlink"); /// } if (mnuMain.Items.Count > 0) { return; // If menu is already populated return } int menuIndex = 0; //Setup Hierarchical Menu based on users Access Rights #region Surveys Submenu // Setup "Surveys" SubMenu if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessSurveySettings) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessMultiLanguages) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessPrivacySettings) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.SurveyLayoutRight) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessSurveyList) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.CreateSurvey) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessStats) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessSecuritySettings) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.TokenSecurityRight)) { mnuMain.Items.Add(new MenuItem(((PageBase)Page).GetPageResource("SurveysHyperLink"), null, null, string.Empty)); if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessSurveyList)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("ListSurveyHyperLink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.ListSurveyLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.CreateSurvey)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("NewSurveyHyperLink"), null, null, string.Format("{0}&surveyid={1}", UINavigator.CreateSurveyLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessStats)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("SurveyStatsHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.SurveyStats, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessSurveySettings) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessMultiLanguages) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessPrivacySettings) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.SurveyLayoutRight)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("SurveyOptionsHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.SurveyOptionsLink, SurveyId))); if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessSurveySettings)) { mnuMain.Items[menuIndex].ChildItems[mnuMain.Items[menuIndex].ChildItems.Count - 1].ChildItems. Add(new MenuItem(((PageBase)Page).GetPageResource("SurveyInformationHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.SurveyOptionsLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessMultiLanguages)) { mnuMain.Items[menuIndex].ChildItems[mnuMain.Items[menuIndex].ChildItems.Count - 1].ChildItems. Add(new MenuItem(((PageBase)Page).GetPageResource("MultiLanguagesHyperLink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.MultiLanguagesHyperLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessPrivacySettings)) { mnuMain.Items[menuIndex].ChildItems[mnuMain.Items[menuIndex].ChildItems.Count - 1].ChildItems. Add(new MenuItem(((PageBase)Page).GetPageResource("SurveyInfoCompletion"), null, null, string.Format("{0}?surveyid={1}", UINavigator.SurveyPrivacyLink, SurveyId))); } } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessSecuritySettings) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.TokenSecurityRight)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("SurveySecurityHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.SurveySecurityLink, SurveyId))); if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessSecuritySettings)) { mnuMain.Items[menuIndex].ChildItems[mnuMain.Items[menuIndex].ChildItems.Count - 1].ChildItems. Add(new MenuItem(((PageBase)Page).GetPageResource("SurveyFormSecurityHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.SurveySecurityLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.TokenSecurityRight)) { mnuMain.Items[menuIndex].ChildItems[mnuMain.Items[menuIndex].ChildItems.Count - 1].ChildItems. Add(new MenuItem(((PageBase)Page).GetPageResource("SurveyTokenSecurityHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.SurveyTokenSecurityLink, SurveyId))); } mnuMain.Items[menuIndex].ChildItems[mnuMain.Items[menuIndex].ChildItems.Count - 1].ChildItems. Add(new MenuItem(((PageBase)Page).GetPageResource("SurveyIPRangeSecurityHyperlink"), null, null, string.Format("{0}", UINavigator.SurveyIPSecurityLink))); } menuIndex++; } #endregion #region Designer if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessFormBuilder) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessLibrary) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.ManageLibrary) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessQuestionGroupRight) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessAnswerTypeEditor) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessRegExEditor)) { mnuMain.Items.Add(new MenuItem(((PageBase)Page).GetPageResource("DesignerHyperlink"), null, null, String.Empty)); if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessFormBuilder)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("SurveyBuilderHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.SurveyContentBuilderLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessLibrary) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.ManageLibrary)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("LocalLibraryHyperLink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.LibraryDirectoryHyperLink, SurveyId))); if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessLibrary)) { mnuMain.Items[menuIndex].ChildItems[mnuMain.Items[menuIndex].ChildItems.Count - 1].ChildItems. Add(new MenuItem(((PageBase)Page).GetPageResource("LibraryListHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.LibraryDirectoryHyperLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.ManageLibrary)) { mnuMain.Items[menuIndex].ChildItems[mnuMain.Items[menuIndex].ChildItems.Count - 1].ChildItems. Add(new MenuItem(((PageBase)Page).GetPageResource("CreateLibraryHyperlink"), null, null, string.Format("{0}&surveyid={1}", UINavigator.LibraryCreateHyperLink, SurveyId))); } } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessQuestionGroupRight)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("QuestionGroupsHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.QuestionGroupsLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessAnswerTypeEditor)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("TypeBuilderHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.TypeEditor, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessRegExEditor)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("RegExLibHyperLink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.RegExEditorHyperLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.SurveyLayoutRight)) { mnuMain.Items[menuIndex].ChildItems. Add(new MenuItem(((PageBase)Page).GetPageResource("SurveyLayoutHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.SurveyLayoutLink, SurveyId))); } menuIndex++; } #endregion #region Results if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessReports) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.CreateResultsFilter) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessFileManager) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.DataImportRight) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessExport)) { mnuMain.Items.Add(new MenuItem(((PageBase)Page).GetPageResource("ResultsSMHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.ResultsReportHyperlink, SurveyId))); if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessReports)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("ResultsReportHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.ResultsReportHyperlink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.CreateResultsFilter)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("FiltersHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.FilterEditor, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessFileManager)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("FileManagerHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.FileManagerHyperLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessExport)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("DataExportHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.ExportData, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.DataImportRight)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("DataImportHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.DataImportHyperLink, SurveyId))); } menuIndex++; } #endregion #region Campaigns if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.TakeSurvey) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessASPNetCode) || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessMailing)) { // mnuMain.Items.Add(new MenuItem(((PageBase)Page).GetPageResource("CampaignSMHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.CampaignPreViewHyperLink, SurveyId))); mnuMain.Items.Add(new MenuItem(((PageBase)Page).GetPageResource("CampaignSMHyperlink"), null, null, String.Empty)); if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessASPNetCode)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("CampaignPreviewHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.CampaignPreViewHyperLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessASPNetCode)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("ASPNETCodeHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.ASPNETCode, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessMailing)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("MailingHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.SurveyMailing, SurveyId))); mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("MailingStatusHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.MailingStatus, SurveyId))); mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("MailingLogHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.MailingLogHyperLink, SurveyId))); } if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.TakeSurvey)) { mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("TakeSurveyHyperLink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.TakeSurveyHyperLink, SurveyId))); } menuIndex++; } #endregion #region Accounts if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessUserManager)) { mnuMain.Items.Add(new MenuItem(((PageBase)Page).GetPageResource("AccountSMHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.UsersManagerHyperLink, SurveyId))); mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("UsersManagerHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.UsersManagerHyperLink, SurveyId))); mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("RolesManagerHyperlink"), null, null, string.Format("{0}&surveyid={1}", UINavigator.RolesManagerHyperLink, SurveyId))); mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("ImportUsersHyperlink"), null, null, string.Format("{0}&surveyid={1}", UINavigator.ImportUsersHyperLink, SurveyId))); menuIndex++; } #endregion #region Help if (((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).NSurveyUser.HasRight(NSurveyRights.AccessHelpFiles)) { mnuMain.Items.Add(new MenuItem(((PageBase)Page).GetPageResource("HelpSMHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.HelpOptionsHyperLink, SurveyId))); mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("HelpOptionsHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.HelpOptionsHyperLink, SurveyId))); mnuMain.Items[menuIndex].ChildItems.Add(new MenuItem(((PageBase)Page).GetPageResource("HelpFilesHyperlink"), null, null, string.Format("{0}?surveyid={1}", UINavigator.HelpFilesHyperLink, SurveyId))); menuIndex++; } #endregion //Add Take Survey // mnuMain.Items.Add(new MenuItem(((PageBase)Page).GetPageResource("TakeSurveyHyperLink"), null, null, string.Format("{0}?surveyid={1}",UINavigator.TakeSurveyHyperLink,SurveyId))); }
/// <summary> /// Navigates to the first url a user has access to /// </summary> public static void NavigateToFirstAccess(INSurveyPrincipal user, int surveyId) { string destURL = AccessDeniedHyperLink; if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessSurveyList)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyListHyperLink, surveyId, (int)NavigationMenuItems.SurveyList); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessStats)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyStats, surveyId, (int)NavigationMenuItems.SurveyStats); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessReports)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", ResultsReportHyperlink, surveyId, (int)NavigationMenuItems.ResultsReport); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessSurveySettings)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyOptionsLink, surveyId, (int)NavigationMenuItems.SurveyOptions); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.CreateSurvey)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", CreateSurveyLink, surveyId, (int)NavigationMenuItems.NewSurvey); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessFormBuilder)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyContentBuilderLink, surveyId, (int)NavigationMenuItems.SurveyBuilder); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessMailing)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyMailing, surveyId, (int)NavigationMenuItems.Mailing); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessASPNetCode)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", ASPNETCode, surveyId, (int)NavigationMenuItems.ASPNetCode); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.TakeSurvey)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", TakeSurveyHyperLink, surveyId, (int)NavigationMenuItems.TakeSurvey); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessLibrary)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", LibraryDirectoryHyperLink, surveyId, (int)NavigationMenuItems.TheLibrary); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessSecuritySettings)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveySecurityLink, surveyId, (int)NavigationMenuItems.SurveySecurity); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessUserManager)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", UsersManagerHyperLink, surveyId, (int)NavigationMenuItems.UsersManager); } else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessHelpFiles)) { destURL = string.Format("{0}?surveyid={1}&menuindex={2}", HelpFilesHyperLink, surveyId, (int)NavigationMenuItems.HelpFiles); } //else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessSurveyList)) // destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyListHyperLink, surveyId, (int)NavigationMenuItems.SurveyList); // global override redirect url // option one: leads to unwanted SurveyTaker Not authorised message //destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyListHyperLink, surveyId, (int)NavigationMenuItems.SurveyOptions); //destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyListHyperLink, surveyId, (int)NavigationMenuItems.SurveyList); // option two: option to avoid SurveyTaker NA message; however why should you do a global override anyway? just leave it out. //destURL = string.Format("{0}?surveyid={1}&menuindex={2}", TakeSurveyHyperLink, surveyId, (int)NavigationMenuItems.TakeSurvey); HttpContext.Current.Response.Redirect(destURL); }
/// <summary> /// Navigates to the first url a user has access to /// </summary> public static void NavigateToFirstAccess(INSurveyPrincipal user, int surveyId) { string destURL = AccessDeniedHyperLink; if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessSurveyList)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyListHyperLink, surveyId, (int)NavigationMenuItems.SurveyList); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessStats)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyStats, surveyId, (int)NavigationMenuItems.SurveyStats); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessReports)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", ResultsReportHyperlink, surveyId, (int)NavigationMenuItems.ResultsReport); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessSurveySettings)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyOptionsLink, surveyId, (int)NavigationMenuItems.SurveyOptions); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.CreateSurvey)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", CreateSurveyLink, surveyId, (int)NavigationMenuItems.NewSurvey); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessFormBuilder)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyContentBuilderLink, surveyId, (int)NavigationMenuItems.SurveyBuilder); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessMailing)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyMailing, surveyId, (int)NavigationMenuItems.Mailing); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessASPNetCode)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", ASPNETCode, surveyId, (int)NavigationMenuItems.ASPNetCode); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.TakeSurvey)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", TakeSurveyHyperLink, surveyId, (int)NavigationMenuItems.TakeSurvey); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessLibrary)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", LibraryDirectoryHyperLink, surveyId, (int)NavigationMenuItems.TheLibrary); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessSecuritySettings)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveySecurityLink, surveyId, (int)NavigationMenuItems.SurveySecurity); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessUserManager)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", UsersManagerHyperLink, surveyId, (int)NavigationMenuItems.UsersManager); else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessHelpFiles)) destURL = string.Format("{0}?surveyid={1}&menuindex={2}", HelpFilesHyperLink, surveyId, (int)NavigationMenuItems.HelpFiles); //else if (user.Identity.IsAdmin || user.HasRight(NSurveyRights.AccessSurveyList)) // destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyListHyperLink, surveyId, (int)NavigationMenuItems.SurveyList); // global override redirect url // option one: leads to unwanted SurveyTaker Not authorised message //destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyListHyperLink, surveyId, (int)NavigationMenuItems.SurveyOptions); //destURL = string.Format("{0}?surveyid={1}&menuindex={2}", SurveyListHyperLink, surveyId, (int)NavigationMenuItems.SurveyList); // option two: option to avoid SurveyTaker NA message; however why should you do a global override anyway? just leave it out. //destURL = string.Format("{0}?surveyid={1}&menuindex={2}", TakeSurveyHyperLink, surveyId, (int)NavigationMenuItems.TakeSurvey); HttpContext.Current.Response.Redirect(destURL); }