public override void ExpandView(MixCmsContext _context = null, IDbContextTransaction _transaction = null) { Cultures = Helper.LoadCultures(Id, Specificulture, _context, _transaction); if (!string.IsNullOrEmpty(this.Tags)) { ListTag = JArray.Parse(this.Tags); } // Load page views this.Templates = MixTemplates.UpdateViewModel.Repository.GetModelListBy( t => t.Theme.Id == ActivedTheme && t.FolderType == this.TemplateFolderType, _context, _transaction).Data; var templateName = Template?.Substring(Template.LastIndexOf('/') + 1) ?? MixConstants.DefaultTemplate.Page; this.View = Templates.FirstOrDefault(t => !string.IsNullOrEmpty(templateName) && templateName.Equals($"{t.FileName}{t.Extension}")); if (this.View == null) { this.View = Templates.FirstOrDefault(t => MixConstants.DefaultTemplate.Module.Equals($"{t.FileName}{t.Extension}")); } this.View?.SetMediator(this); this.Template = $"{View?.FileFolder}/{View?.FileName}{View.Extension}"; // Load Attributes // Load master views this.Masters = MixTemplates.UpdateViewModel.Repository.GetModelListBy( t => t.Theme.Id == ActivedTheme && t.FolderType == MixTemplateFolders.Masters.ToString(), _context, _transaction).Data; var masterName = Layout?.Substring(Layout.LastIndexOf('/') + 1) ?? MixConstants.DefaultTemplate.Master; this.Master = Masters.FirstOrDefault(t => !string.IsNullOrEmpty(masterName) && masterName.Equals($"{t.FileName}{t.Extension}")); if (this.Master == null) { this.Master = Masters.FirstOrDefault(t => MixConstants.DefaultTemplate.Master.Equals($"{t.FileName}{t.Extension}")); } this.Layout = $"{Master?.FileFolder}/{Master?.FileName}{Master?.Extension}"; this.ModuleNavs = GetModuleNavs(_context, _transaction); this.UrlAliases = GetAliases(_context, _transaction); DetailsUrl = Id > 0 ? MixCmsHelper.GetDetailsUrl(Specificulture, $"/{MixService.GetConfig("PageController", Specificulture, "page")}/{Id}/{SeoName}") : null; }
public OpenShiftMasterEndpointSettingsViewModel() { model = OpenShiftMastersModel.Instance; Masters = model.Masters.ToReadOnlyReactiveCollection(m => new OpenShiftMasterViewModel(m)); AddItemCommand = new ReactiveCommand() .WithSubscribe(() => { var newMaster = new OpenShiftMasterModel(); model.AddItem(newMaster); SelectedItem.Value = Masters.FirstOrDefault(m => m.Model == newMaster); }) .AddTo(Disposable); RemoveItemCommand = SelectedItem .Select(item => item != null) .ToReactiveCommand() .WithSubscribe(() => model.DeleteItem(SelectedItem.Value.Model)) .AddTo(Disposable); CanSave = Masters.Select(m => m.HasErrors).CombineLatestValuesAreAllFalse().ToReactiveProperty(); }