public override void Execute(object parameter) { var context = parameter as TemplateDesignerContext; if (context == null) { return; } var selectedItems = context.TemplateDesigner.BaseTemplates; var d = new SelectTemplatesDialog { HelpText = "Each data template inherits from zero or more base data templates, which in turn specify base templates.", Label = "Select the Base Templates:" }; d.Initialize(Resources.SetBaseTemplates_Execute_Base_Templates, context.TemplateDesigner.TemplateUri.DatabaseUri, selectedItems); if (AppHost.Shell.ShowDialog(d) != true) { return; } context.TemplateDesigner.BaseTemplates = d.SelectedTemplates; context.TemplateDesigner.SetModified(true); }
/// <summary>The execute.</summary> /// <param name="parameter">The parameter.</param> public override void Execute(object parameter) { var context = parameter as ContentEditorContext; if (context == null) { return; } context.ContentEditor.ContentModel.GetChanges(); var field = this.GetInsertOptionsField(context); if (field == null) { return; } var value = field.Value; var selectedItems = new List <ItemId>(); foreach (var s in value.Split('|')) { if (string.IsNullOrEmpty(s)) { continue; } selectedItems.Add(new ItemId(new Guid(s))); } var d = new SelectTemplatesDialog(); d.Initialize(Resources.SetInsertOptions_Execute_Insert_Options, field.FieldUris.First().ItemVersionUri.DatabaseUri, selectedItems, true); if (d.ShowDialog() != true) { return; } value = string.Empty; foreach (var selectedItem in d.SelectedItems) { if (!string.IsNullOrEmpty(value)) { value += '|'; } value += selectedItem.ToString(); } field.Value = value; if (field.Control != null) { field.Control.SetValue(value); } context.ContentEditor.ContentModel.IsModified = true; }
public override void Execute(object parameter) { var context = parameter as IItemSelectionContext; if (context == null) { return; } var item = context.Items.FirstOrDefault(); if (item == null) { return; } var selectedItems = new List <ItemId>(); if (context.Items.Count() == 1) { if (!GetSelectedInsertOptions(item, selectedItems)) { return; } } var d = new SelectTemplatesDialog(); d.Initialize(Resources.SetInsertOptions_Execute_Insert_Options, item.ItemUri.DatabaseUri, selectedItems, true); if (AppHost.Shell.ShowDialog(d) != true) { return; } var value = string.Empty; foreach (var selectedItem in d.SelectedTemplates) { if (!string.IsNullOrEmpty(value)) { value += '|'; } value += selectedItem.ToString(); } var fieldId = IdManager.GetFieldId("/sitecore/templates/System/Templates/Sections/Insert Options/Insert Options/__Masters"); var fields = new List <Tuple <FieldUri, string> >(); foreach (var i in context.Items) { var fieldUri = new FieldUri(new ItemVersionUri(i.ItemUri, LanguageManager.CurrentLanguage, Data.Version.Latest), fieldId); fields.Add(new Tuple <FieldUri, string>(fieldUri, value)); } AppHost.Server.UpdateItems(fields); }
public override void Execute(object parameter) { var context = parameter as ContentTreeContext; if (context == null) { return; } var itemTreeViewItem = context.SelectedItems.FirstOrDefault() as ItemTreeViewItem; if (itemTreeViewItem == null) { return; } var fieldId = IdManager.GetFieldId("/sitecore/templates/System/Templates/Template/Data/__Base template"); GetValueCompleted <Item> completed = delegate(Item item) { var field = item.Fields.FirstOrDefault(f => f.Name == "__Base template"); var selectedItems = field != null?field.Value.Split('|').Where(v => !string.IsNullOrWhiteSpace(v)).Select(id => new ItemId(new Guid(id))) : Enumerable.Empty <ItemId>(); var d = new SelectTemplatesDialog { HelpText = "Each data template inherits from zero or more base data templates, which in turn specify base templates.", Label = "Select the Base Templates:" }; d.Initialize(Resources.SetBaseTemplates_Execute_Base_Templates, item.ItemUri.DatabaseUri, selectedItems); if (AppHost.Shell.ShowDialog(d) != true) { return; } var baseTemplates = string.Join("|", d.SelectedTemplates.Select(i => i.ToString())); ItemModifier.Edit(item.ItemUri, fieldId, baseTemplates); }; itemTreeViewItem.ItemUri.Site.DataService.GetItemFieldsAsync(new ItemVersionUri(itemTreeViewItem.ItemUri, Language.Current, Data.Version.Latest), completed); }