Example #1
0
        protected void cmdCreateNewRule_Click(object sender, EventArgs e)
        {
            DataTable validationDataTable          = ValidationDataTable;
            DataTable validationConditionDataTable = ValidationConditionDataTable;

            if (cmdCreateNewRule.Text == "Add new Validation Rule")
            {
                DataRow drValidationRule = validationDataTable.NewRow();
                drValidationRule[Constants.ValidationField.SPFieldName]         = cboAllFields.SelectedValue;
                drValidationRule[Constants.ValidationField.SPFieldDisplayName]  = cboAllFields.SelectedItem.Text;
                drValidationRule[Constants.ValidationField.SPFieldOperatorID]   = cboRulesOperators.SelectedValue;
                drValidationRule[Constants.ValidationField.SPFieldOperatorName] = Enums.DisplayString((Enums.Operator)Convert.ToInt32(cboRulesOperators.SelectedValue));
                drValidationRule[Constants.ValidationField.ValidationRuleID]    = cboRule.SelectedValue;
                drValidationRule[Constants.ValidationField.ValidationRuleName]  = Enums.DisplayString((Enums.ValidationRule)Convert.ToInt32(cboRule.SelectedValue));
                drValidationRule[Constants.ValidationField.Value]                    = Helper.ReplaceInvalidChar(txtRulesValue.Text);
                drValidationRule[Constants.ValidationField.ErrorMessage]             = Helper.ReplaceInvalidChar(string.IsNullOrEmpty(txtErrorMessage.Text) ? "Invalid Field" : txtErrorMessage.Text);
                drValidationRule[Constants.ValidationField.SPPrinciples]             = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? Constants.AllSPPrinciples : peSelectUsers.CommaSeparatedAccounts);
                drValidationRule[Constants.ValidationField.SPPrinciplesOperatorID]   = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? 0 : Convert.ToInt32(cboSPPrinciplesOperator.SelectedValue));
                drValidationRule[Constants.ValidationField.SPPrinciplesOperatorName] = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? Enums.DisplayString((Enums.Operator) 0) : Enums.DisplayString((Enums.Operator)Convert.ToInt32(cboSPPrinciplesOperator.SelectedValue)) + ":");
                drValidationRule[Constants.ValidationField.HasCondition]             = "";

                validationDataTable.Rows.Add(drValidationRule);
            }

            else if (cmdCreateNewRule.Text == "Update Validation Rule")
            {
                DataRow drSelectedValidation = Helper.GetRowFromDataTable(validationDataTable, ValidationID);
                if (drSelectedValidation != null)
                {
                    drSelectedValidation[Constants.ValidationField.SPFieldName]         = cboAllFields.SelectedValue;
                    drSelectedValidation[Constants.ValidationField.SPFieldDisplayName]  = cboAllFields.SelectedItem.Text;
                    drSelectedValidation[Constants.ValidationField.SPFieldOperatorID]   = cboRulesOperators.SelectedValue;
                    drSelectedValidation[Constants.ValidationField.SPFieldOperatorName] = Enums.DisplayString((Enums.Operator)Convert.ToInt32(cboRulesOperators.SelectedValue));
                    drSelectedValidation[Constants.ValidationField.ValidationRuleID]    = cboRule.SelectedValue;
                    drSelectedValidation[Constants.ValidationField.ValidationRuleName]  = Enums.DisplayString((Enums.ValidationRule)Convert.ToInt32(cboRule.SelectedValue));
                    drSelectedValidation[Constants.ValidationField.Value]                    = Helper.ReplaceInvalidChar(txtRulesValue.Text);
                    drSelectedValidation[Constants.ValidationField.ErrorMessage]             = Helper.ReplaceInvalidChar(string.IsNullOrEmpty(txtErrorMessage.Text) ? "Invalid Field" : txtErrorMessage.Text);
                    drSelectedValidation[Constants.ValidationField.SPPrinciples]             = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? Constants.AllSPPrinciples : peSelectUsers.CommaSeparatedAccounts);
                    drSelectedValidation[Constants.ValidationField.SPPrinciplesOperatorID]   = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? 0 : Convert.ToInt32(cboSPPrinciplesOperator.SelectedValue));
                    drSelectedValidation[Constants.ValidationField.SPPrinciplesOperatorName] = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? Enums.DisplayString((Enums.Operator) 0) : Enums.DisplayString((Enums.Operator)Convert.ToInt32(cboSPPrinciplesOperator.SelectedValue)) + ":");
                    drSelectedValidation[Constants.ValidationField.HasCondition]             = Helper.ConditionsToString(validationConditionDataTable, ValidationID, Constants.ConditionField.ValidationRowID);
                }
                cmdCreateNewRule.Text   = "Add new Validation Rule";
                lnkAddCondition.Enabled = false;
            }

            ValidationDataTable = validationDataTable;
            gvResult.DataSource = validationDataTable;
            gvResult.DataBind();

            gvCondition.DataSource = null;
            gvCondition.DataBind();

            clearValidationField();
        }
        protected void lnkAddCondition_Click(object sender, EventArgs e)
        {
            if (TabPermissionID > 0)
            {
                DataTable permissionDataTable          = TabPermissionDataTable;
                DataTable permissionConditionDataTable = PermissionConditionDataTable;

                if (lnkAddCondition.Text == "Add")
                {
                    DataRow drCondition = permissionConditionDataTable.NewRow();
                    drCondition[Constants.ConditionField.PermissionRowID]     = TabPermissionID;
                    drCondition[Constants.ConditionField.SPFieldName]         = cboAllFields.SelectedValue;
                    drCondition[Constants.ConditionField.SPFieldDisplayName]  = cboAllFields.SelectedItem.Text;
                    drCondition[Constants.ConditionField.SPFieldOperatorName] = Enums.DisplayString((Enums.Operator)Convert.ToInt32(cboConditionOperator.SelectedValue));
                    drCondition[Constants.ConditionField.SPFieldOperatorID]   = cboConditionOperator.SelectedValue;
                    drCondition[Constants.ConditionField.Value] = Helper.ReplaceInvalidChar(txtValue.Text);
                    permissionConditionDataTable.Rows.Add(drCondition);
                }
                else if (lnkAddCondition.Text == "Update")
                {
                    DataRow drSelectedCondition = Helper.GetRowFromDataTable(PermissionConditionDataTable, TabPermissionConditionID);

                    if (drSelectedCondition != null)
                    {
                        drSelectedCondition[Constants.ConditionField.SPFieldName]         = cboAllFields.SelectedValue;
                        drSelectedCondition[Constants.ConditionField.SPFieldDisplayName]  = cboAllFields.SelectedItem.Text;
                        drSelectedCondition[Constants.ConditionField.SPFieldOperatorName] = Enums.DisplayString((Enums.Operator)Convert.ToInt32(cboConditionOperator.SelectedValue));
                        drSelectedCondition[Constants.ConditionField.SPFieldOperatorID]   = cboConditionOperator.SelectedValue;
                        drSelectedCondition[Constants.ConditionField.Value] = Helper.ReplaceInvalidChar(txtValue.Text);
                    }

                    lnkAddCondition.Text = "Add";
                }


                PermissionConditionDataTable = permissionConditionDataTable;
                gvCondition.DataSource       = Helper.GetViewFromDataTable(permissionConditionDataTable, TabPermissionID, Constants.ConditionField.PermissionRowID);
                gvCondition.DataBind();
            }
            else
            {
                lblErrorCondition.Text = "please select Permission to add condition";
            }

            clearConditionFields();
        }
Example #3
0
        protected void FillOperatorsFor(int ruleId)
        {
            cboRulesOperators.Items.Clear();

            ListItem lst = new ListItem();

            lst.Value = ((int)Enums.Operator.Equal).ToString();
            lst.Text  = Enums.DisplayString(Enums.Operator.Equal);
            cboRulesOperators.Items.Add(lst);

            if (ruleId == (int)Enums.ValidationRule.Column)
            {
                lst       = new ListItem();
                lst.Value = ((int)Enums.Operator.NotEqual).ToString();
                lst.Text  = Enums.DisplayString(Enums.Operator.NotEqual);
                cboRulesOperators.Items.Add(lst);

                lst       = new ListItem();
                lst.Value = ((int)Enums.Operator.Contains).ToString();
                lst.Text  = Enums.DisplayString(Enums.Operator.Contains);
                cboRulesOperators.Items.Add(lst);

                lst       = new ListItem();
                lst.Value = ((int)Enums.Operator.NotContains).ToString();
                lst.Text  = Enums.DisplayString(Enums.Operator.NotContains);
                cboRulesOperators.Items.Add(lst);
            }
            else if (ruleId == (int)Enums.ValidationRule.length)
            {
                lst       = new ListItem();
                lst.Value = ((int)Enums.Operator.NotEqual).ToString();
                lst.Text  = Enums.DisplayString(Enums.Operator.NotEqual);


                lst       = new ListItem();
                lst.Value = ((int)Enums.Operator.GreaterThan).ToString();
                lst.Text  = Enums.DisplayString(Enums.Operator.GreaterThan);
                cboRulesOperators.Items.Add(lst);

                lst       = new ListItem();
                lst.Value = ((int)Enums.Operator.LessThan).ToString();
                lst.Text  = Enums.DisplayString(Enums.Operator.LessThan);
                cboRulesOperators.Items.Add(lst);
            }
        }
        protected void LoadTabSettings()
        {
            SPSecurity.RunWithElevatedPrivileges(delegate
            {
                using (SPSite objSite = new SPSite(SPContext.Current.Web.Url))
                {
                    using (SPWeb objWeb = objSite.OpenWeb())
                    {
                        SPList list = objWeb.Lists[new Guid(Request.QueryString["List"])];

                        Tabs allTabs = Tabs.LoadTabs(Helper.GetConfigFile(list, Constants.ConfigFile.TabSettingFile));

                        if (allTabs != null)
                        {
                            DataTable tabsDataTable                = createTabDataTable();
                            DataTable permissionDataTable          = createPermissionDataTable();
                            DataTable permissionConditionDataTable = createConditionDataTable();

                            foreach (Tab tab in allTabs)
                            {
                                DataRow drTab = tabsDataTable.NewRow();
                                drTab[Constants.TabField.Index]                    = tab.Index;
                                drTab[Constants.TabField.Title]                    = tab.Title;
                                drTab[Constants.TabField.IsDefault]                = tab.IsSelected;
                                drTab[Constants.TabField.Description]              = tab.Description;
                                drTab[Constants.TabField.FieldToString]            = tab.CommaSeperatedFields;
                                drTab[Constants.TabField.FieldDisplayNameToString] = Helper.GetFieldDisplayNames(list, tab.CommaSeperatedFields);
                                drTab[Constants.TabField.HasPermission]            = (tab.Permissions.Count > 0);
                                tabsDataTable.Rows.Add(drTab);

                                foreach (TabPermission tabPermission in tab.Permissions)
                                {
                                    DataRow drPermission = permissionDataTable.NewRow();
                                    // Adding the tab row id for reference
                                    drPermission[Constants.PermissionField.TabRowID]                 = drTab[Constants.RowID];
                                    drPermission[Constants.PermissionField.IsDefault]                = tabPermission.IsDefault;
                                    drPermission[Constants.PermissionField.PermissionID]             = (int)tabPermission.Level;
                                    drPermission[Constants.PermissionField.PermissionName]           = Enums.DisplayString(tabPermission.Level);
                                    drPermission[Constants.PermissionField.SPPrinciples]             = tabPermission.ForSPPrinciples;
                                    drPermission[Constants.PermissionField.SPPrinciplesOperatorID]   = (int)tabPermission.BySPPrinciplesOperator;
                                    drPermission[Constants.PermissionField.SPPrinciplesOperatorName] = Enums.DisplayString(tabPermission.BySPPrinciplesOperator);
                                    drPermission[Constants.PermissionField.OnFormIDs]                = tabPermission.FormsIdToString();
                                    drPermission[Constants.PermissionField.OnFormNames]              = tabPermission.FormsToString();
                                    drPermission[Constants.PermissionField.HasCondition]             = tabPermission.Conditions.ConditionsToString(list);
                                    permissionDataTable.Rows.Add(drPermission);


                                    foreach (Condition permCondition in tabPermission.Conditions)
                                    {
                                        if (!list.Fields.ContainsField(permCondition.OnField.SPName))
                                        {
                                            continue;
                                        }

                                        DataRow drCondition = permissionConditionDataTable.NewRow();
                                        drCondition[Constants.ConditionField.PermissionRowID]     = drPermission[Constants.RowID];
                                        drCondition[Constants.ConditionField.SPFieldName]         = permCondition.OnField.SPName;
                                        drCondition[Constants.ConditionField.SPFieldDisplayName]  = list.Fields.GetFieldByInternalName(permCondition.OnField.SPName).Title;
                                        drCondition[Constants.ConditionField.SPFieldOperatorID]   = (int)permCondition.ByFieldOperator;
                                        drCondition[Constants.ConditionField.SPFieldOperatorName] = Enums.DisplayString(permCondition.ByFieldOperator);
                                        drCondition[Constants.ConditionField.Value] = permCondition.Value;
                                        permissionConditionDataTable.Rows.Add(drCondition);
                                    }

                                    PermissionConditionDataTable = permissionConditionDataTable;
                                }

                                TabPermissionDataTable = permissionDataTable;
                            }


                            TabDataTable          = tabsDataTable;
                            grdTabView.DataSource = tabsDataTable;
                            grdTabView.DataBind();
                        }
                    }
                }
            });
        }
        protected void cmdCreateNewRule_Click(object sender, EventArgs e)
        {
            if (TabID > 0)
            {
                DataTable permissionDataTable          = TabPermissionDataTable;
                DataTable permissionConditionDataTable = PermissionConditionDataTable;

                if (cmdCreateNewRule.Text == "Add New Permission Rule")
                {
                    DataRow drPermission = permissionDataTable.NewRow();
                    // Adding the tab row id for reference
                    drPermission[Constants.PermissionField.TabRowID]                 = TabID;
                    drPermission[Constants.PermissionField.IsDefault]                = false;// for time being
                    drPermission[Constants.PermissionField.PermissionID]             = Convert.ToInt32(cdoPermissionLevel.SelectedValue);
                    drPermission[Constants.PermissionField.PermissionName]           = Enums.DisplayString((Enums.PermissionLevel)Convert.ToInt32(cdoPermissionLevel.SelectedValue));
                    drPermission[Constants.PermissionField.SPPrinciples]             = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? Constants.AllSPPrinciples : peSelectUsers.CommaSeparatedAccounts);
                    drPermission[Constants.PermissionField.SPPrinciplesOperatorID]   = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? 0 : Convert.ToInt32(cboSPPrinciplesOperator.SelectedValue));
                    drPermission[Constants.PermissionField.SPPrinciplesOperatorName] = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? Enums.DisplayString((Enums.Operator) 0) : Enums.DisplayString((Enums.Operator)Convert.ToInt32(cboSPPrinciplesOperator.SelectedValue)) + ":");

                    // this is a critical method: keep it in synch with Permission.FormsToString() and Permission.FormsIdToString()
                    string strForms = "", strFormsID = "";
                    foreach (ListItem li in chkPages.Items)
                    {
                        if (li.Selected)
                        {
                            strForms   += Enums.DisplayString(((Enums.SPForms)Convert.ToInt32(li.Value))) + Constants.EnumValueSeparator;
                            strFormsID += li.Value + Constants.EnumValueSeparator;
                        }
                    }

                    strFormsID = strFormsID.TrimEnd(Constants.EnumValueSeparator.ToCharArray());
                    strForms   = strForms.TrimEnd(Constants.EnumValueSeparator.ToCharArray());
                    drPermission[Constants.PermissionField.OnFormIDs]    = strFormsID;
                    drPermission[Constants.PermissionField.OnFormNames]  = strForms;
                    drPermission[Constants.PermissionField.HasCondition] = "";
                    permissionDataTable.Rows.Add(drPermission);
                }
                else if (cmdCreateNewRule.Text == "Update Permission Rule")
                {
                    DataRow drSelectedPermission = Helper.GetRowFromDataTable(permissionDataTable, TabPermissionID);

                    if (drSelectedPermission != null)
                    {
                        drSelectedPermission[Constants.PermissionField.IsDefault]                = false;// for time being
                        drSelectedPermission[Constants.PermissionField.PermissionID]             = Convert.ToInt32(cdoPermissionLevel.SelectedValue);
                        drSelectedPermission[Constants.PermissionField.PermissionName]           = Enums.DisplayString((Enums.PermissionLevel)Convert.ToInt32(cdoPermissionLevel.SelectedValue));
                        drSelectedPermission[Constants.PermissionField.SPPrinciples]             = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? Constants.AllSPPrinciples: peSelectUsers.CommaSeparatedAccounts);
                        drSelectedPermission[Constants.PermissionField.SPPrinciplesOperatorID]   = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? 0 : Convert.ToInt32(cboSPPrinciplesOperator.SelectedValue));
                        drSelectedPermission[Constants.PermissionField.SPPrinciplesOperatorName] = (string.IsNullOrEmpty(peSelectUsers.CommaSeparatedAccounts) ? Enums.DisplayString((Enums.Operator) 0) : Enums.DisplayString((Enums.Operator)Convert.ToInt32(cboSPPrinciplesOperator.SelectedValue)) + ":");

                        // this is a critical method: keep it in synch with Permission.FormsToString() and Permission.FormsIdToString()
                        string strForms = "", strFormsID = "";
                        foreach (ListItem li in chkPages.Items)
                        {
                            if (li.Selected)
                            {
                                strForms   += Enums.DisplayString(((Enums.SPForms)Convert.ToInt32(li.Value))) + Constants.EnumValueSeparator;
                                strFormsID += li.Value + Constants.EnumValueSeparator;
                            }
                        }

                        strFormsID = strFormsID.TrimEnd(Constants.EnumValueSeparator.ToCharArray());
                        strForms   = strForms.TrimEnd(Constants.EnumValueSeparator.ToCharArray());
                        drSelectedPermission[Constants.PermissionField.OnFormIDs]   = strFormsID;
                        drSelectedPermission[Constants.PermissionField.OnFormNames] = strForms;

                        drSelectedPermission[Constants.PermissionField.HasCondition] = Helper.ConditionsToString(permissionConditionDataTable, TabPermissionID, Constants.ConditionField.PermissionRowID);
                    }
                    cmdCreateNewRule.Text   = "Add New Permission Rule";
                    lnkAddCondition.Enabled = false;
                }

                TabPermissionDataTable = permissionDataTable;

                gvPermission.DataSource = Helper.GetViewFromDataTable(permissionDataTable, TabID, Constants.PermissionField.TabRowID);;
                gvPermission.DataBind();

                gvCondition.DataSource = null;
                gvCondition.DataBind();
            }
            else
            {
                lblError.Text = "Please Select Tab to add permissions";
            }

            clearPermissionFields();
        }
Example #6
0
        protected void LoadFieldSettings()
        {
            SPSecurity.RunWithElevatedPrivileges(delegate
            {
                using (SPSite objSite = new SPSite(SPContext.Current.Web.Url))
                {
                    using (SPWeb objWeb = objSite.OpenWeb())
                    {
                        SPList list = objWeb.Lists[new Guid(Request.QueryString["List"])];

                        FieldPermissions allFieldPermissions = FieldPermissions.LoadFieldPermissions(Helper.GetConfigFile(list, Constants.ConfigFile.FieldPermissionFile));

                        if (allFieldPermissions != null)
                        {
                            DataTable permissionDataTable          = createPermissionDataTable();
                            DataTable permissionConditionDataTable = createConditionDataTable();

                            foreach (FieldPermission fp in allFieldPermissions)
                            {
                                if (!list.Fields.ContainsField(fp.OnField.SPName))
                                {
                                    continue;
                                }

                                DataRow drPermission = permissionDataTable.NewRow();
                                // Adding the tab row id for reference
                                drPermission[Constants.PermissionField.SPFieldName]              = fp.OnField.SPName;
                                drPermission[Constants.PermissionField.SPFieldDisplayName]       = list.Fields.GetFieldByInternalName(fp.OnField.SPName).Title;
                                drPermission[Constants.PermissionField.PermissionID]             = (int)fp.Level;
                                drPermission[Constants.PermissionField.PermissionName]           = Enums.DisplayString(fp.Level);
                                drPermission[Constants.PermissionField.SPPrinciples]             = fp.ForSPPrinciples;
                                drPermission[Constants.PermissionField.SPPrinciplesOperatorID]   = (int)fp.BySPPrinciplesOperator;
                                drPermission[Constants.PermissionField.SPPrinciplesOperatorName] = Enums.DisplayString(fp.BySPPrinciplesOperator);
                                drPermission[Constants.PermissionField.OnFormIDs]    = fp.FormsIdToString();
                                drPermission[Constants.PermissionField.OnFormNames]  = fp.FormsToString();
                                drPermission[Constants.PermissionField.HasCondition] = fp.Conditions.ConditionsToString(list);
                                permissionDataTable.Rows.Add(drPermission);


                                foreach (Condition permCondition in fp.Conditions)
                                {
                                    if (!list.Fields.ContainsField(permCondition.OnField.SPName))
                                    {
                                        continue;
                                    }

                                    DataRow drCondition = permissionConditionDataTable.NewRow();
                                    drCondition[Constants.ConditionField.PermissionRowID]     = drPermission[Constants.RowID];
                                    drCondition[Constants.ConditionField.SPFieldName]         = permCondition.OnField.SPName;
                                    drCondition[Constants.ConditionField.SPFieldDisplayName]  = list.Fields.GetFieldByInternalName(permCondition.OnField.SPName).Title;
                                    drCondition[Constants.ConditionField.SPFieldOperatorID]   = (int)permCondition.ByFieldOperator;
                                    drCondition[Constants.ConditionField.SPFieldOperatorName] = Enums.DisplayString(permCondition.ByFieldOperator);
                                    drCondition[Constants.ConditionField.Value] = permCondition.Value;
                                    permissionConditionDataTable.Rows.Add(drCondition);
                                }

                                PermissionConditionDataTable = permissionConditionDataTable;
                            }

                            TabPermissionDataTable  = permissionDataTable;
                            gvPermission.DataSource = permissionDataTable;
                            gvPermission.DataBind();
                        }
                    }
                }
            });
        }
Example #7
0
        private void LoadValidationSettings()
        {
            SPSecurity.RunWithElevatedPrivileges(delegate
            {
                using (SPSite objSite = new SPSite(SPContext.Current.Web.Url))
                {
                    using (SPWeb objWeb = objSite.OpenWeb())
                    {
                        SPList list = objWeb.Lists[new Guid(Request.QueryString["List"])];

                        FieldValidations allFieldsValidation = FieldValidations.LoadFieldValidations(Helper.GetConfigFile(list, Constants.ConfigFile.FieldValidationFile));
                        if (allFieldsValidation != null)
                        {
                            DataTable validationDataTable   = createValidationDataTable();
                            DataTable valConditionDataTable = createConditionDataTable();

                            foreach (FieldValidation fieldValidation in allFieldsValidation)
                            {
                                if (!list.Fields.ContainsField(fieldValidation.OnField.SPName))
                                {
                                    continue;
                                }

                                DataRow drValidation = validationDataTable.NewRow();
                                drValidation[Constants.ValidationField.SPFieldName]         = fieldValidation.OnField.SPName;
                                drValidation[Constants.ValidationField.SPFieldDisplayName]  = list.Fields.GetFieldByInternalName(fieldValidation.OnField.SPName).Title;
                                drValidation[Constants.ValidationField.ValidationRuleID]    = (int)fieldValidation.Rule;
                                drValidation[Constants.ValidationField.ValidationRuleName]  = Enums.DisplayString(fieldValidation.Rule);
                                drValidation[Constants.ValidationField.SPFieldOperatorID]   = (int)fieldValidation.ByRuleOperator;
                                drValidation[Constants.ValidationField.SPFieldOperatorName] = Enums.DisplayString(fieldValidation.ByRuleOperator);
                                drValidation[Constants.ValidationField.Value] = fieldValidation.Value;
                                drValidation[Constants.ValidationField.SPPrinciplesOperatorID]   = (int)fieldValidation.BySPPrinciplesOperator;
                                drValidation[Constants.ValidationField.SPPrinciplesOperatorName] = Enums.DisplayString(fieldValidation.BySPPrinciplesOperator);
                                drValidation[Constants.ValidationField.ErrorMessage]             = fieldValidation.ErrorMsg;
                                drValidation[Constants.ValidationField.SPPrinciples]             = fieldValidation.ForSPPrinciples;
                                drValidation[Constants.ValidationField.HasCondition]             = fieldValidation.Conditions.Count > 0 ? fieldValidation.Conditions.ConditionsToString(list) : "";
                                validationDataTable.Rows.Add(drValidation);

                                foreach (Condition permCondition in fieldValidation.Conditions)
                                {
                                    if (!list.Fields.ContainsField(permCondition.OnField.SPName))
                                    {
                                        continue;
                                    }

                                    DataRow drCondition = valConditionDataTable.NewRow();
                                    drCondition[Constants.ConditionField.ValidationRowID]     = drValidation[Constants.RowID];
                                    drCondition[Constants.ConditionField.SPFieldName]         = permCondition.OnField.SPName;
                                    drCondition[Constants.ConditionField.SPFieldDisplayName]  = list.Fields.GetFieldByInternalName(permCondition.OnField.SPName).Title;
                                    drCondition[Constants.ConditionField.SPFieldOperatorID]   = (int)permCondition.ByFieldOperator;
                                    drCondition[Constants.ConditionField.SPFieldOperatorName] = Enums.DisplayString(permCondition.ByFieldOperator);
                                    drCondition[Constants.ConditionField.Value] = permCondition.Value;
                                    valConditionDataTable.Rows.Add(drCondition);
                                }

                                ValidationConditionDataTable = valConditionDataTable;
                            }

                            ValidationDataTable = validationDataTable;
                            gvResult.DataSource = validationDataTable;
                            gvResult.DataBind();
                        }
                    }
                }
            });
        }