Esempio n. 1
0
        public IEnumerable<JObject> Post(string id, FilterViewModel model) {
            var pluralService = PluralizationService.CreateService(new CultureInfo("en-US"));
            if (pluralService.IsPlural(id)) {
                id = pluralService.Singularize(id);
            }
            FilterGroupRecord groupRecord;
            if (model.Id == 0) {
                groupRecord = new FilterGroupRecord();
                _filterGroupRepository.Create(groupRecord);
                _entityFilterRepository.Create(new EntityFilterRecord {
                    EntityName = id,
                    FilterGroupRecord = groupRecord,
                    Title = model.Title
                });
            }
            else {
                var entityFilterRecord = _entityFilterRepository.Get(model.Id);
                entityFilterRecord.Title = model.Title;
                groupRecord = entityFilterRecord.FilterGroupRecord;
                groupRecord.Filters.Clear();
            }

            foreach (var filter in model.Filters) {
                if (filter.FormData.Length == 0) {
                    continue;
                }
                var record = new FilterRecord {
                    Category = id + "ContentFields",
                    Type = filter.Type,
                };
                var dictionary = filter.FormData.ToDictionary(x => x.Name, x => x.Value);
                record.State = FormParametersHelper.ToString(dictionary);
                groupRecord.Filters.Add(record);
            }

            return Get(id);
        }
Esempio n. 2
0
        public IEnumerable<JObject> Post(string id, FilterViewModel model) {
            var pluralService = PluralizationService.CreateService(new CultureInfo("en-US"));
            if (pluralService.IsPlural(id)) {
                id = pluralService.Singularize(id);
            }

            var groupRecord = new FilterGroupRecord();
                _filterGroupRepository.Create(groupRecord);
                _entityFilterRepository.Create(new EntityFilterRecord {
                    EntityName = id,
                    FilterGroupRecord = groupRecord,
                    Title = model.Title
                });

            foreach (var filter in model.Filters) {
                if (filter.FormData.Length == 0) {
                    continue;
                }
                var record = new FilterRecord {
                    Category = id + "ContentFields",
                    Type = filter.Type,
                };
                var dictionary = new Dictionary<string, string>();
                foreach (var data in filter.FormData) {
                    if (dictionary.ContainsKey(data.Name)) {
                        dictionary[data.Name] += "&" + data.Value;
                    }
                    else {
                        dictionary.Add(data.Name, data.Value);
                    }
                }
                record.State = FormParametersHelper.ToString(dictionary);
                groupRecord.Filters.Add(record);
            }

            return Get(id);
        }