private IEnumerable <IRemoteFolder> GetAncestors() { for (int i = 0; i < PathParts.Length; i++) { string path = string.Join(PathSeparator.ToString(), PathParts.Take(i + 1)); yield return(new SimpleRemoteFolder(path, PathSeparator, RootPath)); } }
override public void Initialize(string uri) { _ftpuri = uri; base.InitializeUri(uri); var split = Regex.Split(uri.Replace(GlobalDefinitions.FtpPrefix, string.Empty).TrimEnd(new[] { PathSeparator }), PathSeparator.ToString()); if (split.Length > 1) { _folderName = split[split.Length - 1]; } }
public static void WithSemiDisjointImports_OutputMatchesCssFile() { var result = new SassOptions { InputPath = GetFixtureAbsolutePath("dependencies (disjoint)", "dirB", "disjoint2.scss"), IncludePath = string.Join(PathSeparator.ToString(), GetFixtureRelativePath(), GetFixtureAbsolutePath("dependencies (disjoint)", "dirB", "dirB2") ) } .Compile(); var expectedOutput = GetCssString("dependencies (disjoint)", "dirB", "disjoint2.css"); Assert.Equal(expectedOutput, result.Output); }
/// <summary> /// To use these two constructors the input uri mus be in format ftp://{directory}/{fileName} /// </summary> /// <param name="uri"></param> /// <param name="userName"></param> /// <param name="password"></param> /// <param name="port"></param> public FTPFile(string uri, string userName, string password) { _ftpuri = uri; _username = userName; _password = password; var split = Regex.Split(uri.Replace(GlobalDefinitions.FtpPrefix, string.Empty), PathSeparator.ToString()); if (split.Length < 3) { throw new ArgumentException(@"The subfolder and file name must be specified."); } Initialize(ComposeInitialUriString(uri, userName, password)); }
/// <summary> /// Builds the item. /// </summary> /// <param name="item">The item.</param> /// <param name="writer">The writer.</param> private void BuildItem(MenuItem item, HtmlTextWriter writer) { if (item != null && writer != null) { writer.WriteLine(); writer.WriteBeginTag("li"); var cssClass = (item.ChildItems.Count > 0) ? "dropdown" : string.Empty; var selectedStatusClass = GetSelectStatusClass(item); if (!String.IsNullOrEmpty(selectedStatusClass)) { cssClass += " " + selectedStatusClass; } writer.WriteAttribute("class", cssClass); writer.Write(HtmlTextWriter.TagRightChar); writer.Indent++; writer.WriteLine(); if ((item.ChildItems != null) && (item.ChildItems.Count > 0)) { if (IsLink(item)) { writer.WriteBeginTag("li"); writer.WriteAttribute("class", "dropdown-split-left"); writer.Write(HtmlTextWriter.TagRightChar); writer.WriteBeginTag("a"); if (!String.IsNullOrEmpty(item.NavigateUrl)) { writer.WriteAttribute("href", Page.Server.HtmlEncode(ResolveClientUrl(item.NavigateUrl))); } else { writer.WriteAttribute("href", Page.ClientScript.GetPostBackClientHyperlink(this, "b" + item.ValuePath.Replace(PathSeparator.ToString(), "\\"), true)); } //TODO: find a better work around!!! if (!String.IsNullOrEmpty(item.Target)) { writer.WriteAttribute("target", item.Target); } if (!String.IsNullOrEmpty(item.ToolTip) && item.ToolTip != "_blank") { writer.WriteAttribute("title", item.ToolTip); } writer.Write(HtmlTextWriter.TagRightChar); writer.WriteLine(); writer.Write(item.Text.Trim()); writer.WriteEndTag("a"); writer.Indent--; writer.WriteEndTag("li"); writer.WriteBeginTag("li"); writer.WriteAttribute("class", "dropdown dropdown-split-right hidden-sm"); writer.Write(HtmlTextWriter.TagRightChar); writer.WriteBeginTag("a"); writer.WriteAttribute("href", "#"); writer.WriteAttribute("class", "dropdown-toggle"); writer.WriteAttribute("data-toggle", "dropdown"); writer.Write(HtmlTextWriter.TagRightChar); writer.WriteBeginTag("i"); writer.WriteAttribute("class", "caret"); writer.Write(HtmlTextWriter.TagRightChar); writer.WriteEndTag("i"); writer.WriteEndTag("a"); BuildItems(item.ChildItems, MenuItemType.Split, writer); writer.WriteEndTag("li"); } else { writer.WriteBeginTag("a"); writer.WriteAttribute("class", "dropdown-toggle"); writer.WriteAttribute("data-toggle", "dropdown"); writer.WriteAttribute("href", "#"); writer.Write(HtmlTextWriter.TagRightChar); writer.Write(item.Text); writer.Write(" "); writer.WriteBeginTag("b"); writer.WriteAttribute("class", "caret"); writer.Write(HtmlTextWriter.TagRightChar); writer.WriteEndTag("b"); writer.WriteEndTag("a"); BuildItems(item.ChildItems, MenuItemType.Normal, writer); } } else { if (IsLink(item)) { writer.WriteBeginTag("a"); if (!String.IsNullOrEmpty(item.NavigateUrl)) { writer.WriteAttribute("href", Page.Server.HtmlEncode(ResolveClientUrl(item.NavigateUrl))); } else { writer.WriteAttribute("href", Page.ClientScript.GetPostBackClientHyperlink(this, "b" + item.ValuePath.Replace(PathSeparator.ToString(), "\\"), true)); } //TODO: find a better work around!!! if (!String.IsNullOrEmpty(item.Target)) { writer.WriteAttribute("target", item.Target); } cssClass = GetItemClass(this, item); writer.WriteAttribute("class", cssClass); writer.WriteTargetAttribute(item.Target); if (!String.IsNullOrEmpty(item.ToolTip) && item.ToolTip != "_blank") { writer.WriteAttribute("title", item.ToolTip); } else { if (!String.IsNullOrEmpty(ToolTip)) { writer.WriteAttribute("title", ToolTip); } } writer.Write(HtmlTextWriter.TagRightChar); writer.Indent++; writer.WriteLine(); writer.Write(item.Text); writer.Indent--; writer.WriteEndTag("a"); } else { writer.WriteBeginTag("li"); writer.WriteAttribute("class", GetItemClass(this, item)); writer.Write(HtmlTextWriter.TagRightChar); writer.Indent++; writer.WriteLine(); } } writer.Indent--; writer.WriteLine(); writer.WriteEndTag("li"); } }
private void BuildInnerItem(HtmlTextWriter writer, MenuItem Item) { if (IsLink(Item)) { writer.WriteBeginTag("a"); if (!string.IsNullOrEmpty(Item.NavigateUrl)) { writer.WriteAttribute("href", Page.Server.HtmlEncode(ResolveClientUrl(Item.NavigateUrl))); } else { writer.WriteAttribute("href", Page.ClientScript.GetPostBackClientHyperlink(this, "b" + Item.ValuePath.Replace(PathSeparator.ToString(), "\\"), true)); } /*writer.WriteAttribute("class", GetItemClass(Menu, Item))*/ if (!string.IsNullOrEmpty(Item.Target)) { writer.WriteAttribute("target", Item.Target); } if (!string.IsNullOrEmpty(Item.ToolTip)) { writer.WriteAttribute("title", Item.ToolTip); } else if (!string.IsNullOrEmpty(ToolTip)) { writer.WriteAttribute("title", ToolTip); } writer.WriteAttribute("style", "display: block"); writer.Write(HtmlTextWriter.TagRightChar); writer.Indent++; writer.WriteLine(); } else { writer.WriteBeginTag("span"); writer.WriteAttribute("style", "display: block"); /*writer.WriteAttribute("class", GetItemClass(Menu, Item))*/ writer.Write(HtmlTextWriter.TagRightChar); writer.Indent++; writer.WriteLine(); } if (!string.IsNullOrEmpty(Item.ImageUrl)) { writer.WriteBeginTag("img"); writer.WriteAttribute("src", ResolveClientUrl(Item.ImageUrl)); writer.WriteAttribute("alt", ((!string.IsNullOrEmpty(Item.ToolTip)) ? Item.ToolTip : ((!string.IsNullOrEmpty(ToolTip)) ? ToolTip : Item.Text)).ToString()); writer.Write(HtmlTextWriter.SelfClosingTagEnd); } writer.Write(Item.Text); writer.Indent--; if (IsLink(Item)) { writer.WriteEndTag("a"); } else { writer.WriteEndTag("span"); } }
/// <summary> /// To use these two constructors the input uri mus be in format ftp://{directory} /// </summary> /// <param name="uri"></param> /// <param name="userName"></param> /// <param name="password"></param> /// <param name="port"></param> public FTPFolder(string uri, string userName, string password) { var split = Regex.Split(uri.Replace(GlobalDefinitions.FtpPrefix, string.Empty), PathSeparator.ToString()); if (split.Length < 1) { throw new ArgumentException(@"The subfolder name must be specified."); } var uriDetails = new UriBuilder(uri); Initialize(ComposeInitialUriString(uri, userName, password)); }