messaging_4 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/Rakefile +39 -0
  4. data/app/assets/javascripts/messaging/adapt.js +135 -0
  5. data/app/assets/javascripts/messaging/application.js +10 -0
  6. data/app/assets/javascripts/messaging/messages.coffee +33 -0
  7. data/app/assets/stylesheets/messaging/1200.css +357 -0
  8. data/app/assets/stylesheets/messaging/1560.css +357 -0
  9. data/app/assets/stylesheets/messaging/1920.css +358 -0
  10. data/app/assets/stylesheets/messaging/2520.css +359 -0
  11. data/app/assets/stylesheets/messaging/720.css +357 -0
  12. data/app/assets/stylesheets/messaging/960.css +357 -0
  13. data/app/assets/stylesheets/messaging/application.css +8 -0
  14. data/app/assets/stylesheets/messaging/messages.sass +225 -0
  15. data/app/assets/stylesheets/messaging/mobile.css +26 -0
  16. data/app/assets/stylesheets/messaging/reset.css +48 -0
  17. data/app/controllers/messaging/application_controller.rb +9 -0
  18. data/app/controllers/messaging/messages_controller.rb +71 -0
  19. data/app/helpers/messaging/application_helper.rb +4 -0
  20. data/app/models/messaging/message.rb +35 -0
  21. data/app/views/layouts/messaging/application.html.haml +62 -0
  22. data/app/views/messaging/messages/index.html.haml +28 -0
  23. data/app/views/messaging/messages/new.html.haml +11 -0
  24. data/app/views/messaging/messages/show.html.haml +23 -0
  25. data/config/routes.rb +13 -0
  26. data/lib/generators/messaging/devise/devise_generator.rb +34 -0
  27. data/lib/generators/messaging/devise/templates/messaging_user.rb.erb +23 -0
  28. data/lib/generators/messaging/install/install_generator.rb +12 -0
  29. data/lib/messaging.rb +9 -0
  30. data/lib/messaging/engine.rb +5 -0
  31. data/lib/messaging/version.rb +3 -0
  32. data/lib/tasks/messaging_tasks.rake +4 -0
  33. data/test/dummy/Rakefile +7 -0
  34. data/test/dummy/app/assets/javascripts/application.js +9 -0
  35. data/test/dummy/app/assets/stylesheets/application.css +7 -0
  36. data/test/dummy/app/controllers/application_controller.rb +3 -0
  37. data/test/dummy/app/controllers/home_controller.rb +9 -0
  38. data/test/dummy/app/helpers/application_helper.rb +2 -0
  39. data/test/dummy/app/models/messaging_user.rb +23 -0
  40. data/test/dummy/app/models/user.rb +23 -0
  41. data/test/dummy/app/views/layouts/application.html.haml +11 -0
  42. data/test/dummy/config.ru +4 -0
  43. data/test/dummy/config/application.rb +45 -0
  44. data/test/dummy/config/boot.rb +10 -0
  45. data/test/dummy/config/database.yml +25 -0
  46. data/test/dummy/config/environment.rb +5 -0
  47. data/test/dummy/config/environments/development.rb +32 -0
  48. data/test/dummy/config/environments/production.rb +60 -0
  49. data/test/dummy/config/environments/test.rb +39 -0
  50. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  51. data/test/dummy/config/initializers/devise.rb +209 -0
  52. data/test/dummy/config/initializers/inflections.rb +10 -0
  53. data/test/dummy/config/initializers/mailboxer.rb +12 -0
  54. data/test/dummy/config/initializers/mime_types.rb +5 -0
  55. data/test/dummy/config/initializers/secret_token.rb +7 -0
  56. data/test/dummy/config/initializers/session_store.rb +8 -0
  57. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  58. data/test/dummy/config/locales/devise.en.yml +58 -0
  59. data/test/dummy/config/locales/en.yml +5 -0
  60. data/test/dummy/config/routes.rb +10 -0
  61. data/test/dummy/db/migrate/20111204041734_devise_create_users.rb +25 -0
  62. data/test/dummy/db/migrate/20111204042609_create_mailboxer.rb +61 -0
  63. data/test/dummy/db/migrate/20111204042610_add_notified_object.rb +17 -0
  64. data/test/dummy/db/migrate/20111204042611_add_notification_code.rb +13 -0
  65. data/test/dummy/db/migrate/20111205020919_add_attachments.rb +5 -0
  66. data/test/dummy/db/migrate/20111213052240_devise_create_messaging_users.rb +25 -0
  67. data/test/dummy/db/schema.rb +99 -0
  68. data/test/dummy/public/404.html +26 -0
  69. data/test/dummy/public/422.html +26 -0
  70. data/test/dummy/public/500.html +26 -0
  71. data/test/dummy/public/favicon.ico +0 -0
  72. data/test/dummy/script/rails +6 -0
  73. data/test/dummy/test/fixtures/messaging_users.yml +11 -0
  74. data/test/dummy/test/fixtures/users.yml +11 -0
  75. data/test/dummy/test/unit/messaging_user_test.rb +7 -0
  76. data/test/dummy/test/unit/user_test.rb +7 -0
  77. data/test/integration/navigation_test.rb +10 -0
  78. data/test/messaging_test.rb +7 -0
  79. data/test/test_helper.rb +10 -0
  80. metadata +281 -0
@@ -0,0 +1,357 @@
1
+ /*
2
+ 960 Grid System ~ Core CSS.
3
+ Learn more ~ http://960.gs/
4
+
5
+ Licensed under GPL and MIT.
6
+ */
7
+
8
+ /*
9
+ Forces backgrounds to span full width,
10
+ even if there is horizontal scrolling.
11
+ Increase this if your layout is wider.
12
+
13
+ Note: IE6 works fine without this fix.
14
+ */
15
+
16
+ body {
17
+ min-width: 1560px;
18
+ }
19
+
20
+ /* `Containers
21
+ ----------------------------------------------------------------------------------------------------*/
22
+
23
+ .container_12 {
24
+ margin-left: auto;
25
+ margin-right: auto;
26
+ width: 1560px;
27
+ }
28
+
29
+ /* `Grid >> Global
30
+ ----------------------------------------------------------------------------------------------------*/
31
+
32
+ .grid_1,
33
+ .grid_2,
34
+ .grid_3,
35
+ .grid_4,
36
+ .grid_5,
37
+ .grid_6,
38
+ .grid_7,
39
+ .grid_8,
40
+ .grid_9,
41
+ .grid_10,
42
+ .grid_11,
43
+ .grid_12 {
44
+ display: inline;
45
+ float: left;
46
+ margin-left: 10px;
47
+ margin-right: 10px;
48
+ }
49
+
50
+ .push_1, .pull_1,
51
+ .push_2, .pull_2,
52
+ .push_3, .pull_3,
53
+ .push_4, .pull_4,
54
+ .push_5, .pull_5,
55
+ .push_6, .pull_6,
56
+ .push_7, .pull_7,
57
+ .push_8, .pull_8,
58
+ .push_9, .pull_9,
59
+ .push_10, .pull_10,
60
+ .push_11, .pull_11 {
61
+ position: relative;
62
+ }
63
+
64
+ /* `Grid >> Children (Alpha ~ First, Omega ~ Last)
65
+ ----------------------------------------------------------------------------------------------------*/
66
+
67
+ .alpha {
68
+ margin-left: 0;
69
+ }
70
+
71
+ .omega {
72
+ margin-right: 0;
73
+ }
74
+
75
+ /* `Grid >> 12 Columns
76
+ ----------------------------------------------------------------------------------------------------*/
77
+
78
+ .container_12 .grid_1 {
79
+ width: 110px;
80
+ }
81
+
82
+ .container_12 .grid_2 {
83
+ width: 240px;
84
+ }
85
+
86
+ .container_12 .grid_3 {
87
+ width: 370px;
88
+ }
89
+
90
+ .container_12 .grid_4 {
91
+ width: 500px;
92
+ }
93
+
94
+ .container_12 .grid_5 {
95
+ width: 630px;
96
+ }
97
+
98
+ .container_12 .grid_6 {
99
+ width: 760px;
100
+ }
101
+
102
+ .container_12 .grid_7 {
103
+ width: 890px;
104
+ }
105
+
106
+ .container_12 .grid_8 {
107
+ width: 1020px;
108
+ }
109
+
110
+ .container_12 .grid_9 {
111
+ width: 1150px;
112
+ }
113
+
114
+ .container_12 .grid_10 {
115
+ width: 1280px;
116
+ }
117
+
118
+ .container_12 .grid_11 {
119
+ width: 1410px;
120
+ }
121
+
122
+ .container_12 .grid_12 {
123
+ width: 1540px;
124
+ }
125
+
126
+ /* `Prefix Extra Space >> 12 Columns
127
+ ----------------------------------------------------------------------------------------------------*/
128
+
129
+ .container_12 .prefix_1 {
130
+ padding-left: 130px;
131
+ }
132
+
133
+ .container_12 .prefix_2 {
134
+ padding-left: 260px;
135
+ }
136
+
137
+ .container_12 .prefix_3 {
138
+ padding-left: 390px;
139
+ }
140
+
141
+ .container_12 .prefix_4 {
142
+ padding-left: 520px;
143
+ }
144
+
145
+ .container_12 .prefix_5 {
146
+ padding-left: 650px;
147
+ }
148
+
149
+ .container_12 .prefix_6 {
150
+ padding-left: 780px;
151
+ }
152
+
153
+ .container_12 .prefix_7 {
154
+ padding-left: 910px;
155
+ }
156
+
157
+ .container_12 .prefix_8 {
158
+ padding-left: 1040px;
159
+ }
160
+
161
+ .container_12 .prefix_9 {
162
+ padding-left: 1170px;
163
+ }
164
+
165
+ .container_12 .prefix_10 {
166
+ padding-left: 1300px;
167
+ }
168
+
169
+ .container_12 .prefix_11 {
170
+ padding-left: 1430px;
171
+ }
172
+
173
+ /* `Suffix Extra Space >> 12 Columns
174
+ ----------------------------------------------------------------------------------------------------*/
175
+
176
+ .container_12 .suffix_1 {
177
+ padding-right: 130px;
178
+ }
179
+
180
+ .container_12 .suffix_2 {
181
+ padding-right: 260px;
182
+ }
183
+
184
+ .container_12 .suffix_3 {
185
+ padding-right: 390px;
186
+ }
187
+
188
+ .container_12 .suffix_4 {
189
+ padding-right: 520px;
190
+ }
191
+
192
+ .container_12 .suffix_5 {
193
+ padding-right: 650px;
194
+ }
195
+
196
+ .container_12 .suffix_6 {
197
+ padding-right: 780px;
198
+ }
199
+
200
+ .container_12 .suffix_7 {
201
+ padding-right: 910px;
202
+ }
203
+
204
+ .container_12 .suffix_8 {
205
+ padding-right: 1040px;
206
+ }
207
+
208
+ .container_12 .suffix_9 {
209
+ padding-right: 1170px;
210
+ }
211
+
212
+ .container_12 .suffix_10 {
213
+ padding-right: 1300px;
214
+ }
215
+
216
+ .container_12 .suffix_11 {
217
+ padding-right: 1430px;
218
+ }
219
+
220
+ /* `Push Space >> 12 Columns
221
+ ----------------------------------------------------------------------------------------------------*/
222
+
223
+ .container_12 .push_1 {
224
+ left: 130px;
225
+ }
226
+
227
+ .container_12 .push_2 {
228
+ left: 260px;
229
+ }
230
+
231
+ .container_12 .push_3 {
232
+ left: 390px;
233
+ }
234
+
235
+ .container_12 .push_4 {
236
+ left: 520px;
237
+ }
238
+
239
+ .container_12 .push_5 {
240
+ left: 650px;
241
+ }
242
+
243
+ .container_12 .push_6 {
244
+ left: 780px;
245
+ }
246
+
247
+ .container_12 .push_7 {
248
+ left: 910px;
249
+ }
250
+
251
+ .container_12 .push_8 {
252
+ left: 1040px;
253
+ }
254
+
255
+ .container_12 .push_9 {
256
+ left: 1170px;
257
+ }
258
+
259
+ .container_12 .push_10 {
260
+ left: 1300px;
261
+ }
262
+
263
+ .container_12 .push_11 {
264
+ left: 1430px;
265
+ }
266
+
267
+ /* `Pull Space >> 12 Columns
268
+ ----------------------------------------------------------------------------------------------------*/
269
+
270
+ .container_12 .pull_1 {
271
+ left: -130px;
272
+ }
273
+
274
+ .container_12 .pull_2 {
275
+ left: -260px;
276
+ }
277
+
278
+ .container_12 .pull_3 {
279
+ left: -390px;
280
+ }
281
+
282
+ .container_12 .pull_4 {
283
+ left: -520px;
284
+ }
285
+
286
+ .container_12 .pull_5 {
287
+ left: -650px;
288
+ }
289
+
290
+ .container_12 .pull_6 {
291
+ left: -780px;
292
+ }
293
+
294
+ .container_12 .pull_7 {
295
+ left: -910px;
296
+ }
297
+
298
+ .container_12 .pull_8 {
299
+ left: -1040px;
300
+ }
301
+
302
+ .container_12 .pull_9 {
303
+ left: -1170px;
304
+ }
305
+
306
+ .container_12 .pull_10 {
307
+ left: -1300px;
308
+ }
309
+
310
+ .container_12 .pull_11 {
311
+ left: -1430px;
312
+ }
313
+
314
+ /* `Clear Floated Elements
315
+ ----------------------------------------------------------------------------------------------------*/
316
+
317
+ /* http://sonspring.com/journal/clearing-floats */
318
+
319
+ .clear {
320
+ clear: both;
321
+ display: block;
322
+ overflow: hidden;
323
+ visibility: hidden;
324
+ width: 0;
325
+ height: 0;
326
+ }
327
+
328
+ /* http://www.yuiblog.com/blog/2010/09/27/clearfix-reloaded-overflowhidden-demystified */
329
+
330
+ .clearfix:before,
331
+ .clearfix:after,
332
+ .container_12:before,
333
+ .container_12:after {
334
+ content: '.';
335
+ display: block;
336
+ overflow: hidden;
337
+ visibility: hidden;
338
+ font-size: 0;
339
+ line-height: 0;
340
+ width: 0;
341
+ height: 0;
342
+ }
343
+
344
+ .clearfix:after,
345
+ .container_12:after {
346
+ clear: both;
347
+ }
348
+
349
+ /*
350
+ The following zoom:1 rule is specifically for IE6 + IE7.
351
+ Move to separate stylesheet if invalid CSS is a problem.
352
+ */
353
+
354
+ .clearfix,
355
+ .container_12 {
356
+ zoom: 1;
357
+ }
@@ -0,0 +1,358 @@
1
+ /*
2
+ 960 Grid System ~ Core CSS.
3
+ Learn more ~ http://960.gs/
4
+
5
+ Licensed under GPL and MIT.
6
+ */
7
+
8
+ /*
9
+ Forces backgrounds to span full width,
10
+ even if there is horizontal scrolling.
11
+ Increase this if your layout is wider.
12
+
13
+ Note: IE6 works fine without this fix.
14
+ */
15
+
16
+ body {
17
+ min-width: 1920px;
18
+ }
19
+
20
+ /* Containers
21
+ ----------------------------------------------------------------------------------------------------*/
22
+
23
+ .container_12 {
24
+ margin-left: auto;
25
+ margin-right: auto;
26
+ width: 1920px;
27
+ }
28
+
29
+ /* Grid >> Global
30
+ ----------------------------------------------------------------------------------------------------*/
31
+
32
+ .grid_1,
33
+ .grid_2,
34
+ .grid_3,
35
+ .grid_4,
36
+ .grid_5,
37
+ .grid_6,
38
+ .grid_7,
39
+ .grid_8,
40
+ .grid_9,
41
+ .grid_10,
42
+ .grid_11,
43
+ .grid_12 {
44
+ display: inline;
45
+ float: left;
46
+ margin-left: 10px;
47
+ margin-right: 10px;
48
+ }
49
+
50
+ .push_1, .pull_1,
51
+ .push_2, .pull_2,
52
+ .push_3, .pull_3,
53
+ .push_4, .pull_4,
54
+ .push_5, .pull_5,
55
+ .push_6, .pull_6,
56
+ .push_7, .pull_7,
57
+ .push_8, .pull_8,
58
+ .push_9, .pull_9,
59
+ .push_10, .pull_10,
60
+ .push_11, .pull_11,
61
+ .push_12, .pull_12 {
62
+ position: relative;
63
+ }
64
+
65
+ /* Grid >> Children (Alpha ~ First, Omega ~ Last)
66
+ ----------------------------------------------------------------------------------------------------*/
67
+
68
+ .alpha {
69
+ margin-left: 0;
70
+ }
71
+
72
+ .omega {
73
+ margin-right: 0;
74
+ }
75
+
76
+ /* Grid >> 12 Columns
77
+ ----------------------------------------------------------------------------------------------------*/
78
+
79
+ .container_12 .grid_1 {
80
+ width: 140px;
81
+ }
82
+
83
+ .container_12 .grid_2 {
84
+ width: 300px;
85
+ }
86
+
87
+ .container_12 .grid_3 {
88
+ width: 460px;
89
+ }
90
+
91
+ .container_12 .grid_4 {
92
+ width: 620px;
93
+ }
94
+
95
+ .container_12 .grid_5 {
96
+ width: 780px;
97
+ }
98
+
99
+ .container_12 .grid_6 {
100
+ width: 940px;
101
+ }
102
+
103
+ .container_12 .grid_7 {
104
+ width: 1100px;
105
+ }
106
+
107
+ .container_12 .grid_8 {
108
+ width: 1260px;
109
+ }
110
+
111
+ .container_12 .grid_9 {
112
+ width: 1420px;
113
+ }
114
+
115
+ .container_12 .grid_10 {
116
+ width: 1580px;
117
+ }
118
+
119
+ .container_12 .grid_11 {
120
+ width: 1740px;
121
+ }
122
+
123
+ .container_12 .grid_12 {
124
+ width: 1900px;
125
+ }
126
+
127
+ /* Prefix Extra Space >> 12 Columns
128
+ ----------------------------------------------------------------------------------------------------*/
129
+
130
+ .container_12 .prefix_1 {
131
+ padding-left: 160px;
132
+ }
133
+
134
+ .container_12 .prefix_2 {
135
+ padding-left: 320px;
136
+ }
137
+
138
+ .container_12 .prefix_3 {
139
+ padding-left: 480px;
140
+ }
141
+
142
+ .container_12 .prefix_4 {
143
+ padding-left: 640px;
144
+ }
145
+
146
+ .container_12 .prefix_5 {
147
+ padding-left: 800px;
148
+ }
149
+
150
+ .container_12 .prefix_6 {
151
+ padding-left: 960px;
152
+ }
153
+
154
+ .container_12 .prefix_7 {
155
+ padding-left: 1120px;
156
+ }
157
+
158
+ .container_12 .prefix_8 {
159
+ padding-left: 1280px;
160
+ }
161
+
162
+ .container_12 .prefix_9 {
163
+ padding-left: 1440px;
164
+ }
165
+
166
+ .container_12 .prefix_10 {
167
+ padding-left: 1600px;
168
+ }
169
+
170
+ .container_12 .prefix_11 {
171
+ padding-left: 1760px;
172
+ }
173
+
174
+ /* Suffix Extra Space >> 12 Columns
175
+ ----------------------------------------------------------------------------------------------------*/
176
+
177
+ .container_12 .suffix_1 {
178
+ padding-right: 160px;
179
+ }
180
+
181
+ .container_12 .suffix_2 {
182
+ padding-right: 320px;
183
+ }
184
+
185
+ .container_12 .suffix_3 {
186
+ padding-right: 480px;
187
+ }
188
+
189
+ .container_12 .suffix_4 {
190
+ padding-right: 640px;
191
+ }
192
+
193
+ .container_12 .suffix_5 {
194
+ padding-right: 800px;
195
+ }
196
+
197
+ .container_12 .suffix_6 {
198
+ padding-right: 960px;
199
+ }
200
+
201
+ .container_12 .suffix_7 {
202
+ padding-right: 1120px;
203
+ }
204
+
205
+ .container_12 .suffix_8 {
206
+ padding-right: 1280px;
207
+ }
208
+
209
+ .container_12 .suffix_9 {
210
+ padding-right: 1440px;
211
+ }
212
+
213
+ .container_12 .suffix_10 {
214
+ padding-right: 1600px;
215
+ }
216
+
217
+ .container_12 .suffix_11 {
218
+ padding-right: 1760px;
219
+ }
220
+
221
+ /* Push Space >> 12 Columns
222
+ ----------------------------------------------------------------------------------------------------*/
223
+
224
+ .container_12 .push_1 {
225
+ left: 160px;
226
+ }
227
+
228
+ .container_12 .push_2 {
229
+ left: 320px;
230
+ }
231
+
232
+ .container_12 .push_3 {
233
+ left: 480px;
234
+ }
235
+
236
+ .container_12 .push_4 {
237
+ left: 640px;
238
+ }
239
+
240
+ .container_12 .push_5 {
241
+ left: 800px;
242
+ }
243
+
244
+ .container_12 .push_6 {
245
+ left: 960px;
246
+ }
247
+
248
+ .container_12 .push_7 {
249
+ left: 1120px;
250
+ }
251
+
252
+ .container_12 .push_8 {
253
+ left: 1280px;
254
+ }
255
+
256
+ .container_12 .push_9 {
257
+ left: 1440px;
258
+ }
259
+
260
+ .container_12 .push_10 {
261
+ left: 1600px;
262
+ }
263
+
264
+ .container_12 .push_11 {
265
+ left: 1760px;
266
+ }
267
+
268
+ /* Pull Space >> 12 Columns
269
+ ----------------------------------------------------------------------------------------------------*/
270
+
271
+ .container_12 .pull_1 {
272
+ left: -160px;
273
+ }
274
+
275
+ .container_12 .pull_2 {
276
+ left: -320px;
277
+ }
278
+
279
+ .container_12 .pull_3 {
280
+ left: -480px;
281
+ }
282
+
283
+ .container_12 .pull_4 {
284
+ left: -640px;
285
+ }
286
+
287
+ .container_12 .pull_5 {
288
+ left: -800px;
289
+ }
290
+
291
+ .container_12 .pull_6 {
292
+ left: -960px;
293
+ }
294
+
295
+ .container_12 .pull_7 {
296
+ left: -1120px;
297
+ }
298
+
299
+ .container_12 .pull_8 {
300
+ left: -1280px;
301
+ }
302
+
303
+ .container_12 .pull_9 {
304
+ left: -1440px;
305
+ }
306
+
307
+ .container_12 .pull_10 {
308
+ left: -1600px;
309
+ }
310
+
311
+ .container_12 .pull_11 {
312
+ left: -1760px;
313
+ }
314
+
315
+ /* `Clear Floated Elements
316
+ ----------------------------------------------------------------------------------------------------*/
317
+
318
+ /* http://sonspring.com/journal/clearing-floats */
319
+
320
+ .clear {
321
+ clear: both;
322
+ display: block;
323
+ overflow: hidden;
324
+ visibility: hidden;
325
+ width: 0;
326
+ height: 0;
327
+ }
328
+
329
+ /* http://www.yuiblog.com/blog/2010/09/27/clearfix-reloaded-overflowhidden-demystified */
330
+
331
+ .clearfix:before,
332
+ .clearfix:after,
333
+ .container_12:before,
334
+ .container_12:after {
335
+ content: '.';
336
+ display: block;
337
+ overflow: hidden;
338
+ visibility: hidden;
339
+ font-size: 0;
340
+ line-height: 0;
341
+ width: 0;
342
+ height: 0;
343
+ }
344
+
345
+ .clearfix:after,
346
+ .container_12:after {
347
+ clear: both;
348
+ }
349
+
350
+ /*
351
+ The following zoom:1 rule is specifically for IE6 + IE7.
352
+ Move to separate stylesheet if invalid CSS is a problem.
353
+ */
354
+
355
+ .clearfix,
356
+ .container_12 {
357
+ zoom: 1;
358
+ }