private bool SendEmail(OrderTaskContext context, VendorManufacturer vendorOrManufacturer, Order order)
        {
            var storeSettingsProvider = Factory.CreateStoreSettingsProvider();
            var defaultCulture        = storeSettingsProvider.GetDefaultLocale();
            var hccRequestContext     = HccRequestContextUtils.GetContextWithCulture(context.RequestContext, defaultCulture);
            var contentService        = Factory.CreateService <ContentService>(hccRequestContext);

            var toEmail = vendorOrManufacturer.EmailAddress;

            HtmlTemplate t            = null;
            var          templateBvin = vendorOrManufacturer.DropShipEmailTemplateId;

            if (templateBvin != string.Empty)
            {
                long templateId = 0;
                long.TryParse(templateBvin, out templateId);
                t = contentService.HtmlTemplates.Find(templateId);
            }
            if (t == null)
            {
                t = contentService.GetHtmlTemplateOrDefault(HtmlTemplateType.DropShippingNotice);
            }

            if (!string.IsNullOrEmpty(toEmail))
            {
                var replacers = new List <IReplaceable>();
                replacers.Add(order);
                replacers.Add(vendorOrManufacturer);
                t = t.ReplaceTagsInTemplate(hccRequestContext, replacers, order.ItemsAsReplaceable());

                var m = t.ConvertToMailMessage(toEmail);
                return(MailServices.SendMail(m, hccRequestContext.CurrentStore));
            }
            return(false);
        }
Exemplo n.º 2
0
        public Editor(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator)
            : base(viewContext, initializer)
        {
            UrlGenerator = urlGenerator;

            DefaultToolGroup = new EditorToolGroup(this);

            Template = new HtmlTemplate();
            Messages = new EditorMessages();
            StyleSheets = new List<string>();

            new EditorToolFactory(DefaultToolGroup)
                .Bold().Italic().Underline().Strikethrough()
                .FontName()
                .FontSize()
                .FontColor().BackColor()
                .JustifyLeft().JustifyCenter().JustifyRight().JustifyFull()
                .InsertUnorderedList().InsertOrderedList()
                .Outdent().Indent()
                .FormatBlock()
                .CreateLink().Unlink()
                .InsertImage();

            ImageBrowserSettings = new EditorImageBrowserSettings(Messages.ImageBrowserMessages);
        }
        public IActionResult EditPost(ICollection <IFormFile> files, HtmlTemplate model, string filterJson)
        {
            SetBreadcrums(model.Id, filterJson);
            SetViewbag();
            if (!ModelState.IsValid)
            {
                return(View(nameof(Edit), new { model, filterJson }));
            }

            if (model.Id < 1)
            {
                if (files == null || files.Count() < 1)
                {
                    SetErrorMessage("Няма избран файл.");
                    return(View(nameof(Edit), new { model, filterJson }));
                }
            }

            var currentId = model.Id;

            if (service.HtmlTemplate_SaveData(files, model))
            {
                this.SaveLogOperation(currentId == 0, model.Id);
                SetSuccessMessage(MessageConstant.Values.SaveOK);
                return(RedirectToAction(nameof(Edit), new { id = model.Id, filterJson }));
            }
            else
            {
                SetErrorMessage(MessageConstant.Values.SaveFailed);
            }
            return(View(nameof(Edit), model));
        }
Exemplo n.º 4
0
        public int UpdateTemplate(int id, string TemplateString)
        {
            HtmlTemplate template = _repositoryFactory.HtmlTemplateRepository.GetTemplateById(Convert.ToInt32(_hraSessionManager.InstitutionId), id);

            template.Template = System.Text.Encoding.UTF8.GetBytes(TemplateString);
            return(_repositoryFactory.HtmlTemplateRepository.UpdateHtmlTemplate(template));
        }
        public IActionResult ImportHtmlBlank(ICollection <IFormFile> files, HtmlTemplate model)
        {
            SetViewbag();
            if (!ModelState.IsValid)
            {
                return(View(nameof(Edit), model));
            }

            if (model.Id < 1)
            {
                if (files == null || files.Count() < 1)
                {
                    SetErrorMessage("Няма избран файл.");
                    return(View(nameof(Edit), model));
                }
            }

            var currentId = model.Id;

            if (service.HtmlTemplate_ImportData(files, model))
            {
                this.SaveLogOperation(currentId == 0, model.Id);
                SetSuccessMessage(MessageConstant.Values.SaveOK);
            }
            else
            {
                SetErrorMessage(MessageConstant.Values.SaveFailed);
            }
            return(View(nameof(Edit), model));
        }
Exemplo n.º 6
0
        /// <summary>
        /// 邮件模版修改记录
        /// </summary>
        /// <param name="htmlTemplate">邮件模版实体类</param>
        /// <param name="where">修改时附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="delCache">修改成功后清理的CACHE key,支持正则</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时使用ConnString连接</param>
        /// <returns>修改是否成功</returns>
        public static bool Update(HtmlTemplate htmlTemplate, string dbkey = "", Where where = null, string[] delCache = null)
        {
            if (htmlTemplate.TemplateID.IsNull())
            {
                return(false);
            }
            int value = new SQL().Database(dbkey).Update(HtmlTemplate._)
                        .SetP(HtmlTemplate._Subject, htmlTemplate.Subject)
                        .SetP(HtmlTemplate._Body, htmlTemplate.Body)
                        .SetP(HtmlTemplate._ShowName, htmlTemplate.ShowName)
                        .SetP(HtmlTemplate._IsHTML, htmlTemplate.IsHTML)
                        .SetP(HtmlTemplate._Status, htmlTemplate.Status)
                        .SetP(HtmlTemplate._CreateTime, htmlTemplate.CreateTime)
                        .Where(new Where()
                               .AndP(HtmlTemplate._TemplateID, htmlTemplate.TemplateID, Operator.Equal, true)
                               ).Where(where).ToExec();

            if (value <= 0)
            {
                return(false);
            }
            if (delCache.IsNull())
            {
                return(true);
            }
            Cache2.Remove("TH.Mailer.HtmlTemplateCache_", delCache);
            return(true);
        }
Exemplo n.º 7
0
        /// <summary>
        /// 邮件模版添加记录
        /// </summary>
        /// <param name="htmlTemplate">邮件模版实体类</param>
        /// <param name="delCache">添加成功后清理的CACHE key,支持正则</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时使用ConnString连接</param>
        /// <returns>返回添加成功后的ID</returns>
        public static Int64 Insert(HtmlTemplate htmlTemplate, string dbkey = "", string[] delCache = null)
        {
            object obj = new SQL().Database(dbkey).Insert(HtmlTemplate._)
                         .ValueP(HtmlTemplate._TemplateID, htmlTemplate.TemplateID)
                         .ValueP(HtmlTemplate._Subject, htmlTemplate.Subject)
                         .ValueP(HtmlTemplate._Body, htmlTemplate.Body)
                         .ValueP(HtmlTemplate._ShowName, htmlTemplate.ShowName)
                         .ValueP(HtmlTemplate._IsHTML, htmlTemplate.IsHTML)
                         .ValueP(HtmlTemplate._Status, htmlTemplate.Status)
                         .ValueP(HtmlTemplate._CreateTime, htmlTemplate.CreateTime)
                         .ToExec();

            if (obj.ToInt() != 1)
            {
                return(0);
            }
            obj = new SQL().Database(dbkey).From(HtmlTemplate._).Max("TemplateID").ToScalar();
            if (obj.IsAllNull())
            {
                return(0);
            }
            Int64 value = obj.ToString().ToBigInt();

            if (delCache.IsNull())
            {
                return(value);
            }
            Cache2.Remove("TH.Mailer.HtmlTemplateCache_", delCache);
            return(value);
        }
Exemplo n.º 8
0
        private void LoadEmailTemplate()
        {
            var templ = HccApp.ContentServices.HtmlTemplates.Find(TemplateId);

            if (templ != null)
            {
                txtFrom.Text             = templ.From;
                txtDisplayName.Text      = templ.DisplayName;
                txtSubject.Text          = templ.Subject;
                txtBody.Text             = templ.Body;
                txtRepeatingSection.Text = templ.RepeatingSection;

                var defTemplate = HccApp.ContentServices.HtmlTemplates.FindByStoreAndType(0, templ.TemplateType);
                if (defTemplate != null)
                {
                    lblTemplateType.Text = defTemplate.DisplayName;
                }
                else
                {
                    lblTemplateType.Text = Localization.GetString("CustomTemplate");
                }

                divRepeatingSection.Visible = templ.HasRepeatingSection();
                btnReset.Visible            = templ.TemplateType != HtmlTemplateType.Custom;
            }
            else
            {
                templ = new HtmlTemplate {
                    TemplateType = HtmlTemplateType.Custom
                };
                lblTemplateType.Text = Localization.GetString("CustomTemplate");
            }

            PopulateTags(templ);
        }
Exemplo n.º 9
0
        private bool Save()
        {
            var result = false;

            var templ = HccApp.ContentServices.HtmlTemplates.Find(TemplateId);

            if (templ == null)
            {
                templ = new HtmlTemplate {
                    TemplateType = HtmlTemplateType.Custom
                };
            }

            templ.Body             = txtBody.Text.Trim();
            templ.DisplayName      = txtDisplayName.Text.Trim();
            templ.From             = txtFrom.Text.Trim();
            templ.RepeatingSection = txtRepeatingSection.Text.Trim();
            templ.Subject          = txtSubject.Text.Trim();

            if (templ.Id == 0)
            {
                result = HccApp.ContentServices.HtmlTemplates.Create(templ);
                if (result)
                {
                    TemplateId = templ.Id;
                }
            }
            else
            {
                result = HccApp.ContentServices.HtmlTemplates.Update(templ);
            }

            return(result);
        }
Exemplo n.º 10
0
        public Editor(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator)
            : base(viewContext, initializer)
        {
            UrlGenerator = urlGenerator;

            DefaultToolGroup = new EditorToolGroup(this);

            Template = new HtmlTemplate();
            Messages = new EditorMessages();
            StyleSheets = new List<string>();
            Pdf = new PDFSettings();

            new EditorToolFactory(DefaultToolGroup)
                .Formatting()
                .Bold().Italic().Underline()
                .JustifyLeft().JustifyCenter().JustifyRight()
                .InsertUnorderedList().InsertOrderedList()
                .Outdent().Indent()
                .CreateLink().Unlink()
                .InsertImage()
                .TableEditing();

            TagName = "textarea";

            ImageBrowserSettings = new EditorImageBrowserSettings(Messages.ImageBrowserMessages);
            FileBrowserSettings = new EditorFileBrowserSettings(Messages.FileBrowserMessages);

            //>> Initialization

            Resizable = new EditorResizableSettings();

            Serialization = new EditorSerializationSettings();

            //<< Initialization
        }
Exemplo n.º 11
0
        private void mnuEdit_Click(object sender, EventArgs e)
        {
            SendSetting setting = SendSettingHelper.SelectByID(1);

            if (setting.IsNull() || setting.TemplateID.IsNull())
            {
                return;
            }

            if (setting.TemplateID == lastID && !this.checkBoxStatus.Checked)
            {
                MessageBox.Show("发送邮件设置使用了此模板,该模板不能不可用", "系统提示");
                return;
            }

            tabControl1.SelectedTab = tabControl1.TabPages[0];
            if (currentIndex < 0 || lastID < 1)
            {
                return;
            }
            HtmlTemplate info = new HtmlTemplate();

            info.Subject    = this.txtSubject.Text;
            info.Body       = this.txtBody.Text;
            info.IsHTML     = this.checkBoxIsHTML.Checked ? true : false;
            info.Status     = this.checkBoxStatus.Checked ? 0 : 1;
            info.ShowName   = this.txtShowName.Text;
            info.TemplateID = lastID;
            HtmlTemplateHelper.Update(info);
            dataGridView.Rows[currentIndex].Cells[1].Value = info.Subject;
            HtmlTemplateHelper.ClearCacheAll();
            MessageBox.Show("保存成功", "系统提示");
        }
Exemplo n.º 12
0
        private void dataGridView_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            tabControl1.SelectedTab = tabControl1.TabPages[0];
            currentIndex            = e.RowIndex;
            if (currentIndex < 0)
            {
                return;
            }
            lastID = dataGridView.Rows[e.RowIndex].Cells[0].Value.ToBigInt(0);
            if (lastID < 1)
            {
                return;
            }
            HtmlTemplate info = HtmlTemplateHelper.SelectListByAll().Where(p => p.TemplateID == lastID).FirstOrDefault();

            if (info.IsNull() || info.TemplateID.IsNull())
            {
                return;
            }

            this.txtSubject.Text   = info.Subject;
            txtSubject.Text        = info.Subject;
            txtBody.Text           = info.Body;
            txtShowName.Text       = info.ShowName;
            checkBoxIsHTML.Checked = info.IsHTML == true ? true : false;
            checkBoxStatus.Checked = info.Status == 0 ? true : false;
        }
Exemplo n.º 13
0
        public GridFooterCellBuilder(IDictionary <string, object> htmlAttributes, HtmlTemplate <GridAggregateResult> template)
        {
            this.htmlAttributes = htmlAttributes;
            this.template       = template;

            Decorators = new List <IGridCellBuilderDecorator>();
        }
Exemplo n.º 14
0
        private void CreateArticleHtml(Article article)
        {
            var path = GetPathById[article.Id];

            List <Attachment> attachment = (from it in Attachments
                                            where it.ArticleId == article.Id
                                            select it).ToList();

            foreach (var item in attachment)
            {
                if (item.ContentType.StartsWith("image"))
                {
                    Directory.CreateDirectory(path + "\\image");

                    var imagePath = $".\\image\\{item.Id}-{item.FileName}";

                    var savePath      = $"{path}\\image\\{item.Id}-{item.FileName}";
                    var replaceString = article.Body.Replace(item.ContentUrl, imagePath);

                    if (!replaceString.Equals(article.Body))
                    {
                        article.Body = article.Body.Replace(item.ContentUrl, imagePath);
                        ImgFiles.Add(new ImgFile()
                        {
                            Id         = item.Id,
                            SourceUrl  = item.ContentUrl,
                            DestPath   = savePath,
                            IsDownload = false
                        });
                    }
                }
            }
            HtmlTemplate.CreateArticle(article, GetPathById);
        }
Exemplo n.º 15
0
        /// <summary>
        /// Попълване на данните за автоматичние импорт
        /// </summary>
        /// <param name="row"></param>
        /// <param name="file"></param>
        /// <param name="htmlTemplateTypes"></param>
        /// <returns></returns>
        private HtmlTemplate FillHtmlTemplate(IRow row, IFormFile file, IQueryable <HtmlTemplateType> htmlTemplateTypes)
        {
            var          court_types  = repo.AllReadonly <CourtType>().ToList();
            var          case_groupes = repo.AllReadonly <CaseGroup>().ToList();
            var          htt          = htmlTemplateTypes.Where(x => x.Label.ToUpper() == row.GetCell(3).ToString().ToUpper()).DefaultIfEmpty(null).FirstOrDefault();
            HtmlTemplate html         = new HtmlTemplate
            {
                HtmlTemplateTypeId = (htt != null) ? htt.Id : 0,
                Alias       = GetAliasFromFileName(row.GetCell(0).ToString().ToUpper()),
                Label       = row.GetCell(1).ToString(),
                Description = row.GetCell(6).ToString()
            };

            html.HtmlTemplateLinks = new HashSet <HtmlTemplateLink>();
            FillHtmlLink(row, html, court_types, case_groupes);

            using (var memory = new MemoryStream())
            {
                file.CopyTo(memory);
                html.Content      = memory.ToArray();
                html.ContentType  = file.ContentType;
                html.FileName     = Path.GetFileName(file.FileName);
                html.DateUploaded = DateTime.Now;
            }

            return(html);
        }
        public GridFooterCellBuilder(IDictionary<string, object> htmlAttributes, HtmlTemplate<GridAggregateResult> template)
        {
            this.htmlAttributes = htmlAttributes;
            this.template = template;

            Decorators = new List<IGridCellBuilderDecorator>();
        }
Exemplo n.º 17
0
        public void Test_Template_Save()
        {
            var svc      = getSvc();
            var template = new HtmlTemplate()
            {
                Id = Guid.NewGuid(), Name = "Test 1", SubjectTemplate = "About...", BodyTemplate = "Plain text template."
            };

            svc.Save(template);
            var ret = svc.Get(template.Id);

            Assert.IsNotNull(ret);
            Assert.AreEqual(template.Id, ret.Id);
            Assert.AreEqual(template.Name, ret.Name);
            Assert.AreEqual(template.BodyTemplate, ret.BodyTemplate);
            Assert.AreEqual(template.SubjectTemplate, ret.SubjectTemplate);

            template.SubjectTemplate = template.SubjectTemplate + "_edit";
            template.BodyTemplate    = template.BodyTemplate + "_edit";
            svc.Save(template);

            ret = svc.Get(template.Id);
            Assert.IsNotNull(ret);
            Assert.AreEqual(template.Id, ret.Id);
            Assert.AreEqual(template.Name, ret.Name);
            Assert.AreEqual(template.BodyTemplate, ret.BodyTemplate);
            Assert.AreEqual(template.SubjectTemplate, ret.SubjectTemplate);
        }
Exemplo n.º 18
0
 public ModuleRequirements()
 {
     Domain         = new DomainModel();
     UIDefinitions  = new UIDefinition[0];
     RequredModules = new int[0];
     Templates      = new HtmlTemplate[0];
 }
Exemplo n.º 19
0
 public void Applying_when_html_is_set_sets_html_of_the_node()
 {
     var template = new HtmlTemplate<object>();
     template.Html = "<strong>foo</strong>";
     var node = new HtmlElement("div");
     template.Apply(null, node);
     Assert.Equal(template.Html, node.InnerHtml);
 }
        /// <summary>
        /// Добавяне на бланка
        /// </summary>
        /// <param name="filterJson"></param>
        /// <returns></returns>
        public IActionResult Add(string filterJson)
        {
            SetBreadcrums(0, filterJson);
            var model = new HtmlTemplate();

            SetViewbag();
            return(View(nameof(Edit), model));
        }
Exemplo n.º 21
0
 /// <summary>
 /// Initialize the WidgetView instance.
 /// </summary>
 public WidgetView()
 {
     UserPreferencesTemplate = new HtmlTemplate<WidgetHelper>();
     HeaderTemplate = new HtmlTemplate<WidgetHelper>();
     ContentTemplate = new HtmlTemplate<WidgetHelper>();
     DesignTemplate = new HtmlTemplate<WidgetHelper>();
     PreviewTemplate = new HtmlTemplate<WidgetHelper>();
 }
Exemplo n.º 22
0
 /// <summary>
 /// Initialize the WidgetView instance.
 /// </summary>
 public WidgetView()
 {
     UserPreferencesTemplate = new HtmlTemplate <WidgetHelper>();
     HeaderTemplate          = new HtmlTemplate <WidgetHelper>();
     ContentTemplate         = new HtmlTemplate <WidgetHelper>();
     DesignTemplate          = new HtmlTemplate <WidgetHelper>();
     PreviewTemplate         = new HtmlTemplate <WidgetHelper>();
 }
Exemplo n.º 23
0
 public void Applying_when_code_block_is_set_sets_template_of_the_node()
 {
     var template = new HtmlTemplate<object>();
     template.CodeBlockTemplate = delegate { };
     var node = new HtmlElement("div");
     template.Apply(null, node);
     Assert.NotNull(node.Template());
 }
Exemplo n.º 24
0
        public override bool Execute(OrderTaskContext context)
        {
            CustomerAccount u = context.MTApp.MembershipServices.Customers.FindByEmail(context.Order.UserEmail);

            if (u != null)
            {
                if (u.Bvin != string.Empty)
                {
                    return(true);
                }
            }

            CustomerAccount n = new CustomerAccount();

            n.Email = context.Order.UserEmail;
            int length = WebAppSettings.PasswordMinimumLength;

            if (length < 8)
            {
                length = 8;
            }
            string newPassword = MerchantTribe.Web.PasswordGenerator.GeneratePassword(length);

            n.Password  = newPassword;
            n.FirstName = context.Order.ShippingAddress.FirstName;
            n.LastName  = context.Order.ShippingAddress.LastName;

            if (context.MTApp.MembershipServices.CreateCustomer(n, n.Password))
            {
                // Update Addresses for Customer
                context.Order.BillingAddress.CopyTo(n.BillingAddress);
                context.Order.ShippingAddress.CopyTo(n.ShippingAddress);
                context.MTApp.MembershipServices.UpdateCustomer(n);
                context.Order.CustomProperties.Add("bvsoftware", "allowpasswordreset", "1");

                // Email Password to Customer
                HtmlTemplate t = context.MTApp.ContentServices.GetHtmlTemplateOrDefault(HtmlTemplateType.ForgotPassword);
                if (t != null)
                {
                    System.Net.Mail.MailMessage m;

                    List <IReplaceable> replacers = new List <IReplaceable>();
                    replacers.Add(n);
                    replacers.Add(new Replaceable("[[NewPassword]]", newPassword));
                    t = t.ReplaceTagsInTemplate(context.MTApp, replacers);

                    m = t.ConvertToMailMessage(n.Email);

                    if (MailServices.SendMail(m, context.MTApp.CurrentStore) == false)
                    {
                        EventLog.LogEvent("Create Account During Checkout", "Failed to send email to new customer " + n.Email, EventLogSeverity.Warning);
                    }
                }
            }
            context.UserId = n.Bvin;

            return(true);
        }
Exemplo n.º 25
0
        void IUtilityCommand.Run(Utility utility, string[] args)
        {
            // HACK: The engine code assumes that Game.modData is set.
            var modData = Game.ModData = utility.ModData;

            ChromeProvider.Initialize(modData);

            var image = args[1];
            var zoom  = args[2];

            var regions = new List <string>();

            foreach (var c in ChromeProvider.Collections)
            {
                if (c.Value.Image != image)
                {
                    continue;
                }

                var pr = c.Value.PanelRegion;
                if (pr != null && pr.Length == 8)
                {
                    var sides = new[]
                    {
                        Pair.New(PanelSides.Top | PanelSides.Left, new Rectangle(pr[0], pr[1], pr[2], pr[3])),
                        Pair.New(PanelSides.Top, new Rectangle(pr[0] + pr[2], pr[1], pr[4], pr[3])),
                        Pair.New(PanelSides.Top | PanelSides.Right, new Rectangle(pr[0] + pr[2] + pr[4], pr[1], pr[6], pr[3])),
                        Pair.New(PanelSides.Left, new Rectangle(pr[0], pr[1] + pr[3], pr[2], pr[5])),
                        Pair.New(PanelSides.Center, new Rectangle(pr[0] + pr[2], pr[1] + pr[3], pr[4], pr[5])),
                        Pair.New(PanelSides.Right, new Rectangle(pr[0] + pr[2] + pr[4], pr[1] + pr[3], pr[6], pr[5])),
                        Pair.New(PanelSides.Bottom | PanelSides.Left, new Rectangle(pr[0], pr[1] + pr[3] + pr[5], pr[2], pr[7])),
                        Pair.New(PanelSides.Bottom, new Rectangle(pr[0] + pr[2], pr[1] + pr[3] + pr[5], pr[4], pr[7])),
                        Pair.New(PanelSides.Bottom | PanelSides.Right, new Rectangle(pr[0] + pr[2] + pr[4], pr[1] + pr[3] + pr[5], pr[6], pr[7]))
                    };

                    foreach (var s in sides)
                    {
                        var r = s.Second;
                        if (c.Value.PanelSides.HasSide(s.First))
                        {
                            regions.Add("[\"{0}.<{1}>\",{2},{3},{4},{5}]".F(c.Key, s.First, r.X, r.Y, r.Width, r.Height));
                        }
                    }
                }

                foreach (var kv in c.Value.Regions)
                {
                    var r = kv.Value;
                    regions.Add("[\"{0}\",{1},{2},{3},{4}]".F(c.Key + "." + kv.Key, r.X, r.Y, r.Width, r.Height));
                }
            }

            var output     = HtmlTemplate.JoinWith("\n").F(zoom, Convert.ToBase64String(modData.ModFiles.Open(image).ReadAllBytes()), "[" + regions.JoinWith(",") + "]");
            var outputPath = Path.ChangeExtension(image, ".html");

            File.WriteAllLines(outputPath, new[] { output });
            Console.WriteLine("Saved {0}", outputPath);
        }
Exemplo n.º 26
0
        public SplitterPane()
        {
            Scrollable = true;
            Resizable = true;

            HtmlAttributes = new RouteValueDictionary();

            Template = new HtmlTemplate();
        }
Exemplo n.º 27
0
        public void Applying_when_inline_template_sets_html_of_the_node()
        {
            var template = new HtmlTemplate<object>();
            template.InlineTemplate = (value) => value;
            var node = new HtmlElement("div");
            template.Apply("foo", node);

            Assert.Equal("<div>foo</div>", node.ToString());
        }
Exemplo n.º 28
0
        public ResponsivePanel(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator)
            : base(viewContext, initializer)
        {
            this.urlGenerator = urlGenerator;

            Template = new HtmlTemplate();
            //>> Initialization

            //<< Initialization
        }
Exemplo n.º 29
0
        public InfoWindow(Marker marker)
            : base(PassThroughNonNull(marker).Map)
        {
            if (marker == null) throw new ArgumentNullException("marker");

            this.marker = marker;
            Content = string.Format(CultureInfo.InvariantCulture, "{0}Marker{1}",marker.Map.Id,marker.Index);

            Template = new HtmlTemplate();
        }
Exemplo n.º 30
0
        private void PopulateTags(HtmlTemplate templ)
        {
            var emailTokens = templ.GetEmptyReplacementTags(HccApp.CurrentRequestContext);

            emailTokens            = emailTokens.Where(p => p.IsObsolete == false).ToList();
            lstTags.DataSource     = emailTokens;
            lstTags.DataValueField = "Tag";
            lstTags.DataTextField  = "Tag";
            lstTags.DataBind();
        }
Exemplo n.º 31
0
        public void Applying_when_code_block_is_set_sets_template_of_the_node()
        {
            var template = new HtmlTemplate <object>();

            template.CodeBlockTemplate = delegate { };
            var node = new HtmlElement("div");

            template.Apply(null, node);
            Assert.NotNull(node.Template());
        }
Exemplo n.º 32
0
        public MobileNavBar(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator)
            : base(viewContext, initializer)
        {
            this.urlGenerator = urlGenerator;

            Content = new HtmlTemplate();
            //>> Initialization

            //<< Initialization
        }
Exemplo n.º 33
0
        public object Save(HtmlTemplate template)
        {
            if (_securityService.CurrentUser.UserType != Core.Domain.UserTypes.Admin)
            {
                throw new Exception("Only admins can edit UI texts.");
            }

            _templateService.Save(template);
            return(new { success = true });
        }
Exemplo n.º 34
0
        public InfoWindow(Marker marker)
            : base(marker.Map)
        {
            if (marker == null) throw new ArgumentNullException("marker");

            this.marker = marker;
            Content = string.Format("{0}Marker{1}",marker.Map.Id,marker.Index);

            Template = new HtmlTemplate();
        }
Exemplo n.º 35
0
        public void Applying_when_html_is_set_sets_html_of_the_node()
        {
            var template = new HtmlTemplate <object>();

            template.Html = "<strong>foo</strong>";
            var node = new HtmlElement("div");

            template.Apply(null, node);
            Assert.Equal(template.Html, node.InnerHtml);
        }
Exemplo n.º 36
0
        /// <summary>
        /// 开始群发邮件
        /// </summary>
        private void sendStart()
        {
            UpdateSendSettingStatus(1);             //开始发送并初始化数据

            smtpList = SmtpListHelper.SelectListByAll().Where(p => p.Status == 0).ToList();
            if (smtpList.Count == 0)
            {
                WriteLog("SMTP列表为空!"); if (uiDone != null)
                {
                    uiDone();
                }
                return;
            }
            smtpInfo = smtpList[0];             //默认使用第一个SMTP发送

            template = templateList.Where(t => t.TemplateID == sendSetting.TemplateID).FirstOrDefault();
            if (template.IsNull() || template.TemplateID.IsNull())
            {
                WriteLog("找不到模版ID:" + sendSetting.TemplateID); if (uiDone != null)
                {
                    uiDone();
                }
                return;
            }

            WriteLog("");
            WriteLog(template.Subject + "|" + NetHelper.GetNetName(sendSetting.ConnectType.Value) + "|" + smtpInfo.SmtpServer + "|" + smtpInfo.UserName + " 开始发送!");

            email = new Email(smtpInfo.SmtpServer, smtpInfo.SmtpPort.Value)
                    .Ssl(smtpInfo.SSL.Value)
                    .Credentials(smtpInfo.UserName, smtpInfo.SPassword)
                    .IsBodyHtml(template.IsHTML.Value)
                    .Timeout(3000);

            int state = SendEmails();

            if (state == -1)
            {
                return;                          //停止发送邮件
            }
            if (state == 0)
            {
                UpdateSendSettingStatus(2);                         //正常发送完成时 标记全部发送完成
            }
            WriteLog(template.Subject + (state == 0 ? " 已发送完成!" : " 已停止发送!"));

            //此处可邮件通知

            if (uiDone != null)
            {
                uiDone();
            }

            clear();             //清理数据
        }
Exemplo n.º 37
0
        /// <summary>
        /// Generate all reports in a list.
        /// </summary>
        /// <param name="reports">List of reports to generate.</param>
        /// <param name="saveReport">True for save reports in the html file.</param>
        /// <param name="filename">Sets the file full or relative path, if folder is given default name will be used in it.</param>
        /// <param name="maxDegreeOfParallelism">Sets the maximum number of concurrent tasks enabled by this ParallelOptions instance.</param>
        /// <returns><see cref="HtmlTemplate"/> with the reports already written in the template.</returns>
        public static HtmlTemplate GenerateReports(Report[] reports, bool saveReport = true, string filename = null, int maxDegreeOfParallelism = -1)
        {
            var htmlTemplate = new HtmlTemplate()
            {
                Filename = filename
            };

            //List<Report> asyncReports = new List<Report>();

            /*if (useSingleThread)
             * {
             *  foreach (var report in reports)
             *  {
             *      //if (report.CanAsync)
             *      //{
             *      //    asyncReports.Add(report);
             *      //    continue;
             *      //}
             *      report.Generate();
             *      htmlTemplate.WriteFromVar(report.GetTemplateVar(), report.Html);
             *  }
             * }
             * else
             * {*/
#if DEBUG
            maxDegreeOfParallelism = 1;
#endif
            var options = new ParallelOptions {
                MaxDegreeOfParallelism = maxDegreeOfParallelism
            };
            Parallel.ForEach(reports, options, report =>
            {
                Debug.WriteLine(report.GetTemplateVar());
                report.Generate();

                lock (htmlTemplate)
                {
                    htmlTemplate.WriteFromVar(report.GetTemplateVar(), report.Html);
                }
            });

            /*foreach (var report in reports)
             * {
             *  htmlTemplate.WriteFromVar(report.GetTemplateVar(), report.Html);
             * }*/


            if (/*!ReferenceEquals(htmlTemplate, null) && */ saveReport)
            {
                htmlTemplate.WriteToFile();
            }

            return(htmlTemplate);
        }
Exemplo n.º 38
0
        public void Applying_when_inline_template_sets_html_of_the_node()
        {
            var template = new HtmlTemplate <object>();

            template.InlineTemplate = (value) => value;
            var node = new HtmlElement("div");

            template.Apply("foo", node);

            Assert.Equal("<div>foo</div>", node.ToString());
        }
Exemplo n.º 39
0
 private void SendConfirmationMail(MembershipUser user, string newEmail)
 {
     HtmlTemplate<ChangeEmailConfirmation> body = new HtmlTemplate<ChangeEmailConfirmation>();
     body.Template.Email = newEmail;
     body.Template.Code = user.ProviderUserKey.ToString();
     body.Template.Checker = Hash.ReadableHash(Hash.MD5, newEmail + body.Template.Code);
     body.Template.Host = Request.Url.Host;
     MailMessage m = new MailMessage("*****@*****.**", newEmail, CommonResources.ChangeEmailEmailSubject, body.GenerateHtml());
     m.IsBodyHtml = true;
     new System.Net.Mail.SmtpClient().Send(m);
 }
Exemplo n.º 40
0
        private string CreateHtml(Banner banner)
        {
            var templatePath = HostingEnvironment.MapPath("/" + _htmlTemplate);
            var template     = new HtmlTemplate(templatePath);

            return(template.Render(new
            {
                TITLE = string.Format("Banner {0}", banner.Id),
                BODY = banner.Html,
            }));
        }
Exemplo n.º 41
0
        public void Setting_html_clears_other_properties()
        {
            var template = new HtmlTemplate<string>();
            template.InlineTemplate = delegate { return null; };
            template.CodeBlockTemplate = delegate { };

            template.Html = "foo";

            Assert.Null(template.CodeBlockTemplate);
            Assert.Null(template.InlineTemplate);
        }
Exemplo n.º 42
0
        public Editor(ViewContext viewContext, 
            IClientSideObjectWriterFactory clientSideObjectWriterFactory, 
            IWebAssetCollectionResolver resolver, 
            ILocalizationService localizationService,
            IUrlGenerator urlGenerator)
            : base(viewContext, clientSideObjectWriterFactory)
        {
            this.resolver = resolver;
            this.urlGenerator = urlGenerator;

            ScriptFileNames.AddRange(new[] {
                "telerik.common.js",
                "telerik.list.js",
                "telerik.combobox.js",
                "telerik.draganddrop.js",
                "telerik.window.js",
                "telerik.editor.js"
            });

            DefaultToolGroup = new EditorToolGroup(this);

            ClientEvents = new EditorClientEvents();

            StyleSheets = new WebAssetGroup("default", false) { DefaultPath = WebAssetDefaultSettings.StyleSheetFilesPath };

            Localization = new EditorLocalization(localizationService, CultureInfo.CurrentUICulture);

            Template = new HtmlTemplate();

            new EditorToolFactory(DefaultToolGroup)
                .Bold().Italic().Underline().Strikethrough()
                .Separator()
                .FontName()
                .FontSize()
                .FontColor().BackColor()
                .Separator()
                .JustifyLeft().JustifyCenter().JustifyRight().JustifyFull()
                .Separator()
                .InsertUnorderedList().InsertOrderedList()
                .Separator()
                .Outdent().Indent()
                .Separator()
                .FormatBlock()
                .Separator()
                .CreateLink().Unlink()
                .Separator()
                .InsertImage();

            FileBrowserSettings = new EditorFileBrowserSettings(this);

            DefaultToolGroup.Tools.OfType<EditorComboBox>()
                .Each(combo => combo.InputHtmlAttributes.Add("title", combo.Identifier));
        }
Exemplo n.º 43
0
        protected void btnSendStatusEmail_Click(object sender, System.Web.UI.ImageClickEventArgs e)
        {
            this.MessageBox1.ClearMessage();
            Order o = MTApp.OrderServices.Orders.FindForCurrentStore(this.BvinField.Value);

            if (o != null)
            {
                if (o.bvin != string.Empty)
                {
                    long templateId = 0;
                    long.TryParse(this.lstEmailTemplate.SelectedValue, out templateId);
                    HtmlTemplate t = MTApp.ContentServices.HtmlTemplates.Find(templateId);

                    if (t == null)
                    {
                        return;
                    }

                    string toEmail = o.UserEmail;

                    if (t.TemplateType == HtmlTemplateType.NewOrderForAdmin ||
                        t.TemplateType == HtmlTemplateType.DropShippingNotice ||
                        t.TemplateType == HtmlTemplateType.ContactFormToAdmin)
                    {
                        toEmail = MTApp.CurrentStore.Settings.MailServer.EmailForNewOrder;
                    }


                    if (toEmail.Trim().Length > 0)
                    {
                        System.Net.Mail.MailMessage m = new System.Net.Mail.MailMessage();
                        t = t.ReplaceTagsInTemplate(MTApp, o, o.ItemsAsReplaceable());
                        m = t.ConvertToMailMessage(toEmail);
                        if (m != null)
                        {
                            if (MerchantTribe.Commerce.Utilities.MailServices.SendMail(m, MTApp.CurrentStore))
                            {
                                this.MessageBox1.ShowOk("Email Sent!");
                            }
                            else
                            {
                                this.MessageBox1.ShowError("Message Send Failed.");
                            }
                        }
                        else
                        {
                            this.MessageBox1.ShowError("Message was sent successfully.");
                        }
                    }
                }
            }
            LoadOrder();
        }
Exemplo n.º 44
0
        public MobileDrawer(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator)
            : base(viewContext, initializer)
        {
            this.urlGenerator = urlGenerator;
            Header = new HtmlTemplate();
            Content = new HtmlTemplate();
            Footer = new HtmlTemplate();
            SwipeToOpen = true;
            //>> Initialization

            //<< Initialization
        }
Exemplo n.º 45
0
        public MobileSplitViewPane()
        {
            //>> Initialization

            //<< Initialization

            HtmlAttributes = new RouteValueDictionary();

            Content = new HtmlTemplate();

            Events = new Dictionary<string, object>();
        }
Exemplo n.º 46
0
        public InfoWindow(Marker marker) : base(marker.Map)
        {
            if (marker == null)
            {
                throw new ArgumentNullException("marker");
            }

            this.marker = marker;
            Content     = string.Format("{0}Marker{1}", marker.Map.Id, marker.Index);

            Template = new HtmlTemplate();
        }
Exemplo n.º 47
0
        public MobileLayout(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator)
            : base(viewContext, initializer)
        {
            this.urlGenerator = urlGenerator;
            Header = new HtmlTemplate();
            Footer = new HtmlTemplate();
            HeaderHtmlAttributes = new RouteValueDictionary();
            FooterHtmlAttributes = new RouteValueDictionary();
            //>> Initialization

            //<< Initialization
        }
Exemplo n.º 48
0
        private void ReportForm_Load(object sender, EventArgs e)
        {
            string templatePath = "../../HtmlTemplates/report.html";
            var    template     = new HtmlTemplate(templatePath);
            var    output       = template.Render(new {
                type = getReportType(collectionName),
                grid = getHtmlTable(grid),
                data = getHtmlData(database, collectionName),
            });

            webBrowser.DocumentText = output;
        }
        public void Should_render_column_footer_template_if_declared()
        {
            const string expectedContent = "template content";

            var template = new HtmlTemplate<GridAggregateResult>
                               {
                                   Html = expectedContent
                               };

            var cell = new GridFooterCellBuilder(new Dictionary<string, object>(), template).CreateCell();

            cell.InnerHtml.ShouldEqual(expectedContent);
        }
Exemplo n.º 50
0
 private void SendConfirmationMail(MembershipUser user, string newEmail)
 {
     HtmlTemplate<ChangeEmailConfirmation> body = new HtmlTemplate<ChangeEmailConfirmation>();
     body.Template.Email = newEmail;
     body.Template.Code = user.ProviderUserKey.ToString();
     body.Template.Checker = Hash.ReadableHash(Hash.MD5, newEmail + body.Template.Code);
     body.Template.Host = Request.Url.Host;
     var to = new MailAddress(newEmail, user.UserName);
     var m = SmtpManager.Instance.CreateMail(to
       , CommonResources.ChangeEmailEmailSubject
       , body.GenerateHtml());
     SmtpManager.Instance.Send(m);
 }
Exemplo n.º 51
0
 public static void SendRegistrationMail(MembershipUser user, string password)
 {
     HtmlTemplate<CompleteRegistration> body = new HtmlTemplate<CompleteRegistration>();
       body.Template.Login = user.UserName;
       body.Template.Password = password;
       body.Template.Code = user.ProviderUserKey.ToString();
       body.Template.Host = HttpContext.Current.Request.Url.Host;
       var to = new MailAddress(user.Email, user.UserName);
       var m = SmtpManager.Instance.CreateMail(to
     , CommonResources.RegistrationEmailSubject
     , body.GenerateHtml());
       SmtpManager.Instance.Send(m);
 }
        public void Should_apply_template()
        {
            var template = new HtmlTemplate<Customer>();

            template.Html = "foo";

            builder = new GridTemplateCellBuilder<Customer>(template);
            builder.Callback = delegate { };

            var td = builder.CreateCell(null);

            td.InnerHtml.ShouldEqual("foo");
        }
        public void Should_append_template_if_both_commands_and_template_is_defined()
        {
            var template = new HtmlTemplate {Html = "aaaa"};
            var toolBarData = new GridToolBarData
                                      {
                                          Commands = new[] {new Mock<IGridActionCommand>().Object},
                                          Template = template
                                      };

            sectionBuilder.CreateToolBar(toolBarData);

            toolBarBuilder.Verify(tb => tb.CreateToolBar(template), Times.Once());
            toolBarBuilder.Verify(tb => tb.CreateToolBar(It.IsAny<IEnumerable<IGridButtonBuilder>>()),Times.Never());
        }
Exemplo n.º 54
0
        public MobilePopOver(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator)
            : base(viewContext, initializer)
        {
            this.urlGenerator = urlGenerator;

            Content = new HtmlTemplate();
            //>> Initialization

            Pane = new MobilePopOverPaneSettings();

            Popup = new MobilePopOverPopupSettings();

            //<< Initialization
        }
Exemplo n.º 55
0
        public MobileCollapsible(ViewContext viewContext, IJavaScriptInitializer initializer, IUrlGenerator urlGenerator)
            : base(viewContext, initializer)
        {
            this.urlGenerator = urlGenerator;

            Collapsed = true;
            Animation = true;
            Inset = false;

            Header = new HtmlTemplate();
            Content = new HtmlTemplate();
            //>> Initialization

            //<< Initialization
        }
Exemplo n.º 56
0
        public Window(ViewContext viewContext, IJavaScriptInitializer initializer)
            : base(viewContext, initializer)
        {
            Template = new HtmlTemplate();

            ResizingSettings = new WindowResizingSettings();

            Actions = new WindowButtons();
            defaultButtons.Each(button => Actions.Container.Add(button));

            Animation = new PopupAnimation();

            ContentHtmlAttributes = new RouteValueDictionary();

            Scrollable = true;

            Visible = true;
        }
        public void Should_pass_aggregate_result_to_template_if_exists()
        {
            var expectedResult = new GridAggregateResult(new AggregateResult[0]);

            GridAggregateResult result = null;
            var template = new HtmlTemplate<GridAggregateResult>
            {
                InlineTemplate = arg => result = arg
            };

            var cellBuilder = new GridFooterCellBuilder(new Dictionary<string, object>(), template)
            {
                AggregateResults = expectedResult
            };

            cellBuilder.CreateCell().ToString();

            result.ShouldBeSameAs(expectedResult);
        }
Exemplo n.º 58
0
 public void Send(Message m)
 {
     var user = Membership.GetUser(m.RecipientId);
       if (user != null && user.IsOnline == false)
       {
     var profile = CustomProfileProvider.GetProfileByUserKey(m.RecipientId);
     if (profile != null && profile.EmailMessageNotification == true)
     {
       HtmlTemplate<NewMessageNotification> body = new HtmlTemplate<NewMessageNotification>();
       body.Template.SenderId = m.SenderId;
       body.Template.RecipientId = m.RecipientId;
       var to = new MailAddress(user.Email, user.UserName);
       var mail = SmtpManager.Instance.CreateMail(to
     , CommonResources.Notification_NewMessageSubject
     , body.GenerateHtml());
       SmtpManager.Instance.Send(mail);
     }
       }
 }
Exemplo n.º 59
0
        public Editor(ViewContext viewContext, IClientSideObjectWriterFactory clientSideObjectWriterFactory)
            : base(viewContext, clientSideObjectWriterFactory)
        {
            ScriptFileNames.AddRange(new[] {
                "telerik.common.js",
                "telerik.list.js",
                "telerik.combobox.js",
                "telerik.draganddrop.js",
                "telerik.window.js",
                "telerik.editor.js"
            });

            DefaultToolGroup = new EditorToolGroup();

            ClientEvents = new EditorClientEvents();

            StyleSheets = new WebAssetItemGroup("default", false) { DefaultPath = WebAssetDefaultSettings.StyleSheetFilesPath };

            Localization = new EditorLocalization();

            Template = new HtmlTemplate();

            new EditorToolFactory(DefaultToolGroup)
                .Bold().Italic().Underline().Strikethrough()
                .Separator()
                .FontName()
                .FontSize()
                .FontColor().BackColor()
                .Separator()
                .JustifyLeft().JustifyCenter().JustifyRight().JustifyFull()
                .Separator()
                .InsertUnorderedList().InsertOrderedList()
                .Separator()
                .Outdent().Indent()
                .Separator()
                .FormatBlock()
                .Separator()
                .CreateLink().Unlink()
                .Separator()
                .InsertImage();
        }
Exemplo n.º 60
0
        public Window(ViewContext viewContext, IClientSideObjectWriterFactory clientSideObjectWriterFactory, IWindowHtmlBuilderFactory builderFactory)
            : base(viewContext, clientSideObjectWriterFactory)
        {
            this.builderFactory = builderFactory;

            ScriptFileNames.AddRange(new[] { "telerik.common.js", "telerik.draganddrop.js", "telerik.window.js" });

            Template = new HtmlTemplate();

            ClientEvents = new WindowClientEvents();
            ResizingSettings = new WindowResizingSettings();

            Buttons = new WindowButtons();
            defaultButtons.Each(button => Buttons.Container.Add(button));

            Effects = new Effects();
            defaultEffects.Each(el => Effects.Container.Add(el));

            ContentHtmlAttributes = new RouteValueDictionary();

            Scrollable = true;

            Visible = true;
        }