taskish 0.3 → 0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. data/HISTORY +12 -0
  2. data/coverage/assets/0.4.5/app.js +66 -0
  3. data/coverage/assets/0.4.5/fancybox/blank.gif +0 -0
  4. data/coverage/assets/0.4.5/fancybox/fancy_close.png +0 -0
  5. data/coverage/assets/0.4.5/fancybox/fancy_loading.png +0 -0
  6. data/coverage/assets/0.4.5/fancybox/fancy_nav_left.png +0 -0
  7. data/coverage/assets/0.4.5/fancybox/fancy_nav_right.png +0 -0
  8. data/coverage/assets/0.4.5/fancybox/fancy_shadow_e.png +0 -0
  9. data/coverage/assets/0.4.5/fancybox/fancy_shadow_n.png +0 -0
  10. data/coverage/assets/0.4.5/fancybox/fancy_shadow_ne.png +0 -0
  11. data/coverage/assets/0.4.5/fancybox/fancy_shadow_nw.png +0 -0
  12. data/coverage/assets/0.4.5/fancybox/fancy_shadow_s.png +0 -0
  13. data/coverage/assets/0.4.5/fancybox/fancy_shadow_se.png +0 -0
  14. data/coverage/assets/0.4.5/fancybox/fancy_shadow_sw.png +0 -0
  15. data/coverage/assets/0.4.5/fancybox/fancy_shadow_w.png +0 -0
  16. data/coverage/assets/0.4.5/fancybox/fancy_title_left.png +0 -0
  17. data/coverage/assets/0.4.5/fancybox/fancy_title_main.png +0 -0
  18. data/coverage/assets/0.4.5/fancybox/fancy_title_over.png +0 -0
  19. data/coverage/assets/0.4.5/fancybox/fancy_title_right.png +0 -0
  20. data/coverage/assets/0.4.5/fancybox/fancybox-x.png +0 -0
  21. data/coverage/assets/0.4.5/fancybox/fancybox-y.png +0 -0
  22. data/coverage/assets/0.4.5/fancybox/fancybox.png +0 -0
  23. data/coverage/assets/0.4.5/fancybox/jquery.fancybox-1.3.1.css +363 -0
  24. data/coverage/assets/0.4.5/fancybox/jquery.fancybox-1.3.1.pack.js +44 -0
  25. data/coverage/assets/0.4.5/favicon.png +0 -0
  26. data/coverage/assets/0.4.5/jquery-1.4.2.min.js +155 -0
  27. data/coverage/assets/0.4.5/jquery.dataTables.min.js +152 -0
  28. data/coverage/assets/0.4.5/jquery.timeago.js +141 -0
  29. data/coverage/assets/0.4.5/jquery.url.js +174 -0
  30. data/coverage/assets/0.4.5/loading.gif +0 -0
  31. data/coverage/assets/0.4.5/magnify.png +0 -0
  32. data/coverage/assets/0.4.5/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  33. data/coverage/assets/0.4.5/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  34. data/coverage/assets/0.4.5/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  35. data/coverage/assets/0.4.5/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  36. data/coverage/assets/0.4.5/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  37. data/coverage/assets/0.4.5/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  38. data/coverage/assets/0.4.5/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  39. data/coverage/assets/0.4.5/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  40. data/coverage/assets/0.4.5/smoothness/images/ui-icons_222222_256x240.png +0 -0
  41. data/coverage/assets/0.4.5/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  42. data/coverage/assets/0.4.5/smoothness/images/ui-icons_454545_256x240.png +0 -0
  43. data/coverage/assets/0.4.5/smoothness/images/ui-icons_888888_256x240.png +0 -0
  44. data/coverage/assets/0.4.5/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  45. data/coverage/assets/0.4.5/smoothness/jquery-ui-1.8.4.custom.css +295 -0
  46. data/coverage/assets/0.4.5/stylesheet.css +341 -0
  47. data/coverage/index.html +5499 -0
  48. data/coverage/resultset.yml +415 -0
  49. data/lib/taskish.rb +61 -23
  50. data/lib/taskish/app.rb +5 -6
  51. data/lib/taskish/project.rb +80 -0
  52. data/lib/taskish/task.rb +16 -8
  53. data/lib/taskish/version.rb +1 -1
  54. data/taskish.gemspec +1 -0
  55. data/test/app_test.rb +1 -1
  56. data/test/project_test.rb +125 -0
  57. data/test/task_test.rb +50 -31
  58. data/test/taskish.txt +9 -0
  59. data/test/taskish_test.rb +53 -2
  60. data/test/test_helper.rb +5 -0
  61. data/test/version_test.rb +2 -2
  62. metadata +68 -3
data/HISTORY CHANGED
@@ -1,3 +1,15 @@
1
+ 2011-07-09 v0.4
2
+ - Added "Taskish::Project"
3
+ - Added "Taskish::Project#projects()"
4
+ - Added "Taskish::Project#tasks()"
5
+ - Taskish::Project supports child projects
6
+ - Added "Taskish#[](name)"
7
+ - Added "Taskish#<<(project)"
8
+ - Added "Taskish#project?(name)"
9
+ - Added "Taskish#raw()"
10
+ - Added "debug" command to "taskish"
11
+ - Added "tomorrow" command to "taskish"
12
+
1
13
  2011-06-29 v0.3
2
14
  - Can now use multiple task input files
3
15
 
@@ -0,0 +1,66 @@
1
+ $(document).ready(function() {
2
+ $('.file_list').dataTable({
3
+ "aaSorting": [[ 1, "asc" ]],
4
+ "bPaginate": false,
5
+ "bJQueryUI": true,
6
+ "aoColumns": [
7
+ null,
8
+ { "sType": "percent" },
9
+ null,
10
+ null,
11
+ null,
12
+ null
13
+ ]
14
+ });
15
+
16
+ $('.source_table tbody tr:odd').addClass('odd');
17
+ $('.source_table tbody tr:even').addClass('even');
18
+
19
+ $("a.src_link").fancybox({
20
+ 'hideOnContentClick': true
21
+ });
22
+
23
+ // Hide src files and file list container
24
+ $('.source_files').hide();
25
+ $('.file_list_container').hide();
26
+
27
+ // Add tabs based upon existing file_list_containers
28
+ $('.file_list_container h2').each(function(){
29
+ $('.group_tabs').append('<li><a href="#' + $(this).parent().attr('id') + '">' + $(this).html() + '</a></li>');
30
+ });
31
+
32
+ $('.group_tabs a').each( function() {
33
+ $(this).addClass($(this).attr('href').replace('#', ''));
34
+ });
35
+
36
+ $('.group_tabs a').live('focus', function() {
37
+ $(this).blur();
38
+ });
39
+
40
+ var favicon_path = $('link[rel="shortcut icon"]').attr('href')
41
+ $('.group_tabs a').live('click', function(){
42
+ if (!$(this).parent().hasClass('active')) {
43
+ $('.group_tabs a').parent().removeClass('active');
44
+ $(this).parent().addClass('active');
45
+ $('.file_list_container').hide();
46
+ $(".file_list_container" + $(this).attr('href')).show();
47
+ window.location.href = window.location.href.split('#')[0] + $(this).attr('href').replace('#', '#_');
48
+
49
+ // Force favicon reload - otherwise the location change containing anchor would drop the favicon...
50
+ // Works only on firefox, but still... - Anyone know a better solution to force favicon?
51
+ $('link[rel="shortcut icon"]').remove();
52
+ $('head').append('<link rel="shortcut icon" type="image/png" href="'+ favicon_path +'" />');
53
+ };
54
+ return false;
55
+ });
56
+
57
+ if (jQuery.url.attr('anchor')) {
58
+ $('.group_tabs a.'+jQuery.url.attr('anchor').replace('_', '')).click();
59
+ } else {
60
+ $('.group_tabs a:first').click();
61
+ };
62
+
63
+ $("abbr.timeago").timeago();
64
+ $('#loading').fadeOut();
65
+ $('#wrapper').show();
66
+ });
@@ -0,0 +1,363 @@
1
+ /*
2
+ * FancyBox - jQuery Plugin
3
+ * Simple and fancy lightbox alternative
4
+ *
5
+ * Examples and documentation at: http://fancybox.net
6
+ *
7
+ * Copyright (c) 2008 - 2010 Janis Skarnelis
8
+ *
9
+ * Version: 1.3.1 (05/03/2010)
10
+ * Requires: jQuery v1.3+
11
+ *
12
+ * Dual licensed under the MIT and GPL licenses:
13
+ * http://www.opensource.org/licenses/mit-license.php
14
+ * http://www.gnu.org/licenses/gpl.html
15
+ */
16
+
17
+ #fancybox-loading {
18
+ position: fixed;
19
+ top: 50%;
20
+ left: 50%;
21
+ height: 40px;
22
+ width: 40px;
23
+ margin-top: -20px;
24
+ margin-left: -20px;
25
+ cursor: pointer;
26
+ overflow: hidden;
27
+ z-index: 1104;
28
+ display: none;
29
+ }
30
+
31
+ * html #fancybox-loading { /* IE6 */
32
+ position: absolute;
33
+ margin-top: 0;
34
+ }
35
+
36
+ #fancybox-loading div {
37
+ position: absolute;
38
+ top: 0;
39
+ left: 0;
40
+ width: 40px;
41
+ height: 480px;
42
+ background-image: url('fancybox.png');
43
+ }
44
+
45
+ #fancybox-overlay {
46
+ position: fixed;
47
+ top: 0;
48
+ left: 0;
49
+ bottom: 0;
50
+ right: 0;
51
+ background: #000;
52
+ z-index: 1100;
53
+ display: none;
54
+ }
55
+
56
+ * html #fancybox-overlay { /* IE6 */
57
+ position: absolute;
58
+ width: 100%;
59
+ }
60
+
61
+ #fancybox-tmp {
62
+ padding: 0;
63
+ margin: 0;
64
+ border: 0;
65
+ overflow: auto;
66
+ display: none;
67
+ }
68
+
69
+ #fancybox-wrap {
70
+ position: absolute;
71
+ top: 0;
72
+ left: 0;
73
+ margin: 0;
74
+ padding: 20px;
75
+ z-index: 1101;
76
+ display: none;
77
+ }
78
+
79
+ #fancybox-outer {
80
+ position: relative;
81
+ width: 100%;
82
+ height: 100%;
83
+ background: #FFF;
84
+ }
85
+
86
+ #fancybox-inner {
87
+ position: absolute;
88
+ top: 0;
89
+ left: 0;
90
+ width: 1px;
91
+ height: 1px;
92
+ padding: 0;
93
+ margin: 0;
94
+ outline: none;
95
+ overflow: hidden;
96
+ }
97
+
98
+ #fancybox-hide-sel-frame {
99
+ position: absolute;
100
+ top: 0;
101
+ left: 0;
102
+ width: 100%;
103
+ height: 100%;
104
+ background: transparent;
105
+ }
106
+
107
+ #fancybox-close {
108
+ position: absolute;
109
+ top: -15px;
110
+ right: -15px;
111
+ width: 30px;
112
+ height: 30px;
113
+ background-image: url('fancybox.png');
114
+ background-position: -40px 0px;
115
+ cursor: pointer;
116
+ z-index: 1103;
117
+ display: none;
118
+ }
119
+
120
+ #fancybox_error {
121
+ color: #444;
122
+ font: normal 12px/20px Arial;
123
+ padding: 7px;
124
+ margin: 0;
125
+ }
126
+
127
+ #fancybox-content {
128
+ height: auto;
129
+ width: auto;
130
+ padding: 0;
131
+ margin: 0;
132
+ }
133
+
134
+ #fancybox-img {
135
+ width: 100%;
136
+ height: 100%;
137
+ padding: 0;
138
+ margin: 0;
139
+ border: none;
140
+ outline: none;
141
+ line-height: 0;
142
+ vertical-align: top;
143
+ -ms-interpolation-mode: bicubic;
144
+ }
145
+
146
+ #fancybox-frame {
147
+ position: relative;
148
+ width: 100%;
149
+ height: 100%;
150
+ border: none;
151
+ display: block;
152
+ }
153
+
154
+ #fancybox-title {
155
+ position: absolute;
156
+ bottom: 0;
157
+ left: 0;
158
+ font-family: Arial;
159
+ font-size: 12px;
160
+ z-index: 1102;
161
+ }
162
+
163
+ .fancybox-title-inside {
164
+ padding: 10px 0;
165
+ text-align: center;
166
+ color: #333;
167
+ }
168
+
169
+ .fancybox-title-outside {
170
+ padding-top: 5px;
171
+ color: #FFF;
172
+ text-align: center;
173
+ font-weight: bold;
174
+ }
175
+
176
+ .fancybox-title-over {
177
+ color: #FFF;
178
+ text-align: left;
179
+ }
180
+
181
+ #fancybox-title-over {
182
+ padding: 10px;
183
+ background-image: url('fancy_title_over.png');
184
+ display: block;
185
+ }
186
+
187
+ #fancybox-title-wrap {
188
+ display: inline-block;
189
+ }
190
+
191
+ #fancybox-title-wrap span {
192
+ height: 32px;
193
+ float: left;
194
+ }
195
+
196
+ #fancybox-title-left {
197
+ padding-left: 15px;
198
+ background-image: url('fancybox.png');
199
+ background-position: -40px -90px;
200
+ background-repeat: no-repeat;
201
+ }
202
+
203
+ #fancybox-title-main {
204
+ font-weight: bold;
205
+ line-height: 29px;
206
+ background-image: url('fancybox-x.png');
207
+ background-position: 0px -40px;
208
+ color: #FFF;
209
+ }
210
+
211
+ #fancybox-title-right {
212
+ padding-left: 15px;
213
+ background-image: url('fancybox.png');
214
+ background-position: -55px -90px;
215
+ background-repeat: no-repeat;
216
+ }
217
+
218
+ #fancybox-left, #fancybox-right {
219
+ position: absolute;
220
+ bottom: 0px;
221
+ height: 100%;
222
+ width: 35%;
223
+ cursor: pointer;
224
+ outline: none;
225
+ background-image: url('blank.gif');
226
+ z-index: 1102;
227
+ display: none;
228
+ }
229
+
230
+ #fancybox-left {
231
+ left: 0px;
232
+ }
233
+
234
+ #fancybox-right {
235
+ right: 0px;
236
+ }
237
+
238
+ #fancybox-left-ico, #fancybox-right-ico {
239
+ position: absolute;
240
+ top: 50%;
241
+ left: -9999px;
242
+ width: 30px;
243
+ height: 30px;
244
+ margin-top: -15px;
245
+ cursor: pointer;
246
+ z-index: 1102;
247
+ display: block;
248
+ }
249
+
250
+ #fancybox-left-ico {
251
+ background-image: url('fancybox.png');
252
+ background-position: -40px -30px;
253
+ }
254
+
255
+ #fancybox-right-ico {
256
+ background-image: url('fancybox.png');
257
+ background-position: -40px -60px;
258
+ }
259
+
260
+ #fancybox-left:hover, #fancybox-right:hover {
261
+ visibility: visible; /* IE6 */
262
+ }
263
+
264
+ #fancybox-left:hover span {
265
+ left: 20px;
266
+ }
267
+
268
+ #fancybox-right:hover span {
269
+ left: auto;
270
+ right: 20px;
271
+ }
272
+
273
+ .fancy-bg {
274
+ position: absolute;
275
+ padding: 0;
276
+ margin: 0;
277
+ border: 0;
278
+ width: 20px;
279
+ height: 20px;
280
+ z-index: 1001;
281
+ }
282
+
283
+ #fancy-bg-n {
284
+ top: -20px;
285
+ left: 0;
286
+ width: 100%;
287
+ background-image: url('fancybox-x.png');
288
+ }
289
+
290
+ #fancy-bg-ne {
291
+ top: -20px;
292
+ right: -20px;
293
+ background-image: url('fancybox.png');
294
+ background-position: -40px -162px;
295
+ }
296
+
297
+ #fancy-bg-e {
298
+ top: 0;
299
+ right: -20px;
300
+ height: 100%;
301
+ background-image: url('fancybox-y.png');
302
+ background-position: -20px 0px;
303
+ }
304
+
305
+ #fancy-bg-se {
306
+ bottom: -20px;
307
+ right: -20px;
308
+ background-image: url('fancybox.png');
309
+ background-position: -40px -182px;
310
+ }
311
+
312
+ #fancy-bg-s {
313
+ bottom: -20px;
314
+ left: 0;
315
+ width: 100%;
316
+ background-image: url('fancybox-x.png');
317
+ background-position: 0px -20px;
318
+ }
319
+
320
+ #fancy-bg-sw {
321
+ bottom: -20px;
322
+ left: -20px;
323
+ background-image: url('fancybox.png');
324
+ background-position: -40px -142px;
325
+ }
326
+
327
+ #fancy-bg-w {
328
+ top: 0;
329
+ left: -20px;
330
+ height: 100%;
331
+ background-image: url('fancybox-y.png');
332
+ }
333
+
334
+ #fancy-bg-nw {
335
+ top: -20px;
336
+ left: -20px;
337
+ background-image: url('fancybox.png');
338
+ background-position: -40px -122px;
339
+ }
340
+
341
+ /* IE */
342
+
343
+ #fancybox-loading.fancybox-ie div { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_loading.png', sizingMethod='scale'); }
344
+ .fancybox-ie #fancybox-close { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_close.png', sizingMethod='scale'); }
345
+
346
+ .fancybox-ie #fancybox-title-over { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_over.png', sizingMethod='scale'); zoom: 1; }
347
+ .fancybox-ie #fancybox-title-left { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_left.png', sizingMethod='scale'); }
348
+ .fancybox-ie #fancybox-title-main { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_main.png', sizingMethod='scale'); }
349
+ .fancybox-ie #fancybox-title-right { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_right.png', sizingMethod='scale'); }
350
+
351
+ .fancybox-ie #fancybox-left-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_nav_left.png', sizingMethod='scale'); }
352
+ .fancybox-ie #fancybox-right-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_nav_right.png', sizingMethod='scale'); }
353
+
354
+ .fancybox-ie .fancy-bg { background: transparent !important; }
355
+
356
+ .fancybox-ie #fancy-bg-n { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_n.png', sizingMethod='scale'); }
357
+ .fancybox-ie #fancy-bg-ne { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_ne.png', sizingMethod='scale'); }
358
+ .fancybox-ie #fancy-bg-e { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_e.png', sizingMethod='scale'); }
359
+ .fancybox-ie #fancy-bg-se { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_se.png', sizingMethod='scale'); }
360
+ .fancybox-ie #fancy-bg-s { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_s.png', sizingMethod='scale'); }
361
+ .fancybox-ie #fancy-bg-sw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_sw.png', sizingMethod='scale'); }
362
+ .fancybox-ie #fancy-bg-w { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_w.png', sizingMethod='scale'); }
363
+ .fancybox-ie #fancy-bg-nw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_nw.png', sizingMethod='scale'); }