private void BuildCheckList()
        {
            this.FlushTargets.Controls.Clear();
            string     str2 = Settings.DefaultPublishingTargets.ToLowerInvariant();
            ListString str  = new ListString(Registry.GetString("/Current_User/Publish/Targets"));

            // add master database

            Sitecore.Publishing.PublishManager.GetPublishingTargets(Context.ContentDatabase).ForEach(target =>
            {
                string str3 = "pb_" + ShortID.Encode(target.ID);
                HtmlGenericControl child = new HtmlGenericControl("input");
                this.FlushTargets.Controls.Add(child);
                child.Attributes["type"] = "checkbox";
                child.ID  = str3;
                bool flag = str2.IndexOf('|' + target.Key + '|', StringComparison.InvariantCulture) >= 0;
                if (str.Contains(target.ID.ToString()))
                {
                    flag = true;
                }
                if (flag)
                {
                    child.Attributes["checked"] = "checked";
                }
                child.Disabled = !target.Access.CanWrite();
                HtmlGenericControl control2 = new HtmlGenericControl("label");
                this.FlushTargets.Controls.Add(control2);
                control2.Attributes["for"] = str3;
                control2.InnerText         = target.DisplayName;
                this.FlushTargets.Controls.Add(new LiteralControl("<br>"));
            });
        }
Пример #2
0
        /// <summary>
        /// Builds the publishing targets.
        ///
        /// </summary>
        private void BuildPublishingTargets()
        {
            this.PublishingTargets.Controls.Clear();
            Item       itemNotNull = Sitecore.Client.GetItemNotNull("/sitecore/system/publishing targets");
            ListString listString  = new ListString(Registry.GetString("/Current_User/Publish/Targets"));
            string     str1        = Settings.DefaultPublishingTargets.ToLowerInvariant();
            ChildList  children    = itemNotNull.Children;

            if (children.Count <= 0)
            {
                this.SettingsPane.Visible       = false;
                this.NoPublishingTarget.Visible = true;
                this.NextButton.Disabled        = true;
            }
            else
            {
                HtmlGenericControl htmlGenericControl1 = (HtmlGenericControl)null;
                foreach (Item obj in children)
                {
                    string str2 = "pb_" + ShortID.Encode(obj.ID);
                    htmlGenericControl1 = new HtmlGenericControl("input");
                    this.PublishingTargets.Controls.Add((System.Web.UI.Control)htmlGenericControl1);
                    htmlGenericControl1.Attributes["type"] = "checkbox";
                    htmlGenericControl1.ID = str2;
                    bool flag = false;// str1.IndexOf((string)(object)'|' + (object)obj.Key + (string)(object)'|', StringComparison.InvariantCulture) >= 0;
                    if (listString.Contains(obj.ID.ToString()))
                    {
                        flag = true;
                    }
                    if (flag)
                    {
                        htmlGenericControl1.Attributes["checked"] = "checked";
                    }
                    htmlGenericControl1.Disabled = children.Count == 1 || !obj.Access.CanWrite();
                    HtmlGenericControl htmlGenericControl2 = new HtmlGenericControl("label");
                    this.PublishingTargets.Controls.Add((System.Web.UI.Control)htmlGenericControl2);
                    htmlGenericControl2.Attributes["for"] = str2;
                    htmlGenericControl2.InnerText         = obj.DisplayName;
                    this.PublishingTargets.Controls.Add((System.Web.UI.Control) new LiteralControl("<br>"));
                }
                if (children.Count != 1)
                {
                    return;
                }
                this.PublishingTargetsPanel.Disabled = true;
                if (htmlGenericControl1 == null)
                {
                    return;
                }
                htmlGenericControl1.Attributes["checked"] = "checked";
            }
        }
Пример #3
0
        /// <summary>
        /// Builds the Checkboxes to select indexes
        /// </summary>
        /// <param name="name">The name.</param>
        /// <param name="header">The header.</param>
        /// <param name="selected">The selected.</param>
        /// <param name="indexMap">The index map.</param>
        private void BuildIndexCheckbox(string name, string header, ListString selected, ListString indexMap)
        {
            Assert.ArgumentNotNull(name, "name");
            Assert.ArgumentNotNull(header, "header");
            Assert.ArgumentNotNull(selected, "selected");
            Assert.ArgumentNotNull(indexMap, "indexMap");
            var child = new Checkbox();

            this.indexes.Controls.Add(child);
            child.ID      = Control.GetUniqueID("dk_");
            child.Header  = header;
            child.Value   = name;
            child.Checked = selected.Contains(name);
            indexMap.Add(child.ID);
            indexMap.Add(name);
            this.indexes.Controls.Add(new LiteralControl("<br />"));
        }
 protected void Validator_SuppressValidator(string markerId)
 {
     Assert.ArgumentNotNull(markerId, "markerId");
     Assert.IsTrue(UserOptions.ContentEditor.ShowValidatorBar, "Validator bar is switched off in Content Editor.");
     ValidatorCollection validators = ValidatorManager.GetValidators(ValidatorsMode.ValidatorBar, this.ValidatorsKey);
     var byMarkerID = validators.GetByMarkerID(markerId);
     if (byMarkerID != null)
     {
         Assert.IsNotNull(byMarkerID.ItemUri, "Item URI is null.");
         Item item = Database.GetItem(byMarkerID.ItemUri);
         if (item != null)
         {
             ListString str = new ListString(item["__Suppressed Validation Rules"]);
             Assert.IsNotNull(byMarkerID.ValidatorID, "Validator ID is null.");
             if (!str.Contains(byMarkerID.ValidatorID.ToString()))
             {
                 str.Add(byMarkerID.ValidatorID.ToString());
                 using (new SecurityDisabler())
                 {
                     item.Editing.BeginEdit();
                     item["__Suppressed Validation Rules"] = str.ToString();
                     item.Editing.EndEdit();
                 }
                 validators.Remove(byMarkerID);
                 WebUtil.SetSessionValue(this.ValidatorsKey + ValidatorsMode.ValidatorBar, validators);
                 SheerResponse.Eval("scContent.validate()");
             }
         }
     }
 }
 protected void ToggleRibbonStrip(string id)
 {
     Assert.ArgumentNotNull(id, "id");
     ListString str = new ListString(UserOptions.ContentEditor.VisibleStrips);
     if (str.Count == 0)
     {
         Database database = Factory.GetDatabase("core", false);
         Assert.IsNotNull(database, typeof(Database));
         Item item = database.GetItem(ItemIDs.DefaultRibbon);
         Assert.IsNotNull(item, typeof(Ribbon));
         foreach (Item item2 in item.Children)
         {
             Item item3 = item2;
             if (item3.TemplateID == TemplateIDs.Reference)
             {
                 item3 = item3.Database.Items[item3["Reference"]];
             }
             if (item3["Hidden by default"] != "1")
             {
                 str.Add(item3.ID.ToString());
             }
         }
     }
     if (str.Contains(id))
     {
         if (str.Count > 1)
         {
             str.Remove(id);
         }
         else
         {
             SheerResponse.Alert("You cannot remove the last strip from the ribbon.", new string[0]);
         }
     }
     else
     {
         str.Add(id);
     }
     UserOptions.ContentEditor.VisibleStrips = str.ToString();
     this.Reload();
 }
 protected void ShowRibbonContextMenu()
 {
     var contextMenu = new Sitecore.Web.UI.HtmlControls.Menu();
     Database database = Factory.GetDatabase("core", false);
     Assert.IsNotNull(database, typeof(Database));
     Item item = database.GetItem(ItemIDs.DefaultRibbon);
     Assert.IsNotNull(item, typeof(Ribbon));
     ListString str = new ListString(UserOptions.ContentEditor.VisibleStrips);
     SheerResponse.DisableOutput();
     foreach (Item item2 in item.Children)
     {
         Item strip = item2;
         if (strip.TemplateID == TemplateIDs.Reference)
         {
             strip = strip.Database.Items[strip["Reference"]];
         }
         if (this.CanBeShown(strip))
         {
             bool check = strip["Hidden by default"] != "1";
             if (str.Count > 0)
             {
                 check = str.Contains(strip.ID.ToString());
             }
             contextMenu.Add("S" + strip.ID.ToShortID(), strip["Header"], string.Empty, string.Empty, "ToggleRibbonStrip(\"" + strip.ID + "\")", check, string.Empty, MenuItemType.Check);
         }
     }
     contextMenu.AddDivider();
     contextMenu.Add("__Reset", "Reset", string.Empty, string.Empty, "ResetRibbonStrips", false, string.Empty, MenuItemType.Normal);
     CommandState hidden = CommandState.Hidden;
     Command command = CommandManager.GetCommand("ribbon:customize");
     if (command != null)
     {
         hidden = CommandManager.QueryState(command, CommandContext.Empty);
     }
     if ((hidden == CommandState.Enabled) || (hidden == CommandState.Down))
     {
         contextMenu.Add("__Customize", "Customize", string.Empty, string.Empty, "ribbon:customize", false, string.Empty, MenuItemType.Normal);
     }
     SheerResponse.EnableOutput();
     SheerResponse.ShowContextMenu(Context.ClientPage.ClientRequest.Control, "contextmenu", contextMenu);
 }
Пример #7
0
 protected virtual void BuildIndexCheckbox(string name, string header, ListString selected, ListString indexMap)
 {
     Assert.ArgumentNotNull(name, "name");
     Assert.ArgumentNotNull(header, "header");
     Assert.ArgumentNotNull(selected, "selected");
     Assert.ArgumentNotNull(indexMap, "indexMap");
     var child = new Checkbox();
     Indexes.Controls.Add(child);
     child.ID = Control.GetUniqueID("dk_");
     child.Header = header;
     child.Value = name;
     child.Checked = selected.Contains(name);
     indexMap.Add(child.ID);
     indexMap.Add(name);
     Indexes.Controls.Add(new LiteralControl("<br />"));
 }
        private void NotifyUsers(ImportOptions options, int num, int num2, int num3, int num4, string pathToEmailReport)
        {
            try
            {
            Sitecore.Data.Database master = Sitecore.Modules.EmailCampaign.Util.GetContentDb();

            MediaCreatorOptions md = new MediaCreatorOptions();

            md.Destination = @"/sitecore/media library/Files/" + Sitecore.Configuration.Settings.GetSetting("RecipientImporterExt.PathToEmailReport", "/temp")+"/" + Path.GetFileNameWithoutExtension(pathToEmailReport);    // Set options
            md.Database = master;   // Set options
            MediaItem mediaItem = null;
            using (new SecurityDisabler())   // Use the SecurityDisabler object to override the security settings
            {
                // Create Media in database from file
                mediaItem = MediaManager.Creator.CreateFromFile(pathToEmailReport, md);
            }

            Sitecore.Data.Items.Item itemToSend = master.GetItem(Sitecore.Configuration.Settings.GetSetting("RecipientImporterExt.MessagePath", "/sitecore/content/Home/Email Campaign/Messages/Service Messages/Self-Service Subscription/Subscription Notification"));
            MessageItem messageItem = Sitecore.Modules.EmailCampaign.Factory.GetMessage(itemToSend);

            messageItem.Body = string.Format("Recipients imported: {0} <br/> E-mail addresses already exist: {1} <br/> E-mail addresses not provided: {2} <br/> Users not imported as required fields not available: {3}"
                                            + " <br/> You can check report file with the failed records here: {4}. <br/> Import finished at " + DateTime.Now.ToString(@"d/M/yyyy hh:mm:ss tt"), num, num2, num3, num4, pathToEmailReport);
            messageItem.Subject = "User import from " + Path.GetFileNameWithoutExtension(options.Filename) + " finished.";
            if (mediaItem != null)
            {
                messageItem.Attachments.Add(mediaItem);
            }
            SendingManager sendingManager = new SendingManager(messageItem);

            ListString usernamesToSend = new ListString(Sitecore.Configuration.Settings.GetSetting("RecipientImporterExt.SendTo", "sitecore\\admin"), ',');
            if (usernamesToSend.Count == 0)
            {
                Log.Info("RecipientImporterExt debug info: no users configured to send email to. Email will be sent only to the context user.", this);
                //  return result;
            }
            else
            {
                foreach (string nameString in usernamesToSend)
                {
                    Contact contactToSend = Sitecore.Modules.EmailCampaign.Factory.GetContactFromName(nameString);
                    if (contactToSend != null)
                    {
                        Log.Info("RecipientImporterExt debug info: Sending notification about the import to " + contactToSend.Profile.Email, this);
                        sendingManager.SendStandardMessage(contactToSend);
                    }
                }
            }

            User user = Sitecore.Context.User;
            if (user != null && !usernamesToSend.Contains(user.Name))
            {
                string username = user.Name;
                Contact contactToSend = Sitecore.Modules.EmailCampaign.Factory.GetContactFromName(username);
                if (contactToSend != null)
                {
                    Log.Info("RecipientImporterExt debug info: Sending notification about the import to " + username, this);
                    sendingManager.SendStandardMessage(contactToSend);
                }
            }
            }
            catch (Exception e)
            {

            Logging.LogError(e);
            }
        }
        private void BuildCheckList()
        {
            this.FlushTargets.Controls.Clear();
            string str2 = Settings.DefaultPublishingTargets.ToLowerInvariant();
            ListString str = new ListString(Registry.GetString("/Current_User/Publish/Targets"));
            // add master database

            Sitecore.Publishing.PublishManager.GetPublishingTargets(Context.ContentDatabase).ForEach(target =>
            {
                string str3 = "pb_" + ShortID.Encode(target.ID);
                HtmlGenericControl child = new HtmlGenericControl("input");
                this.FlushTargets.Controls.Add(child);
                child.Attributes["type"] = "checkbox";
                child.ID = str3;
                bool flag = str2.IndexOf('|' + target.Key + '|', StringComparison.InvariantCulture) >= 0;
                if (str.Contains(target.ID.ToString()))
                {
                    flag = true;
                }
                if (flag)
                {
                    child.Attributes["checked"] = "checked";
                }
                child.Disabled = !target.Access.CanWrite();
                HtmlGenericControl control2 = new HtmlGenericControl("label");
                this.FlushTargets.Controls.Add(control2);
                control2.Attributes["for"] = str3;
                control2.InnerText = target.DisplayName;
                this.FlushTargets.Controls.Add(new LiteralControl("<br>"));

            });
        }