alchemy_crm 2.0.1 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (123) hide show
  1. data/Gemfile +10 -11
  2. data/alchemy_crm.gemspec +21 -21
  3. data/app/assets/javascripts/alchemy_crm/alchemy_crm.base.js +54 -54
  4. data/app/assets/stylesheets/alchemy_crm/base.css.scss +199 -199
  5. data/app/controllers/alchemy_crm/admin/base_controller.rb +5 -5
  6. data/app/controllers/alchemy_crm/admin/contact_groups_controller.rb +15 -15
  7. data/app/controllers/alchemy_crm/admin/contacts_controller.rb +95 -95
  8. data/app/controllers/alchemy_crm/admin/deliveries_controller.rb +66 -66
  9. data/app/controllers/alchemy_crm/admin/elements_controller_extension.rb +23 -23
  10. data/app/controllers/alchemy_crm/admin/mailings_controller.rb +44 -44
  11. data/app/controllers/alchemy_crm/admin/newsletters_controller.rb +16 -16
  12. data/app/controllers/alchemy_crm/admin/tags_controller.rb +60 -59
  13. data/app/controllers/alchemy_crm/base_controller.rb +3 -3
  14. data/app/controllers/alchemy_crm/contacts_controller.rb +88 -88
  15. data/app/controllers/alchemy_crm/mailings_controller.rb +16 -16
  16. data/app/controllers/alchemy_crm/recipients_controller.rb +30 -30
  17. data/app/controllers/alchemy_crm/subscriptions_controller.rb +54 -54
  18. data/app/helpers/alchemy/pages_helper_extension.rb +14 -14
  19. data/app/helpers/alchemy_crm/admin/base_helper.rb +8 -8
  20. data/app/helpers/alchemy_crm/mailings_helper.rb +175 -175
  21. data/app/mailers/alchemy_crm/bounce_receiver.rb +9 -9
  22. data/app/mailers/alchemy_crm/contacts_mailer.rb +21 -21
  23. data/app/mailers/alchemy_crm/mailings_mailer.rb +46 -46
  24. data/app/mailers/alchemy_crm/subscriptions_mailer.rb +12 -12
  25. data/app/models/alchemy/essence_element_teaser.rb +14 -14
  26. data/app/models/alchemy_crm/contact.rb +260 -260
  27. data/app/models/alchemy_crm/contact_group.rb +15 -15
  28. data/app/models/alchemy_crm/contact_group_filter.rb +17 -17
  29. data/app/models/alchemy_crm/delivery.rb +54 -54
  30. data/app/models/alchemy_crm/element_extension.rb +23 -23
  31. data/app/models/alchemy_crm/mailing.rb +90 -90
  32. data/app/models/alchemy_crm/newsletter.rb +33 -33
  33. data/app/models/alchemy_crm/reaction.rb +5 -5
  34. data/app/models/alchemy_crm/recipient.rb +46 -46
  35. data/app/models/alchemy_crm/subscription.rb +4 -4
  36. data/app/views/alchemy/admin/elements/fill.js.erb +11 -11
  37. data/app/views/alchemy/elements/_newsletter_article_view.html.erb +14 -14
  38. data/app/views/alchemy/elements/_newsletter_greeting_view.html.erb +9 -9
  39. data/app/views/alchemy/elements/_newsletter_signout_form_view.html.erb +18 -18
  40. data/app/views/alchemy/elements/_newsletter_signup_form_view.html.erb +62 -62
  41. data/app/views/alchemy/essences/_essence_element_teaser_editor.html.erb +29 -29
  42. data/app/views/alchemy/newsletter_layouts/_standard.html.erb +37 -37
  43. data/app/views/alchemy_crm/admin/contact_groups/_contact_group.html.erb +30 -30
  44. data/app/views/alchemy_crm/admin/contact_groups/_filter.html.erb +28 -28
  45. data/app/views/alchemy_crm/admin/contact_groups/_form.html.erb +45 -45
  46. data/app/views/alchemy_crm/admin/contact_groups/_tag.html.erb +4 -4
  47. data/app/views/alchemy_crm/admin/contact_groups/add_filter.js.erb +7 -7
  48. data/app/views/alchemy_crm/admin/contact_groups/index.html.erb +28 -28
  49. data/app/views/alchemy_crm/admin/contacts/_contact.html.erb +42 -42
  50. data/app/views/alchemy_crm/admin/contacts/_form.html.erb +76 -76
  51. data/app/views/alchemy_crm/admin/contacts/import.html.erb +27 -27
  52. data/app/views/alchemy_crm/admin/contacts/index.html.erb +39 -39
  53. data/app/views/alchemy_crm/admin/contacts/vcf_import_result.html.erb +24 -24
  54. data/app/views/alchemy_crm/admin/deliveries/_delivery.html.erb +30 -30
  55. data/app/views/alchemy_crm/admin/deliveries/_form.html.erb +61 -61
  56. data/app/views/alchemy_crm/admin/deliveries/_recipient.html.erb +36 -36
  57. data/app/views/alchemy_crm/admin/deliveries/index.html.erb +21 -21
  58. data/app/views/alchemy_crm/admin/deliveries/show.html.erb +61 -61
  59. data/app/views/alchemy_crm/admin/elements/teasables.html.erb +53 -53
  60. data/app/views/alchemy_crm/admin/mailings/_form.html.erb +41 -41
  61. data/app/views/alchemy_crm/admin/mailings/_mailing.html.erb +73 -73
  62. data/app/views/alchemy_crm/admin/mailings/edit_content.html.erb +170 -170
  63. data/app/views/alchemy_crm/admin/mailings/import_result.html.erb +18 -18
  64. data/app/views/alchemy_crm/admin/mailings/index.html.erb +25 -25
  65. data/app/views/alchemy_crm/admin/newsletters/_form.html.erb +52 -52
  66. data/app/views/alchemy_crm/admin/newsletters/_tag_with_radiobutton.html.erb +5 -5
  67. data/app/views/alchemy_crm/admin/newsletters/index.html.erb +29 -29
  68. data/app/views/alchemy_crm/admin/newsletters/new.html.erb +4 -4
  69. data/app/views/alchemy_crm/admin/tags/_radio_tag.html.erb +4 -4
  70. data/app/views/alchemy_crm/admin/tags/_tag.html.erb +30 -30
  71. data/app/views/alchemy_crm/admin/tags/edit.html.erb +32 -32
  72. data/app/views/alchemy_crm/admin/tags/index.html.erb +23 -23
  73. data/app/views/alchemy_crm/admin/tags/new.html.erb +14 -14
  74. data/app/views/alchemy_crm/contacts_mailer/signout_mail.html.erb +6 -6
  75. data/app/views/alchemy_crm/contacts_mailer/signout_mail.text.erb +2 -2
  76. data/app/views/alchemy_crm/contacts_mailer/signup_mail.html.erb +9 -9
  77. data/app/views/alchemy_crm/contacts_mailer/signup_mail.text.erb +2 -2
  78. data/app/views/alchemy_crm/mailings_mailer/verification_mail.html.erb +9 -9
  79. data/app/views/alchemy_crm/subscriptions/index.html.erb +4 -4
  80. data/app/views/alchemy_crm/subscriptions_mailer/overview_mail.html.erb +25 -25
  81. data/app/views/alchemy_crm/subscriptions_mailer/overview_mail.text.erb +2 -2
  82. data/app/views/csv_magic/import_errors.html.erb +23 -23
  83. data/app/views/csv_magic/mapper.html.erb +46 -46
  84. data/app/views/layouts/alchemy_crm/mailings.html.erb +177 -177
  85. data/config/initializers/assets.rb +2 -2
  86. data/config/locales/alchemy_crm.de.yml +1 -1
  87. data/config/locales/alchemy_crm.en.yml +1 -0
  88. data/config/locales/localized_country_select.de.rb +260 -260
  89. data/config/locales/localized_country_select.en.rb +274 -274
  90. data/config/routes.rb +67 -67
  91. data/db/migrate/20111104125306_remove_sent_mailing_pdf_id_from_sent_mailings.rb +1 -1
  92. data/db/migrate/20111124145923_namespace_alchemy_crm_models.rb +13 -13
  93. data/db/migrate/20120307160721_rename_alchemy_crm_recipients_sent_mailing_id.rb +3 -3
  94. data/db/migrate/20120320103412_add_indexes_to_alchemy_crm_sha1_columns.rb +3 -3
  95. data/db/migrate/20120327174301_add_more_indexes_to_alchemy_crm_tables.rb +10 -10
  96. data/lib/alchemy_crm.rb +15 -15
  97. data/lib/alchemy_crm/bounced_delivery.rb +38 -38
  98. data/lib/alchemy_crm/config.rb +25 -25
  99. data/lib/alchemy_crm/engine.rb +31 -31
  100. data/lib/alchemy_crm/i18n_helpers.rb +28 -28
  101. data/lib/alchemy_crm/newsletter_layout.rb +28 -28
  102. data/lib/alchemy_crm/seeder.rb +26 -26
  103. data/lib/alchemy_crm/version.rb +1 -1
  104. data/lib/generators/alchemy_crm/scaffold/files/newsletters.html.erb +19 -19
  105. data/lib/generators/alchemy_crm/scaffold/scaffold_generator.rb +2 -2
  106. data/lib/tasks/alchemy_crm.rake +22 -22
  107. data/lib/tasks/routes.rake +25 -25
  108. data/spec/config_spec.rb +24 -24
  109. data/spec/controllers/alchemy_crm/contacts_controller_spec.rb +147 -147
  110. data/spec/controllers/alchemy_crm/mailings_controller_spec.rb +62 -62
  111. data/spec/controllers/alchemy_crm/recipients_controller_spec.rb +109 -109
  112. data/spec/helpers/alchemy_crm/mailings_helper_spec.rb +165 -165
  113. data/spec/mailers/alchemy_crm/contacts_mailer_spec.rb +84 -84
  114. data/spec/mailers/alchemy_crm/mailings_mailer_spec.rb +29 -29
  115. data/spec/models/alchemy_crm/contact_group_spec.rb +25 -25
  116. data/spec/models/alchemy_crm/contact_spec.rb +71 -71
  117. data/spec/models/alchemy_crm/delivery_spec.rb +43 -39
  118. data/spec/models/alchemy_crm/mailing_spec.rb +46 -42
  119. data/spec/models/alchemy_crm/newsletter_spec.rb +29 -29
  120. data/spec/spec_helper.rb +36 -36
  121. metadata +6 -8
  122. data/rails/init.rb +0 -1
  123. data/recipes/alchemy-mailings-capistrano-tasks.rb +0 -12
data/Gemfile CHANGED
@@ -4,18 +4,17 @@ source 'http://rubygems.org'
4
4
  gemspec
5
5
 
6
6
  group :development do
7
- gem 'alchemy_cms', :git => 'git://github.com/magiclabs/alchemy_cms'
8
- gem 'guard-spork'
9
- if !ENV["CI"]
10
- gem 'ruby-debug-base19', '~> 0.11.26', :platform => :ruby_19
11
- gem 'linecache19', '~> 0.5.13', :platform => :ruby_19
12
- gem 'ruby-debug19', '~> 0.11.6', :require => 'ruby-debug', :platform => :ruby_19
13
- gem 'ruby-debug', :platform => :ruby_18
14
- end
7
+ if !ENV["CI"]
8
+ gem 'guard-spork'
9
+ gem 'ruby-debug-base19', '~> 0.11.26', :platform => :ruby_19
10
+ gem 'linecache19', '~> 0.5.13', :platform => :ruby_19
11
+ gem 'ruby-debug19', '~> 0.11.6', :require => 'ruby-debug', :platform => :ruby_19
12
+ gem 'ruby-debug', :platform => :ruby_18
13
+ end
15
14
  end
16
15
 
17
16
  group :test do
18
- gem 'sqlite3'
19
- gem "database_cleaner"
20
- gem 'email_spec'
17
+ gem 'sqlite3'
18
+ gem "database_cleaner"
19
+ gem 'email_spec'
21
20
  end
@@ -3,29 +3,29 @@ require File.expand_path('../lib/alchemy_crm/version', __FILE__)
3
3
 
4
4
  Gem::Specification.new do |gem|
5
5
 
6
- gem.authors = ["Thomas von Deyen"]
7
- gem.email = ["tvd@magiclabs.de"]
8
- gem.description = %q{A fully featured CRM / Newsletter and Mailings Module for Alchemy CMS. Building and sending Newsletters has never been easier!}
9
- gem.summary = %q{A fully featured CRM / Newsletter and Mailings Module for Alchemy CMS.}
10
- gem.homepage = "http://alchemy-cms.com"
11
- gem.license = 'BSD New'
6
+ gem.authors = ["Thomas von Deyen"]
7
+ gem.email = ["tvd@magiclabs.de"]
8
+ gem.description = %q{A fully featured CRM / Newsletter and Mailings Module for Alchemy CMS. Building and sending Newsletters has never been easier!}
9
+ gem.summary = %q{A fully featured CRM / Newsletter and Mailings Module for Alchemy CMS.}
10
+ gem.homepage = "http://alchemy-cms.com"
11
+ gem.license = 'BSD New'
12
12
 
13
- gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
14
- gem.files = `git ls-files`.split("\n")
15
- gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
16
- gem.name = "alchemy_crm"
17
- gem.require_paths = ["lib"]
18
- gem.version = AlchemyCrm::VERSION
13
+ gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
14
+ gem.files = `git ls-files`.split("\n")
15
+ gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
16
+ gem.name = "alchemy_crm"
17
+ gem.require_paths = ["lib"]
18
+ gem.version = AlchemyCrm::VERSION
19
19
 
20
- gem.add_dependency 'alchemy_cms', ["~> 2.1.7"]
21
- gem.add_dependency 'vcard', ['~> 0.1.1']
22
- gem.add_dependency 'csv_magic', ['~> 0.2.2']
23
- gem.add_dependency 'delayed_job_active_record', ["~> 0.3.2"]
24
- gem.add_dependency 'acts-as-taggable-on', ['~> 2.1.0']
25
- gem.add_dependency 'rails3-jquery-autocomplete', ['~> 1.0.4']
26
- gem.add_dependency "magic-localized_country_select", ["~> 0.2.0"]
20
+ gem.add_dependency 'alchemy_cms', ["~> 2.1.9"]
21
+ gem.add_dependency 'vcard', ['~> 0.1.1']
22
+ gem.add_dependency 'csv_magic', ['~> 0.2.2']
23
+ gem.add_dependency 'delayed_job_active_record', ["~> 0.3.2"]
24
+ gem.add_dependency 'acts-as-taggable-on', ['~> 2.1.0']
25
+ gem.add_dependency 'rails3-jquery-autocomplete', ['~> 1.0.4']
26
+ gem.add_dependency "magic-localized_country_select", ["~> 0.2.0"]
27
27
 
28
- gem.add_development_dependency 'rspec-rails', ["~> 2.8.0"]
29
- gem.add_development_dependency 'sqlite3', ["~> 1.3.5"]
28
+ gem.add_development_dependency 'rspec-rails', ["~> 2.8.0"]
29
+ gem.add_development_dependency 'sqlite3', ["~> 1.3.5"]
30
30
 
31
31
  end
@@ -1,65 +1,65 @@
1
1
  var AlchemyCrm = {};
2
2
  (function($) {
3
3
 
4
- AlchemyCrm = {
4
+ AlchemyCrm = {
5
5
 
6
- toggleLabel : function(link, hidetext, showtext) {
7
- if ($(link).text() === showtext) {
8
- $(link).text(hidetext);
9
- } else {
10
- $(link).text(showtext);
11
- }
12
- },
6
+ toggleLabel : function(link, hidetext, showtext) {
7
+ if ($(link).text() === showtext) {
8
+ $(link).text(hidetext);
9
+ } else {
10
+ $(link).text(showtext);
11
+ }
12
+ },
13
13
 
14
- removeContactGroupFilter : function(element, id, count) {
15
- $(element).parent().parent('.filter').remove();
16
- $(
17
- '#filter_container'
18
- ).append(
19
- '<input type="hidden" name="contact_group[filters_attributes]['+count+'][_destroy]" value=1>'
20
- ).append(
21
- '<input type="hidden" name="contact_group[filters_attributes]['+count+'][id]" value='+id+'>'
22
- );
23
- },
14
+ removeContactGroupFilter : function(element, id, count) {
15
+ $(element).parent().parent('.filter').remove();
16
+ $(
17
+ '#filter_container'
18
+ ).append(
19
+ '<input type="hidden" name="contact_group[filters_attributes]['+count+'][_destroy]" value=1>'
20
+ ).append(
21
+ '<input type="hidden" name="contact_group[filters_attributes]['+count+'][id]" value='+id+'>'
22
+ );
23
+ },
24
24
 
25
- teasablesFilter : function(value) {
26
- var teasables = $('#teasable_elements .teasable_page');
27
- if (value === '') {
28
- teasables.each(function(t) { t.show(); });
29
- }
30
- else {
31
- teasables.each(function(el) {
32
- if (el.attr('id').replace('teasable_page_', '') != value) {
33
- el.hide();
34
- } else {
35
- el.show();
36
- }
37
- });
38
- }
39
- },
25
+ teasablesFilter : function(value) {
26
+ var teasables = $('#teasable_elements .teasable_page');
27
+ if (value === '') {
28
+ teasables.each(function(t) { t.show(); });
29
+ }
30
+ else {
31
+ teasables.each(function(el) {
32
+ if (el.attr('id').replace('teasable_page_', '') != value) {
33
+ el.hide();
34
+ } else {
35
+ el.show();
36
+ }
37
+ });
38
+ }
39
+ },
40
40
 
41
- text_view_active : false,
41
+ text_view_active : false,
42
42
 
43
- togglePreviewFrame : function(btn, text_url, html_url) {
44
- var $frame = $('iframe#alchemyPreviewWindow');
45
- var $btn = $(btn).parent();
46
- var $spin = $('#preview_load_info');
47
- $frame.load(function() {
48
- $spin.hide();
49
- });
50
- if (AlchemyCrm.text_view_active) {
51
- $frame.attr('src', html_url);
52
- AlchemyCrm.text_view_active = false;
53
- $btn.removeClass('active');
54
- } else {
55
- $frame.attr('src', text_url);
56
- AlchemyCrm.text_view_active = true;
57
- $btn.addClass('active');
58
- }
59
- $spin.show();
60
- return false;
61
- }
43
+ togglePreviewFrame : function(btn, text_url, html_url) {
44
+ var $frame = $('iframe#alchemyPreviewWindow');
45
+ var $btn = $(btn).parent();
46
+ var $spin = $('#preview_load_info');
47
+ $frame.load(function() {
48
+ $spin.hide();
49
+ });
50
+ if (AlchemyCrm.text_view_active) {
51
+ $frame.attr('src', html_url);
52
+ AlchemyCrm.text_view_active = false;
53
+ $btn.removeClass('active');
54
+ } else {
55
+ $frame.attr('src', text_url);
56
+ AlchemyCrm.text_view_active = true;
57
+ $btn.addClass('active');
58
+ }
59
+ $spin.show();
60
+ return false;
61
+ }
62
62
 
63
- }
63
+ }
64
64
 
65
65
  })(jQuery);
@@ -1,473 +1,473 @@
1
1
  span.icon.mailing_add {
2
- background: image-url('alchemy_crm/mailing-icons.png') -48px 0;
2
+ background: image-url('alchemy_crm/mailing-icons.png') -48px 0;
3
3
  }
4
4
 
5
5
  span.icon.mailing {
6
- background: image-url('alchemy_crm/mailing-icons.png') 0 0;
6
+ background: image-url('alchemy_crm/mailing-icons.png') 0 0;
7
7
  }
8
8
 
9
9
  span.icon.mailing_copy {
10
- background: image-url('alchemy_crm/mailing-icons.png') -80px 0;
10
+ background: image-url('alchemy_crm/mailing-icons.png') -80px 0;
11
11
  }
12
12
 
13
13
  span.icon.mailing_edit {
14
- background: image-url('alchemy_crm/mailing-icons.png') -32px 0;
14
+ background: image-url('alchemy_crm/mailing-icons.png') -32px 0;
15
15
  }
16
16
 
17
17
  span.icon.mailing_delete {
18
- background: image-url('alchemy_crm/mailing-icons.png') -16px 0;
18
+ background: image-url('alchemy_crm/mailing-icons.png') -16px 0;
19
19
  }
20
20
 
21
21
  span.icon.delivery {
22
- background: image-url('alchemy_crm/mailing-icons.png') -64px 0;
22
+ background: image-url('alchemy_crm/mailing-icons.png') -64px 0;
23
23
  }
24
24
 
25
25
  span.icon.group_add {
26
- background: image-url('alchemy_crm/group-icons.png') -48px 0;
26
+ background: image-url('alchemy_crm/group-icons.png') -48px 0;
27
27
  }
28
28
 
29
29
  span.icon.send_mailing {
30
- background: image-url('alchemy_crm/mailing-icons.png') -96px 0;
30
+ background: image-url('alchemy_crm/mailing-icons.png') -96px 0;
31
31
  }
32
32
 
33
33
  span.icon.plain_text_view {
34
- background-position: -448px -136px;
34
+ background-position: -448px -136px;
35
35
  }
36
36
 
37
37
  span.icon.group {
38
- background: image-url('alchemy_crm/group-icons.png') 0 0;
38
+ background: image-url('alchemy_crm/group-icons.png') 0 0;
39
39
  }
40
40
 
41
41
  a.icon.group_edit {
42
- background: image-url('alchemy_crm/group-icons.png') -32px 0;
42
+ background: image-url('alchemy_crm/group-icons.png') -32px 0;
43
43
  }
44
44
 
45
45
  a.icon.group_delete {
46
- background: image-url('alchemy_crm/group-icons.png') -16px 0;
46
+ background: image-url('alchemy_crm/group-icons.png') -16px 0;
47
47
  }
48
48
 
49
49
  span.icon.tag_add {
50
- background: image-url('alchemy_crm/tag-icons.png') -48px 0;
50
+ background: image-url('alchemy_crm/tag-icons.png') -48px 0;
51
51
  }
52
52
 
53
53
  span.icon.tag {
54
- background: image-url('alchemy_crm/tag-icons.png') 0 0;
55
- margin-right: 0;
54
+ background: image-url('alchemy_crm/tag-icons.png') 0 0;
55
+ margin-right: 0;
56
56
  }
57
57
 
58
58
  a.icon.tag_edit {
59
- background: image-url('alchemy_crm/tag-icons.png') -32px 0;
59
+ background: image-url('alchemy_crm/tag-icons.png') -32px 0;
60
60
  }
61
61
 
62
62
  a.icon.tag_delete {
63
- background: image-url('alchemy_crm/tag-icons.png') -16px 0;
63
+ background: image-url('alchemy_crm/tag-icons.png') -16px 0;
64
64
  }
65
65
 
66
66
  span.icon.contact_add {
67
- background: image-url('alchemy_crm/contact-icons.png') -48px 0;
67
+ background: image-url('alchemy_crm/contact-icons.png') -48px 0;
68
68
  }
69
69
 
70
70
  span.icon.contact {
71
- background: image-url('alchemy_crm/contact-icons.png') 0 0;
71
+ background: image-url('alchemy_crm/contact-icons.png') 0 0;
72
72
  }
73
73
 
74
74
  a.icon.contact_export {
75
- background: image-url('alchemy_crm/contact-icons.png') -64px 0;
75
+ background: image-url('alchemy_crm/contact-icons.png') -64px 0;
76
76
  }
77
77
 
78
78
  span.icon.contact_import {
79
- background: image-url('alchemy_crm/contact-icons.png') -80px 0;
79
+ background: image-url('alchemy_crm/contact-icons.png') -80px 0;
80
80
  }
81
81
 
82
82
  a.icon.contact_delete {
83
- background: image-url('alchemy_crm/contact-icons.png') -16px 0;
83
+ background: image-url('alchemy_crm/contact-icons.png') -16px 0;
84
84
  }
85
85
 
86
86
  a.icon.contact_edit {
87
- background: image-url('alchemy_crm/contact-icons.png') -32px 0;
87
+ background: image-url('alchemy_crm/contact-icons.png') -32px 0;
88
88
  }
89
89
 
90
90
  span.icon.format_add {
91
- background: image-url('alchemy_crm/newsletter-icons.png') -48px 0;
91
+ background: image-url('alchemy_crm/newsletter-icons.png') -48px 0;
92
92
  }
93
93
 
94
94
  span.icon.format {
95
- background: image-url('alchemy_crm/newsletter-icons.png') 0 0;
95
+ background: image-url('alchemy_crm/newsletter-icons.png') 0 0;
96
96
  }
97
97
 
98
98
  span.icon.format_delete {
99
- background: image-url('alchemy_crm/newsletter-icons.png') -16px 0;
99
+ background: image-url('alchemy_crm/newsletter-icons.png') -16px 0;
100
100
  }
101
101
 
102
102
  span.icon.format_edit {
103
- background: image-url('alchemy_crm/newsletter-icons.png') -32px 0;
103
+ background: image-url('alchemy_crm/newsletter-icons.png') -32px 0;
104
104
  }
105
105
 
106
106
  span.icon.fill_from_element {
107
- background: image-url('alchemy/icons.png') -256px -40px;
107
+ background: image-url('alchemy/icons.png') -256px -40px;
108
108
  }
109
109
 
110
110
  span.icon.statistics {
111
- background-image: image-url('alchemy_crm/statistic.png');
112
- width: 18px;
113
- height: 18px;
111
+ background-image: image-url('alchemy_crm/statistic.png');
112
+ width: 18px;
113
+ height: 18px;
114
114
  }
115
115
 
116
116
  div.deliveries {
117
- padding: 8px;
118
- height: 400px;
119
- overflow-y: auto;
120
- overflow-x: none;
117
+ padding: 8px;
118
+ height: 400px;
119
+ overflow-y: auto;
120
+ overflow-x: none;
121
121
  }
122
122
 
123
123
  div.deliveries ol,
124
124
  div.deliveries ul {
125
- padding: 0;
126
- margin: 0;
125
+ padding: 0;
126
+ margin: 0;
127
127
  }
128
128
 
129
129
  li.delivery {
130
- clear: both;
131
- line-height: 25px;
132
- padding: 4px;
133
- margin-bottom: 4px;
130
+ clear: both;
131
+ line-height: 25px;
132
+ padding: 4px;
133
+ margin-bottom: 4px;
134
134
  }
135
135
 
136
136
  li.delivery.even:hover,
137
137
  li.delivery.odd:hover {
138
- background-color: #fffdef;
138
+ background-color: #fffdef;
139
139
  }
140
140
 
141
141
  li.delivery.even {
142
- background-color: #fff;
142
+ background-color: #fff;
143
143
  }
144
144
 
145
145
  li.delivery.odd {
146
- background-color: #dedede;
146
+ background-color: #dedede;
147
147
  }
148
148
 
149
149
  div.recipient_group {
150
- margin-bottom: 8px;
151
- background-color: #eef1f7;
152
- padding: 8px;
153
- border: 1px solid #d5d9e1;
154
- border-radius: 3px;
155
- -webkit-border-radius: 3px;
156
- -moz-border-radius: 3px;
150
+ margin-bottom: 8px;
151
+ background-color: #eef1f7;
152
+ padding: 8px;
153
+ border: 1px solid #d5d9e1;
154
+ border-radius: 3px;
155
+ -webkit-border-radius: 3px;
156
+ -moz-border-radius: 3px;
157
157
  }
158
158
 
159
159
  #delivery div.recipient_group p {
160
- margin: 0;
160
+ margin: 0;
161
161
  }
162
162
 
163
163
  #read div.recipient table tbody tr td {
164
- padding-right: 8px;
164
+ padding-right: 8px;
165
165
  }
166
166
 
167
167
  #delivery div.recipients table.recipients_table {
168
- font-size: 10px;
169
- border-style: none;
170
- border-width: 0;
171
- border-spacing: 0;
172
- width: 100%;
168
+ font-size: 10px;
169
+ border-style: none;
170
+ border-width: 0;
171
+ border-spacing: 0;
172
+ width: 100%;
173
173
  }
174
174
 
175
175
  div.recipients {
176
- margin-top: 8px;
177
- max-height: 144px;
178
- overflow: auto;
179
- position: relative;
176
+ margin-top: 8px;
177
+ max-height: 144px;
178
+ overflow: auto;
179
+ position: relative;
180
180
  }
181
181
 
182
182
  div.recipients table.recipients_table th,
183
183
  div.recipients table.recipients_table td {
184
- padding: 6px 4px 4px;
185
- border-bottom: 4px solid #eef1f7;
186
- text-align: left;
187
- vertical-align: top;
188
- line-height: 15px;
184
+ padding: 6px 4px 4px;
185
+ border-bottom: 4px solid #eef1f7;
186
+ text-align: left;
187
+ vertical-align: top;
188
+ line-height: 15px;
189
189
  }
190
190
 
191
191
  div.recipients table.recipients_table thead tr {
192
-
192
+
193
193
  }
194
194
 
195
195
  #delivery div.recipients table.recipients_table td {
196
- background-color: #f7f7f7;
196
+ background-color: #f7f7f7;
197
197
  }
198
198
 
199
199
  #delivery h2 span {
200
- font-weight: normal;
201
- font-style: normal;
200
+ font-weight: normal;
201
+ font-style: normal;
202
202
  }
203
203
 
204
204
  span.delivery_text {
205
- float: left;
206
- position: relative;
207
- top: 4px;
205
+ float: left;
206
+ position: relative;
207
+ top: 4px;
208
208
  }
209
209
 
210
210
  #main_content ul.mailing.list li div.list_row span.list_3rdcol {
211
- width: 130px;
211
+ width: 130px;
212
212
  }
213
213
 
214
214
  #main_content ul.mailing.list li div.list_row span.list_4thcol {
215
- width: 64px;
215
+ width: 64px;
216
216
  }
217
217
 
218
218
  div#tag_links {
219
- clear: both;
220
- margin-bottom: 5px;
221
- background-color: rgba(58,255,63,0.35);
219
+ clear: both;
220
+ margin-bottom: 5px;
221
+ background-color: rgba(58,255,63,0.35);
222
222
  }
223
223
 
224
224
  div#tag_links a {
225
- font-style: italic;
226
- margin-right: 2px;
227
- margin-left: 2px;
225
+ font-style: italic;
226
+ margin-right: 2px;
227
+ margin-left: 2px;
228
228
  }
229
229
 
230
230
  div#other_links {
231
- float: left;
232
- background-color: rgba(249,12,21,0.5);
231
+ float: left;
232
+ background-color: rgba(249,12,21,0.5);
233
233
  }
234
234
 
235
235
  div#other_links a {
236
- font-style: italic;
237
- margin-right: 2px;
238
- margin-left: 2px;
236
+ font-style: italic;
237
+ margin-right: 2px;
238
+ margin-left: 2px;
239
239
  }
240
240
 
241
241
  div#tag_container {
242
- float: left;
242
+ float: left;
243
243
  }
244
244
 
245
245
  #main_content ul.contacts.list li div.list_row span.list_1stcol img {
246
- position: relative;
247
- right: 1px;
246
+ position: relative;
247
+ right: 1px;
248
248
  }
249
249
 
250
250
  div.tag_and_radio_list {
251
- float: left;
252
- clear: both;
253
- width: 100%;
254
- margin-bottom: 8px;
251
+ float: left;
252
+ clear: both;
253
+ width: 100%;
254
+ margin-bottom: 8px;
255
255
  }
256
256
 
257
257
  span.tag_with_radio_button {
258
- margin-right: 12px;
259
- float: left;
258
+ margin-right: 12px;
259
+ float: left;
260
260
  }
261
261
 
262
262
  div.tag_list {
263
- padding-bottom: 8px;
264
- overflow: auto;
263
+ padding-bottom: 8px;
264
+ overflow: auto;
265
265
  }
266
266
 
267
267
  .tag_with_radio_button input, .tag_with_radio_button label.tag {
268
- padding: 0;
269
- width: auto;
268
+ padding: 0;
269
+ width: auto;
270
270
  }
271
271
 
272
272
  #all_contacts {
273
273
 
274
- padding: 2px 4px;
275
- margin: 0;
276
- list-style-type: none;
277
- overflow: auto;
278
- height: 8em;
279
- background-color: white;
274
+ padding: 2px 4px;
275
+ margin: 0;
276
+ list-style-type: none;
277
+ overflow: auto;
278
+ height: 8em;
279
+ background-color: white;
280
280
 
281
- li {
282
- padding: 4px;
283
- margin: 2px 0;
284
- }
281
+ li {
282
+ padding: 4px;
283
+ margin: 2px 0;
284
+ }
285
285
  }
286
286
 
287
287
  form.send_mailing_form {
288
- float: left;
289
- clear: both;
290
- width: 100%;
291
- margin-top: 20px;
288
+ float: left;
289
+ clear: both;
290
+ width: 100%;
291
+ margin-top: 20px;
292
292
  }
293
293
 
294
294
  img.unverified_contact {
295
- position: absolute;
296
- left: 2px;
297
- z-index: 1;
298
- top: 1px;
295
+ position: absolute;
296
+ left: 2px;
297
+ z-index: 1;
298
+ top: 1px;
299
299
  }
300
300
 
301
301
  #contact_list li div.list_row span.list_1stcol {
302
- position: relative;
302
+ position: relative;
303
303
  }
304
304
 
305
305
  #contact_list li div.list_row span.list_4thcol {
306
- margin-left: 4px;
307
- width: 42px;
306
+ margin-left: 4px;
307
+ width: 42px;
308
308
  }
309
309
 
310
310
  .contact_details {
311
- float: left;
312
- clear: both;
313
- width: 367px;
314
- background-color: #ddd;
315
- padding: 4px 4px 2px;
311
+ float: left;
312
+ clear: both;
313
+ width: 367px;
314
+ background-color: #ddd;
315
+ padding: 4px 4px 2px;
316
316
  }
317
317
 
318
318
  .contact_details div {
319
- margin-bottom: 2px;
319
+ margin-bottom: 2px;
320
320
  }
321
321
 
322
322
  #contact_list li div span.user_edit_tools {
323
- width: 41px;
323
+ width: 41px;
324
324
  }
325
325
 
326
326
  ul.mailing.list span.list_1stcol img {
327
- position: relative;
328
- right: 1px;
327
+ position: relative;
328
+ right: 1px;
329
329
  }
330
330
 
331
331
  a.delete_mailing_button:hover {
332
- background-position: right;
333
- text-decoration: none;
332
+ background-position: right;
333
+ text-decoration: none;
334
334
  }
335
335
 
336
336
  .with_padding {
337
- position: relative;
337
+ position: relative;
338
338
  }
339
339
 
340
340
  div#please_wait {
341
- position: absolute;
342
- width: 99%;
343
- height: 99%;
344
- text-align: center;
345
- background-color: #ededed;
346
- z-index: 1;
347
- opacity: 0.85;
341
+ position: absolute;
342
+ width: 99%;
343
+ height: 99%;
344
+ text-align: center;
345
+ background-color: #ededed;
346
+ z-index: 1;
347
+ opacity: 0.85;
348
348
  }
349
349
 
350
350
  #please_wait p {
351
- margin-top: 30%;
351
+ margin-top: 30%;
352
352
  }
353
353
 
354
354
  #please_wait p img {
355
- position: relative;
356
- top: 12px;
355
+ position: relative;
356
+ top: 12px;
357
357
  }
358
358
 
359
359
  .full_width {
360
- width: 100% !important;
360
+ width: 100% !important;
361
361
  }
362
362
 
363
363
  div.emulate_table span.value_with_top_padding {
364
- padding-top: 2px;
365
- float: left;
364
+ padding-top: 2px;
365
+ float: left;
366
366
  }
367
367
 
368
368
  a.send_mailing_button {
369
- width: 19px;
370
- height: 19px;
371
- display: block;
372
- background: image-url('alchemy_crm/mailing_send.gif') no-repeat left center;
373
- float: right;
369
+ width: 19px;
370
+ height: 19px;
371
+ display: block;
372
+ background: image-url('alchemy_crm/mailing_send.gif') no-repeat left center;
373
+ float: right;
374
374
  }
375
375
 
376
376
  #teasable_elements a.link_only {
377
- float: right;
377
+ float: right;
378
378
  }
379
379
 
380
380
  a.send_mailing_button:hover {
381
- background-position: right;
382
- text-decoration: none;
381
+ background-position: right;
382
+ text-decoration: none;
383
383
  }
384
384
 
385
385
  .send_mailing_button_disabled {
386
- width: 19px;
387
- height: 19px;
388
- display: block;
389
- background: image-url('alchemy_crm/mailing_send.gif') no-repeat left center;
390
- float: right;
391
- background-position: right;
392
- text-decoration: none;
386
+ width: 19px;
387
+ height: 19px;
388
+ display: block;
389
+ background: image-url('alchemy_crm/mailing_send.gif') no-repeat left center;
390
+ float: right;
391
+ background-position: right;
392
+ text-decoration: none;
393
393
  }
394
394
 
395
395
  span.tag {
396
- margin-right: 12px;
397
- float: left;
396
+ margin-right: 12px;
397
+ float: left;
398
398
  }
399
399
 
400
400
  #filter_container {
401
- margin-bottom: 8px;
401
+ margin-bottom: 8px;
402
402
 
403
- .thin_border {
404
- bottom: 8px;
405
- position: relative;
406
- }
403
+ .thin_border {
404
+ bottom: 8px;
405
+ position: relative;
406
+ }
407
407
 
408
- span.remove_filter {
409
- float: right;
410
- position: relative;
411
- top: 2px;
412
- }
408
+ span.remove_filter {
409
+ float: right;
410
+ position: relative;
411
+ top: 2px;
412
+ }
413
413
 
414
- div.filter {
415
- margin-bottom: 8px;
416
- }
414
+ div.filter {
415
+ margin-bottom: 8px;
416
+ }
417
417
  }
418
418
 
419
419
  #alchemy input#contact_city, #alchemy input#contact_title {
420
- width: 182px;
420
+ width: 182px;
421
421
  }
422
422
 
423
423
  #alchemy input#contact_zip {
424
- width: 59px;
424
+ width: 59px;
425
425
  }
426
426
 
427
427
  #alchemy table#contact td.label.right {
428
- width: 40px;
428
+ width: 40px;
429
429
  }
430
430
 
431
431
  #alchemy .selectbox .display.very_short {
432
- width: 39px;
432
+ width: 39px;
433
433
  }
434
434
 
435
435
  #alchemy .selectbox.items.very_short {
436
- width: auto;
436
+ width: auto;
437
437
  }
438
438
 
439
439
  #alchemy .selectbox .display.time_select {
440
- width: 19px;
440
+ width: 19px;
441
441
  }
442
442
 
443
443
  #alchemy .selectbox.items.time_select {
444
- width: 47px;
444
+ width: 47px;
445
445
  }
446
446
 
447
447
  table tr.disabled td {
448
- color: #592e2e;
449
- background-color: #efd3d3;
448
+ color: #592e2e;
449
+ background-color: #efd3d3;
450
450
  }
451
451
 
452
452
  div#archive_all form.contact_import {
453
- width: 550px;
454
- margin: 8px;
453
+ width: 550px;
454
+ margin: 8px;
455
455
  }
456
456
 
457
457
  td.delivery_time {
458
- white-space: nowrap;
458
+ white-space: nowrap;
459
459
 
460
- div.alchemy_selectbox, label, input.thin_border {
461
- float: left;
462
- }
460
+ div.alchemy_selectbox, label, input.thin_border {
461
+ float: left;
462
+ }
463
463
 
464
- label {
465
- line-height: 23px;
466
- margin: 0 8px;
467
- }
464
+ label {
465
+ line-height: 23px;
466
+ margin: 0 8px;
467
+ }
468
468
 
469
- input.thin_border {
470
- position: relative;
471
- top: -2px;
472
- }
469
+ input.thin_border {
470
+ position: relative;
471
+ top: -2px;
472
+ }
473
473
  }