private void EditItem(ItemPropertyMapping itemPropertyMapping, FolderSetting folderSetting) { ContentType selectedContentType = null; if (folderSetting.Folder != null) { //SiteSetting siteSetting = this.SiteSettings[folderSetting.Folder.SiteSettingID];//JD ISiteSetting siteSetting = ConfigurationManager.GetInstance().GetSiteSetting(folderSetting.Folder.SiteSettingID); IServiceManager serviceManager = ServiceManagerFactory.GetServiceManager(siteSetting.SiteSettingType); List <ContentType> contentTypes = serviceManager.GetContentTypes(siteSetting, folderSetting.Folder, false); selectedContentType = contentTypes.Single(t => t.ID.Equals(itemPropertyMapping.ContentTypeID)); } ItemPropertyMappingForm itemPropertyMappingForm = new ItemPropertyMappingForm(); itemPropertyMappingForm.Initialize(ApplicationContext.Current.GetApplicationFields(null), selectedContentType, itemPropertyMapping.ApplicationPropertyName, itemPropertyMapping.ServicePropertyName); if (itemPropertyMappingForm.ShowDialog(this.ParentWindow, Languages.Translate("Add Mapping"), 200, 300) == true) { itemPropertyMapping.ApplicationPropertyName = itemPropertyMappingForm.SelectedApplicationPropertyID; itemPropertyMapping.ServicePropertyName = itemPropertyMappingForm.SelectedServicePropertyID; this.RefreshMappingListView(); } }
private void AddButton_Click(object sender, RoutedEventArgs e) { ContentType selectedContentType; if (GeneralLocationTypeRadioButton.IsChecked == true) { selectedContentType = null; } else { selectedContentType = ContentTypeComboBox.SelectedValue as ContentType; if (selectedContentType == null) { MessageBox.Show(Languages.Translate("Please select a content type or use general location instead of specific")); } } ItemPropertyMappingForm itemPropertyMapping = new ItemPropertyMappingForm(); itemPropertyMapping.Initialize(ConfigurationManager.GetInstance().GetApplicationItemProperties(this.SelectedApplicationType), selectedContentType); if (itemPropertyMapping.ShowDialog(this.ParentWindow, Languages.Translate("Add Mapping"), 300, 350) == true) { ItemPropertyMapping newItemPropertyMapping = new ItemPropertyMapping(); newItemPropertyMapping.ID = Guid.NewGuid(); if (selectedContentType != null) { newItemPropertyMapping.ContentTypeID = selectedContentType.ID; } newItemPropertyMapping.ApplicationPropertyName = itemPropertyMapping.SelectedApplicationPropertyID; newItemPropertyMapping.ServicePropertyName = itemPropertyMapping.SelectedServicePropertyID; FolderSetting folderSetting; if (this.SelectedFolder == null) { folderSetting = this.FolderSettings.GetDefaultFolderSetting(this.SelectedApplicationType); folderSetting.ItemPropertyMappings.Add(newItemPropertyMapping); } else { folderSetting = this.FolderSettings.GetFolderSetting(this.SelectedApplicationType, this.SelectedFolder); if (folderSetting != null) { folderSetting.ItemPropertyMappings.Add(newItemPropertyMapping); } else { folderSetting = new FolderSetting(); folderSetting.ApplicationType = this.SelectedApplicationType; folderSetting.BasicFolderDefinition = this.SelectedFolder.GetBasicFolderDefinition(); folderSetting.Folder = this.SelectedFolder; folderSetting.ItemPropertyMappings.Add(newItemPropertyMapping); this.FolderSettings.Add(folderSetting); } } this.RefreshMappingListView(); } }
private void EditButton_Click(object sender, RoutedEventArgs e) { Guid id = (Guid)((Button)e.Source).Tag; FolderSetting folderSetting; ItemPropertyMapping itemPropertyMapping = this.FolderSettings.GetItemPropertyMapping(id, out folderSetting); EditItem(itemPropertyMapping, folderSetting); }
private void MappingsListView_MouseDoubleClick(object sender, MouseButtonEventArgs e) { ItemPropertyMapping itemPropertyMapping = (ItemPropertyMapping)MappingsListView.SelectedItem; FolderSetting folderSetting; itemPropertyMapping = this.FolderSettings.GetItemPropertyMapping(itemPropertyMapping.ID, out folderSetting); EditItem(itemPropertyMapping, folderSetting); }
public string GetMappedServicePropertyName(ApplicationTypes applicationType, string url, string applicationPropertyName, string contentTypeID) { FolderSetting folderSetting = GetFolderSettings(applicationType)[url]; if (folderSetting == null) { return(String.Empty); } ItemPropertyMapping itemPropertyMapping = folderSetting.ItemPropertyMappings.SingleOrDefault(em => em.ContentTypeID.Equals(contentTypeID, StringComparison.InvariantCultureIgnoreCase) && em.ApplicationPropertyName.Equals(applicationPropertyName, StringComparison.InvariantCultureIgnoreCase) && string.IsNullOrEmpty(em.ServicePropertyName) == false); if (itemPropertyMapping != null) { return(itemPropertyMapping.ServicePropertyName); } return(String.Empty); }
private void setContentType(ContentType contentType) { IServiceManager serviceManager = ServiceManagerFactory.GetServiceManager(_siteSetting.SiteSettingType); string[] folderFieldInLimitedView = new string[] { "FileLeafRef" }; double height = 10; fieldRequiredPresnet = false; FieldMappingsStackPanel.Children.Clear(); //Get default mappings ItemPropertyMappings itemPropertyMappings = null; if (_folderSettings != null) { itemPropertyMappings = _folderSettings.GetItemPropertyMappings(contentType.ID); } List <Field> filtredField = contentType.Fields; if (_siteSetting.limitFolderEditableProperties & isFolder) { filtredField = contentType.Fields.Where(f => folderFieldInLimitedView.Contains(f.Name)).ToList(); } foreach (Field field in filtredField) { if (!_displayFileName && field.Name == "FileLeafRef") { continue; } Label label = new Label() { Content = field.DisplayName.removeTextInsideParenthesis() }; label.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; label.VerticalAlignment = System.Windows.VerticalAlignment.Top; if (field.Required && !field.ReadOnly) { label.Foreground = new SolidColorBrush(Colors.Red); label.Content += "*"; fieldRequiredPresnet = true; } label.Margin = new Thickness(0, height, 5, 0); FieldMappingsStackPanel.Children.Add(label); //if (field.ReadOnly == false) //{ EditItemControl editItemControl = EditItemManager.GetEditItemControl(_webURL, field, null, contentType, _siteSetting, _rootFolder); editItemControl.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; editItemControl.VerticalAlignment = System.Windows.VerticalAlignment.Top; editItemControl.Margin = new Thickness(160, height, 0, 0);// FieldMappingsStackPanel.Children.Add(editItemControl); if (_properties != null && _properties.Count > 0) { //Set default mapping value ApplicationItemProperty defaultApplicationItemProperty = null; if (itemPropertyMappings != null) { ItemPropertyMapping mapping = itemPropertyMappings.Where(m => m.ServicePropertyName == field.Name).FirstOrDefault(); if (mapping != null) { defaultApplicationItemProperty = _properties.Where(p => p.Name == mapping.ApplicationPropertyName).FirstOrDefault(); editItemControl.IsEnabled = false; } else { mapping = _defaultFolderSetting.ItemPropertyMappings.Where(m => m.ServicePropertyName == field.Name).FirstOrDefault(); if (mapping != null) { defaultApplicationItemProperty = _properties.Where(p => p.Name == mapping.ApplicationPropertyName).FirstOrDefault(); editItemControl.IsEnabled = false; } } } EditItems.FieldMappingControl fieldMappingControl = new EditItems.FieldMappingControl(_properties, field, defaultApplicationItemProperty); fieldMappingControl.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; fieldMappingControl.VerticalAlignment = System.Windows.VerticalAlignment.Top; fieldMappingControl.Margin = new Thickness(350, height, 0, 0); FieldMappingsStackPanel.Children.Add(fieldMappingControl); } height = height + editItemControl.GetHeight() + 5; if (_defaultValues != null) { object[] args = { serviceManager, field, editItemControl }; Dispatcher.BeginInvoke(new setDefaultValuesDelegate(setDefaultValues), args); } //} } labelfieldRequired.Visibility = fieldRequiredPresnet ? Visibility.Visible : Visibility.Hidden; }