コード例 #1
0
        protected void Run(ClientPipelineArgs args)
        {
            string str = args.Parameters["id"];
            string name = args.Parameters["language"];
            string str3 = args.Parameters["version"];
            var version = Sitecore.Data.Version.Parse(str3);

            Item item = Context.ContentDatabase.GetItem(str, Sitecore.Globalization.Language.Parse(name), version);
            Error.AssertItemFound(item);

            if (!SheerResponse.CheckModified()) return;

            if (!args.IsPostBack)
            {
                string forItemPageURL = Sitecore.Configuration.Settings.GetSetting("SCBasics.AuditTrail.ForItemPageURL");

                if (!string.IsNullOrWhiteSpace(forItemPageURL))
                {
                    Sitecore.Text.UrlString url = new Sitecore.Text.UrlString(
                        forItemPageURL);
                    url.Append("id", HttpUtility.UrlEncode(args.Parameters["id"]));
                    url.Append("la", HttpUtility.UrlEncode(args.Parameters["language"]));
                    url.Append("ve", HttpUtility.UrlEncode(args.Parameters["version"]));

                    Sitecore.Context.ClientPage.ClientResponse.ShowModalDialog(url.ToString(),
                        "990px", "570px",
                        "ForItemPageURL", true);
                    args.WaitForPostBack();
                }
                else
                {
                    SheerResponse.Alert("SCBasics.AuditTrail.ForItemPageURL is empty. Please verify your configurations", true);
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// Handles the Postback of the Sheer Dialogs
        /// </summary>
        protected void Run(ClientPipelineArgs args)
        {
            try
            {
                if (!args.IsPostBack)
                {
                    if (!args.HasResult && !string.IsNullOrEmpty(args.Parameters["name"]) && args.Parameters["first"] == "True")
                    {
                        args.Parameters["first"] = "False";
                        SheerResponse.Input("Enter a name for the new item:", "Copy of " + args.Parameters["name"], Settings.ItemNameValidation, Translate.Text("'$Input' is not a valid name."), Settings.MaxItemNameLength);
                        args.WaitForPostBack();
                    }
                }
                else if (args.HasResult && !(string.IsNullOrEmpty(args.Result)) && ID.IsID(args.Result))
                {
                    //This will make sure the Content Editor loads the latest version after dialog closes.
                    string load = String.Concat(new object[] { "item:load(id=", args.Result, ")" });
                    Context.ClientPage.SendMessage(this, load);
                    String refresh = String.Format("item:refreshchildren(id={0})", args.Result);
                    Context.ClientPage.ClientResponse.Timer(refresh, 2);
                }
                else if (args.HasResult && !(string.IsNullOrEmpty(args.Result)))
                {
                    //Check if valid item name
                    string itemName = ItemUtil.ProposeValidItemName(args.Result);
                    if (itemName == args.Result)
                    {
                        //Show the dialog to select the languages
                        Sitecore.Text.UrlString url = new Sitecore.Text.UrlString("/sitecore/admin/SharedSource/DuplicateItemSelectLanguages.aspx");
                        url.Append("id", args.Parameters["id"]);
                        url.Append("duplicateItemName", args.Result);
                        url.Append("currentItemName", args.Parameters["name"]);
                        url.Append("database", args.Parameters["database"]);

                        Context.ClientPage.ClientResponse.ShowModalDialog(url.ToString(), "420", "400", string.Empty, true, "", "", false);
                        args.WaitForPostBack(true);
                    }
                    else
                    {
                        //Item name is invalid.
                        //If Item Name empty
                        //Control will never come here.
                        SheerResponse.Input("Enter a name for the new item:", "Copy of " + args.Parameters["name"]);
                        args.WaitForPostBack();
                    }
                }
                else
                {
                    // Do Nothing
                }
            }
            catch (Exception ex)
            {
                Log.Error("Some Error Occurred in Duplicate Item In Selected Languages", ex, this);
            }
        }
コード例 #3
0
ファイル: TestCommand.cs プロジェクト: navdev/testproj
 protected void Run(Sitecore.Web.UI.Sheer.ClientPipelineArgs args)
 {
     if (args.IsPostBack)
     {
     }
     else
     {
         Sitecore.Text.UrlString url = new Sitecore.Text.UrlString("/sitecore modules/Shell/Demo/TestPage.aspx");
         url.Append("id", args.Parameters["id"]);
         url.Append("database", args.Parameters["database"]);
         Sitecore.Context.ClientPage.ClientResponse.ShowModalDialog(url.ToString(), true);
         args.WaitForPostBack(true);
     }
 }
コード例 #4
0
ファイル: SCDialogCommand.cs プロジェクト: navdev/testproj
 protected void Run(Sitecore.Web.UI.Sheer.ClientPipelineArgs args)
 {
     if (args.IsPostBack)
     {
     }
     else
     {
         Sitecore.Text.UrlString url = new Sitecore.Text.UrlString("/sitecore/client/Your Apps/View Jobs/Job Listing?sc_lang=en");
         url.Append("id", args.Parameters["id"]);
         url.Append("database", args.Parameters["database"]);
         Sitecore.Context.ClientPage.ClientResponse.ShowModalDialog(url.ToString(), true);
         args.WaitForPostBack(true);
     }
 }
コード例 #5
0
        /// <summary>
        /// Handles the AddChildElement dialog
        /// </summary>
        /// <param name="args"></param>
        protected void ExecNewChildPipeline(ClientPipelineArgs args)
        {
            if (args.IsPostBack)
            {
                if ((!String.IsNullOrEmpty(args.Result)) && args.Result != "undefined")
                {
                    args.Parameters["id"] = args.Result;
                    Sitecore.Context.ClientPage.Start(this, "ExecEditContentPipeline", args.Parameters);
                }
            }
            else
            {
                Sitecore.Text.UrlString url = new Sitecore.Text.UrlString(Sitecore.UIUtil.GetUri("control:AddChildElement"));
                url.Append("id", args.Parameters["id"]);
                url.Append("database", args.Parameters["database"]);
                url.Append("lang", args.Parameters["la"]);

                Sitecore.Context.ClientPage.ClientResponse.ShowModalDialog(url.ToString(), "400px", "300px", string.Empty, true);
                args.WaitForPostBack(true);
            }
        }
コード例 #6
0
        protected void Run(ClientPipelineArgs args)
        {
            string str     = args.Parameters[IdParameterKey];
            string name    = args.Parameters[LanguageParameterKey];
            string str3    = args.Parameters[VersionParameterKey];
            var    version = Sitecore.Data.Version.Parse(str3);

            Item item = Context.ContentDatabase.GetItem(str, Sitecore.Globalization.Language.Parse(name), version);

            Error.AssertItemFound(item);

            if (!SheerResponse.CheckModified())
            {
                return;
            }

            if (!args.IsPostBack)
            {
                string forSitePageURL = "/Sitecore Modules/Shell/SitecoreEventLog/SiteEventLog.aspx";

                if (!string.IsNullOrWhiteSpace(forSitePageURL))
                {
                    Sitecore.Text.UrlString url = new Sitecore.Text.UrlString(
                        forSitePageURL);
                    url.Append(IdParameterKey, HttpUtility.UrlEncode(args.Parameters[IdParameterKey]));
                    url.Append("la", HttpUtility.UrlEncode(args.Parameters[LanguageParameterKey]));
                    url.Append("ve", HttpUtility.UrlEncode(args.Parameters[VersionParameterKey]));

                    Context.ClientPage.ClientResponse.ShowModalDialog(url.ToString(),
                                                                      "990px", "650px",
                                                                      "ForSitePageURL", true);
                    args.WaitForPostBack();
                }
                else
                {
                    SheerResponse.Alert("SiteEventLog.aspx url is wrong, please check the source code.",
                                        true);
                }
            }
        }
コード例 #7
0
        protected void Run(ClientPipelineArgs args)
        {
            string str     = args.Parameters["id"];
            string name    = args.Parameters["language"];
            string str3    = args.Parameters["version"];
            var    version = Sitecore.Data.Version.Parse(str3);

            Item item = Context.ContentDatabase.GetItem(str, Sitecore.Globalization.Language.Parse(name), version);

            Error.AssertItemFound(item);

            if (!SheerResponse.CheckModified())
            {
                return;
            }

            if (!args.IsPostBack)
            {
                string forSitePageURL = Sitecore.Configuration.Settings.GetSetting("SCBasics.AuditTrail.ForSitePageURL");

                if (!string.IsNullOrWhiteSpace(forSitePageURL))
                {
                    Sitecore.Text.UrlString url = new Sitecore.Text.UrlString(
                        forSitePageURL);
                    url.Append("id", HttpUtility.UrlEncode(args.Parameters["id"]));
                    url.Append("la", HttpUtility.UrlEncode(args.Parameters["language"]));
                    url.Append("ve", HttpUtility.UrlEncode(args.Parameters["version"]));

                    Sitecore.Context.ClientPage.ClientResponse.ShowModalDialog(url.ToString(),
                                                                               "990px", "570px",
                                                                               "ForSitePageURL", true);
                    args.WaitForPostBack();
                }
                else
                {
                    SheerResponse.Alert("SCBasics.AuditTrail.ForItemPageURL is empty. Please verify your configurations",
                                        true);
                }
            }
        }
コード例 #8
0
        /// <summary>
        /// Handles the edit-item dialog afte the new child has been created
        /// </summary>
        /// <param name="args"></param>
        protected void ExecEditContentPipeline(ClientPipelineArgs args)
        {
            if (args.IsPostBack)
            {
                Database masterDb = Sitecore.Configuration.Factory.GetDatabase("master");
                Item item = masterDb.GetItem(args.Parameters["id"]);
                string parentId = item.Parent.ID.ToString();

                Sitecore.Context.ClientPage.SendMessage(this, "item:load(id=" + parentId + ")");
                Sitecore.Context.ClientPage.SendMessage(this, "item:refreshchildren(id=" + parentId + ")");
            }
            else
            {
                Sitecore.Text.UrlString url = new Sitecore.Text.UrlString("/sitecore/shell/Applications/Content%20Manager/default.aspx");
                url.Append("fo", args.Parameters["id"]);
                url.Append("vs", "1");
                url.Append("mo", "preview");
                url.Append("la", args.Parameters["la"]);

                Sitecore.Context.ClientPage.ClientResponse.ShowModalDialog(url.ToString(), "960px", "800px", string.Empty, true);
                args.WaitForPostBack(true);
            }
        }
コード例 #9
0
        protected void Run(ClientPipelineArgs args)
        {
            SecurityController security = new SecurityController();

            Logger.Info("ReviewAndUnlock running");

            if (security.IsAuthorized())
            {
                if (args.IsPostBack)
                {
                    Sitecore.Context.ClientPage.SendMessage(this, "item:refresh");
                    return;
                }
                else
                {
                    Sitecore.Text.UrlString popUpUrl = new Sitecore.Text.UrlString("/api/locksmith/modal");
                    popUpUrl.Append("id", args.Parameters["id"]);
                    SheerResponse.ShowModalDialog(popUpUrl.ToString(), "700", "550");
                    args.WaitForPostBack();
                }
            }
        }
コード例 #10
0
        /// <summary>
        /// Opens a new window with the selected element where it can be edited
        /// </summary>
        /// <param name="id"></param>
        private void EditChild(string id)
        {
            if(string.IsNullOrEmpty(id))
            {
                return;
            }
            Language lang = GetEditingContextLanguage();
            Item itemToEdit = Sitecore.Context.ContentDatabase.GetItem(id, lang);
            if (itemToEdit == null)
            {
                SheerResponse.Alert("Item with id: " + id + " could not be found");
            }

            Sitecore.Text.UrlString url = new Sitecore.Text.UrlString("/sitecore/shell/Applications/Content%20Manager/default.aspx");
            url.Append("fo", id);
            url.Append("vs", "1");
            url.Append("mo", "preview");
            url.Append("la", lang.Name);

            Sitecore.Context.ClientPage.ClientResponse.ShowModalDialog(url.ToString(), "960px", "800px", string.Empty, false);
        }