maily 0.1.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. data/.gitignore +1 -0
  2. data/MIT-LICENSE +1 -1
  3. data/README.md +46 -7
  4. data/app/assets/images/maily/fonts/JosefinSans-Light.ttf +0 -0
  5. data/app/assets/images/maily/icons/maily.eot +0 -0
  6. data/app/assets/images/maily/icons/maily.svg +90 -0
  7. data/app/assets/images/maily/icons/maily.ttf +0 -0
  8. data/app/assets/images/maily/icons/maily.woff +0 -0
  9. data/app/assets/javascripts/maily/application.js +0 -14
  10. data/app/assets/javascripts/maily/html5shiv.js +8 -0
  11. data/app/assets/stylesheets/maily/application.scss +310 -0
  12. data/app/assets/stylesheets/maily/icons.css +199 -0
  13. data/app/assets/stylesheets/maily/normalize.css +406 -0
  14. data/app/controllers/maily/emails_controller.rb +14 -12
  15. data/app/helpers/maily/application_helper.rb +3 -0
  16. data/app/helpers/maily/emails_helper.rb +3 -0
  17. data/app/views/layouts/maily/application.html.erb +10 -4
  18. data/app/views/maily/emails/edit.html.erb +19 -10
  19. data/app/views/maily/emails/index.html.erb +2 -9
  20. data/app/views/maily/emails/show.html.erb +59 -36
  21. data/app/views/maily/shared/_footer.html.erb +3 -0
  22. data/app/views/maily/shared/_header.html.erb +3 -0
  23. data/app/views/maily/shared/_sidebar.html.erb +12 -0
  24. data/config/routes.rb +6 -6
  25. data/lib/generators/maily/install_generator.rb +9 -8
  26. data/lib/generators/templates/initializer.rb +6 -8
  27. data/lib/maily.rb +7 -1
  28. data/lib/maily/email.rb +39 -5
  29. data/lib/maily/mailer.rb +1 -1
  30. data/lib/maily/version.rb +1 -1
  31. data/maily.gemspec +2 -2
  32. data/screenshot.png +0 -0
  33. metadata +17 -6
  34. data/Gemfile.lock +0 -99
  35. data/app/assets/stylesheets/maily/application.css +0 -13
@@ -0,0 +1,199 @@
1
+ @font-face {
2
+ font-family: 'maily';
3
+ src:url('icons/maily.eot');
4
+ src:url('icons/maily.eot?#iefix') format('embedded-opentype'),
5
+ url('icons/maily.woff') format('woff'),
6
+ url('icons/maily.ttf') format('truetype'),
7
+ url('icons/maily.svg#maily') format('svg');
8
+ font-weight: normal;
9
+ font-style: normal;
10
+ }
11
+
12
+ [class^="icon-maily-"], [class*=" icon-maily-"] {
13
+ font-family: 'maily';
14
+ speak: none;
15
+ font-style: normal;
16
+ font-weight: normal;
17
+ font-variant: normal;
18
+ text-transform: none;
19
+ line-height: 1;
20
+
21
+ /* Better Font Rendering =========== */
22
+ -webkit-font-smoothing: antialiased;
23
+ -moz-osx-font-smoothing: grayscale;
24
+ }
25
+
26
+ [class^="icon-maily-"]:before, [class*=" icon-maily-"]:before { margin-right: .4em; }
27
+
28
+ .icon-maily-home:before {
29
+ content: "\e600";
30
+ }
31
+ .icon-maily-pencil:before {
32
+ content: "\e601";
33
+ }
34
+ .icon-maily-images:before {
35
+ content: "\e602";
36
+ }
37
+ .icon-maily-bullhorn:before {
38
+ content: "\e603";
39
+ }
40
+ .icon-maily-file:before {
41
+ content: "\e604";
42
+ }
43
+ .icon-maily-copy:before {
44
+ content: "\e605";
45
+ }
46
+ .icon-maily-stack:before {
47
+ content: "\e606";
48
+ }
49
+ .icon-maily-folder-open:before {
50
+ content: "\e607";
51
+ }
52
+ .icon-maily-cart:before {
53
+ content: "\e608";
54
+ }
55
+ .icon-maily-credit:before {
56
+ content: "\e609";
57
+ }
58
+ .icon-maily-support:before {
59
+ content: "\e60a";
60
+ }
61
+ .icon-maily-phone:before {
62
+ content: "\e60b";
63
+ }
64
+ .icon-maily-address-book:before {
65
+ content: "\e60c";
66
+ }
67
+ .icon-maily-location:before {
68
+ content: "\e60d";
69
+ }
70
+ .icon-maily-bell:before {
71
+ content: "\e60e";
72
+ }
73
+ .icon-maily-mobile:before {
74
+ content: "\e60f";
75
+ }
76
+ .icon-maily-tablet:before {
77
+ content: "\e610";
78
+ }
79
+ .icon-maily-mobile2:before {
80
+ content: "\e611";
81
+ }
82
+ .icon-maily-screen:before {
83
+ content: "\e612";
84
+ }
85
+ .icon-maily-laptop:before {
86
+ content: "\e613";
87
+ }
88
+ .icon-maily-drawer:before {
89
+ content: "\e614";
90
+ }
91
+ .icon-maily-drawer2:before {
92
+ content: "\e615";
93
+ }
94
+ .icon-maily-box-remove:before {
95
+ content: "\e616";
96
+ }
97
+ .icon-maily-box-add:before {
98
+ content: "\e617";
99
+ }
100
+ .icon-maily-undo:before {
101
+ content: "\e618";
102
+ }
103
+ .icon-maily-redo:before {
104
+ content: "\e619";
105
+ }
106
+ .icon-maily-bubbles:before {
107
+ content: "\e61a";
108
+ }
109
+ .icon-maily-user:before {
110
+ content: "\e61b";
111
+ }
112
+ .icon-maily-expand:before {
113
+ content: "\e61c";
114
+ }
115
+ .icon-maily-contract:before {
116
+ content: "\e61d";
117
+ }
118
+ .icon-maily-settings:before {
119
+ content: "\e61e";
120
+ }
121
+ .icon-maily-gift:before {
122
+ content: "\e61f";
123
+ }
124
+ .icon-maily-remove:before {
125
+ content: "\e620";
126
+ }
127
+ .icon-maily-menu:before {
128
+ content: "\e621";
129
+ }
130
+ .icon-maily-link:before {
131
+ content: "\e622";
132
+ }
133
+ .icon-maily-attachment:before {
134
+ content: "\e623";
135
+ }
136
+ .icon-maily-flag:before {
137
+ content: "\e624";
138
+ }
139
+ .icon-maily-checkmark:before {
140
+ content: "\e625";
141
+ }
142
+ .icon-maily-close:before {
143
+ content: "\e626";
144
+ }
145
+ .icon-maily-minus:before {
146
+ content: "\e627";
147
+ }
148
+ .icon-maily-plus:before {
149
+ content: "\e628";
150
+ }
151
+ .icon-maily-arrow-right:before {
152
+ content: "\e629";
153
+ }
154
+ .icon-maily-arrow-left:before {
155
+ content: "\e62a";
156
+ }
157
+ .icon-maily-radio-checked:before {
158
+ content: "\e62b";
159
+ }
160
+ .icon-maily-radio-unchecked:before {
161
+ content: "\e62c";
162
+ }
163
+ .icon-maily-checkbox-unchecked:before {
164
+ content: "\e62d";
165
+ }
166
+ .icon-maily-checkbox-checked:before {
167
+ content: "\e62e";
168
+ }
169
+ .icon-maily-twitter:before {
170
+ content: "\e62f";
171
+ }
172
+ .icon-maily-facebook:before {
173
+ content: "\e630";
174
+ }
175
+ .icon-maily-google-plus:before {
176
+ content: "\e631";
177
+ }
178
+ .icon-maily-github:before {
179
+ content: "\e632";
180
+ }
181
+ .icon-maily-linkedin:before {
182
+ content: "\e633";
183
+ }
184
+ .icon-maily-envelope:before {
185
+ content: "\e634";
186
+ }
187
+ .icon-maily-clock:before {
188
+ content: "\e63c";
189
+ }
190
+ .icon-maily-earth:before {
191
+ content: "\e63d";
192
+ }
193
+ .icon-maily-left:before {
194
+ content: "\e63e";
195
+ }
196
+ .icon-maily-eye:before {
197
+ content: "\e63f";
198
+ }
199
+
@@ -0,0 +1,406 @@
1
+ /*! normalize.css v2.1.3 | MIT License | git.io/normalize */
2
+
3
+ /* ==========================================================================
4
+ HTML5 display definitions
5
+ ========================================================================== */
6
+
7
+ /**
8
+ * Correct `block` display not defined in IE 8/9.
9
+ */
10
+
11
+ article,
12
+ aside,
13
+ details,
14
+ figcaption,
15
+ figure,
16
+ footer,
17
+ header,
18
+ hgroup,
19
+ main,
20
+ nav,
21
+ section,
22
+ summary {
23
+ display: block;
24
+ }
25
+
26
+ /**
27
+ * Correct `inline-block` display not defined in IE 8/9.
28
+ */
29
+
30
+ audio,
31
+ canvas,
32
+ video {
33
+ display: inline-block;
34
+ }
35
+
36
+ /**
37
+ * Prevent modern browsers from displaying `audio` without controls.
38
+ * Remove excess height in iOS 5 devices.
39
+ */
40
+
41
+ audio:not([controls]) {
42
+ display: none;
43
+ height: 0;
44
+ }
45
+
46
+ /**
47
+ * Address `[hidden]` styling not present in IE 8/9.
48
+ * Hide the `template` element in IE, Safari, and Firefox < 22.
49
+ */
50
+
51
+ [hidden],
52
+ template {
53
+ display: none;
54
+ }
55
+
56
+ /* ==========================================================================
57
+ Base
58
+ ========================================================================== */
59
+
60
+ /**
61
+ * 1. Set default font family to sans-serif.
62
+ * 2. Prevent iOS text size adjust after orientation change, without disabling
63
+ * user zoom.
64
+ */
65
+
66
+ html {
67
+ font-family: sans-serif; /* 1 */
68
+ -ms-text-size-adjust: 100%; /* 2 */
69
+ -webkit-text-size-adjust: 100%; /* 2 */
70
+ }
71
+
72
+ /**
73
+ * Remove default margin.
74
+ */
75
+
76
+ body {
77
+ margin: 0;
78
+ }
79
+
80
+ /* ==========================================================================
81
+ Links
82
+ ========================================================================== */
83
+
84
+ /**
85
+ * Remove the gray background color from active links in IE 10.
86
+ */
87
+
88
+ a {
89
+ background: transparent;
90
+ }
91
+
92
+ /**
93
+ * Address `outline` inconsistency between Chrome and other browsers.
94
+ */
95
+
96
+ a:focus {
97
+ outline: thin dotted;
98
+ }
99
+
100
+ /**
101
+ * Improve readability when focused and also mouse hovered in all browsers.
102
+ */
103
+
104
+ a:active,
105
+ a:hover {
106
+ outline: 0;
107
+ }
108
+
109
+ /* ==========================================================================
110
+ Typography
111
+ ========================================================================== */
112
+
113
+ /**
114
+ * Address variable `h1` font-size and margin within `section` and `article`
115
+ * contexts in Firefox 4+, Safari 5, and Chrome.
116
+ */
117
+
118
+ h1 {
119
+ font-size: 2em;
120
+ margin: 0.67em 0;
121
+ }
122
+
123
+ /**
124
+ * Address styling not present in IE 8/9, Safari 5, and Chrome.
125
+ */
126
+
127
+ abbr[title] {
128
+ border-bottom: 1px dotted;
129
+ }
130
+
131
+ /**
132
+ * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
133
+ */
134
+
135
+ b,
136
+ strong {
137
+ font-weight: bold;
138
+ }
139
+
140
+ /**
141
+ * Address styling not present in Safari 5 and Chrome.
142
+ */
143
+
144
+ dfn {
145
+ font-style: italic;
146
+ }
147
+
148
+ /**
149
+ * Address differences between Firefox and other browsers.
150
+ */
151
+
152
+ hr {
153
+ -moz-box-sizing: content-box;
154
+ box-sizing: content-box;
155
+ height: 0;
156
+ }
157
+
158
+ /**
159
+ * Address styling not present in IE 8/9.
160
+ */
161
+
162
+ mark {
163
+ background: #ff0;
164
+ color: #000;
165
+ }
166
+
167
+ /**
168
+ * Correct font family set oddly in Safari 5 and Chrome.
169
+ */
170
+
171
+ code,
172
+ kbd,
173
+ pre,
174
+ samp {
175
+ font-family: monospace, serif;
176
+ font-size: 1em;
177
+ }
178
+
179
+ /**
180
+ * Improve readability of pre-formatted text in all browsers.
181
+ */
182
+
183
+ pre {
184
+ white-space: pre-wrap;
185
+ }
186
+
187
+ /**
188
+ * Set consistent quote types.
189
+ */
190
+
191
+ q {
192
+ quotes: "\201C" "\201D" "\2018" "\2019";
193
+ }
194
+
195
+ /**
196
+ * Address inconsistent and variable font size in all browsers.
197
+ */
198
+
199
+ small {
200
+ font-size: 80%;
201
+ }
202
+
203
+ /**
204
+ * Prevent `sub` and `sup` affecting `line-height` in all browsers.
205
+ */
206
+
207
+ sub,
208
+ sup {
209
+ font-size: 75%;
210
+ line-height: 0;
211
+ position: relative;
212
+ vertical-align: baseline;
213
+ }
214
+
215
+ sup {
216
+ top: -0.5em;
217
+ }
218
+
219
+ sub {
220
+ bottom: -0.25em;
221
+ }
222
+
223
+ /* ==========================================================================
224
+ Embedded content
225
+ ========================================================================== */
226
+
227
+ /**
228
+ * Remove border when inside `a` element in IE 8/9.
229
+ */
230
+
231
+ img {
232
+ border: 0;
233
+ }
234
+
235
+ /**
236
+ * Correct overflow displayed oddly in IE 9.
237
+ */
238
+
239
+ svg:not(:root) {
240
+ overflow: hidden;
241
+ }
242
+
243
+ /* ==========================================================================
244
+ Figures
245
+ ========================================================================== */
246
+
247
+ /**
248
+ * Address margin not present in IE 8/9 and Safari 5.
249
+ */
250
+
251
+ figure {
252
+ margin: 0;
253
+ }
254
+
255
+ /* ==========================================================================
256
+ Forms
257
+ ========================================================================== */
258
+
259
+ /**
260
+ * Define consistent border, margin, and padding.
261
+ */
262
+
263
+ fieldset {
264
+ border: 1px solid #c0c0c0;
265
+ margin: 0 2px;
266
+ padding: 0.35em 0.625em 0.75em;
267
+ }
268
+
269
+ /**
270
+ * 1. Correct `color` not being inherited in IE 8/9.
271
+ * 2. Remove padding so people aren't caught out if they zero out fieldsets.
272
+ */
273
+
274
+ legend {
275
+ border: 0; /* 1 */
276
+ padding: 0; /* 2 */
277
+ }
278
+
279
+ /**
280
+ * 1. Correct font family not being inherited in all browsers.
281
+ * 2. Correct font size not being inherited in all browsers.
282
+ * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
283
+ */
284
+
285
+ button,
286
+ input,
287
+ select,
288
+ textarea {
289
+ font-family: inherit; /* 1 */
290
+ font-size: 100%; /* 2 */
291
+ margin: 0; /* 3 */
292
+ }
293
+
294
+ /**
295
+ * Address Firefox 4+ setting `line-height` on `input` using `!important` in
296
+ * the UA stylesheet.
297
+ */
298
+
299
+ button,
300
+ input {
301
+ line-height: normal;
302
+ }
303
+
304
+ /**
305
+ * Address inconsistent `text-transform` inheritance for `button` and `select`.
306
+ * All other form control elements do not inherit `text-transform` values.
307
+ * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
308
+ * Correct `select` style inheritance in Firefox 4+ and Opera.
309
+ */
310
+
311
+ button,
312
+ select {
313
+ text-transform: none;
314
+ }
315
+
316
+ /**
317
+ * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
318
+ * and `video` controls.
319
+ * 2. Correct inability to style clickable `input` types in iOS.
320
+ * 3. Improve usability and consistency of cursor style between image-type
321
+ * `input` and others.
322
+ */
323
+
324
+ button,
325
+ html input[type="button"], /* 1 */
326
+ input[type="reset"],
327
+ input[type="submit"] {
328
+ -webkit-appearance: button; /* 2 */
329
+ cursor: pointer; /* 3 */
330
+ }
331
+
332
+ /**
333
+ * Re-set default cursor for disabled elements.
334
+ */
335
+
336
+ button[disabled],
337
+ html input[disabled] {
338
+ cursor: default;
339
+ }
340
+
341
+ /**
342
+ * 1. Address box sizing set to `content-box` in IE 8/9/10.
343
+ * 2. Remove excess padding in IE 8/9/10.
344
+ */
345
+
346
+ input[type="checkbox"],
347
+ input[type="radio"] {
348
+ box-sizing: border-box; /* 1 */
349
+ padding: 0; /* 2 */
350
+ }
351
+
352
+ /**
353
+ * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
354
+ * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
355
+ * (include `-moz` to future-proof).
356
+ */
357
+
358
+ input[type="search"] {
359
+ -webkit-appearance: textfield; /* 1 */
360
+ -moz-box-sizing: content-box;
361
+ -webkit-box-sizing: content-box; /* 2 */
362
+ box-sizing: content-box;
363
+ }
364
+
365
+ /**
366
+ * Remove inner padding and search cancel button in Safari 5 and Chrome
367
+ * on OS X.
368
+ */
369
+
370
+ input[type="search"]::-webkit-search-cancel-button,
371
+ input[type="search"]::-webkit-search-decoration {
372
+ -webkit-appearance: none;
373
+ }
374
+
375
+ /**
376
+ * Remove inner padding and border in Firefox 4+.
377
+ */
378
+
379
+ button::-moz-focus-inner,
380
+ input::-moz-focus-inner {
381
+ border: 0;
382
+ padding: 0;
383
+ }
384
+
385
+ /**
386
+ * 1. Remove default vertical scrollbar in IE 8/9.
387
+ * 2. Improve readability and alignment in all browsers.
388
+ */
389
+
390
+ textarea {
391
+ overflow: auto; /* 1 */
392
+ vertical-align: top; /* 2 */
393
+ }
394
+
395
+ /* ==========================================================================
396
+ Tables
397
+ ========================================================================== */
398
+
399
+ /**
400
+ * Remove most spacing between table cells.
401
+ */
402
+
403
+ table {
404
+ border-collapse: collapse;
405
+ border-spacing: 0;
406
+ }