public WeblogConfigurationWizardPanelSelectProvider()
        {
            // This call is required by the Windows.Forms Form Designer.
            InitializeComponent();

            this.labelHeader.Text = Res.Get(StringId.ConfigWizardSelectProvider);
            this.labelSelectProvider.Text = Res.Get(StringId.CWSelectProviderWeblogTypeLabel);
            this.labelServerAPIUrl.Text = Res.Get(StringId.CWSelectProviderApiUrlLabel);
            this.labelText.Text = Res.Get(StringId.CWSelectProviderText);

            if (BidiHelper.IsRightToLeft)
                textBoxServerApiUrl.TextAlign = HorizontalAlignment.Right;

            this.textBoxServerApiUrl.RightToLeft = RightToLeft.No;

            // Load up the combo and select the first item
            //adding marketization--only show providers for this market
            HashSet marketSupportedIds = new HashSet();
            marketSupportedIds.AddAll(
                StringHelper.Split(
                    MarketizationOptions.GetFeatureParameter(MarketizationOptions.Feature.BlogProviders, "supported"), ";"));
            foreach (IBlogProvider provider in BlogProviderManager.Providers)
                if (provider.Visible && marketSupportedIds.Contains(provider.Id))
                    comboBoxSelectProvider.Items.Add(new BlogProviderDescriptionProxy(provider));

            comboBoxSelectProvider.SelectedIndex = 0;

            labelText.Text = string.Format(CultureInfo.CurrentCulture, labelText.Text, ApplicationEnvironment.ProductNameQualified);
        }
        private static object ReadXmlVideoProviders(XmlDocument providersDocument)
        {
            XmlNode providersNode = providersDocument.SelectSingleNode("//videoProviders");
            if (providersNode == null)
                throw new Exception("Invalid videoProviders.xml file detected");

            // get the list of providers from the xml
            ArrayList providers = new ArrayList();
            HashSet marketSupportedIds = new HashSet();
            marketSupportedIds.AddAll(
                StringHelper.Split(
                MarketizationOptions.GetFeatureParameter(MarketizationOptions.Feature.VideoProviders, "supported"), ";"));
            XmlNodeList providerNodes = providersDocument.SelectNodes("//videoProviders/provider");
            foreach (XmlNode providerNode in providerNodes)
            {
                VideoProvider provider = VideoProviderFromXml(providerNode);
                if (marketSupportedIds.Contains(provider.ServiceId))
                    providers.Add(provider);
            }

            // return list of providers
            return providers.ToArray(typeof(VideoProvider));
        }
 public void LoadCategories()
 {
     initMode = true;
     try
     {
         nodes = CategoriesToNodes(ctx.Categories);
         treeView.Nodes.Clear();
         treeView.Nodes.AddRange(FilteredNodes(RealNodes, delegate { return true; }));
         HashSet selectedCategories = new HashSet();
         selectedCategories.AddAll(ctx.SelectedCategories);
         if (selectedCategories.Count > 0)
             WalkNodes(treeView.Nodes, delegate (TreeNode n)
                     {
                         n.Checked = selectedCategories.Contains(((TreeNode)n.Tag).Tag as BlogPostCategory);
                     });
         treeView.ExpandAll();
     }
     finally
     {
         initMode = false;
     }
 }