Example #1
0
        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));
 }
Example #3
0
        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));
            }
        }
Example #4
0
 public TagTokenModifier(TagsModel tagsModel)
 {
     TagsModel = tagsModel;
 }
Example #5
0
 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;
 }
Example #7
0
 public ActionResult SetShared(TagsModel m)
 {
     m.SetShareIds();
     return(View("Results", m));
 }
Example #8
0
 public async Task Add([FromBody] TagsModel tags)
 {
     await Service.SaveTagAsync(tags);
 }
Example #9
0
 public async Task Delete([FromBody] TagsModel tags)
 {
     await Service.RemoveAsync(tags);
 }
Example #10
0
        /// <summary>
        /// Create Tag Controller
        /// </summary>
        /// <returns>Create A New Tag</returns>
        public ActionResult CreateTag()
        {
            TagsModel tag = new TagsModel();

            return(View(tag));
        }
Example #11
0
        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);
        }
Example #12
0
        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);
            }
        }
Example #13
0
 public QueryParser(TagsModel tagsModel)
 {
     TagsModel = tagsModel;
 }
Example #14
0
        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
        }
Example #15
0
 public TagsModel ToModel(Tags tags, TagsModel model)
 {
     return(_mapper.Map(tags, model));
 }
Example #16
0
        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();
        }
Example #17
0
 public async Task TagsSave(TagsModel model)
 {
     await AddEntity <TagsEntity, TagsModel>(model);
 }
Example #18
0
 public ActionResult Page(int?page, string extraParams)
 {
     _modObj = GetViewModelList(page);
     return(View("Index", _modObj));
 }
Example #19
0
 public ActionResult Results(TagsModel m)
 {
     m.SetCurrentTag();
     InitExportToolbar();
     return(View(m));
 }
Example #20
0
 public ActionResult Edit(int id, TagsModel model)
 {
     model.PId = id;
     return(ActionSaveUpdate(model, "U"));
 }
Example #21
0
 public ActionResult NewTag(TagsModel m)
 {
     Util2.CurrentTag = m.tagname.Replace("!", "_");
     CurrentDatabase.TagCurrent();
     return(View("Tags", m));
 }
Example #22
0
 public SearchTokenReplacer(ISearchArg searchArg, TagsModel tagsModel)
 {
     SearchArg = searchArg;
     TagsModel = tagsModel;
 }