Exemple #1
0
    public static void FocusSort(BasePresenter presenter)
    {
        for (int i = 0; i < Instance.navigator.Count; ++i)
        {
            if (Instance.navigator[i] == null)
            {
                continue;
            }

            if (Instance.navigator[i].Presenter.GetHashCode() == presenter.GetHashCode())
            {
                UINavigator navigator = Instance.navigator[i];
                Instance.navigator.RemoveAt(i);
                Instance.navigator.Add(navigator);
                //Instance.SetAllFocusMask();

                navigator.Prefabs.transform.SetAsLastSibling();
                //navigator.Prefabs.SafeSetActive(false);
                //navigator.Prefabs.SafeSetActive(true);
                break;
            }
        }

        Instance.SetPriorityZPosition();
    }
 private void SetupSecurity()
 {
     if (!(CheckRight(NSurveyRights.AccessASPNetCode, false)))
     {
         UINavigator.NavigateToAccessDenied(getSurveyId(), 1);
     }
 }
Exemple #3
0
        private void DeleteButton_Click(object sender, System.EventArgs e)
        {
            new Voter().DeleteVoterPageAnswers(SurveyId, VoterId, PageNumber);

            // Reloads the builder
            UINavigator.NavigateToEditVoterReport(SurveyId, VoterId, ((PageBase)Page).MenuIndex);
        }
        private void DeleteButton_Click(object sender, System.EventArgs e)
        {
            new Voter().DeleteVoterQuestionAnswers(VoterId, Question.QuestionId);

            // Reloads the builder
            UINavigator.NavigateToEditVoterReport(Question.SurveyId, VoterId, ((PageBase)Page).MenuIndex);
        }
Exemple #5
0
        private void DownImageButton_Click(object sender, System.Web.UI.ImageClickEventArgs e)
        {
            new Survey().MovePageBreakDown(SurveyId, PageNumber);

            // Reloads the builder
            UINavigator.NavigateToSurveyBuilder(SurveyId, ((PageBase)Page).MenuIndex);
        }
        private void CloneButton_Click(object sender, System.EventArgs e)
        {
            new Question().CloneQuestionById(Question.QuestionId);

            // Reloads the builder
            UINavigator.NavigateToSurveyBuilder(Question.SurveyId, ((PageBase)Page).MenuIndex, Question.QuestionId);
        }
Exemple #7
0
        private void DeleteButton_Click(object sender, System.EventArgs e)
        {
            new Survey().DeletePageBreak(SurveyId, PageNumber);

            // Reloads the builder
            UINavigator.NavigateToSurveyBuilder(SurveyId, ((PageBase)Page).MenuIndex);
        }
        private void DeleteButton_Click(object sender, System.EventArgs e)
        {
            new Question().DeleteQuestionById(Question.QuestionId);

            // Reloads the library
            UINavigator.NavigateToLibraryTemplates(((PageBase)Page).getSurveyId(), Question.LibraryId, ((PageBase)Page).MenuIndex);
        }
Exemple #9
0
        private void DownImageButton_Click(object sender, System.Web.UI.ImageClickEventArgs e)
        {
            new SecurityAddIn().MoveWebSecurityAddInDown(SurveyId, SecurityAddIn.AddInDbId);

            // Reloads the addin list
            UINavigator.NavigateToSurveySecurity(SurveyId, ((PageBase)Page).MenuIndex);
        }
 public RetryingNavigator(UINavigator navigator, TimeSpan timeout, int retryCount)
 {
     Validate.ArgumentNotNull(parameter: navigator, parameterName: nameof(navigator));
     ContainedNavigator = !(navigator is RetryingNavigator retryingNavigator) ? navigator.Duplicate() : retryingNavigator.ContainedNavigator.Duplicate();
     this._timeout      = timeout;
     this._retryCount   = retryCount;
 }
Exemple #11
0
 private void DeleteGroupButton_Click(object sender, System.EventArgs e)
 {
     UsersData.DeleteGroupById(GroupId);
     GroupId = -1;
     Visible = false;
     OnOptionChanged();
     UINavigator.NavigateToUserManager(((PageBase)Page).getSurveyId(), ((PageBase)Page).MenuIndex);
 }
        private void DownImageButton_Click(object sender, System.Web.UI.ImageClickEventArgs e)
        {
            int questionId = int.Parse(((ImageButton)sender).CommandArgument);

            new Question().MoveQuestionPositionDown(questionId);

            // Reloads the builder
            UINavigator.NavigateToSurveyBuilder(Question.SurveyId, ((PageBase)Page).MenuIndex, Question.QuestionId);
        }
        private void InsertLineBreak_Click(object sender, System.EventArgs e)
        {
            int displayOrder = int.Parse(((LinkButton)sender).CommandArgument);

            new Survey().InsertSurveyLineBreak(Question.SurveyId, displayOrder + 1, Question.PageNumber);

            // Reloads the builder
            UINavigator.NavigateToSurveyBuilder(Question.SurveyId, ((PageBase)Page).MenuIndex, Question.QuestionId);
        }
Exemple #14
0
        private void DeleteButton_Click(object sender, System.EventArgs e)
        {
            _securityAddIn.UnInitOnSurveyRemoval();

            new SecurityAddIn().DeleteWebSecurityAddIn(SurveyId, SecurityAddIn.AddInDbId);

            // Reloads the addin list
            UINavigator.NavigateToSurveySecurity(SurveyId, ((PageBase)Page).MenuIndex);
        }
Exemple #15
0
        private void DeleteButton_Click(object sender, System.EventArgs e)
        {
            // Delete survey from the DB
            new Survey().DeleteSurveyById(SurveyId);
            ((PageBase)Page).ShowNormalMessage(MessageLabel, ((PageBase)Page).GetPageResource("SurveyDeletedMessage"));

            MessageLabel.Visible = true;
            ((PageBase)Page).SurveyDeleteActions(SurveyId);
            UINavigator.NavigateToSurveyOptions(-1, ((PageBase)Page).MenuIndex);
        }
        private void CreateSurveyButton_Click(object sender, System.EventArgs e)
        {
            // Creates a new entity and assign
            // the new values
            //SurveyData surveyData = new SurveyData();
            //SurveyData.SurveysRow surveyRow = surveyData.Surveys.NewSurveysRow();

            //if (TitleTextBox.Text.Length == 0)
            //{
            //    ((PageBase)Page).ShowErrorMessage(MessageLabel, ((PageBase)Page).GetPageResource("MissingSurveyTitleMessage"));
            //    MessageLabel.Visible = true;
            //    return;
            //}

            //surveyRow.Title = TitleTextBox.Text;

            //surveyRow.Activated = false;
            //surveyRow.Archive = false;
            //surveyRow.AccessPassword = string.Empty;
            //surveyRow.SurveyDisplayTimes = 0;
            //surveyRow.ResultsDisplayTimes = 0;
            //surveyRow.SetOpenDateNull();
            //surveyRow.SetCloseDateNull();
            //surveyRow.CreationDate = DateTime.Now;
            //surveyRow.IPExpires = 1440;
            //surveyRow.CookieExpires = 1440;
            //surveyRow.OnlyInvited = false;
            //surveyRow.Scored = false;
            //surveyRow.QuestionNumberingDisabled = false;
            //surveyRow.FolderId = ((PageBase)Page).SelectedFolderId;
            //surveyRow.ProgressDisplayModeID = (int)ProgressDisplayMode.PagerNumbers;
            //surveyRow.ResumeModeID = (int)ResumeMode.NotAllowed;
            //surveyData.Surveys.AddSurveysRow(surveyRow);

            try
            {
                // Add the survey in the DB
                DataTable tbl = new DataTable();
                tbl.Columns.Add("SurveyId");
                tbl.Columns.Add("GroupId");
                DataRow row = tbl.NewRow();
                row["SurveyId"] = SurveyId;
                row["GroupId"]  = GroupIdTextBox.Text;
                // Update the DB
                new Surveys().UpdateSurveyGroup(row);
                //This messes up the tree astructure etc so Stay where you are
                UINavigator.NavigateToSurveyBuilder(SurveyId, 4);
            }
            catch (SurveyExistsFoundException ex)
            {
                string x = ex.Message;
                ((PageBase)Page).ShowErrorMessage(MessageLabel, ((PageBase)Page).GetPageResource("SurveyExistsInFolder"));
                MessageLabel.Visible = true;
            }
        }
Exemple #17
0
        private static void OnDataGridRowHasErrorChanged(object sender, EventArgs e)
        {
            DataGridRow dataGridRow    = (DataGridRow)sender;
            DataGrid    parentDataGrid = UINavigator.FindVisualParent <DataGrid>(dataGridRow);

            if (parentDataGrid != null)
            {
                UpdateDataGridHasAnyRowError(parentDataGrid);
                UpdateDataGridHadAnyRowError(parentDataGrid);
            }
        }
Exemple #18
0
        public override ClaimsPrincipal Authenticate(string resourceName, ClaimsPrincipal incomingPrincipal)
        {
            if (!incomingPrincipal.Identity.IsAuthenticated)
            {
                return(base.Authenticate(resourceName, incomingPrincipal));
            }
            int?id = new Users().GetUserByIdFromUserName(incomingPrincipal.Identity.Name);

            if ((id ?? 0) > 0)
            {
                var             sec          = new LoginSecurity();
                var             authUser     = new Users().GetUserById(id ?? 0);
                UserSettingData userSettings = new Users().GetUserSettings(authUser.Users[0].UserId);

                if (userSettings.UserSettings.Rows.Count > 0)
                {
                    System.Text.StringBuilder userInfos = new System.Text.StringBuilder();
                    userInfos.Append(authUser.Users[0].UserName + ",");
                    userInfos.Append(authUser.Users[0].UserId + ",");
                    userInfos.Append(authUser.Users[0].FirstName + ",");
                    userInfos.Append(authUser.Users[0].LastName + ",");
                    userInfos.Append(authUser.Users[0].Email + ",");
                    userInfos.Append(userSettings.UserSettings[0].IsAdmin + ",");
                    userInfos.Append(userSettings.UserSettings[0].GlobalSurveyAccess);

                    userInfos.Append("|");

                    int[] userRights = new Users().GetUserSecurityRights(authUser.Users[0].UserId);
                    for (int i = 0; i < userRights.Length; i++)
                    {
                        userInfos.Append(userRights[i].ToString());
                        if (i + 1 < userRights.Length)
                        {
                            userInfos.Append(",");
                        }
                    }

                    ((ClaimsIdentity)incomingPrincipal.Identity).AddClaim(new Claim(Votations.NSurvey.Constants.Constants.MyCustomClaimType, userInfos.ToString()));



                    //FormsAuthentication.SetAuthCookie(userInfos.ToString(), false);
                    //NSurveyContext.Current.User = UserFactory.Create().CreatePrincipal(userInfos.ToString());
                    var x = UserFactory.Create().CreatePrincipal((ClaimsIdentity)incomingPrincipal.Identity);


                    //((PageBase)Page).SelectedFolderId = null;
                    // ((Wap)this.Master).RebuildTree();
                    UINavigator.NavigateToFirstAccess(x, -1);
                }
            }

            return(incomingPrincipal);
        }
Exemple #19
0
    public static T FindUI <T>(BasePresenter presenter)
    {
        UINavigator findNavigator = Instance.navigator.Find(data => data.Presenter == presenter);

        if (findNavigator == null)
        {
            return(default(T));
        }

        return(findNavigator.Prefabs.GetComponent <T>());
    }
Exemple #20
0
        private void ImportXMLButton_Click(object sender, System.EventArgs e)
        {
            if (ImportFile.PostedFile != null)
            {
                NSurveyForm importedSurveys = new NSurveyForm();
                try
                {
                    importedSurveys.ReadXml(System.Xml.XmlReader.Create(ImportFile.PostedFile.InputStream, (new System.Xml.XmlReaderSettings()
                    {
                        XmlResolver = null
                    })));
                    if (importedSurveys.Survey.Rows.Count > 0)
                    {
                        // Prevents SQL injection from custom hand written datasources Sql answer types in the import Xml
                        if (!GlobalConfig.SqlBasedAnswerTypesAllowed || !(((PageBase)Page).NSurveyUser.Identity.IsAdmin || ((PageBase)Page).CheckRight(NSurveyRights.SqlAnswerTypesEdition, false)))
                        {
                            foreach (NSurveyForm.AnswerTypeRow answerType in importedSurveys.AnswerType)
                            {
                                answerType.DataSource = null;
                            }
                        }

                        new Survey().ImportSurveys(importedSurveys, ((PageBase)Page).NSurveyUser.Identity.UserId, ((PageBase)Page).SelectedFolderId ?? -1);
                        Surveys srv = new Surveys();
                        srv.SetFolderId(((PageBase)Page).SelectedFolderId, importedSurveys.Survey[0].SurveyID);

                        AssignSurveyToUser(importedSurveys.Survey[0].SurveyID);
                        SurveyId = importedSurveys.Survey[0].SurveyID;
                        UINavigator.NavigateToSurveyBuilder(importedSurveys.Survey[0].SurveyID, 4);
                        ((PageBase)Page).ShowNormalMessage(MessageLabel, ((PageBase)Page).GetPageResource("SurveyImported"));
                    }

                    else
                    {
                        ((PageBase)Page).ShowErrorMessage(MessageLabel, ((PageBase)Page).GetPageResource("SurveyNotImported"));
                    }


                    MessageLabel.Visible = true;
                }
                catch (Exception ex)
                {
                    if (ex.Message == "DUPLICATEFOLDER")
                    {
                        ((PageBase)Page).ShowErrorMessage(MessageLabel, ((PageBase)Page).GetPageResource("SurveyImportDuplicate"));
                    }
                    else
                    {
                        ((PageBase)Page).ShowErrorMessage(MessageLabel, ((PageBase)Page).GetPageResource("Exception") + "  " + ex.Message);
                    }
                    MessageLabel.Visible = true;
                }
            }
        }
Exemple #21
0
 private void SetupSecurity()
 {
     // Check if we can edit extended properties
     if ((_userProvider is INSurveyUserProvider))
     {
         ((PageBase)Page).CheckRight(NSurveyRights.AccessUserManager, true);
     }
     else
     {
         UINavigator.NavigateToAccessDenied(((PageBase)Page).getSurveyId(), ((PageBase)Page).MenuIndex);
     }
 }
Exemple #22
0
        private void CreateSurveyButton_Click(object sender, System.EventArgs e)
        {
            // Creates a new entity and assign
            // the new values
            SurveyData surveyData = new SurveyData();

            SurveyData.SurveysRow surveyRow = surveyData.Surveys.NewSurveysRow();

            if (TitleTextBox.Text.Length == 0)
            {
                ((PageBase)Page).ShowErrorMessage(MessageLabel, ((PageBase)Page).GetPageResource("MissingSurveyTitleMessage"));
                MessageLabel.Visible = true;
                return;
            }

            surveyRow.Title = TitleTextBox.Text;

            surveyRow.Activated           = false;
            surveyRow.Archive             = false;
            surveyRow.AccessPassword      = string.Empty;
            surveyRow.SurveyDisplayTimes  = 0;
            surveyRow.ResultsDisplayTimes = 0;
            surveyRow.SetOpenDateNull();
            surveyRow.SetCloseDateNull();
            surveyRow.CreationDate              = DateTime.Now;
            surveyRow.IPExpires                 = 1440;
            surveyRow.CookieExpires             = 1440;
            surveyRow.OnlyInvited               = false;
            surveyRow.Scored                    = false;
            surveyRow.QuestionNumberingDisabled = false;
            surveyRow.FolderId                  = ((PageBase)Page).SelectedFolderId;
            surveyRow.ProgressDisplayModeID     = (int)ProgressDisplayMode.PagerNumbers;
            surveyRow.ResumeModeID              = (int)ResumeMode.NotAllowed;
            surveyData.Surveys.AddSurveysRow(surveyRow);

            try
            {
                // Add the survey in the DB
                new Survey().AddSurvey(surveyData);
                AssignSurveyToUser(surveyData.Surveys[0].SurveyId);
                ((PageBase)Page).SurveyId      = surveyData.Surveys[0].SurveyId;
                ((Wap)Page.Master).isTreeStale = true;
                //This messes up the tree astructure etc so Stay where you are
                UINavigator.NavigateToSurveyBuilder(surveyRow.SurveyId, 4);
            }
            catch (SurveyExistsFoundException ex)
            {
                string x = ex.Message;
                ((PageBase)Page).ShowErrorMessage(MessageLabel, ((PageBase)Page).GetPageResource("SurveyExistsInFolder"));
                MessageLabel.Visible = true;
            }
        }
 private void CreateNewRoleButton_Click(object sender, System.EventArgs e)
 {
     if (ValidateFieldOptions())
     {
         RoleData          roleData = new RoleData();
         RoleData.RolesRow newRole  = roleData.Roles.NewRolesRow();
         newRole.RoleName = RoleNameTextBox.Text;
         roleData.Roles.Rows.Add(newRole);
         new Role().AddRole(roleData);
         AddRightsToRole(newRole.RoleId);
         UINavigator.NavigateToRoleManager(((PageBase)Page).getSurveyId(), ((PageBase)Page).MenuIndex);
     }
 }
Exemple #24
0
        private void DisableAddInLinkButton_Click(object sender, System.EventArgs e)
        {
            if (SecurityAddIn.Disabled)
            {
                new SecurityAddIn().EnableWebSecurityAddIn(SurveyId, SecurityAddIn.AddInDbId);
            }
            else
            {
                new SecurityAddIn().DisableWebSecurityAddIn(SurveyId, SecurityAddIn.AddInDbId);
            }

            // Reloads the addin list
            UINavigator.NavigateToSurveySecurity(SurveyId, ((PageBase)Page).MenuIndex);
        }
Exemple #25
0
        private void EnableRandomHyperlink_Click(object sender, System.EventArgs e)
        {
            PageOptionData updatedPageOptions = new PageOptionData();

            PageOptionData.PageOptionsRow pageOption = updatedPageOptions.PageOptions.NewPageOptionsRow();
            pageOption.SurveyId           = SurveyId;
            pageOption.PageNumber         = PageNumber;
            pageOption.RandomizeQuestions = !_enableRandomize;
            pageOption.EnableSubmitButton = _enableSubmit;
            updatedPageOptions.PageOptions.Rows.Add(pageOption);
            new Survey().UpdateSurveyPageOptions(updatedPageOptions);

            // Reloads the builder
            UINavigator.NavigateToSurveyBuilder(SurveyId, ((PageBase)Page).MenuIndex);
        }
        private void DeleteUserButton_Click(object sender, System.EventArgs e)
        {
            if (new Users().IsAdministrator(UserId) && new Users().GetAdminCount() == 1)
            {
                MessageLabel.Visible = true;
                ((PageBase)Page).ShowErrorMessage(MessageLabel, ((PageBase)Page).GetPageResource("CannotDeleteLastAdminMessage"));
                return;
            }

            ((INSurveyUserProvider)_userProvider).DeleteUserById(UserId);
            UserId  = -1;
            Visible = false;
            OnOptionChanged();
            UINavigator.NavigateToUserManager(((PageBase)Page).getSurveyId(), ((PageBase)Page).MenuIndex);
        }
Exemple #27
0
        protected void cloneLink_Click1(object sender, System.EventArgs e)
        {
            int questionId  = int.Parse(((LinkButton)sender).CommandArgument);
            var question    = new Questions().GetQuestionById(questionId, null);
            var newQuestion = new Question().CloneQuestionById(questionId);

            var q = newQuestion.Questions[0];

            if (q.SelectionModeId == 4)
            {
                UINavigator.NavigateToMatrixQuestionEdit(q.SurveyId, q.QuestionId, -1, -1);
            }
            else
            {
                UINavigator.NavigateToSingleQuestionEdit(q.SurveyId, q.QuestionId, -1, -1);
            }
        }
        protected void OnAddLibrary(Object sender, EventArgs e)
        {
            ((PageBase)Page).CheckRight(NSurveyRights.ManageLibrary, true);

            if (txtLibName.Text.Length == 0)
            {
                ((PageBase)Page).ShowErrorMessage(MessageLabel, ((PageBase)Page).GetPageResource("MissingLibraryNameMessage"));
                MessageLabel.Visible = true;
                return;
            }
            LibraryData libraryData = new LibraryData();

            LibraryData.LibrariesRow library = libraryData.Libraries.NewLibrariesRow();
            library.LibraryId   = _libraryId;
            library.LibraryName = txtLibName.Text;
            library.Description = txtLibDescr.Text;
            //  library.DefaultLanguageCode = ddlDefaultLang.SelectedValue;
            //    new MultiLanguage().UpdateSurveyLanguage(LibraryId, ddlDefaultLang.SelectedValue, true, Constants.Constants.EntityLibrary);
            libraryData.Libraries.Rows.Add(library);

            if (LibraryEditMode)
            {
                LibraryFactory.Create().UpdateLibrary(libraryData);

                var ml = new MultiLanguage();
                // Reset all other default items
                foreach (ListItem item in this.ddlDefaultLang.Items)
                {
                    new MultiLanguage().UpdateSurveyLanguage(LibraryId, item.Value, item.Selected, Constants.Constants.EntityLibrary);
                }
            }
            else
            {
                LibraryFactory.Create().AddLibrary(libraryData);
                new MultiLanguage().UpdateSurveyLanguage(libraryData.Libraries[0].LibraryId, System.Globalization.CultureInfo.CurrentCulture.Name, true, Constants.Constants.EntityLibrary);
                txtLibName.Text  = string.Empty;
                txtLibDescr.Text = string.Empty;
            }
            ((PageBase)Page).ShowNormalMessage(MessageLabel, ((PageBase)Page).GetPageResource("UpdatedLibraryNameMessage"));
            MessageLabel.Visible = true;
            UINavigator.NavigateToLibraryDirectory(0, 0, 0);
            FillData();
        }
        private void DeleteButton_Click(object sender, System.EventArgs e)
        {
            // Delete survey from the DB
            DataTable tbl = new DataTable();

            tbl.Columns.Add("SurveyId");
            tbl.Columns.Add("GroupId");
            DataRow row = tbl.NewRow();

            row["SurveyId"] = SurveyId;
            row["GroupId"]  = GroupIdTextBox.Text;
            // Update the DB
            new Surveys().UpdateSurveyGroup(row);
            ((PageBase)Page).ShowNormalMessage(MessageLabel, ((PageBase)Page).GetPageResource("SurveyDeletedMessage"));

            MessageLabel.Visible = true;
            ((PageBase)Page).SurveyDeleteActions(SurveyId);
            UINavigator.NavigateToSurveyOptions(-1, ((PageBase)Page).MenuIndex);
        }
        private void CreateUserButton_Click(object sender, System.EventArgs e)
        {
            if (ValidateFieldOptions())
            {
                NSurveyUserData          userData = new NSurveyUserData();
                NSurveyUserData.UsersRow newUser  = userData.Users.NewUsersRow();

                if (_userProvider is INSurveyUserProvider)
                {
                    //if (PasswordTextBox.Text.Length == 0)
                    if (!Regex.IsMatch(PasswordTextBox.Text, @"(?=^.{8,12}$)(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%^&amp;*()_+}{&quot;:;'?/&gt;.&lt;,])(?!.*\s).*$"))

                    {
                        MessageLabel.Visible = true;
                        ((PageBase)Page).ShowErrorMessage(MessageLabel, ((PageBase)Page).GetPageResource("PasswordRequiredMessage"));
                        return;
                    }

                    newUser.UserName = UserNameTextBox.Text;
                    var sec = new LoginSecurity();
                    newUser.PasswordSalt = sec.CreateSaltKey(5);
                    newUser.Password     = sec.CreatePasswordHash(PasswordTextBox.Text, newUser.PasswordSalt);
                    newUser.Email        = EmailTextBox.Text;
                    newUser.FirstName    = FirstNameTextBox.Text;
                    newUser.LastName     = LastNameTextBox.Text;
                    userData.Users.Rows.Add(newUser);
                    ((INSurveyUserProvider)_userProvider).AddUser(userData);
                }

                if (userData.Users.Rows.Count > 0)
                {
                    UserSettingData userSettings = new UserSettingData();
                    UserSettingData.UserSettingsRow newUserSettings = userSettings.UserSettings.NewUserSettingsRow();
                    newUserSettings.UserId             = userData.Users[0].UserId;
                    newUserSettings.IsAdmin            = IsAdminCheckBox.Checked;
                    newUserSettings.GlobalSurveyAccess = HasSurveyAccessCheckBox.Checked;
                    userSettings.UserSettings.Rows.Add(newUserSettings);
                    new User().AddUserSettings(userSettings);
                }
                UINavigator.NavigateToUserManager(((PageBase)Page).getSurveyId(), ((PageBase)Page).MenuIndex);
            }
        }