public static void UseClickTrack(this SmtpHeader header)
 {
     header.AddFilter("clicktrack", new Dictionary<string, object>
     {
         { "enable", 1 }
     });
 }
 public static void UseBypassListManagement(this SmtpHeader header)
 {
     header.AddFilter("bypass_list_management", new Dictionary<string, object>
     {
         { "enable", 1 }
     });
 }
 public static void UseDkim(this SmtpHeader header, string domain, bool useFrom)
 {
     header.AddFilter("dkim", new Dictionary<string, object>
     {
         { "domain", domain },
         { "use_from", useFrom }
     });
 }
 public static void UseForwardSpam(this SmtpHeader header, string email)
 {
     header.AddFilter("forwardspam", new Dictionary<string, object>
     {
         { "enable", 1 },
         { "email", email }
     });
 }
 public static void UseBcc(this SmtpHeader header, string email)
 {
     header.AddFilter("bcc", new Dictionary<string, object>
     {
         { "enable", 1 },
         { "email", email }
     });
 }
 public static void UseDomainKeys(this SmtpHeader header, string domain, bool sender)
 {
     header.AddFilter("domainkeys", new Dictionary<string, object>
     {
         { "enable", 1 },
         { "domain", domain },
         { "sender", sender }
     });
 }
 public static void UseFooter(this SmtpHeader header, string html, string text)
 {
     header.AddFilter("footer", new Dictionary<string, object>
     {
         { "enable", 1 },
         { "text/html", html },
         { "text/plain", text }
     });
 }
 public static void UseGoogleAnalytics(this SmtpHeader header, string source, string medium, string term, string content, string campaign)
 {
     header.AddFilter("ganalytics", new Dictionary<string, object>
     {
         { "enable", 1 },
         { "utm_source", source },
         { "utm_medium", medium },
         { "utm_term", term },
         { "utm_content", content },
         { "utm_campaign", campaign }
     });
 }
 public static Query<ShoppingCart> ByCustomerEmail(this Query<ShoppingCart> query, string customerEmail)
 {
     return query.AddFilter(ShoppingCartFilters.ByCustomerEmail.CreateFilter(new { CustomerEmail = customerEmail }));
 }
 public static Query<Product> ByCategory(this Query<Product> query, int categoryId)
 {
     return query.AddFilter(ProductFilters.ByCategory.CreateFilter(new { CategoryId = categoryId }));
 }
 public static Query<Product> ByBrand(this Query<Product> query, int brandId)
 {
     return query.AddFilter(ProductFilters.ByBrand.CreateFilter(new { BrandId = brandId }));
 }
 public static void UseTemplate(this SmtpHeader header, string html)
 {
     header.AddFilter("template", new Dictionary<string, object>
     {
         { "enable", 1 },
         { "text/html", html },
     });
 }
 public static Query<Product> ByCustomField(this Query<Product> query, string fieldName, string fieldValue)
 {
     return query.AddFilter(ProductFilters.ByCustomField.CreateFilter(new { FieldName = fieldName, FieldValue = fieldValue }));
 }
 public static Query<Product> ByName(this Query<Product> query, string name)
 {
     return query.AddFilter(ProductFilters.ByName.CreateFilter(new { Name = name }));
 }
 public static void UseTemplateEngine(this SmtpHeader header, string templateId)
 {
     header.AddFilter("templates", new Dictionary<string, object>
     {
         { "enable", 1 },
         { "template_id", templateId },
     });
 }
 public static Query<PaymentMethod> ByName(this Query<PaymentMethod> query, string name)
 {
     return query.AddFilter(PaymentMethodFilters.ByName.CreateFilter(new { Name = name }));
 }
 public static void AddFilter(this GridPanelViewModel model, string propertyName, int value)
 {
     model.AddFilter(propertyName, value.ToString());
 }
 public static Query<Product> ById(this Query<Product> query, int id)
 {
     return query.AddFilter(ProductFilters.ById.CreateFilter(new { Id = id }));
 }
 public static void UseGravatar(this SmtpHeader header)
 {
     header.AddFilter("gravatar", new Dictionary<string, object>
     {
         { "enable", 1 }
     });
 }
 public static Query<Country> ByTwoLetterIsoCode(this Query<Country> query, string twoLetterIsoCode)
 {
     return query.AddFilter(CountryFilters.ByTwoLetterIsoCode.CreateFilter(new { TwoLetterIsoCode = twoLetterIsoCode }));
 }
 public static Query<Country> ByName(this Query<Country> query, string name)
 {
     return query.AddFilter(CountryFilters.ByName.CreateFilter(new { Name = name }));
 }
 public static Query<Country> ById(this Query<Country> query, int id)
 {
     return query.AddFilter(CountryFilters.ById.CreateFilter(new { Id = id }));
 }
 public static Query<PaymentMethod> ByUserKey(this Query<PaymentMethod> query, string userKey)
 {
     return query.AddFilter(PaymentMethodFilters.ByUserKey.CreateFilter(new { UserKey = userKey }));
 }
 public static void UseSubscriptionTrack(this SmtpHeader header, string html, string text, string replace)
 {
     header.AddFilter("subscriptiontrack", new Dictionary<string, object>
     {
         { "enable", 1 },
         { "text/html", html },
         { "text/plain", text },
         { "replace", replace }
     });
 }
 public static Query<Customer> ByCustomField(this Query<Customer> query, string fieldName, string fieldValue)
 {
     query.AddFilter(CustomerFilters.ByCustomField.CreateFilter(new { FieldName = fieldName, FieldValue = fieldValue }));
     return query;
 }
 public static Query<Product> ByIds(this Query<Product> query, params int[] ids)
 {
     return query.AddFilter(ProductFilters.ByIds.CreateFilter(new { Ids = ids }));
 }
 public static Query<Customer> ByEmail(this Query<Customer> query, string email)
 {
     query.AddFilter(CustomerFilters.ByEmail.CreateFilter(new { Email = email }));
     return query;
 }
 public static Query<Customer> ById(this Query<Customer> query, int id)
 {
     query.AddFilter(CustomerFilters.ById.CreateFilter(new { Id = id }));
     return query;
 }
 public static void UseSpamCheck(this SmtpHeader header, double maxscore, string url)
 {
     header.AddFilter("spamcheck", new Dictionary<string, object>
     {
         { "enable", 1 },
         { "maxscore", maxscore },
         { "url", url }
     });
 }
 public static Query<PaymentMethod> ById(this Query<PaymentMethod> query, int id)
 {
     return query.AddFilter(PaymentMethodFilters.ById.CreateFilter(new { Id = id }));
 }