private void TreeControllerBase_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
        {
            if (sender.TreeAlias == "content")
            {
                var nodeId      = e.NodeId;
                var contentItem = _umbracoContextAccessor.UmbracoContext.ContentCache.GetById(int.Parse(nodeId));

                if (contentItem != null)
                {
                    var menuItem = new Umbraco.Web.Models.Trees.MenuItem("autoTranslate", "Auto Translate..");
                    menuItem.Icon            = "globe-inverted-europe-africa";
                    menuItem.SeparatorBefore = true;
                    menuItem.AdditionalData.Add("actionView", "/App_Plugins/AutoTranslate/autotranslate.content.html");
                    var menuPosition = e.Menu.Items.Count - 1;
                    e.Menu.Items.Insert(menuPosition, menuItem);
                }
            }
            else if (sender.TreeAlias == "dictionary")
            {
                var menuItem = new Umbraco.Web.Models.Trees.MenuItem("autoTranslate", "Auto Translate..");
                menuItem.Icon            = "globe-inverted-europe-africa";
                menuItem.SeparatorBefore = true;
                menuItem.AdditionalData.Add("actionView", "/App_Plugins/AutoTranslate/autotranslate.dictionary.html");
                var menuPosition = e.Menu.Items.Count - 1;
                e.Menu.Items.Insert(menuPosition, menuItem);
            }
        }
Пример #2
0
        private void TreeControllerBase_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
        {
            if (sender.TreeAlias != "content")
            {
                return;
            }

            var nodeId      = e.NodeId.ParseInto <int>();
            var contentItem = ApplicationContext.Current.Services.ContentService.GetById(nodeId);

            if (contentItem == null || (contentItem.ContentType.Alias != "home" &&
                                        contentItem.ContentType.Alias != "contentPage" &&
                                        contentItem.ContentType.Alias != "productDetailsPage"))
            {
                return;
            }

            var previewMenuItem =
                new Umbraco.Web.Models.Trees.MenuItem("previewPageContent", "Preview")
            {
                Icon            = "display",
                SeperatorBefore = true
            };

            previewMenuItem.AdditionalData.Add("actionView", "/App_Plugins/PreviewContextAction/previewcontextaction.html");
            previewMenuItem.AdditionalData.Add("pageId", contentItem.Id);
            previewMenuItem.AdditionalData.Add("websiteRootUrl", _websiteRootUrl);
            previewMenuItem.AdditionalData.Add("previewToken", _previewToken);
            e.Menu.Items.Insert(3, previewMenuItem);
        }
Пример #3
0
        void ContentTreeController_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
        {
            if (sender.TreeAlias != Constants.Applications.Content)
            {
                return;
            }

            var node = new Node(e.NodeId.ParseInto <int>());



            var i = new Umbraco.Web.Models.Trees.MenuItem("notifyApp", "Push Notification to App");

            i.AdditionalData.Add("actionView", "/App_Plugins/Notifications/nofication.html");
            i.AdditionalData.Add("nodeId", e.NodeId);
            i.AdditionalData.Add("isMap", node.NodeTypeAlias == "map");
            i.SeperatorBefore = true;
            //i.AdditionalData
            switch (node.NodeTypeAlias)
            {
            case "timeline":
                i.Icon = "globe-inverted-europe-africa";
                break;

            case "map":
                i.Icon = "globe-europe---africa";
                break;
            }

            if (node.NodeTypeAlias == "timeline" || node.NodeTypeAlias == "map")
            {
                e.Menu.Items.Insert(0, i);
            }
        }
        private void TreeControllerBase_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
        {
            int nodeId;

            if (!int.TryParse(e.NodeId, out nodeId))
            {
                return;
            }

            var selectedMedia = ApplicationContext.Current.Services.MediaService.GetById(nodeId);
            var mediaType     = selectedMedia != null ? selectedMedia.ContentType.Alias : string.Empty;

            if (sender.TreeAlias == "media" && (mediaType.Equals("Folder") || nodeId == Constants.System.Root))
            {
                var umbracoHelper = new Umbraco.Web.UmbracoHelper(Umbraco.Web.UmbracoContext.Current);
                var menuItemTitle = umbracoHelper.GetDictionaryValue("ZippyMedia.Labels.UploadZipFile");

                if (string.IsNullOrWhiteSpace(menuItemTitle))
                {
                    menuItemTitle = "Upload and Unpack ZIP";
                }
                var menuItem = new MenuItem("uploadZipFile", menuItemTitle)
                {
                    Icon            = "compress",
                    SeperatorBefore = true
                };
                menuItem.LaunchDialogView("/App_Plugins/zippyMedia/Views/Upload-Zip.html", menuItemTitle);

                e.Menu.Items.Add(menuItem);
            }



            //Upload from server AKA ftp upload comming soon
            //if (sender.TreeAlias == "media" && mediaType.Equals("Folder") && sender.Security.CurrentUser.UserType.Alias.Equals("admin"))
            //{
            //    var menuItem = new MenuItem("unpackZipFileFromServer", "Unpack ZIP from server");
            //    menuItem.Icon = "server";
            //    menuItem.SeperatorBefore = false;
            //    menuItem.LaunchDialogView("/App_Plugins/zippyMedia/Views/Unpack-Zip.html", "Unpack ZIP archive from server");

            //    e.Menu.Items.Add(menuItem);
            //}

            //if (sender.TreeAlias == "media" && Convert.ToInt32(e.NodeId) == Constants.System.Root && sender.Security.CurrentUser.UserType.Alias.Equals("admin"))
            //{
            //    var menuItem = new MenuItem("unpackZipFileFromServer", "Unpack ZIP from server");
            //    menuItem.Icon = "server";
            //    menuItem.SeperatorBefore = false;
            //    menuItem.LaunchDialogView("/App_Plugins/zippyMedia/Views/Unpack-Zip.html", "Unpack ZIP archive from server");

            //    e.Menu.Items.Add(menuItem);

            //}
        }
Пример #5
0
        private static void ContentTreeController_MenuRendering(Umbraco.Web.Trees.TreeControllerBase sender, Umbraco.Web.Trees.MenuRenderingEventArgs e)
        {
            // only add context menu to content nodes, exclude the root and recycle bin
            if (sender.TreeAlias != Constants.Trees.Content)
            {
                return;
            }

            int nodeId = Convert.ToInt32(e.NodeId);

            if (nodeId == Constants.System.Root || nodeId == Constants.System.RecycleBinContent)
            {
                return;
            }

            IContent node = ApplicationContext.Current.Services.ContentService.GetById(nodeId);

            const string dialogPath = "/App_Plugins/workflow/Backoffice/views/dialogs/";

            int menuLength = e.Menu.Items.Count;

            string nodeName    = node.Name;
            IUser  currentUser = UmbracoContext.Current.Security.CurrentUser;
            var    items       = new Umbraco.Web.Models.Trees.MenuItemList();

            var i = new Umbraco.Web.Models.Trees.MenuItem("workflowHistory", "Workflow history");

            i.LaunchDialogView(dialogPath + "workflow.history.dialog.html", "Workflow history: " + nodeName);
            i.AdditionalData.Add("width", "800px");
            i.SeperatorBefore = true;
            i.Icon            = "directions-alt";

            items.Add(i);

            if (currentUser.IsAdmin())
            {
                i = new Umbraco.Web.Models.Trees.MenuItem("workflowConfig", "Workflow configuration");
                i.LaunchDialogView(dialogPath + "workflow.config.dialog.html", "Workflow configuration: " + nodeName);
                i.Icon = "path";

                items.Add(i);
            }

            if (menuLength <= 5)
            {
                e.Menu.Items.AddRange(items);
            }
            else
            {
                e.Menu.Items[5].SeperatorBefore = true;
                e.Menu.Items.InsertRange(5, items);
            }
        }
        private void TreeControllerBase_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
        {
            int nodeId;
            if (!int.TryParse(e.NodeId, out nodeId)) return;

            var selectedMedia = ApplicationContext.Current.Services.MediaService.GetById(nodeId);
            var mediaType = selectedMedia != null ? selectedMedia.ContentType.Alias : string.Empty;

            if (sender.TreeAlias == "media" && (mediaType.Equals("Folder") || nodeId == Constants.System.Root))
            {
                var umbracoHelper = new Umbraco.Web.UmbracoHelper(Umbraco.Web.UmbracoContext.Current);
                var menuItemTitle = umbracoHelper.GetDictionaryValue("ZippyMedia.Labels.UploadZipFile");

                if (string.IsNullOrWhiteSpace(menuItemTitle)) menuItemTitle = "Upload and Unpack ZIP";
                var menuItem = new MenuItem("uploadZipFile", menuItemTitle)
                {
                    Icon = "compress",
                    SeperatorBefore = true
                };
                menuItem.LaunchDialogView("/App_Plugins/zippyMedia/Views/Upload-Zip.html", menuItemTitle);

                e.Menu.Items.Add(menuItem);
            }



            //Upload from server AKA ftp upload comming soon 
            //if (sender.TreeAlias == "media" && mediaType.Equals("Folder") && sender.Security.CurrentUser.UserType.Alias.Equals("admin"))
            //{
            //    var menuItem = new MenuItem("unpackZipFileFromServer", "Unpack ZIP from server");
            //    menuItem.Icon = "server";
            //    menuItem.SeperatorBefore = false;
            //    menuItem.LaunchDialogView("/App_Plugins/zippyMedia/Views/Unpack-Zip.html", "Unpack ZIP archive from server");

            //    e.Menu.Items.Add(menuItem);
            //}

            //if (sender.TreeAlias == "media" && Convert.ToInt32(e.NodeId) == Constants.System.Root && sender.Security.CurrentUser.UserType.Alias.Equals("admin"))
            //{
            //    var menuItem = new MenuItem("unpackZipFileFromServer", "Unpack ZIP from server");
            //    menuItem.Icon = "server";
            //    menuItem.SeperatorBefore = false;
            //    menuItem.LaunchDialogView("/App_Plugins/zippyMedia/Views/Unpack-Zip.html", "Unpack ZIP archive from server");

            //    e.Menu.Items.Add(menuItem);

            //}

        }
        private static void FindAndReplace_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
        {
            if (sender.TreeAlias != "content")
            {
                return;
            }

            var menuItem = new Umbraco.Web.Models.Trees.MenuItem("findAndReplace", "Find and Replace");

            menuItem.AdditionalData.Add("actionView", "/App_Plugins/FindAndReplace/Views/findandreplace.html");
            menuItem.AdditionalData.Add("contentId", e.NodeId);
            menuItem.Icon            = "axis-rotation-2";
            menuItem.SeperatorBefore = true;

            e.Menu.Items.Insert(e.Menu.Items.Count, menuItem);
        }
 private void TreeControllerBase_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
 {
     if (sender.TreeAlias == "media")
     {
         var umbracoHelper = new UmbracoHelper(UmbracoContext.Current);
         var nodeId        = e.NodeId;
         var mediaItem     = umbracoHelper.TypedMedia(nodeId);
         if (mediaItem != null && mediaItem.DocumentTypeAlias == "Image")
         {
             var rotateMenuItem = new Umbraco.Web.Models.Trees.MenuItem("rotateImage", "Rotate");
             rotateMenuItem.Icon            = "axis-rotation";
             rotateMenuItem.SeperatorBefore = true;
             rotateMenuItem.AdditionalData.Add("actionView", "/app_plugins/tooorangey.uSpinMeRightRound/selectrotation.html");
             e.Menu.Items.Insert(4, rotateMenuItem);
         }
     }
 }
Пример #9
0
        private void MemberLogin_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
        {
            // If we are not on the members tree, just return
            if (sender.TreeAlias != "member")
            {
                return;
            }

            var menuItem = new Umbraco.Web.Models.Trees.MenuItem("memberLogin", "Impersonate Member");

            menuItem.Icon = "client";
            menuItem.AdditionalData.Add("memberId", e.NodeId);
            menuItem.AdditionalData.Add("actionView", "/App_Plugins/MemberLogin/views/memberlogin.html");
            menuItem.SeparatorBefore = false;

            e.Menu.Items.Insert(e.Menu.Items.Count, menuItem);
        }
Пример #10
0
        private static void PurgeCdn_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
        {
            if (sender.TreeAlias != "content")
            {
                return;
            }

            if (CdnPurger.IsActive())
            {
                var menuItem = new Umbraco.Web.Models.Trees.MenuItem("purgeCdn", "Purge CDN");
                menuItem.AdditionalData.Add("actionView", "/App_Plugins/PurgeCdn/Views/purgecdn.html");
                menuItem.AdditionalData.Add("contentId", e.NodeId);
                menuItem.Icon            = "axis-rotation";
                menuItem.SeperatorBefore = true;

                e.Menu.Items.Insert(e.Menu.Items.Count, menuItem);
            }
        }
Пример #11
0
 private void TreeControllerBase_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
 {
     if (sender.TreeAlias == "content")
     {
         var umbracoHelper     = new UmbracoHelper(UmbracoContext.Current);
         var nodeId            = e.NodeId;
         var contentItem       = umbracoHelper.TypedContent(nodeId);
         var blackListDocTypes = new string[] { "redirectPage" };
         if (contentItem != null && !blackListDocTypes.Contains(contentItem.DocumentTypeAlias))
         {
             var redirectsMenuItem = new Umbraco.Web.Models.Trees.MenuItem("viewRedirects", "Manage Redirects");
             redirectsMenuItem.Icon            = "reply-arrow";
             redirectsMenuItem.SeperatorBefore = true;
             redirectsMenuItem.AdditionalData.Add("actionView", "/app_plugins/tooorangey.RumDo/ManageRedirectsActionMenu.html");
             var menuPosition = e.Menu.Items.Count > 9 ? 10 : e.Menu.Items.Count - 1;
             e.Menu.Items.Insert(menuPosition, redirectsMenuItem);
         }
     }
 }
Пример #12
0
        private static void ContentTreeController_MenuRendering(Umbraco.Web.Trees.TreeControllerBase sender, Umbraco.Web.Trees.MenuRenderingEventArgs e)
        {
            if (sender.TreeAlias != "content" || string.CompareOrdinal(e.NodeId, "-1") == 0)
            {
                return;
            }

            var menuLength  = e.Menu.Items.Count;
            var nodeName    = Utility.GetNode(int.Parse(e.NodeId)).Name;
            var currentUser = UmbracoContext.Current.Security.CurrentUser;
            var items       = new Umbraco.Web.Models.Trees.MenuItemList();

            var i = new Umbraco.Web.Models.Trees.MenuItem("workflowHistory", "Workflow history");

            i.LaunchDialogView("/App_Plugins/workflow/Backoffice/dialogs/workflow.history.dialog.html", "Workflow history: " + nodeName);
            i.AdditionalData.Add("width", "700px");
            i.SeperatorBefore = true;
            i.Icon            = "directions-alt";

            items.Add(i);

            if (currentUser.IsAdmin())
            {
                i = new Umbraco.Web.Models.Trees.MenuItem("workflowConfig", "Workflow configuration");
                i.LaunchDialogView("/App_Plugins/workflow/Backoffice/dialogs/workflow.config.dialog.html", "Workflow configuration: " + nodeName);
                i.Icon = "path";

                items.Add(i);
            }

            if (menuLength < 5)
            {
                e.Menu.Items.AddRange(items);
            }
            else
            {
                e.Menu.Items.InsertRange(5, items);
            }
        }
 private void TreeControllerBase_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
 {
     if (sender.TreeAlias == "content" && (ConfigurationManager.AppSettings.Get("HideUnpublishedVariants.Enable") ?? "false") == "true")
     {
         using (var cref = _context.EnsureUmbracoContext())
         {
             var cache = cref.UmbracoContext.Content;
             if (string.IsNullOrEmpty(e.NodeId) || e.NodeId == "-1" || e.NodeId.Equals(Constants.System.RecycleBinContentString))
             {
                 return;
             }
             var node = cache.GetById(contentId: int.Parse(e.NodeId));
             if (node.Level == 1)
             {
                 var toggleMenuItem = new Umbraco.Web.Models.Trees.MenuItem("toggleMlNodes", "Toggle not created variants");
                 toggleMenuItem.Icon            = "axis-rotation";
                 toggleMenuItem.SeparatorBefore = true;
                 toggleMenuItem.ExecuteJsMethod("HideShowTreeNodes()");
                 e.Menu.Items.Insert(e.Menu.Items.Count(), toggleMenuItem);
             }
         }
     }
 }
        private void ContentTreeController_MenuRendering(Umbraco.Web.Trees.TreeControllerBase sender, Umbraco.Web.Trees.MenuRenderingEventArgs e)
        {
            switch (sender.TreeAlias)
            {
            case "content":

                //creates a menu action that will open /umbraco/currentSection/itemAlias.html;
                var i = new Umbraco.Web.Models.Trees.MenuItem("duplicateNode", "Duplicate");

                //optional, if you dont want to follow conventions, but do want to use a angular view
                i.AdditionalData.Add("actionView", "/App_Plugins/DuplicateNode/DuplicateNodeView.html");

                //sets the icon to icon-wine-glass
                i.Icon = "user-females-alt";

                //insert at index 5
                if (e.Menu.Items.Count > 5)
                {
                    e.Menu.Items.Insert(5, i);
                }

                break;
            }
        }
 private void TreeControllerBase_MenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
 {
     //check if tree is content
     if (sender.TreeAlias == "content")
     {
         //get content item as IPublishedContent to read document type
         var contentItem = sender.Umbraco.TypedContent(e.NodeId);
         //if it's a blog post let's add the menu item
         if (contentItem != null && contentItem.DocumentTypeAlias == "blogpost")
         {
             // create a new menu Item
             var tweetThisMenuItem = new Umbraco.Web.Models.Trees.MenuItem("tweetThis", "Tweet This");
             //give it an appropriate icon
             tweetThisMenuItem.Icon = "bird";
             //whether to add a seperator line before the item in the menu
             tweetThisMenuItem.SeperatorBefore = true;
             //wiring up what to do when the menu item is selected
             //here we are loading our tweetthis view containing our twitter message box onto as an actionView (slidey out thing)
             tweetThisMenuItem.AdditionalData.Add("actionView", "/app_plugins/tooorangey.TweetThis/tweetthis.html");
             //here we add to the menu
             e.Menu.Items.Insert(5, tweetThisMenuItem);
         }
     }
 }