merb-gen 0.9.8 → 0.9.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. data/README +6 -3
  2. data/Rakefile +6 -4
  3. data/bin/merb-gen +1 -23
  4. data/lib/generators/controller.rb +4 -2
  5. data/lib/generators/helper.rb +0 -5
  6. data/lib/generators/merb/merb_core.rb +95 -0
  7. data/lib/generators/merb/merb_flat.rb +70 -69
  8. data/lib/generators/merb/merb_stack.rb +110 -0
  9. data/lib/generators/merb/merb_very_flat.rb +61 -64
  10. data/lib/generators/merb_plugin.rb +5 -0
  11. data/lib/generators/model.rb +5 -2
  12. data/lib/generators/resource.rb +7 -2
  13. data/lib/generators/resource_controller.rb +4 -4
  14. data/lib/generators/templates/application/common/Rakefile +2 -6
  15. data/lib/generators/templates/application/common/doc.thor +149 -0
  16. data/lib/generators/templates/application/common/dothtaccess +17 -0
  17. data/lib/generators/templates/application/common/jquery.js +32 -0
  18. data/lib/generators/templates/application/common/merb.thor +1550 -861
  19. data/lib/generators/templates/application/{merb → merb_core}/app/controllers/application.rb +0 -0
  20. data/lib/generators/templates/application/{merb → merb_core}/app/controllers/exceptions.rb +0 -0
  21. data/lib/generators/templates/application/{merb → merb_core}/app/helpers/global_helpers.rb +0 -0
  22. data/lib/generators/templates/application/{merb → merb_core}/app/views/exceptions/internal_server_error.html.erb +0 -0
  23. data/lib/generators/templates/application/{merb → merb_core}/app/views/exceptions/not_acceptable.html.erb +0 -0
  24. data/lib/generators/templates/application/{merb → merb_core}/app/views/exceptions/not_found.html.erb +0 -0
  25. data/lib/generators/templates/application/{merb → merb_core}/autotest/discover.rb +0 -0
  26. data/lib/generators/templates/application/{merb → merb_core}/autotest/merb.rb +0 -0
  27. data/lib/generators/templates/application/{merb → merb_core}/autotest/merb_rspec.rb +0 -0
  28. data/lib/generators/templates/application/{merb → merb_core}/config/environments/development.rb +7 -2
  29. data/lib/generators/templates/application/{merb → merb_core}/config/environments/production.rb +5 -2
  30. data/lib/generators/templates/application/{merb → merb_core}/config/environments/rake.rb +6 -2
  31. data/lib/generators/templates/application/merb_core/config/environments/staging.rb +10 -0
  32. data/lib/generators/templates/application/merb_core/config/environments/test.rb +12 -0
  33. data/lib/generators/templates/application/{merb → merb_core}/config/init.rb +6 -6
  34. data/lib/generators/templates/application/{merb → merb_core}/config/rack.rb +0 -0
  35. data/lib/generators/templates/application/{merb → merb_core}/config/router.rb +0 -0
  36. data/lib/generators/templates/application/merb_core/doc/rdoc/generators/merb_generator.rb +1362 -0
  37. data/lib/generators/templates/application/merb_core/doc/rdoc/generators/template/merb/api_grease.js +640 -0
  38. data/lib/generators/templates/application/merb_core/doc/rdoc/generators/template/merb/index.html.erb +37 -0
  39. data/lib/generators/templates/application/merb_core/doc/rdoc/generators/template/merb/merb.css +252 -0
  40. data/lib/generators/templates/application/merb_core/doc/rdoc/generators/template/merb/merb.rb +351 -0
  41. data/lib/generators/templates/application/merb_core/doc/rdoc/generators/template/merb/merb_doc_styles.css +492 -0
  42. data/lib/generators/templates/application/merb_core/doc/rdoc/generators/template/merb/prototype.js +2515 -0
  43. data/lib/generators/templates/application/{merb/app/models → merb_core/lib}/merb/session.rb +0 -0
  44. data/lib/generators/templates/application/{merb → merb_core}/public/favicon.ico +0 -0
  45. data/lib/generators/templates/application/{merb → merb_core}/public/images/merb.jpg +0 -0
  46. data/lib/generators/templates/application/merb_core/public/javascripts/application.js +1 -0
  47. data/lib/generators/templates/application/{merb → merb_core}/public/merb.fcgi +0 -0
  48. data/lib/generators/templates/application/{merb → merb_core}/public/robots.txt +0 -0
  49. data/lib/generators/templates/application/{merb → merb_core}/public/stylesheets/master.css +0 -0
  50. data/lib/generators/templates/application/{merb → merb_core}/spec/spec.opts +0 -0
  51. data/lib/generators/templates/application/{merb → merb_core}/spec/spec_helper.rb +0 -0
  52. data/lib/generators/templates/application/{merb → merb_core}/test/test_helper.rb +0 -0
  53. data/lib/generators/templates/application/merb_flat/application.rbt +1 -1
  54. data/lib/generators/templates/application/merb_flat/config/init.rb +8 -3
  55. data/lib/generators/templates/application/merb_plugin/LICENSE +1 -1
  56. data/lib/generators/templates/application/merb_stack/app/controllers/application.rb +2 -0
  57. data/lib/generators/templates/application/merb_stack/app/controllers/exceptions.rb +13 -0
  58. data/lib/generators/templates/application/merb_stack/app/helpers/global_helpers.rb +5 -0
  59. data/lib/generators/templates/application/merb_stack/app/models/user.rb +17 -0
  60. data/lib/generators/templates/application/merb_stack/app/views/exceptions/internal_server_error.html.erb +216 -0
  61. data/lib/generators/templates/application/merb_stack/app/views/exceptions/not_acceptable.html.erb +63 -0
  62. data/lib/generators/templates/application/merb_stack/app/views/exceptions/not_found.html.erb +47 -0
  63. data/lib/generators/templates/application/merb_stack/autotest/discover.rb +1 -0
  64. data/lib/generators/templates/application/merb_stack/autotest/merb.rb +149 -0
  65. data/lib/generators/templates/application/merb_stack/autotest/merb_rspec.rb +165 -0
  66. data/lib/generators/templates/application/merb_stack/config/database.yml +33 -0
  67. data/lib/generators/templates/application/merb_stack/config/dependencies.rb +15 -0
  68. data/lib/generators/templates/application/merb_stack/config/environments/development.rb +15 -0
  69. data/lib/generators/templates/application/merb_stack/config/environments/production.rb +10 -0
  70. data/lib/generators/templates/application/merb_stack/config/environments/rake.rb +11 -0
  71. data/lib/generators/templates/application/merb_stack/config/environments/staging.rb +10 -0
  72. data/lib/generators/templates/application/merb_stack/config/environments/test.rb +12 -0
  73. data/lib/generators/templates/application/merb_stack/config/init.rb +24 -0
  74. data/lib/generators/templates/application/merb_stack/config/rack.rb +12 -0
  75. data/lib/generators/templates/application/merb_stack/config/router.rb +44 -0
  76. data/lib/generators/templates/application/merb_stack/doc/rdoc/generators/merb_generator.rb +1362 -0
  77. data/lib/generators/templates/application/merb_stack/doc/rdoc/generators/template/merb/api_grease.js +640 -0
  78. data/lib/generators/templates/application/merb_stack/doc/rdoc/generators/template/merb/index.html.erb +37 -0
  79. data/lib/generators/templates/application/merb_stack/doc/rdoc/generators/template/merb/merb.css +252 -0
  80. data/lib/generators/templates/application/merb_stack/doc/rdoc/generators/template/merb/merb.rb +351 -0
  81. data/lib/generators/templates/application/merb_stack/doc/rdoc/generators/template/merb/merb_doc_styles.css +492 -0
  82. data/lib/generators/templates/application/merb_stack/doc/rdoc/generators/template/merb/prototype.js +2515 -0
  83. data/lib/generators/templates/application/merb_stack/merb/merb-auth/setup.rb +44 -0
  84. data/lib/generators/templates/application/merb_stack/merb/merb-auth/strategies.rb +11 -0
  85. data/lib/generators/templates/application/merb_stack/merb/session/session.rb +9 -0
  86. data/lib/generators/templates/application/merb_stack/public/favicon.ico +0 -0
  87. data/lib/generators/templates/application/merb_stack/public/images/merb.jpg +0 -0
  88. data/lib/generators/templates/application/merb_stack/public/javascripts/application.js +1 -0
  89. data/lib/generators/templates/application/merb_stack/public/merb.fcgi +22 -0
  90. data/lib/generators/templates/application/merb_stack/public/robots.txt +5 -0
  91. data/lib/generators/templates/application/merb_stack/public/stylesheets/master.css +119 -0
  92. data/lib/generators/templates/application/merb_stack/spec/spec.opts +0 -0
  93. data/lib/generators/templates/application/merb_stack/spec/spec_helper.rb +20 -0
  94. data/lib/generators/templates/application/merb_stack/test/test_helper.rb +19 -0
  95. data/lib/generators/templates/application/merb_very_flat/application.rbt +11 -5
  96. data/lib/generators/templates/component/layout/app/views/layout/%file_name%.html.erb +1 -0
  97. data/lib/generators/templates/component/resource_controller/spec/requests/%file_name%_spec.rb +53 -0
  98. data/lib/merb-gen/app_generator.rb +13 -0
  99. data/lib/merb-gen/generator.rb +36 -1
  100. data/lib/merb-gen/named_generator.rb +5 -2
  101. data/lib/merb-gen.rb +6 -8
  102. data/spec/controller_spec.rb +0 -20
  103. data/spec/{merb_full_spec.rb → merb_core_spec.rb} +11 -3
  104. data/spec/merb_stack_spec.rb +47 -0
  105. data/spec/part_controller_spec.rb +0 -39
  106. data/spec/resource_controller_spec.rb +1 -35
  107. data/spec/spec_helper.rb +4 -2
  108. metadata +133 -111
  109. data/lib/generators/merb/merb_full.rb +0 -85
  110. data/lib/generators/merb.rb +0 -24
  111. data/lib/generators/templates/application/merb/config/environments/staging.rb +0 -7
  112. data/lib/generators/templates/application/merb/config/environments/test.rb +0 -7
  113. data/lib/generators/templates/component/helper/spec/helpers/%file_name%_helper_spec.rb +0 -5
  114. data/lib/generators/templates/component/resource_controller/spec/controllers/%file_name%_spec.rb +0 -7
  115. data/spec/helper_spec.rb +0 -43
  116. data/spec/merb_spec.rb +0 -20
@@ -0,0 +1,492 @@
1
+ html, body {
2
+ padding:10px 0px 0px 5px;
3
+ margin: 0px;
4
+ font-family: "Lucida Grande", "Lucida Sans Unicode", sans-serif;
5
+ font-size: 14px;
6
+ }
7
+
8
+ body {
9
+ background: #000000 url(http://merbivore.com/img/header_waves.gif) repeat-x scroll center top;
10
+ }
11
+
12
+ td, p {
13
+ background: #FFF;
14
+ color: #000;
15
+ margin: 0px;
16
+ font-size: small;
17
+ line-height: 17px;
18
+ margin-bottom 12px;
19
+ }
20
+
21
+ #floater {
22
+ position: absolute;
23
+ top: 5px;
24
+ right: 5px;
25
+ }
26
+
27
+ #floater strong {
28
+ color: white;
29
+ }
30
+
31
+ #floater a {
32
+ color: black;
33
+ }
34
+
35
+ #floater a:hover {
36
+ background-color: transparent;
37
+ }
38
+
39
+
40
+ /*holds the whole searching/drill down stuff */
41
+ #listFrame{
42
+ float:left;
43
+ padding: 2px;
44
+ width: 350px;
45
+ background-color: #868686;
46
+ border: 1px solid #999;
47
+ border-right: none;
48
+ }
49
+
50
+ #browserBar{
51
+ height: 25px;
52
+ padding:11px 0px 0px 0px;
53
+ margin:0px;
54
+ background-color: #868686;
55
+ border-top: 1px solid #999;
56
+ color: white;
57
+ }
58
+
59
+ #browserBar a{
60
+ text-decoration: none;
61
+ }
62
+
63
+ .button{
64
+ text-decoration: none;
65
+ padding:3px 8px 3px 8px;
66
+ border: 1px solid #66a;
67
+ background-color: #ccf;
68
+ color: #66a;
69
+ }
70
+
71
+ .buttonInactive{
72
+ text-decoration: none;
73
+ padding:3px 8px 3px 8px;
74
+ border: 1px solid #999;
75
+ background-color: #ccc;
76
+ color: #999;
77
+ }
78
+
79
+ .miniButton{
80
+ text-decoration: none;
81
+ padding:3px 2px 3px 2px;
82
+ border: 1px solid #66a;
83
+ background-color: #ccf;
84
+ color: #66a;
85
+ }
86
+
87
+ .miniButtonInactive{
88
+ text-decoration: none;
89
+ padding:3px 2px 3px 2px;
90
+ border: 1px solid #999;
91
+ background-color: #ccc;
92
+ color: #999;
93
+ }
94
+
95
+ #blowOutListBox{
96
+ position: absolute;
97
+ top: 63px;
98
+ left: 399px;
99
+ border: 1px solid #999;
100
+ padding: 0px;
101
+ margin: 0px;
102
+ z-index: 1000;
103
+ background-color: #ccf;
104
+ color: #66a;
105
+ }
106
+
107
+ #blowOutListBox ul{
108
+ list-style-type:none;
109
+ padding: 0px;
110
+ margin: 0px;
111
+ }
112
+
113
+ #blowOutListBox ul li{
114
+ padding: 3px;
115
+ margin: 0px;
116
+ line-height: 1.1em;
117
+
118
+ }
119
+
120
+ #blowOutListBox ul li a{
121
+ text-decoration: none;
122
+ padding: 3px;
123
+ }
124
+ #blowOutListBox ul li a:hover{
125
+ background-color: #ddf;
126
+ }
127
+
128
+ /*holds the content for browsing etc... also is the target of method/class/file name clicks */
129
+ #rdocContent{
130
+ height: 600px;
131
+ background-color: #fff;
132
+ border: 1px solid #999;
133
+ border-left: 0px;
134
+ padding:5px;
135
+ overflow: auto;
136
+ }
137
+
138
+ /*the grouping for methods,files,class,all... i.e. the tabs */
139
+ ul#groupType{
140
+ list-style-type: none;
141
+ padding: 0px;
142
+ padding-left: 5px;
143
+ margin: 0px;
144
+ }
145
+
146
+ ul#groupType li{
147
+ color: white;
148
+ display:inline;
149
+ padding: 5px 5px 0px 5px;
150
+ cursor: pointer;
151
+ }
152
+
153
+ ul#groupType li#loadingStatus{
154
+ margin: 3px;
155
+ border: 0px;
156
+ padding: 3px 3px 6px 3px;
157
+ color: #666;
158
+ }
159
+
160
+ ul#groupType li.activeLi{
161
+ border: 1px solid #999;
162
+ border-bottom: 0px;
163
+ background-color: #868686;
164
+ font-weight: bold;
165
+ padding-bottom: 1px;
166
+ }
167
+
168
+ #listSearch{
169
+ height: 25px;
170
+ padding: 3px;
171
+ }
172
+
173
+ #listSearch input[type=text]{
174
+ width: 340px;
175
+ font-size: 1.2em;
176
+ }
177
+
178
+ #listScroller{
179
+ width: 342px;
180
+ height: 700px;
181
+ margin: 3px;
182
+ background-color: #fcfcfc;
183
+ border: 1px solid #999;
184
+ overflow: auto;
185
+ }
186
+
187
+ #listScroller ul{
188
+ width: 500px;
189
+ padding:0px;
190
+ margin:0px;
191
+ list-style: none;
192
+ }
193
+
194
+ #listScroller li{
195
+ padding: 0px;
196
+ margin: 0px;
197
+ display: block;
198
+ line-height: 1.1em;
199
+ }
200
+
201
+ a, h1 a, h2 a, .sectiontitle a, #listScroller a{
202
+ color: #11B716;
203
+ font-weight: bold;
204
+ text-decoration: none;
205
+ padding: 0px 1px 1px 1px;
206
+ margin: 3px;
207
+ font-weight: bold;
208
+ }
209
+
210
+ a:hover, h1 a:hover, h2 a:hover, .sectiontitle a:hover, #listScroller a:hover{
211
+ background-color: #22D716;
212
+ color: black;
213
+ }
214
+
215
+ #browserBar a, .banner a {
216
+ color: #D7FF00;
217
+ }
218
+
219
+ #browserBar a:hover, .banner a:hover {
220
+ background-color: #D7FF00;
221
+ color: #000;
222
+ }
223
+
224
+ #listScroller a.activeA {
225
+ background-color: #22D716;
226
+ color: black ;
227
+ border: 1px solid #ccc;
228
+ padding: 0px 1px 1px 1px;
229
+ }
230
+
231
+ #listScroller small{
232
+ color: #999;
233
+ }
234
+
235
+ .activeTitle{
236
+ font-family: monospace;
237
+ font-size: large;
238
+ border-bottom: 1px dashed black;
239
+ margin-bottom: 0.3em;
240
+ padding-bottom: 0.1em;
241
+ background-color: #ffc;
242
+ }
243
+
244
+ .activeMethod{
245
+ margin-left: 1em;
246
+ margin-right: 1em;
247
+ margin-bottom: 1em;
248
+ }
249
+
250
+
251
+ .activeMethod .title {
252
+ font-family: monospace;
253
+ font-size: large;
254
+ border-bottom: 1px dashed black;
255
+ margin-bottom: 0.3em;
256
+ padding-bottom: 0.1em;
257
+ background-color: #ffa;
258
+ }
259
+
260
+ .activeMethod .description, .activeMethod .sourcecode {
261
+ margin-left: 1em;
262
+ }
263
+
264
+ .activeMethod .sourcecode p.source-link {
265
+ text-indent: 0em;
266
+ margin-top: 0.5em;
267
+ }
268
+
269
+ .activeMethod .aka {
270
+ margin-top: 0.3em;
271
+ margin-left: 1em;
272
+ font-style: italic;
273
+ text-indent: 2em;
274
+ }
275
+
276
+ #content {
277
+ margin: 0.5em;
278
+ }
279
+
280
+ #description p {
281
+ margin-bottom: 0.5em;
282
+ }
283
+
284
+ .sectiontitle {
285
+ color: black;
286
+ font-size: 28px;
287
+ margin: 20px 0px;
288
+ border-bottom: 2px solid #CCCCCC;
289
+
290
+ /* margin-top: 1em;
291
+ margin-bottom: 1em;
292
+ padding: 0.5em;
293
+ padding-left: 2em;
294
+ background: #005;
295
+ color: #FFF;
296
+ font-weight: bold;
297
+ border: 1px dotted black;*/
298
+ }
299
+
300
+ .attr-rw {
301
+ padding-left: 1em;
302
+ padding-right: 1em;
303
+ text-align: center;
304
+ color: #7AAD00;
305
+ }
306
+
307
+ .attr-name {
308
+ font-weight: bold;
309
+ }
310
+
311
+ .attr-desc {
312
+ }
313
+
314
+ .attr-value {
315
+ font-family: monospace;
316
+ }
317
+
318
+ .file-title-prefix {
319
+ font-size: large;
320
+ }
321
+
322
+ .file-title {
323
+ font-size: large;
324
+ font-weight: bold;
325
+ background: #005;
326
+ color: #FFF;
327
+ }
328
+
329
+ .banner {
330
+ background: #888;
331
+ color: #FFF;
332
+ /* border: 1px solid black;*/
333
+ padding: 1em;
334
+ }
335
+
336
+ .banner td {
337
+ background: transparent;
338
+ color: #FFF;
339
+ }
340
+
341
+ .dyn-source {
342
+ display: none;
343
+ color: #000;
344
+ border: 0px;
345
+ border-left: 1px dotted #CCC;
346
+ border-top: 1px dotted #CCC;
347
+ margin: 0em;
348
+ padding: 0em;
349
+ }
350
+
351
+ .dyn-source .cmt {
352
+ color: #7AAD00;
353
+ font-style: italic;
354
+ }
355
+
356
+ .dyn-source .kw {
357
+ color: #11B716;
358
+ font-weight: bold;
359
+ }
360
+
361
+ .method {
362
+ margin-left: 1em;
363
+ margin-right: 1em;
364
+ margin-bottom: 2em;
365
+ }
366
+
367
+ .description pre, .description td {
368
+ font-family:"Courier",serif;
369
+ }
370
+ pre, .description pre {
371
+ font-size: 12px;
372
+ line-height: 18px;
373
+ color: white;
374
+ padding: 12px;
375
+ background: #222;
376
+ overflow: auto;
377
+ }
378
+
379
+ h2.title, .method .title {
380
+ color: #7AAD00;
381
+ font-size: 22px;
382
+ margin: 10px 0px;
383
+
384
+ /* font-size: large;
385
+ border-bottom: 1px dashed black;
386
+ margin: 0.3em;
387
+ padding: 0.2em;
388
+ */}
389
+
390
+ .method .description, .method .sourcecode {
391
+ margin-left: 1em;
392
+ }
393
+
394
+ .description p, .sourcecode p {
395
+ margin-bottom: 0.5em;
396
+ }
397
+
398
+ .method .sourcecode p.source-link {
399
+ text-indent: 0em;
400
+ margin-top: 0.5em;
401
+ }
402
+
403
+ .method .aka {
404
+ margin-top: 0.3em;
405
+ margin-left: 1em;
406
+ font-style: italic;
407
+ text-indent: 2em;
408
+ }
409
+
410
+ h1 {
411
+ padding: 1em;
412
+ font-size: x-large;
413
+ }
414
+
415
+ h2 {
416
+ padding: 0.5em 1em 0.5em 1em;
417
+ font-size: large;
418
+ }
419
+
420
+
421
+ h1, h2, h3, h4, h5, h6 {
422
+ color: white;
423
+ background-color: #868686;
424
+ }
425
+
426
+ h3, h4, h5, h6 {
427
+ padding: 0.2em 1em 0.2em 1em;
428
+ font-weight: bold;
429
+ }
430
+
431
+ h4 {
432
+ margin-bottom: 2px;
433
+ }
434
+
435
+ .sourcecode > pre {
436
+ padding: 0px;
437
+ margin: 0px;
438
+ border: 1px dotted black;
439
+ background: #FFE;
440
+ }
441
+
442
+ /* ============= */
443
+ /* = home page = */
444
+ /* ============= */
445
+
446
+ body#home {
447
+ margin: 0;
448
+ padding: 0;
449
+ }
450
+
451
+ #content {
452
+ margin: 0 auto;
453
+ width: 800px;
454
+ }
455
+
456
+ #content h1.home {
457
+ background-color: transparent;
458
+ border:0pt none;
459
+ color:#FFFFFF;
460
+ font-size:36px;
461
+ margin:20px 0px;
462
+ padding: 0;
463
+ text-align:center;
464
+ }
465
+
466
+ #content #documentation-links h2.title {
467
+ background-color: transparent;
468
+ }
469
+
470
+ #documentation-links {
471
+ background-color : white;
472
+ margin-bottom: 20px;
473
+ padding-bottom: 10px;
474
+ }
475
+
476
+ #documentation-links p {
477
+ margin: 22px;
478
+ }
479
+
480
+ body#home #footer {
481
+ background:#444444 none repeat scroll 0%;
482
+ clear:both;
483
+ }
484
+
485
+ #footer p {
486
+ background-color: transparent;
487
+ color:#999999;
488
+ margin:0 auto;
489
+ padding:12px;
490
+ text-align:center;
491
+ width: 800px;
492
+ }