mugen 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. data/.gitignore +2 -0
  2. data/.travis.yml +5 -0
  3. data/CHANGELOG.md +3 -0
  4. data/Gemfile +5 -0
  5. data/LICENSE +20 -0
  6. data/README.md +65 -0
  7. data/Rakefile +31 -0
  8. data/autotest/discover.rb +1 -0
  9. data/generators/README +3 -0
  10. data/generators/USAGE +34 -0
  11. data/generators/mugen_generator.rb +63 -0
  12. data/generators/templates/app/controllers/mygengo/account_controller.rb +10 -0
  13. data/generators/templates/app/controllers/mygengo/comments_controller.rb +6 -0
  14. data/generators/templates/app/controllers/mygengo/jobs_controller.rb +153 -0
  15. data/generators/templates/app/helpers/mugen_helper.rb +11 -0
  16. data/generators/templates/app/views/layouts/mygengo.html.erb +52 -0
  17. data/generators/templates/app/views/mygengo/account/_balance.haml +5 -0
  18. data/generators/templates/app/views/mygengo/account/_stats.haml +9 -0
  19. data/generators/templates/app/views/mygengo/account/index.haml +3 -0
  20. data/generators/templates/app/views/mygengo/comments/_comment.haml +7 -0
  21. data/generators/templates/app/views/mygengo/comments/_form.haml +10 -0
  22. data/generators/templates/app/views/mygengo/jobs/_comments.haml +8 -0
  23. data/generators/templates/app/views/mygengo/jobs/_feedback.haml +8 -0
  24. data/generators/templates/app/views/mygengo/jobs/_job.haml +36 -0
  25. data/generators/templates/app/views/mygengo/jobs/_revision.haml +2 -0
  26. data/generators/templates/app/views/mygengo/jobs/index.haml +8 -0
  27. data/generators/templates/app/views/mygengo/jobs/new.haml +53 -0
  28. data/generators/templates/app/views/mygengo/jobs/reject_form.haml +36 -0
  29. data/generators/templates/app/views/mygengo/jobs/review_form.haml +54 -0
  30. data/generators/templates/app/views/mygengo/jobs/revise_form.haml +7 -0
  31. data/generators/templates/app/views/mygengo/jobs/revision.haml +8 -0
  32. data/generators/templates/app/views/mygengo/jobs/show.haml +38 -0
  33. data/generators/templates/config/initializers/mugen.rb +2 -0
  34. data/generators/templates/config/routes.rb +16 -0
  35. data/generators/templates/public/stylesheets/mygengo/base.css +397 -0
  36. data/generators/templates/public/stylesheets/mygengo/mugen.css +117 -0
  37. data/generators/templates/public/stylesheets/mygengo/override.css +1 -0
  38. data/generators/templates/public/stylesheets/mygengo/scaffold.css +56 -0
  39. data/generators/templates/public/stylesheets/mygengo/style.css +373 -0
  40. data/lib/generators/mugen/README +3 -0
  41. data/lib/generators/mugen/USAGE +35 -0
  42. data/lib/generators/mugen/mugen_generator.rb +50 -0
  43. data/lib/generators/mugen/templates/app/controllers/mygengo/account_controller.rb +10 -0
  44. data/lib/generators/mugen/templates/app/controllers/mygengo/comments_controller.rb +6 -0
  45. data/lib/generators/mugen/templates/app/controllers/mygengo/jobs_controller.rb +153 -0
  46. data/lib/generators/mugen/templates/app/controllers/mygengo/mygengo_controller.rb +18 -0
  47. data/lib/generators/mugen/templates/app/helpers/mugen_helper.rb +11 -0
  48. data/lib/generators/mugen/templates/app/views/layouts/mygengo.html.erb +52 -0
  49. data/lib/generators/mugen/templates/app/views/mygengo/account/_balance.haml +5 -0
  50. data/lib/generators/mugen/templates/app/views/mygengo/account/_stats.haml +9 -0
  51. data/lib/generators/mugen/templates/app/views/mygengo/account/index.haml +3 -0
  52. data/lib/generators/mugen/templates/app/views/mygengo/comments/_comment.haml +7 -0
  53. data/lib/generators/mugen/templates/app/views/mygengo/comments/_form.haml +10 -0
  54. data/lib/generators/mugen/templates/app/views/mygengo/jobs/_comments.haml +8 -0
  55. data/lib/generators/mugen/templates/app/views/mygengo/jobs/_feedback.haml +8 -0
  56. data/lib/generators/mugen/templates/app/views/mygengo/jobs/_job.haml +36 -0
  57. data/lib/generators/mugen/templates/app/views/mygengo/jobs/_revision.haml +2 -0
  58. data/lib/generators/mugen/templates/app/views/mygengo/jobs/index.haml +8 -0
  59. data/lib/generators/mugen/templates/app/views/mygengo/jobs/new.haml +53 -0
  60. data/lib/generators/mugen/templates/app/views/mygengo/jobs/reject_form.haml +36 -0
  61. data/lib/generators/mugen/templates/app/views/mygengo/jobs/review_form.haml +54 -0
  62. data/lib/generators/mugen/templates/app/views/mygengo/jobs/revise_form.haml +7 -0
  63. data/lib/generators/mugen/templates/app/views/mygengo/jobs/revision.haml +8 -0
  64. data/lib/generators/mugen/templates/app/views/mygengo/jobs/show.haml +38 -0
  65. data/lib/generators/mugen/templates/config/initializers/mugen.rb +2 -0
  66. data/lib/generators/mugen/templates/config/routes2.rb +16 -0
  67. data/lib/generators/mugen/templates/config/routes3.rb +17 -0
  68. data/lib/generators/mugen/templates/public/images/mygengo/blank +0 -0
  69. data/lib/generators/mugen/templates/public/stylesheets/mygengo/base.css +397 -0
  70. data/lib/generators/mugen/templates/public/stylesheets/mygengo/mugen.css +117 -0
  71. data/lib/generators/mugen/templates/public/stylesheets/mygengo/override.css +1 -0
  72. data/lib/generators/mugen/templates/public/stylesheets/mygengo/scaffold.css +56 -0
  73. data/lib/generators/mugen/templates/public/stylesheets/mygengo/style.css +373 -0
  74. data/lib/mugen.rb +73 -0
  75. data/lib/mugen/account.rb +27 -0
  76. data/lib/mugen/client.rb +33 -0
  77. data/lib/mugen/core_extensions.rb +32 -0
  78. data/lib/mugen/httparty_extensions.rb +26 -0
  79. data/lib/mugen/job.rb +169 -0
  80. data/lib/mugen/jobs.rb +42 -0
  81. data/lib/mugen/service.rb +30 -0
  82. data/lib/mugen/version.rb +3 -0
  83. data/lib/tasks/mugen.rake +5 -0
  84. data/mugen.gemspec +33 -0
  85. data/rails/init.rb +1 -0
  86. data/spec/account_spec.rb +22 -0
  87. data/spec/job_spec.rb +40 -0
  88. data/spec/jobs_spec.rb +33 -0
  89. data/spec/mugen_spec.rb +33 -0
  90. data/spec/service_spec.rb +21 -0
  91. data/spec/spec_helper.rb +4 -0
  92. metadata +191 -0
@@ -0,0 +1,117 @@
1
+ .mygengo-box {
2
+ border: 1px dashed #000;
3
+ margin: 5px;
4
+ padding: 5px 0px 5px 15px;
5
+ width: 400px;
6
+ }
7
+
8
+ .hidden {
9
+ display: none;
10
+ }
11
+
12
+ .clear {
13
+ clear: all;
14
+ }
15
+
16
+ .mygengo-form {
17
+
18
+ }
19
+
20
+ .mygengo-form div{
21
+ }
22
+
23
+ .mygengo-form div.float{
24
+ float: left;
25
+ margin-right: 15px;
26
+ }
27
+ .mygengo-form div.left{
28
+ float: left;
29
+ margin-right: 15px;
30
+ }
31
+
32
+
33
+ .mygento-comments {
34
+
35
+ }
36
+
37
+ .mygengo-revisions {
38
+
39
+ }
40
+
41
+ table td {
42
+ padding: 6px 6px;
43
+ border-bottom: 1px solid #cccccc;
44
+ font-size: 1em;
45
+ line-height: 1.4em;
46
+ vertical-align: top;
47
+ }
48
+
49
+ .general {
50
+ margin: 1.4em 0; }
51
+ .general h2 {
52
+ font-size: 1.1em;
53
+ margin: 0; }
54
+
55
+ table.general {
56
+ width: 100%;
57
+ margin: 0.5em auto 1em auto;
58
+ border-top: 1px solid #cccccc;
59
+ background: white; }
60
+ table.general thead th {
61
+ font-weight: normal;
62
+ font-size: 0.95em;
63
+ line-height: 1em;
64
+ padding: 4px 6px;
65
+ border-bottom: 1px solid #cccccc;
66
+ background-color: #dddddd;
67
+ page-break-before: auto;
68
+ white-space: nowrap;
69
+ text-align: left; }
70
+ table.general thead th.right_align {
71
+ text-align: right; }
72
+ table.general thead th a {
73
+ color: #006699;
74
+ text-decoration: none;
75
+ border: 0; }
76
+ table.general thead.tabular th {
77
+ font-weight: normal;
78
+ font-size: 9px;
79
+ text-transform: uppercase;
80
+ line-height: 1em;
81
+ padding: 5px 6px;
82
+ background-color: #dddddd; }
83
+ table.general thead.tabular th.flag_label {
84
+ padding: 5px 2px; }
85
+ table.general tr.highlight {
86
+ background-color: #ecf7ff;
87
+ cursor: pointer; }
88
+ table.general tr.normal {
89
+ background: transparent; }
90
+ table.general td {
91
+ padding: 6px 6px;
92
+ border-bottom: 1px solid #cccccc;
93
+ font-size: 1em;
94
+ line-height: 1.4em;
95
+ vertical-align: top; }
96
+ table.general td.grouping_header {
97
+ font-weight: bold;
98
+ font-size: 0.9em;
99
+ line-height: 1.1em;
100
+ padding: 4px 6px;
101
+ border-bottom: 1px solid #cccccc;
102
+ color: #999999;
103
+ background-color: #f6f6f6; }
104
+ table.general td.header {
105
+ padding: 0.4em 0.5em;
106
+ vertical-align: bottom;
107
+ border-bottom: 1px solid #cccccc;
108
+ background-color: #eeeeee; }
109
+ table.general td.right_align {
110
+ text-align: right;
111
+ white-space: nowrap; }
112
+ table.general td.upper {
113
+ text-transform: uppercase; }
114
+ table.general tbody td.grouping_header {
115
+ padding: 6px; }
116
+ table.general tfoot td {
117
+ border: 0; }
@@ -0,0 +1 @@
1
+ /* Override here any style defined by web-app-theme */
@@ -0,0 +1,56 @@
1
+ body { background-color: #fff; color: #333; }
2
+
3
+ body, p, ol, ul, td {
4
+ font-family: verdana, arial, helvetica, sans-serif;
5
+ font-size: 13px;
6
+ line-height: 18px;
7
+ }
8
+
9
+ pre {
10
+ background-color: #eee;
11
+ padding: 10px;
12
+ font-size: 11px;
13
+ }
14
+
15
+ a { color: #000; }
16
+ a:visited { color: #666; }
17
+ a:hover { color: #fff; background-color:#000; }
18
+
19
+ div.field, div.actions {
20
+ margin-bottom: 10px;
21
+ }
22
+
23
+ #notice {
24
+ color: green;
25
+ }
26
+
27
+ .field_with_errors {
28
+ padding: 2px;
29
+ background-color: red;
30
+ display: table;
31
+ }
32
+
33
+ #error_explanation {
34
+ width: 450px;
35
+ border: 2px solid red;
36
+ padding: 7px;
37
+ padding-bottom: 0;
38
+ margin-bottom: 20px;
39
+ background-color: #f0f0f0;
40
+ }
41
+
42
+ #error_explanation h2 {
43
+ text-align: left;
44
+ font-weight: bold;
45
+ padding: 5px 5px 5px 15px;
46
+ font-size: 12px;
47
+ margin: -7px;
48
+ margin-bottom: 0px;
49
+ background-color: #c00;
50
+ color: #fff;
51
+ }
52
+
53
+ #error_explanation ul li {
54
+ font-size: 12px;
55
+ list-style: square;
56
+ }
@@ -0,0 +1,373 @@
1
+ /*
2
+
3
+ Drastic Dark
4
+ by Juan Maria Martinez Arce
5
+ juan[at]insignia4u.com
6
+
7
+ light grey: #cfcfcf
8
+ medium grey: #36393d
9
+ dark grey: #1a1a1a
10
+ interactive action yellow #ffff88
11
+ red #cc0000
12
+ light blue #E6EEFC
13
+ dark blue #0B43A8
14
+
15
+ */
16
+
17
+ .small {
18
+ font-size: 11px;
19
+ font-style: normal;
20
+ font-weight: normal;
21
+ text-transform: normal;
22
+ letter-spacing: normal;
23
+ line-height: 1.4em;
24
+ }
25
+
26
+ .gray {
27
+ color:#999999;
28
+ font-family: Georgia, serif;
29
+ font-size: 13px;
30
+ font-style: italic;
31
+ font-weight: normal;
32
+ text-transform: normal;
33
+ letter-spacing: normal;
34
+ line-height: 1.6em;
35
+ }
36
+
37
+ .hightlight {
38
+ background-color: #ffff88;
39
+ font-weight: bold;
40
+ color: #36393d;
41
+ }
42
+
43
+ a:link, a:visited, a:hover, a:active, h1, h2, h3 { color: #36393d; }
44
+ a { -moz-outline: none; }
45
+
46
+ body {
47
+ color: #222;
48
+ background: #cfcfcf;
49
+ font-family: helvetica, arial, sans-serif;
50
+ }
51
+
52
+ hr {
53
+ background: #f0f0ee;
54
+ color: #f0f0ee;
55
+ }
56
+
57
+ #header {
58
+ background: #36393d;
59
+ }
60
+
61
+ #header h1 {
62
+ padding: 15px 0;
63
+ font-size: 28px;
64
+ font-style: normal;
65
+ font-weight: bold;
66
+ text-transform: normal;
67
+ letter-spacing: -1px;
68
+ line-height: 1.2em;
69
+ }
70
+
71
+ #header h1 a:link, #header h1 a:active, #header h1 a:hover, #header h1 a:visited {
72
+ color: #FFF;
73
+ }
74
+
75
+ #user-navigation {
76
+ top: auto;
77
+ bottom: 5px;
78
+ right: 25px;
79
+ }
80
+
81
+ #user-navigation a.logout {
82
+ background: #cc0000;
83
+ padding: 1px 4px;
84
+ -moz-border-radius: 4px;
85
+ -webkit-border-radius: 3px;
86
+ }
87
+
88
+ #main .block .content {
89
+ background: #FFF;
90
+ padding-top: 1px;
91
+ }
92
+
93
+ #main .block .content h2 {
94
+ margin-left: 15px;
95
+ font-size: 22px;
96
+ font-style: normal;
97
+ font-weight: bold;
98
+ text-transform: normal;
99
+ letter-spacing: -1px;
100
+ line-height: 1.2em;
101
+ }
102
+
103
+ #main .block .content p {
104
+ font-size: 13px;
105
+ font-style: normal;
106
+ font-weight: normal;
107
+ text-transform: normal;
108
+ letter-spacing: normal;
109
+ line-height: 1.45em;
110
+ }
111
+
112
+ #sidebar .block {
113
+ background: #FFF;
114
+ }
115
+
116
+ #sidebar .block h4 {
117
+ font-weight: bold;
118
+ }
119
+
120
+ #sidebar .notice {
121
+ background: #E6EEFC;
122
+ }
123
+
124
+ #sidebar .notice h4 {
125
+ color: #0B43A8;
126
+ }
127
+
128
+ #sidebar h3 {
129
+ background: #36393d;
130
+ color: #FFF;
131
+ border-bottom: 5px solid #1a1a1a;
132
+ }
133
+
134
+ #main-navigation ul li {
135
+ padding-left: 15px;
136
+ }
137
+
138
+ #main-navigation ul li a {
139
+ padding: 8px 0;
140
+ }
141
+
142
+ #main-navigation ul li.active {
143
+ padding: 0;
144
+ margin-left: 15px;
145
+ }
146
+
147
+ #main-navigation ul li.active {
148
+ margin-left: 15px;
149
+ }
150
+
151
+ #main-navigation ul li.active a {
152
+ padding: 8px 15px;
153
+ }
154
+
155
+ #sidebar ul li a:link, #sidebar ul li a:visited {
156
+ background: #FFF;
157
+ border-bottom: 1px solid #F0F0EE;
158
+ text-decoration: none;
159
+ }
160
+
161
+ #sidebar ul li a:hover, #sidebar ul li a:active {
162
+ background: #666666;
163
+ color: #ffffff;;
164
+ }
165
+
166
+ #main-navigation {
167
+ background: #1a1a1a;
168
+ }
169
+
170
+ #main-navigation ul li {
171
+ background: #1a1a1a;
172
+ margin-right: 0;
173
+ }
174
+
175
+ #main-navigation ul li.active {
176
+ background: #f0f0ee;
177
+ }
178
+
179
+ #main-navigation ul li a:link, #main-navigation ul li a:visited, #main-navigation ul li a:hover, #main-navigation ul li a:active,
180
+ .secondary-navigation ul li a:link, .secondary-navigation ul li a:visited, .secondary-navigation ul li a:hover, .secondary-navigation ul li a:active,
181
+ #user-navigation ul li a:link, #user-navigation ul li a:visited, #user-navigation ul li a:hover, #user-navigation ul li a:active {
182
+ text-decoration: none;
183
+ color: #FFF;
184
+ }
185
+
186
+ .secondary-navigation li a:hover {
187
+ background: #666666;
188
+ }
189
+
190
+ #main-navigation ul li.active a:link, #main-navigation ul li.active a:visited, #main-navigation ul li.active a:hover, #main-navigation ul li.active a:active {
191
+ color: #1a1a1a;
192
+ }
193
+
194
+ .secondary-navigation {
195
+ background: #36393d;
196
+ border-bottom-color: #1a1a1a;
197
+ }
198
+
199
+ .secondary-navigation ul li.active, .secondary-navigation ul li.active a:hover {
200
+ background-color: #1a1a1a;
201
+ }
202
+
203
+ #footer .block {
204
+ color: #FFF;
205
+ background: #1a1a1a;
206
+ }
207
+
208
+ #footer .block p {
209
+ margin: 0;
210
+ padding: 10px;
211
+ }
212
+
213
+ /* pagination */
214
+
215
+ .pagination a, .pagination span {
216
+ background: #cfcfcf;
217
+ -moz-border-radius: 3px;
218
+ border: 1px solid #c1c1c1;
219
+ }
220
+
221
+ .pagination em {
222
+ background: #36393d;
223
+ color: #FFF;
224
+ border: 1px solid #36393d;
225
+ }
226
+
227
+ .pagination a {
228
+ color: #1a1a1a;
229
+ }
230
+
231
+ .pagination a:hover {
232
+ border: 1px solid #666;
233
+ }
234
+
235
+ /* tables */
236
+
237
+ .table th {
238
+ background: #36393d;
239
+ color: #FFF;
240
+ }
241
+
242
+ .table td {
243
+ border-bottom:1px solid #F0F0EE;
244
+ }
245
+
246
+ .table tr.even {
247
+ background: #ebebeb;
248
+ }
249
+
250
+ /* forms */
251
+
252
+ .form label.label {
253
+ color: #666666;
254
+ }
255
+
256
+ .form input.text_field, .form textarea.text_area {
257
+ width: 100%;
258
+ border: 1px solid #cfcfcf;
259
+ }
260
+
261
+ .form input.button {
262
+ background: #cfcfcf;
263
+ -moz-border-radius: 5px;
264
+ border: 1px solid #c1c1c1;
265
+ padding: 2px 5px;
266
+ cursor: pointer;
267
+ color: #36393d;
268
+ font-weight: bold;
269
+ font-size: 11px;
270
+ }
271
+
272
+ .form input.button:hover {
273
+ border: 1px solid #666;
274
+ }
275
+
276
+ .form .description {
277
+ font-style: italic;
278
+ color: #8C8C8C;
279
+ font-size: .9em;
280
+ }
281
+
282
+ .form .navform a {
283
+ color: #cc0000;
284
+ }
285
+
286
+ /* flash-messages */
287
+ .flash .message {
288
+ -moz-border-radius: 3px;
289
+ -webkit-border-radius: 3px;
290
+ text-align:center;
291
+ margin: 0 auto 15px;
292
+
293
+ }
294
+
295
+ .flash .message p {
296
+ margin:8px;
297
+ }
298
+ .flash .error {
299
+ border: 1px solid #fbb;
300
+ background-color: #fdd;
301
+ }
302
+ .flash .warning {
303
+ border: 1px solid #fffaaa;
304
+ background-color: #ffffcc;
305
+ }
306
+ .flash .notice {
307
+ border: 1px solid #1FDF00;
308
+ background-color: #BBFFB6;
309
+ }
310
+
311
+ /* lists */
312
+
313
+ ul.list li {
314
+ border-bottom-color: #F0F0EE;
315
+ border-bottom-width: 1px;
316
+ border-bottom-style: solid;
317
+ }
318
+
319
+ ul.list li .item .avatar {
320
+ border-color: #F0F0EE;
321
+ border-width: 1px;
322
+ border-style: solid;
323
+ padding: 2px;
324
+ }
325
+
326
+ /* box */
327
+
328
+ #box .block {
329
+ background: #FFF;
330
+ }
331
+
332
+ #box .block h2 {
333
+ background: #36393d;
334
+ color: #FFF;
335
+ }
336
+
337
+
338
+ /* rounded borders */
339
+
340
+ #main, #main-navigation, #main-navigation li, .secondary-navigation, #main .block, #sidebar .block, #sidebar h3, ul.list li,
341
+ #footer .block, .form input.button, #box .block, #box .block h2 {
342
+ -moz-border-radius-topleft: 4px;
343
+ -webkit-border-top-left-radius: 4px;
344
+ -moz-border-radius-topright: 4px;
345
+ -webkit-border-top-right-radius: 4px;
346
+ }
347
+
348
+ .secondary-navigation li.first a, .secondary-navigation ul li.first, .table th.first, .table th.first {
349
+ -moz-border-radius-topleft: 4px;
350
+ -webkit-border-top-left-radius: 4px;
351
+ }
352
+
353
+ .table th.last {
354
+ -moz-border-radius-topright: 4px;
355
+ -webkit-border-top-right-radius: 4px;
356
+ }
357
+
358
+ .secondary-navigation ul li.first {
359
+ -moz-border-radius-topleft: 4px;
360
+ -webkit-border-top-left-radius: 4px;
361
+ }
362
+
363
+ #sidebar, #sidebar .block, #main .block, #sidebar ul.navigation, ul.list li, #footer .block, .form input.button, #box .block {
364
+ -moz-border-radius-bottomleft: 4px;
365
+ -webkit-border-bottom-left-radius: 4px;
366
+ -moz-border-radius-bottomright: 4px;
367
+ -webkit-border-bottom-right-radius: 4px;
368
+ }
369
+
370
+ .secondary-navigation {
371
+ border-bottom-width: 5px;
372
+ }
373
+