/// <summary>
        /// Selects the folder from side bar.
        /// </summary>
        /// <param name="folderTitle">The folder title.</param>
        public void SelectFolderFromSideBar(string folderTitle)
        {
            HtmlSpan folder = null;

            do
            {
                folder = ActiveBrowser.Find.ByExpression <HtmlSpan>("tagName=span", "innertext=" + folderTitle);
                if (folder != null && folder.IsVisible())
                {
                    folder.Click();
                    ActiveBrowser.WaitForAsyncOperations();
                    ActiveBrowser.RefreshDomTree();
                }
                else
                {
                    HtmlAnchor arrow = this.EM.Media.MediaSelectorScreen.NotExpandedArrow.AssertIsPresent("not expanded arrow");
                    arrow.Click();
                }
            }while (folder == null);
        }
Esempio n. 2
0
        private void SearchAndSelectElementByExpandingArrows(ICollection <HtmlSpan> arrows, HtmlSpan element, string itemName, HtmlDiv activeTab)
        {
            if (this.isHierarchicalItemFound)
            {
                return;
            }

            foreach (var arrow in arrows)
            {
                if (this.isHierarchicalItemFound)
                {
                    return;
                }

                if (arrow.IsVisible())
                {
                    arrow.Click();
                    activeTab.Refresh();
                    element = activeTab.Find.ByCustom <HtmlSpan>(a => a.InnerText.Equals(itemName));
                    if (element != null && element.IsVisible())
                    {
                        element.Click();
                        this.isHierarchicalItemFound = true;
                    }
                    else
                    {
                        var newArrows = this.EM.Widgets.WidgetDesignerContentScreen.Find.AllByCustom <HtmlSpan>(a => a.CssClass.Contains("k-icon k-plus"));
                        if (newArrows.Count != 0)
                        {
                            this.SearchAndSelectElementByExpandingArrows(newArrows, element, itemName, activeTab);
                        }
                        else
                        {
                            throw new Exception(itemName + " " + "not found");
                        }
                    }
                }
            }
        }
        private void SearchAndSelectElementByExpandingArrows(ICollection<HtmlSpan> arrows, HtmlSpan element, string itemName, HtmlDiv activeTab)
        {
            if (this.isHierarchicalItemFound)
            {
                return;
            }

            foreach (var arrow in arrows)
            {
                if (this.isHierarchicalItemFound)
                {
                    return;
                }

                if (arrow.IsVisible())
                {
                    arrow.Click();
                    activeTab.Refresh();
                    element = activeTab.Find.ByCustom<HtmlSpan>(a => a.InnerText.Equals(itemName));
                    if (element != null && element.IsVisible())
                    {
                        element.Click();
                        this.isHierarchicalItemFound = true;
                    }
                    else
                    {
                        var newArrows = this.EM.Widgets.WidgetDesignerContentScreen.Find.AllByCustom<HtmlSpan>(a => a.CssClass.Contains("k-icon k-plus"));
                        if (newArrows.Count != 0)
                        {
                            this.SearchAndSelectElementByExpandingArrows(newArrows, element, itemName, activeTab);
                        }
                        else
                        {
                            throw new Exception(itemName + " " + "not found");
                        }
                    }
                }
            }
        }