public TagsTreeView(TagsFilter tagsFilter, TagsModel tagsModel, TagTextFormatter tagTextFormatter , Configuration.ConfigTagsList tagsListSettings , MetadataKeywordLists metadataKeywordLists , SearchHandler searchHandler , BookmarkPromptUtility bookmarkPromptUtility , HttpClient httpClient) { InitializeComponent(); TagsFilter = tagsFilter; TagsModel = tagsModel; TagTextFormatter = tagTextFormatter; TagsListSettings = tagsListSettings; MetadataKeywordLists = metadataKeywordLists; SearchHandler = searchHandler; BookmarkPromptUtility = bookmarkPromptUtility; HttpClient = httpClient; treeView = new TreeViewEx(); treeViewContextMenu = new ContextMenu(); SuspendLayout(); // // // treeViewContextMenu.Popup += TreeViewContextMenu_Popup; treeViewContextMenu.Tag = treeView; // // // treeView.ContextMenu = treeViewContextMenu; treeView.HideSelection = false; treeView.HotTracking = true; treeView.Dock = DockStyle.Fill; //treeView.Sorted = true; treeView.TreeViewNodeSorter = new TagsTreeViewNodeSorter(TagSortType.Name, SortOrder.Ascending); treeView.NodeActivated += TreeView_NodeActivated; treeView.NodeSelected += TreeView_NodeSelected; treeView.AfterExpand += TreeView_AfterExpand; treeView.AfterCollapse += TreeView_AfterCollapse; // // this // Controls.Add(treeView); MetadataKeywordLists.WhitelistChanged += Whitelist_Changed; MetadataKeywordLists.BlacklistChanged += Blacklist_Changed; MetadataKeywordLists.IgnorelistChanged += Ignorelist_Changed; MetadataKeywordLists.HidelistChanged += Hidelist_Changed; tagsFilter.TextChanged += TagsFilter_TextChanged; tagsFilter.SortTypeChanged += TagsFilter_SortTypeChanged; tagsFilter.SortOrderChanged += TagsFilter_SortOrderChanged; TagsModel.ItemAdded += TagsModel_ItemAdded; ResumeLayout(false); }
public ActionResult NewTag(TagsModel m) { Util2.CurrentTag = m.tagname; DbUtil.Db.TagCurrent(); return(View("Tags", m)); }
public ActionResult BlogTagsListing(GridSortOptions gridSortOptions, int?pagetype, int?page, int?pagesize, FormCollection fm, string objresult) { var _objContext = new Contexts.TagsContexts(); ViewBag.Title = " Tags Listing"; var _TagsModel = new TagsModel(); #region Ajax Call if (objresult != null) { AjaxRequest objAjaxRequest = JsonConvert.DeserializeObject <AjaxRequest>(objresult);//Convert json String to object Model if (objAjaxRequest.ajaxcall != null && !string.IsNullOrEmpty(objAjaxRequest.ajaxcall) && objresult != null && !string.IsNullOrEmpty(objresult)) { if (objAjaxRequest.ajaxcall == "paging") //Ajax Call type = paging i.e. Next|Previous|Back|Last { Session["pageNo"] = page; // stores the page no for status } else if (objAjaxRequest.ajaxcall == "sorting") //Ajax Call type = sorting i.e. column sorting Asc or Desc { page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : page); Session["GridSortOption"] = gridSortOptions; pagesize = (Session["PageSize"] != null ? Convert.ToInt32(Session["PageSize"].ToString()) : pagesize); } else if (objAjaxRequest.ajaxcall == "ddlPaging")//Ajax Call type = drop down paging i.e. drop down value 10, 25, 50, 100, ALL { Session["PageSize"] = (Request.QueryString["pagesize"] != null ? Convert.ToInt32(Request.QueryString["pagesize"].ToString()) : pagesize); Session["GridSortOption"] = gridSortOptions; Session["pageNo"] = page; } else if (objAjaxRequest.ajaxcall == "status")//Ajax Call type = status i.e. Active/Inactive { page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } else if (objAjaxRequest.ajaxcall == "displayorder")//Ajax Call type = Display Order i.e. drop down values { page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"].ToString()) : page); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); } objAjaxRequest.ajaxcall = null;; //remove parameter value } } #endregion Ajax Call //This section is used to retain the values of page , pagesize and gridsortoption on complete page post back(Edit, Dlete) //Pass value for Session["Edit/Delete"] from Edit and delete action on postback if (!Request.IsAjaxRequest() && Session["Edit/Delete"] != null && !string.IsNullOrEmpty(Session["Edit/Delete"].ToString())) { pagesize = (Session["PageSize"] != null ? Convert.ToInt32(Session["PageSize"]) : Models.Common._pageSize); page = (Session["pageNo"] != null ? Convert.ToInt32(Session["pageNo"]) : Models.Common._currentPage); gridSortOptions = (Session["GridSortOption"] != null ? Session["GridSortOption"] as GridSortOptions : gridSortOptions); Session["Edit/Delete"] = null; } else if (!Request.IsAjaxRequest() && Session["Edit/Delete"] == null) { //gridSortOptions.Column = "CreateDate"; Session["PageSize"] = null; Session["pageNo"] = null; Session["GridSortOption"] = null; } var PageSize = pagesize.HasValue ? pagesize.Value : Models.Common._pageSize; var Page = page.HasValue ? page.Value : Models.Common._currentPage; TempData["pager"] = pagesize; if (gridSortOptions.Column != null && gridSortOptions.Column == "TagNameTxt") { } else { gridSortOptions.Column = "TagNameTxt"; } var pagedViewModel = new PagedViewModel <TagsModel> { ViewData = ViewData, Query = _objContext.GetTags().AsQueryable(), GridSortOptions = gridSortOptions, DefaultSortColumn = "TagNameTxt", Page = Page, PageSize = PageSize, }.Setup(); if (Request.IsAjaxRequest()) // check if request comes from ajax, then return Partial view { return(View("BlogTagsListingPartial", pagedViewModel)); // ("partial view name ") } else { return(View(pagedViewModel)); } }
public TagTokenModifier(TagsModel tagsModel) { TagsModel = tagsModel; }
public SearchArgTextFormatter(IPathFormatter pathFormatter, MetadataKeywordLists metadataKeywordLists, TagsModel tagsModel, ITokenModifier[] tokenModifiers) { PathFormatter = pathFormatter; MetadataKeywordLists = metadataKeywordLists; TagsModel = tagsModel; TokenModifiers = tokenModifiers; }
public SearchProgressArgTextFormatter(IPathFormatter pathFormatter, MetadataKeywordLists metadataKeywordLists, TagsModel tagsModel, MetadataTextFormatter metadataTextFormatter, ITokenModifier[] searchTokenModifiers, DocumentTemplate <Metadata> searchCoverGridItemDocumentTemplate, DocumentTemplate <Metadata> libraryCoverGridItemDocumentTemplate) { PathFormatter = pathFormatter; MetadataKeywordLists = metadataKeywordLists; TagsModel = tagsModel; MetadataTextFormatter = metadataTextFormatter; SearchTokenModifiers = searchTokenModifiers; SearchCoverGridItemDocumentTemplate = searchCoverGridItemDocumentTemplate; LibraryCoverGridItemDocumentTemplate = libraryCoverGridItemDocumentTemplate; }
public ActionResult SetShared(TagsModel m) { m.SetShareIds(); return(View("Results", m)); }
public async Task Add([FromBody] TagsModel tags) { await Service.SaveTagAsync(tags); }
public async Task Delete([FromBody] TagsModel tags) { await Service.RemoveAsync(tags); }
/// <summary> /// Create Tag Controller /// </summary> /// <returns>Create A New Tag</returns> public ActionResult CreateTag() { TagsModel tag = new TagsModel(); return(View(tag)); }
public TagsToolStrip(TagsFilter tagsFilter, TagsModel tagsModel, Configuration.ConfigTagsList tagsListSettings, MetadataKeywordLists metadataKeywordLists, int filterDelay) { InitializeComponent(); TagsFilter = tagsFilter; TagsModel = tagsModel; TagsListSettings = tagsListSettings; MetadataKeywordLists = metadataKeywordLists; filterTextBox = new ToolStripSpringTextBox(); toolStrip = new ToolStrip(); filterButton = new ToolStripDropDownButton(); filterNoneButton = new ToolStripMenuItem(); filterAllButton = new ToolStripMenuItem(); filterWhitelistButton = new ToolStripMenuItem(); filterBlacklistButton = new ToolStripMenuItem(); filterIgnorelistButton = new ToolStripMenuItem(); filterHidelistButton = new ToolStripMenuItem(); filterOtherButton = new ToolStripMenuItem(); sortButton = new ToolStripDropDownButton(); sortTypeNoneButton = new ToolStripMenuItem(); sortTypeNameButton = new ToolStripMenuItem(); sortTypeCountButton = new ToolStripMenuItem(); sortOrderAscendingButton = new ToolStripMenuItem(); sortOrderDescendingButton = new ToolStripMenuItem(); filterTimer = new Timer(components); SuspendLayout(); // // filter textbox // filterTextBox.Dock = DockStyle.Fill; filterTextBox.Margin = new Padding(0, 0, 6, 0); filterTextBox.TextChanged += FilterTextBox_TextChanged; // // filter button // filterButton.Text = "&Filters"; filterButton.AutoToolTip = false; filterNoneButton.Name = "none"; filterNoneButton.Text = "&None"; filterNoneButton.Click += FilterNoneButton_Click; filterAllButton.Name = "all"; filterAllButton.Text = "&All"; filterAllButton.Click += FilterAllButton_Click; filterWhitelistButton.Name = "whitelist"; filterWhitelistButton.Text = "&Whitelisted"; filterWhitelistButton.Click += FilterWhitelistButton_Click; filterBlacklistButton.Name = "blacklist"; filterBlacklistButton.Text = "&Blacklisted"; filterBlacklistButton.Click += FilterBlacklistButton_Click; filterIgnorelistButton.Name = "ignorelist"; filterIgnorelistButton.Text = "&Ignored"; filterIgnorelistButton.Click += FilterIgnorelistButton_Click; filterHidelistButton.Name = "hidelist"; filterHidelistButton.Text = "&Hidden"; filterHidelistButton.Click += FilterHidelistButton_Click; filterOtherButton.Name = "other"; filterOtherButton.Text = "&Unfiltered"; filterOtherButton.Click += FilterOtherButton_Click; ContextMenuStrip filterContextMenuStrip = new ContextMenuStrip(); filterContextMenuStrip.ShowCheckMargin = true; filterContextMenuStrip.Items.Add(filterNoneButton); filterContextMenuStrip.Items.Add(filterAllButton); filterContextMenuStrip.Items.Add(new ToolStripSeparator()); filterContextMenuStrip.Items.Add(filterWhitelistButton); filterContextMenuStrip.Items.Add(filterBlacklistButton); filterContextMenuStrip.Items.Add(filterIgnorelistButton); filterContextMenuStrip.Items.Add(filterHidelistButton); filterContextMenuStrip.Items.Add(filterOtherButton); filterContextMenuStrip.Opening += FilterContextMenuStrip_Opening; filterContextMenuStrip.RenderMode = ToolStripRenderMode.Professional; filterContextMenuStrip.LayoutStyle = ToolStripLayoutStyle.VerticalStackWithOverflow; filterButton.DropDown = filterContextMenuStrip; // // sort button // sortButton.Text = "&Sort"; sortButton.AutoToolTip = false; sortTypeNoneButton.Name = "sort_type_none"; sortTypeNoneButton.Text = "&Date Added"; sortTypeNoneButton.Click += SortTypeNoneButton_Click; sortTypeNameButton.Name = "sort_type_name"; sortTypeNameButton.Text = "&Name"; sortTypeNameButton.Click += SortTypeNameButton_Click; sortTypeCountButton.Name = "sort_type_count"; sortTypeCountButton.Text = "&Count"; sortTypeCountButton.Click += SortTypeCountButton_Click; sortOrderAscendingButton.Name = "sort_order_ascending"; sortOrderAscendingButton.Text = "&Ascending"; sortOrderAscendingButton.Click += SortOrderAscendingButton_Click; sortOrderDescendingButton.Name = "sort_order_descending"; sortOrderDescendingButton.Text = "&Descending"; sortOrderDescendingButton.Click += SortOrderDescendingButton_Click; ContextMenuStrip sortContextMenuStrip = new ContextMenuStrip(); sortContextMenuStrip.ShowCheckMargin = true; sortContextMenuStrip.Items.Add(sortTypeNameButton); sortContextMenuStrip.Items.Add(sortTypeCountButton); sortContextMenuStrip.Items.Add(sortTypeNoneButton); sortContextMenuStrip.Items.Add(new ToolStripSeparator()); sortContextMenuStrip.Items.Add(sortOrderAscendingButton); sortContextMenuStrip.Items.Add(sortOrderDescendingButton); sortContextMenuStrip.Opening += SortContextMenuStrip_Opening; sortContextMenuStrip.RenderMode = ToolStripRenderMode.Professional; sortContextMenuStrip.LayoutStyle = ToolStripLayoutStyle.VerticalStackWithOverflow; sortButton.DropDown = sortContextMenuStrip; // // timer // filterTimer.Interval = filterDelay; filterTimer.Tick += FilterTimer_Tick; // // toolStrip // toolStrip.Dock = DockStyle.Fill; toolStrip.CanOverflow = false; toolStrip.Items.Add(filterTextBox); toolStrip.Items.Add(filterButton); toolStrip.Items.Add(sortButton); // // this // Controls.Add(toolStrip); tagsFilter.FiltersChanged += TagsFilter_FiltersChanged; tagsFilter.SortTypeChanged += TagsFilter_SortTypeChanged; tagsFilter.SortOrderChanged += TagsFilter_SortOrderChanged; ResumeLayout(false); }
protected void btnUpload_Click(object sender, EventArgs e) { try { if (Page.IsValid) { if (fileUpload.HasFile && IsPDFFile(fileUpload.FileName)) { prefencesLogic = new PreferencesModel(); cvLetter = new ConvertLetter(); FileName = cvLetter.ClearAccent(fileUpload.FileName).ToLower().Replace(' ', '_'); FilePath = prefencesLogic.GetPreferencesByName("FileServer").Value; FileSize = fileUpload.PostedFile.ContentLength; MaxFileSize = 50 * 1024 * 1024; //Upload Thumbnails if (thumbUpload.HasFile) { String FileExtension = System.IO.Path.GetExtension(thumbUpload.FileName).ToLower(); ThumbnailFileName = System.IO.Path.GetRandomFileName(); ThumbnailPath = prefencesLogic.GetPreferencesByName("ThumbnailPath").Value; thumbUpload.SaveAs(MapPath(new Uri(ThumbnailPath).AbsolutePath + "/" + ThumbnailFileName + FileExtension)); } //Upload Document if (FileSize < MaxFileSize) { fileUpload.SaveAs(MapPath(new Uri(FilePath + @"/" + FileName).AbsolutePath)); docLogic = new DocumentModel(); collectionLogic = new CollectionModel(); tagsLogic = new TagsModel(); int addedCollectionID = 0; int addedDocumentID = 0; //Add Document if (String.IsNullOrEmpty(txtCollectionName.Text)) { addedDocumentID = docLogic.AddDocument( txtDocumentName.Text, txtDescription.Text, ThumbnailFileName, FileName, FileSize, UserID, Int32.Parse(ddlCategory.SelectedValue), ddlCollection.Items.Count != 0 ? Int32.Parse(ddlCollection.SelectedValue) : 0 ); } else { addedCollectionID = collectionLogic.AddCollection(txtCollectionName.Text, String.Empty, UserID); addedDocumentID = docLogic.AddDocument(txtDocumentName.Text, txtDescription.Text, ThumbnailFileName, FileName, FileSize, UserID, Int32.Parse(ddlCategory.SelectedValue), addedCollectionID); } //Add Tags if (!String.IsNullOrEmpty(txtTags.Text)) { tagsLogic.AddTag(txtTags.Text, addedDocumentID, null); } else { String tmpTags = txtDocumentName.Text.Replace(" ", ","); tagsLogic.AddTag(tmpTags, addedDocumentID, null); } blInfo.Items.Add("Thêm tài liệu thành công"); } else { blInfo.Items.Add("Dung lượng file cho phép không quá 50MB"); } } else { blInfo.Items.Add("Sai định dạng file. Chỉ cho phép định dạng PDF"); } } } catch (ApplicationException ex) { blInfo.Items.Clear(); blInfo.Items.Add(ex.Message); } }
public QueryParser(TagsModel tagsModel) { TagsModel = tagsModel; }
public void AddBlogs(BlogsModel _BlogsModel) { _BlogsModel.BlogID = (int)(from S in BlogsData.Descendants("Blog") orderby(short) S.Element("BlogID") descending select(short) S.Element("BlogID")).FirstOrDefault() + 1; BlogsData.Root.Add(new XElement("Blog", new XElement("BlogID", _BlogsModel.BlogID), new XElement("TitleTxt", !string.IsNullOrEmpty(_BlogsModel.TitleTxt) ? _BlogsModel.TitleTxt : ""), new XElement("AuthorNameTxt", !string.IsNullOrEmpty(_BlogsModel.AuthorNameID) ? _BlogsModel.AuthorNameID : ""), new XElement("BlogDescription", !string.IsNullOrEmpty(_BlogsModel.BlogDescription) ? _BlogsModel.BlogDescription : ""), new XElement("ImagePathTxt", !string.IsNullOrEmpty(_BlogsModel.ImagePathTxt) ? _BlogsModel.ImagePathTxt : ""), new XElement("PostedDate", !string.IsNullOrEmpty(Convert.ToString(_BlogsModel.PostedDate)) ? _BlogsModel.PostedDate : System.DateTime.Today), new XElement("SlagTxt", !string.IsNullOrEmpty(_BlogsModel.SlagTxt) ? _BlogsModel.SlagTxt : ""), new XElement("IsActiveInd", _BlogsModel.IsActiveInd), new XElement("MetaTitleTxt", !string.IsNullOrEmpty(_BlogsModel.MetaTitleTxt) ? _BlogsModel.MetaTitleTxt : ""), new XElement("MetaKeywordTxt", !string.IsNullOrEmpty(_BlogsModel.MetaKeywordTxt) ? _BlogsModel.MetaKeywordTxt : ""), new XElement("MetaDescriptionTxt", !string.IsNullOrEmpty(_BlogsModel.MetaDescriptionTxt) ? _BlogsModel.MetaDescriptionTxt : ""), new XElement("IsCommentEnabledInd", _BlogsModel.IsCommentEnabledInd), new XElement("SocialMediaTxt", !string.IsNullOrEmpty(_BlogsModel.SocialMediaTxt) ? _BlogsModel.SocialMediaTxt : ""), new XElement("CategoryID", !string.IsNullOrEmpty(_BlogsModel.strCategoryid) ? Convert.ToInt32(_BlogsModel.strCategoryid) : 0), new XElement("AbstractTxt", !string.IsNullOrEmpty(_BlogsModel.AbstractTxt) ? _BlogsModel.AbstractTxt : "") )); BlogsData.Save(HttpContext.Current.Server.MapPath("~/App_Data/blogs.xml")); #region Tag section FormBlogTags _FormBlogTags = new FormBlogTags(); TagsModel _TagsModel = new TagsModel(); var _BlogsContexts = new BlogsContexts(); _FormBlogTags.BlogID = _BlogsModel.BlogID; if (_BlogsModel.SelectedTagsID != null) { foreach (var item in _BlogsModel.SelectedTagsID) { foreach (var i in item.Split(',')) { var _TagContexts = new TagsContexts(); var id = 0; var tagName = string.Empty; int n; var flag = false; bool isNumeric = int.TryParse(i, out n); if (isNumeric) { var formBlogtag_count = _BlogsContexts.GetAllFormBlogTags().Where(x => x.BlogID == _BlogsModel.BlogID && x.TagID == i.ToString()).Count(); if (formBlogtag_count == 0) { id = _TagContexts.GetTags().Where(x => x.TagID == Convert.ToInt32(i)).Select(x => x.TagID).FirstOrDefault(); tagName = _TagContexts.GetTags().Where(x => x.TagID == Convert.ToInt32(i)).Select(x => x.TagNameTxt).FirstOrDefault(); flag = true; } } else { id = 0; tagName = i; } if (id == 0) { _TagsModel.TagNameTxt = tagName; var IsTagName_exist = _TagContexts.GetTags().Where(x => x.TagNameTxt.ToLower().Trim() == tagName.ToLower().Trim()).Count(); if (IsTagName_exist == 0) { _TagContexts.AddTags(_TagsModel);// Add tags in tag context id = _TagContexts.GetTags().Select(x => x.TagID).Count() > 0 ? _TagContexts.GetTags().Select(x => x.TagID).Max() + 1 : 1; flag = true; } else { var tagID_exist = _TagContexts.GetTags().Where(x => x.TagNameTxt.ToLower().Trim() == tagName.ToLower().Trim()).Select(x => x.TagID).FirstOrDefault(); var formBlogtag_count = _BlogsContexts.GetAllFormBlogTags().Where(x => x.BlogID == _BlogsModel.BlogID && x.TagID == tagID_exist.ToString()).Count(); if (formBlogtag_count == 0) { id = tagID_exist; flag = true; } } } if (flag == true) { _FormBlogTags.BlogTagID = (int)(from S in BlogsTagsData.Descendants("FormBlogTag") orderby(short) S.Element("BlogTagID") descending select(short) S.Element("BlogTagID")).FirstOrDefault() + 1; BlogsTagsData.Root.Add(new XElement("FormBlogTag", new XElement("BlogTagID", _FormBlogTags.BlogTagID), new XElement("BlogID", _FormBlogTags.BlogID), new XElement("TagID", id))); BlogsTagsData.Save(HttpContext.Current.Server.MapPath("~/App_Data/formblogstag.xml")); } } } } #endregion #region social media FormBlogSocialMedia _FormBlogSM = new FormBlogSocialMedia(); _FormBlogSM.BlogID = _BlogsModel.BlogID; if (_BlogsModel.SelectedSocialMedia != null) { foreach (var item in _BlogsModel.SelectedSocialMedia) { _FormBlogSM.BlogSocialMediaID = (int)(from S in BlogsSocialMediaData.Descendants("FormBlogSocialMedia") orderby(short) S.Element("BlogSocialMediaID") descending select(short) S.Element("BlogSocialMediaID")).FirstOrDefault() + 1; BlogsSocialMediaData.Root.Add(new XElement("FormBlogSocialMedia", new XElement("BlogSocialMediaID", _FormBlogSM.BlogSocialMediaID), new XElement("BlogID", _FormBlogSM.BlogID), new XElement("SocialMediaID", item))); } BlogsSocialMediaData.Save(HttpContext.Current.Server.MapPath("~/App_Data/formblogssocialmedia.xml")); } #endregion }
public TagsModel ToModel(Tags tags, TagsModel model) { return(_mapper.Map(tags, model)); }
public MainForm() { InitializeComponent(); ProcessCommandLine(); staticHttpClient = new StaticHttpClient(Settings.Network); pathFormatter = new PathFormatter(Program.ApplicationPath, Program.SourcePath, Settings.PathFormatter.Custom, Settings.PathFormatter, Settings.Lists.Tags.LanguageNames, Settings.PathFormatter.IsEnabled); tagsModel = new TagsModel(); tokenModifiers = TokenModifiers.All.Concat(new ITokenModifier[] { new TagTokenModifier(tagsModel) }).ToArray(); bookmarkFormatter = new BookmarkFormatter(Settings.Lists.Bookmarks, Settings.Lists.Tags, tagsModel, pathFormatter, tokenModifiers); bookmarksModel = new BookmarksModel(tagsModel, bookmarkFormatter); libraryModel = new LibraryModel(pathFormatter.GetCacheDirectory(), new WinformsTimer(0, Settings.Polling.LibraryRefreshInterval)); browsingModel = new BrowsingModel(); galleryModel = new GalleryModel(tagsModel); detailsModel = new DetailsModel(); metadataKeywordLists = new MetadataKeywordLists(); metadataProcessors = new List <IMetadataProcessor>(); metadataConverters = new List <IMetadataConverter>(); archiveWriters = new List <IArchiveWriter>(); queryParser = new QueryParser(tagsModel); coreTextFormatter = new CoreTextFormatter(pathFormatter, tokenModifiers); aboutTextFormatter = new AboutTextFormatter(pathFormatter); tagTextFormatter = new TagTextFormatter(); metadataTextFormatter = new MetadataTextFormatter(pathFormatter, Settings.Lists.Tags.LanguageNames, metadataKeywordLists, tokenModifiers); documentTemplates = new DocumentTemplates(); documentTemplates.About = new DocumentTemplate <object>("about", Settings.Cache.Templates, pathFormatter, (x, context) => aboutTextFormatter.Format(x)); documentTemplates.Details = new DocumentTemplate <Metadata>("details", Settings.Cache.Templates, pathFormatter, (text, context) => metadataTextFormatter.Format(text, context)); documentTemplates.DetailsPreload = new DocumentTemplate <Metadata>("details-preload", Settings.Cache.Templates, pathFormatter, (text, context) => metadataTextFormatter.Format(text, context)); documentTemplates.Download = new DocumentTemplate <Metadata>("download", Settings.Cache.Templates, pathFormatter, (text, context) => metadataTextFormatter.Format(text, context)); documentTemplates.GalleryTooltip = new DocumentTemplate <Metadata>("gallery-tooltip", Settings.Cache.Templates, pathFormatter, (text, context) => metadataTextFormatter.Format(text, context)); documentTemplates.LibraryCovergrid = new DocumentTemplate <ISearchProgressArg>("library-covergrid", Settings.Cache.Templates, pathFormatter, (text, context) => searchProgressArgTextFormatter.Format(text, context, "library")); documentTemplates.LibraryCovergridItem = new DocumentTemplate <Metadata>("library-covergrid-item", Settings.Cache.Templates, pathFormatter, (text, context) => metadataTextFormatter.Format(text, context)); documentTemplates.SearchCovergrid = new DocumentTemplate <ISearchProgressArg>("search-covergrid", Settings.Cache.Templates, pathFormatter, (text, context) => searchProgressArgTextFormatter.Format(text, context, "search")); documentTemplates.SearchCovergridItem = new DocumentTemplate <Metadata>("search-covergrid-item", Settings.Cache.Templates, pathFormatter, (text, context) => metadataTextFormatter.Format(text, context)); documentTemplates.SearchPreload = new DocumentTemplate <ISearchArg>("search-preload", Settings.Cache.Templates, pathFormatter, (text, context) => searchArgTextFormatter.Format(text, context)); documentTemplates.Startup = new DocumentTemplate <object>("startup", Settings.Cache.Templates, pathFormatter, (text, context) => coreTextFormatter.Format(text, context)); searchArgTextFormatter = new SearchArgTextFormatter(pathFormatter, metadataKeywordLists, tagsModel, tokenModifiers); searchProgressArgTextFormatter = new SearchProgressArgTextFormatter(pathFormatter, metadataKeywordLists, tagsModel, metadataTextFormatter, tokenModifiers, documentTemplates.SearchCovergridItem, documentTemplates.LibraryCovergridItem); metadataCache = new MetadataCache(); searchResultCache = new SearchResultCache(metadataCache); sessionManager = new SessionManager(pathFormatter, searchResultCache, Settings.Cache.Session.RecentLifeSpan, Settings.Cache.Session.SearchLifeSpan, Settings.Cache.Session.TaggedLifeSpan, Settings.Network); cacheFileSystem = new CacheFileSystem(pathFormatter, searchResultCache, archiveWriters); pluginSystem = new PluginSystem(Logger, pathFormatter, cacheFileSystem, archiveWriters, metadataConverters, metadataProcessors); backgroundTaskWorker = new BackgroundTaskWorker() { IdleWaitTime = Settings.BackgroundWorkers.BackgroundTaskWorker.IdleWaitTime, MaxConcurrentJobCount = Settings.BackgroundWorkers.BackgroundTaskWorker.MaxConcurrentJobCount }; pageDownloader = new PageDownloader(staticHttpClient.Client, pathFormatter, searchResultCache, cacheFileSystem) { IdleWaitTime = Settings.BackgroundWorkers.PageDownloader.IdleWaitTime, MaxConcurrentJobCount = Settings.BackgroundWorkers.PageDownloader.MaxConcurrentJobCount }; coverDownloader = new CoverDownloader(staticHttpClient.Client, pathFormatter, metadataKeywordLists) { IdleWaitTime = Settings.BackgroundWorkers.CoverDownloader.IdleWaitTime, MaxConcurrentJobCount = Settings.BackgroundWorkers.CoverDownloader.MaxConcurrentJobCount }; coverLoader = new CoverDownloader(staticHttpClient.Client, pathFormatter, metadataKeywordLists) { IdleWaitTime = Settings.BackgroundWorkers.CoverLoader.IdleWaitTime, MaxConcurrentJobCount = Settings.BackgroundWorkers.CoverLoader.MaxConcurrentJobCount }; galleryDownloader = new GalleryDownloader(staticHttpClient.Client, pathFormatter, searchResultCache) { IdleWaitTime = Settings.BackgroundWorkers.GalleryDownloader.IdleWaitTime, MaxConcurrentJobCount = Settings.BackgroundWorkers.GalleryDownloader.MaxConcurrentJobCount }; detailsTabControl = new TabControlEx(); detailsTabPage = new TabPage(); downloadTabPage = new TabPage(); listsTabControl = new TabControlEx(); tagsTabPage = new TabPage(); bookmarksTabPage = new TabPage(); libraryTabPage = new TabPage(); browsingTabPage = new TabPage(); mainViewTabControl = new TabControlEx(); galleryBrowserViewTabPage = new TabPage(); libraryBrowserViewTabPage = new TabPage(); downloadsListViewTabPage = new TabPage(); webBrowserToolTip = new WebBrowserTreeNodeToolTip(pathFormatter, documentTemplates.GalleryTooltip); loadTimer = new Timer(components); searchHandler = new SearchHandler( libraryModel , mainViewTabControl , libraryBrowserViewTabPage , galleryBrowserViewTabPage , Settings.Cache , searchResultCache , Logger , browsingModel , pathFormatter , staticHttpClient.Client , queryParser , galleryModel , detailsModel , galleryDownloader , sessionManager , Settings.Network); bookmarkPromptUtility = new BookmarkPromptUtility(bookmarksModel, Settings.Lists.Bookmarks); tagsFilter = new TagsFilter(Settings.Lists.Tags, metadataKeywordLists); bookmarksFilter = new BookmarksFilter(Settings.Lists.Bookmarks); libraryFilter = new LibraryFilter(Settings.Lists.Library); browsingFilter = new BrowsingFilter(Settings.Lists.Browsing); libraryBrowserFilter = new LibraryBrowserFilter(Settings.Library.Browser); galleryBrowserFilter = new GalleryBrowserFilter(Settings.Gallery.Browser); detailsBrowserFilter = new DetailsBrowserFilter(Settings.Details.Browser); tagsTreeView = new TagsTreeView(tagsFilter, tagsModel, tagTextFormatter, Settings.Lists.Tags, metadataKeywordLists, searchHandler, bookmarkPromptUtility, staticHttpClient.Client); tagsToolStrip = new TagsToolStrip(tagsFilter, tagsModel, Settings.Lists.Tags, metadataKeywordLists, Settings.Polling.FilterDelay); bookmarksTreeView = new BookmarksTreeView(bookmarksFilter, bookmarksModel, Settings.Lists.Bookmarks, webBrowserToolTip, queryParser, cacheFileSystem, searchHandler); bookmarksToolStrip = new BookmarksToolStrip(bookmarksFilter, bookmarksModel, Settings.Lists.Bookmarks, Settings.Polling.FilterDelay); libraryTreeView = new LibraryTreeView(libraryFilter, libraryModel, archiveWriters, webBrowserToolTip, searchHandler, cacheFileSystem); libraryToolStrip = new LibraryToolStrip(libraryFilter, libraryModel, Settings.Lists.Library, Settings.Polling.FilterDelay); browsingTreeView = new BrowsingTreeView(browsingFilter, browsingModel, Settings.Lists.Browsing, searchHandler, sessionManager, queryParser); browsingToolStrip = new BrowsingToolStrip(browsingFilter, browsingModel, Settings.Lists.Browsing, Settings.Polling.FilterDelay); galleryBrowserView = new GalleryBrowserView(galleryBrowserFilter, galleryModel, documentTemplates.SearchCovergrid, documentTemplates.SearchPreload, pathFormatter, Settings.Gallery.Browser, pageDownloader, coverDownloader, metadataKeywordLists, tagsModel, searchHandler); galleryToolStrip = new GalleryBrowserToolStrip(galleryBrowserFilter, galleryModel, Settings.Gallery.Browser, searchHandler); libraryBrowserView = new LibraryBrowserView(libraryBrowserFilter, libraryModel, documentTemplates.LibraryCovergrid, documentTemplates.SearchPreload, documentTemplates.LibraryCovergridItem, pathFormatter, pageDownloader, coverLoader, metadataKeywordLists, Settings.Library.Browser, searchResultCache); libraryBrowserToolStrip = new LibraryBrowserToolStrip(libraryBrowserFilter, libraryModel, Settings.Library.Browser, searchHandler); detailsToolStrip = new DetailsBrowserToolStrip(detailsBrowserFilter, detailsModel, searchHandler); detailsBrowserView = new DetailsBrowserView(detailsBrowserFilter, detailsModel, documentTemplates.Details, documentTemplates.Download, documentTemplates.DetailsPreload, galleryDownloader, pageDownloader, coverDownloader, metadataKeywordLists, Settings.Details.Browser, searchResultCache, cacheFileSystem); theme = new Theme(); applicationLoader = new ApplicationLoader(); fullScreenRestoreState = new FullScreenRestoreState(); mainMenuStrip = new MainMenuStrip(Settings); startupSpecialHandler = new StartupSpecialHandler(Settings.Gallery, tagsModel, metadataKeywordLists, searchHandler); taskbar = new Taskbar(coverDownloader, galleryDownloader, pageDownloader, searchResultCache, cacheFileSystem); publicApi = new PublicApi(staticHttpClient.Client , pathFormatter , cacheFileSystem , searchResultCache , searchHandler , bookmarkPromptUtility , pluginSystem , libraryBrowserToolStrip , Settings.Library , galleryToolStrip , Settings.Gallery , Settings.Details , galleryDownloader , coverDownloader , pageDownloader , Settings.Notifications , metadataKeywordLists , Settings ); splitContainer1 = new SplitContainerEx(); splitContainer2 = new SplitContainerEx(); splitContainer3 = new SplitContainerEx(); splitContainer1.BeginInit(); splitContainer1.Panel2.SuspendLayout(); splitContainer1.SuspendLayout(); splitContainer2.BeginInit(); splitContainer2.Panel1.SuspendLayout(); splitContainer2.SuspendLayout(); splitContainer3.BeginInit(); splitContainer3.SuspendLayout(); SuspendLayout(); // // // loadTimer.Interval = 100; loadTimer.Tick += LoadTimer_Tick; // // // tagsTabPage.Name = "tagsTabPage"; tagsTabPage.TabIndex = 0; tagsTabPage.Tag = "tags"; tagsTabPage.Text = "Tags"; tagsTabPage.UseVisualStyleBackColor = true; bookmarksTabPage.Name = "bookmarksTabPage"; bookmarksTabPage.TabIndex = 1; bookmarksTabPage.Tag = "bookmarks"; bookmarksTabPage.Text = "Bookmarks"; bookmarksTabPage.UseVisualStyleBackColor = true; libraryTabPage.Name = "libraryTabPage"; libraryTabPage.TabIndex = 2; libraryTabPage.Tag = "library"; libraryTabPage.Text = "Library"; libraryTabPage.UseVisualStyleBackColor = true; browsingTabPage.Name = "browsingTabPage"; browsingTabPage.TabIndex = 4; browsingTabPage.Tag = "browsing"; browsingTabPage.Text = "Browsing"; browsingTabPage.UseVisualStyleBackColor = true; // // // listsTabControl.Dock = DockStyle.Fill; listsTabControl.Name = "treeViewTabControl"; listsTabControl.SelectedIndex = -1; listsTabControl.TabIndex = 2; listsTabControl.TabPages.Add(tagsTabPage); listsTabControl.TabPages.Add(bookmarksTabPage); listsTabControl.TabPages.Add(libraryTabPage); listsTabControl.TabPages.Add(browsingTabPage); listsTabControl.Selected += TreeViewTabControl_Selected; splitContainer3.Panel1.Controls.Add(listsTabControl); // // // tagsTreeView.Dock = DockStyle.Fill; // // // tagsToolStrip.Dock = DockStyle.Top; tagsToolStrip.AutoSizeMode = AutoSizeMode.GrowAndShrink; tagsToolStrip.AutoSize = true; // // // tagsTabPage.Controls.Add(tagsTreeView); tagsTabPage.Controls.Add(tagsToolStrip); // // // bookmarksModel.ItemAdded += BookmarksModel_ItemAdded; bookmarksModel.ItemChanged += BookmarksModel_ItemChanged; // // // bookmarksTreeView.Dock = DockStyle.Fill; // // // bookmarksToolStrip.Dock = DockStyle.Top; bookmarksToolStrip.AutoSizeMode = AutoSizeMode.GrowAndShrink; bookmarksToolStrip.AutoSize = true; // // // bookmarksTabPage.Controls.Add(bookmarksTreeView); bookmarksTabPage.Controls.Add(bookmarksToolStrip); // // // libraryTreeView.Dock = DockStyle.Fill; // // // libraryToolStrip.Dock = DockStyle.Top; libraryToolStrip.AutoSizeMode = AutoSizeMode.GrowAndShrink; libraryToolStrip.AutoSize = true; // // // libraryTabPage.Controls.Add(libraryTreeView); libraryTabPage.Controls.Add(libraryToolStrip); // // // browsingModel.ItemAdded += BrowsingModel_ItemAdded; browsingModel.ItemChanged += BrowsingModel_ItemChanged; // // // browsingToolStrip.Dock = DockStyle.Top; browsingToolStrip.AutoSizeMode = AutoSizeMode.GrowAndShrink; browsingToolStrip.AutoSize = true; // // // browsingTreeView.Dock = DockStyle.Fill; // // // browsingTabPage.Controls.Add(browsingTreeView); browsingTabPage.Controls.Add(browsingToolStrip); // // // galleryBrowserViewTabPage.Name = "galleryBrowserViewTabPage"; galleryBrowserViewTabPage.Padding = Padding.Empty; galleryBrowserViewTabPage.TabIndex = 0; galleryBrowserViewTabPage.Text = "Search"; galleryBrowserViewTabPage.UseVisualStyleBackColor = true; // // // libraryBrowserViewTabPage.Name = "libraryBrowserViewTabPage"; libraryBrowserViewTabPage.TabIndex = 1; libraryBrowserViewTabPage.Text = "Library"; libraryBrowserViewTabPage.UseVisualStyleBackColor = true; // // // downloadsListViewTabPage.Name = "downloadsListViewTabPage"; downloadsListViewTabPage.TabIndex = 2; downloadsListViewTabPage.Text = "Downloads"; downloadsListViewTabPage.UseVisualStyleBackColor = true; // // // mainViewTabControl.Controls.Add(galleryBrowserViewTabPage); mainViewTabControl.Controls.Add(libraryBrowserViewTabPage); mainViewTabControl.Controls.Add(downloadsListViewTabPage); mainViewTabControl.Dock = DockStyle.Fill; mainViewTabControl.Name = "mainViewTabControl"; mainViewTabControl.SelectedIndex = 0; mainViewTabControl.TabIndex = 2; mainViewTabControl.Selected += MainViewTabControl_Selected; splitContainer3.Panel2.Controls.Add(mainViewTabControl); splitContainer2.Panel2.Controls.Add(detailsTabControl); // // detailsTabControl // detailsTabControl.Controls.Add(detailsTabPage); detailsTabControl.Controls.Add(downloadTabPage); detailsTabControl.Dock = DockStyle.Fill; detailsTabControl.Name = "detailsTabControl"; detailsTabControl.SelectedIndex = 0; detailsTabControl.TabIndex = 2; // // detailsTabPage // detailsTabPage.Name = "detailsTabPage"; detailsTabPage.TabIndex = 0; detailsTabPage.Text = "Details"; detailsTabPage.UseVisualStyleBackColor = true; // // downloadTabPage // downloadTabPage.Name = "downloadTabPage"; downloadTabPage.TabIndex = 1; downloadTabPage.Text = "Download"; downloadTabPage.UseVisualStyleBackColor = true; // // // galleryBrowserView.Dock = DockStyle.Fill; galleryBrowserView.WebBrowser.ObjectForScripting = publicApi; // // // galleryToolStrip.AutoSizeMode = AutoSizeMode.GrowAndShrink; galleryToolStrip.AutoSize = true; galleryToolStrip.Dock = DockStyle.Top; // // // galleryBrowserViewTabPage.Controls.Add(galleryBrowserView); galleryBrowserViewTabPage.Controls.Add(galleryToolStrip); // // // libraryBrowserView.Dock = DockStyle.Fill; libraryBrowserView.WebBrowser.ObjectForScripting = publicApi; // // // libraryBrowserToolStrip.AutoSizeMode = AutoSizeMode.GrowAndShrink; libraryBrowserToolStrip.AutoSize = true; libraryBrowserToolStrip.Dock = DockStyle.Top; // // // libraryBrowserViewTabPage.Controls.Add(libraryBrowserView); libraryBrowserViewTabPage.Controls.Add(libraryBrowserToolStrip); // // // detailsToolStrip.AutoSizeMode = AutoSizeMode.GrowAndShrink; detailsToolStrip.AutoSize = true; detailsToolStrip.Dock = DockStyle.Top; // // // detailsBrowserView.Dock = DockStyle.Fill; detailsBrowserView.WebBrowser.ObjectForScripting = publicApi; // // // detailsTabPage.Controls.Add(detailsBrowserView); detailsTabPage.Controls.Add(detailsToolStrip); // // splitContainer1 // splitContainer1.Dock = DockStyle.Fill; splitContainer1.FixedPanel = FixedPanel.Panel1; splitContainer1.Margin = new Padding(0); splitContainer1.Name = "splitContainer1"; splitContainer1.Orientation = Orientation.Horizontal; splitContainer1.Panel1MinSize = 22; // // splitContainer1.Panel2 // splitContainer1.Panel2.Controls.Add(splitContainer2); splitContainer1.Size = new Size(1364, 637); splitContainer1.SplitterDistance = 25; splitContainer1.SplitterIncrement = 22; splitContainer1.SplitterWidth = 7; splitContainer1.TabIndex = 2; // // splitContainer2 // splitContainer2.Dock = DockStyle.Fill; splitContainer2.FixedPanel = FixedPanel.Panel2; splitContainer2.Margin = new Padding(0); splitContainer2.Name = "splitContainer2"; // // splitContainer2.Panel1 // splitContainer2.Panel1.Controls.Add(splitContainer3); splitContainer2.Size = new Size(1364, 605); splitContainer2.SplitterDistance = 1214; splitContainer2.SplitterWidth = 7; splitContainer2.TabIndex = 1; // // splitContainer3 // splitContainer3.Dock = DockStyle.Fill; splitContainer3.FixedPanel = FixedPanel.Panel1; splitContainer3.Margin = new Padding(0); splitContainer3.Name = "splitContainer3"; splitContainer3.Size = new Size(1214, 605); splitContainer3.SplitterDistance = 200; splitContainer3.SplitterWidth = 7; splitContainer3.TabIndex = 0; // // applicationMenuStrip // mainMenuStrip.Exit += MainMenuStrip_Exit; mainMenuStrip.ToggleListsPanel += MainMenuStrip_ToggleListsPanel; mainMenuStrip.ToggleDetailsPanel += MainMenuStrip_ToggleDetailsPanel; mainMenuStrip.ToggleFullScreen += MainMenuStrip_ToggleFullScreen; mainMenuStrip.ShowAbout += MainMenuStrip_ShowAbout; mainMenuStrip.ShowPlugins += MainMenuStrip_ShowPlugins; // // this // Controls.Add(splitContainer1); Controls.Add(mainMenuStrip); Controls.Add(webBrowserToolTip); webBrowserToolTip.BringToFront(); MainMenuStrip = mainMenuStrip; Padding = new Padding(0); Text = aboutTextFormatter.Format(Settings.Window.TextFormat); if (Settings.Network.Offline) { Text += " [OFFLINE]"; } Enabled = false; // // splash screen // if (Settings.SplashScreen.IsVisible) { startupWebBrowser = new StartupWebBrowserView(coreTextFormatter, documentTemplates.Startup, applicationLoader); startupWebBrowser.Name = "startupWebBrowserView"; startupWebBrowser.Dock = DockStyle.Fill; startupWebBrowser.WebBrowser.DocumentCompleted += WebBrowser_DocumentCompleted; Controls.Add(startupWebBrowser); startupWebBrowser.BringToFront(); // avoid flickering listsTabControl.Visible = false; mainViewTabControl.Visible = false; detailsTabControl.Visible = false; } backgroundTaskWorker.ProgressChanged += TaskBackgroundWorker_ProgressChanged; pageDownloader.PagesDownloadCompleted += PageDownloader_PagesDownloadCompleted; ReadTheme(); ApplyTheme(); ApplyVisualStyles(); splitContainer1.Panel2.ResumeLayout(false); splitContainer1.EndInit(); splitContainer1.ResumeLayout(false); splitContainer2.Panel1.ResumeLayout(false); splitContainer2.EndInit(); splitContainer2.ResumeLayout(false); splitContainer3.EndInit(); splitContainer3.ResumeLayout(false); ResumeLayout(false); PerformLayout(); }
public async Task TagsSave(TagsModel model) { await AddEntity <TagsEntity, TagsModel>(model); }
public ActionResult Page(int?page, string extraParams) { _modObj = GetViewModelList(page); return(View("Index", _modObj)); }
public ActionResult Results(TagsModel m) { m.SetCurrentTag(); InitExportToolbar(); return(View(m)); }
public ActionResult Edit(int id, TagsModel model) { model.PId = id; return(ActionSaveUpdate(model, "U")); }
public ActionResult NewTag(TagsModel m) { Util2.CurrentTag = m.tagname.Replace("!", "_"); CurrentDatabase.TagCurrent(); return(View("Tags", m)); }
public SearchTokenReplacer(ISearchArg searchArg, TagsModel tagsModel) { SearchArg = searchArg; TagsModel = tagsModel; }