Example #1
0
        public static ServerScriptModelRow SetValues(
            Context context,
            SiteSettings ss,
            BaseItemModel model,
            View view,
            ServerScriptModel data)
        {
            var valueColumns = FilterCanUpdateColumns(
                ss: ss,
                columnNames: data.GetChangeItemNames());
            var valueColumnDictionary = valueColumns
                                        .ToDictionary(
                column => column.ColumnName,
                column => column);
            var scriptValues = SetRow(
                ss: ss,
                model: data.Data,
                columns: data.Columns);

            SetExtendedColumnValues(
                context: context,
                model: model,
                data: data.Data,
                columns: valueColumns);
            SetColumnFilterHachValues(
                context: context,
                view: view,
                columnFilterHach: data.View.Filters);
            SetColumnSorterHachValues(
                context: context,
                view: view,
                columnSorterHach: data.View.Sorters);
            switch (ss?.ReferenceType)
            {
            case "Issues":
                if (model is IssueModel issueModel)
                {
                    SetIssueModelValues(
                        context: context,
                        issueModel: issueModel,
                        data: data.Data,
                        columns: valueColumnDictionary);
                }
                break;

            case "Results":
                if (model is ResultModel resultModel)
                {
                    SetResultModelValues(
                        context: context,
                        resultModel: resultModel,
                        data: data.Data,
                        columns: valueColumnDictionary);
                }
                break;
            }
            SetViewValues(
                ss: ss,
                data: data.SiteSettings);
            return(scriptValues);
        }
        public static ServerScriptModelRow SetValues(
            Context context,
            SiteSettings ss,
            BaseItemModel model,
            View view,
            ServerScriptModel data)
        {
            var valueColumns = FilterCanUpdateColumns(
                context: context,
                ss: ss,
                model: model,
                columnNames: data.GetChangeItemNames());
            var valueColumnDictionary = valueColumns
                                        .ToDictionary(
                column => column.ColumnName,
                column => column);
            var scriptValues = SetRow(
                context: context,
                ss: ss,
                model: data.Model,
                columns: data.Columns,
                hidden: data.Hidden,
                elements: data.Elements,
                itemModel: model);

            SetExtendedColumnValues(
                context: context,
                model: model,
                data: data.Model,
                columns: valueColumns);
            if (view != null)
            {
                view.AlwaysGetColumns   = data.View.AlwaysGetColumns;
                view.OnSelectingWhere   = data.View.OnSelectingWhere;
                view.OnSelectingOrderBy = data.View.OnSelectingOrderBy;
                view.ColumnPlaceholders = data.View.ColumnPlaceholders;
            }
            SetColumnFilterHashValues(
                context: context,
                view: view,
                columnFilterHash: data.View.Filters);
            SetColumnSorterHashValues(
                context: context,
                view: view,
                columnSorterHash: data.View.Sorters);
            model.ReadOnly = Bool(
                data: data.Model,
                name: "ReadOnly");
            switch (ss?.ReferenceType)
            {
            case "Issues":
                if (model is IssueModel issueModel)
                {
                    SetIssueModelValues(
                        context: context,
                        ss: ss,
                        issueModel: issueModel,
                        data: data.Model,
                        columns: valueColumnDictionary);
                }
                break;

            case "Results":
                if (model is ResultModel resultModel)
                {
                    SetResultModelValues(
                        context: context,
                        ss: ss,
                        resultModel: resultModel,
                        data: data.Model,
                        columns: valueColumnDictionary);
                }
                break;
            }
            SetViewValues(
                ss: ss,
                data: data.SiteSettings);
            return(scriptValues);
        }