backlog 0.7.8 → 0.7.9

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 (653) hide show
  1. data/History.txt +11 -1
  2. data/README.txt +15 -4
  3. data/Rakefile +1 -1
  4. data/app/controllers/search_controller.rb +12 -0
  5. data/app/controllers/tasks_controller.rb +2 -1
  6. data/app/helpers/application_helper.rb +16 -0
  7. data/app/helpers/search_helper.rb +2 -0
  8. data/app/models/search_result.rb +8 -0
  9. data/app/views/layouts/_left_top.rhtml +2 -1
  10. data/app/views/periods/show.rhtml +1 -1
  11. data/app/views/search/results.html.erb +23 -0
  12. data/app/views/tasks/_completed.rhtml +4 -12
  13. data/app/views/tasks/_fields_header.rhtml +1 -1
  14. data/app/views/tasks/_task.rhtml +1 -1
  15. data/app/views/tasks/list_started.rhtml +1 -1
  16. data/bin/backlog +36 -30
  17. data/doc/classes/APP.html +133 -0
  18. data/doc/classes/ActiveRecord.html +114 -0
  19. data/doc/classes/ActiveRecord/Base.html +271 -0
  20. data/doc/classes/ActiveRecord/Base.src/M000422.html +29 -0
  21. data/doc/classes/ActiveRecord/Base.src/M000423.html +27 -0
  22. data/doc/classes/ActiveRecord/Base.src/M000424.html +72 -0
  23. data/doc/classes/ActiveRecord/Base.src/M000425.html +16 -0
  24. data/doc/classes/ActiveRecord/Base.src/M000426.html +29 -0
  25. data/doc/classes/ActiveRecord/Base.src/M000427.html +27 -0
  26. data/doc/classes/ActiveRecord/Base.src/M000428.html +72 -0
  27. data/doc/classes/ActiveRecord/Base.src/M000429.html +16 -0
  28. data/doc/classes/ApplicationController.html +220 -0
  29. data/doc/classes/ApplicationController.src/M000316.html +19 -0
  30. data/doc/classes/ApplicationController.src/M000317.html +22 -0
  31. data/doc/classes/ApplicationController.src/M000318.html +19 -0
  32. data/doc/classes/ApplicationController.src/M000319.html +22 -0
  33. data/doc/classes/ApplicationHelper.html +405 -0
  34. data/doc/classes/ApplicationHelper.src/M000430.html +21 -0
  35. data/doc/classes/ApplicationHelper.src/M000431.html +18 -0
  36. data/doc/classes/ApplicationHelper.src/M000432.html +26 -0
  37. data/doc/classes/ApplicationHelper.src/M000433.html +20 -0
  38. data/doc/classes/ApplicationHelper.src/M000434.html +20 -0
  39. data/doc/classes/ApplicationHelper.src/M000435.html +22 -0
  40. data/doc/classes/ApplicationHelper.src/M000436.html +18 -0
  41. data/doc/classes/ApplicationHelper.src/M000437.html +22 -0
  42. data/doc/classes/ApplicationHelper.src/M000438.html +30 -0
  43. data/doc/classes/ApplicationHelper.src/M000439.html +21 -0
  44. data/doc/classes/ApplicationHelper.src/M000440.html +18 -0
  45. data/doc/classes/ApplicationHelper.src/M000441.html +26 -0
  46. data/doc/classes/ApplicationHelper.src/M000442.html +20 -0
  47. data/doc/classes/ApplicationHelper.src/M000443.html +20 -0
  48. data/doc/classes/ApplicationHelper.src/M000444.html +22 -0
  49. data/doc/classes/ApplicationHelper.src/M000445.html +18 -0
  50. data/doc/classes/ApplicationHelper.src/M000446.html +22 -0
  51. data/doc/classes/ApplicationHelper.src/M000447.html +30 -0
  52. data/doc/classes/Array.html +162 -0
  53. data/doc/classes/Array.src/M000143.html +22 -0
  54. data/doc/classes/Array.src/M000144.html +22 -0
  55. data/doc/classes/Backlog.html +315 -0
  56. data/doc/classes/Backlog.src/M000005.html +18 -0
  57. data/doc/classes/Backlog.src/M000006.html +18 -0
  58. data/doc/classes/Backlog.src/M000007.html +22 -0
  59. data/doc/classes/Backlog.src/M000008.html +22 -0
  60. data/doc/classes/Backlog.src/M000009.html +21 -0
  61. data/doc/classes/Backlog.src/M000010.html +18 -0
  62. data/doc/classes/Backlog.src/M000011.html +18 -0
  63. data/doc/classes/Backlog.src/M000012.html +18 -0
  64. data/doc/classes/Backlog.src/M000013.html +22 -0
  65. data/doc/classes/Backlog.src/M000014.html +22 -0
  66. data/doc/classes/Backlog.src/M000015.html +21 -0
  67. data/doc/classes/Backlog.src/M000016.html +18 -0
  68. data/doc/classes/BacklogsController.html +465 -0
  69. data/doc/classes/BacklogsController.src/M000041.html +26 -0
  70. data/doc/classes/BacklogsController.src/M000042.html +18 -0
  71. data/doc/classes/BacklogsController.src/M000043.html +33 -0
  72. data/doc/classes/BacklogsController.src/M000044.html +18 -0
  73. data/doc/classes/BacklogsController.src/M000045.html +24 -0
  74. data/doc/classes/BacklogsController.src/M000046.html +22 -0
  75. data/doc/classes/BacklogsController.src/M000047.html +19 -0
  76. data/doc/classes/BacklogsController.src/M000048.html +24 -0
  77. data/doc/classes/BacklogsController.src/M000049.html +20 -0
  78. data/doc/classes/BacklogsController.src/M000050.html +18 -0
  79. data/doc/classes/BacklogsController.src/M000051.html +18 -0
  80. data/doc/classes/BacklogsController.src/M000052.html +26 -0
  81. data/doc/classes/BacklogsController.src/M000053.html +18 -0
  82. data/doc/classes/BacklogsController.src/M000054.html +33 -0
  83. data/doc/classes/BacklogsController.src/M000055.html +18 -0
  84. data/doc/classes/BacklogsController.src/M000056.html +24 -0
  85. data/doc/classes/BacklogsController.src/M000057.html +22 -0
  86. data/doc/classes/BacklogsController.src/M000058.html +19 -0
  87. data/doc/classes/BacklogsController.src/M000059.html +24 -0
  88. data/doc/classes/BacklogsController.src/M000060.html +20 -0
  89. data/doc/classes/BacklogsController.src/M000061.html +18 -0
  90. data/doc/classes/BacklogsController.src/M000062.html +18 -0
  91. data/doc/classes/BacklogsHelper.html +115 -0
  92. data/doc/classes/BigDecimal.html +162 -0
  93. data/doc/classes/BigDecimal.src/M000360.html +34 -0
  94. data/doc/classes/BigDecimal.src/M000361.html +34 -0
  95. data/doc/classes/Chart.html +153 -0
  96. data/doc/classes/Clock.html +222 -0
  97. data/doc/classes/Clock.src/M000390.html +19 -0
  98. data/doc/classes/Clock.src/M000391.html +18 -0
  99. data/doc/classes/Clock.src/M000392.html +18 -0
  100. data/doc/classes/Clock.src/M000393.html +19 -0
  101. data/doc/classes/Clock.src/M000394.html +18 -0
  102. data/doc/classes/Clock.src/M000395.html +18 -0
  103. data/doc/classes/Estimate.html +175 -0
  104. data/doc/classes/Estimate.src/M000396.html +18 -0
  105. data/doc/classes/Estimate.src/M000397.html +18 -0
  106. data/doc/classes/EstimatesController.html +165 -0
  107. data/doc/classes/EstimatesController.src/M000388.html +22 -0
  108. data/doc/classes/EstimatesController.src/M000389.html +22 -0
  109. data/doc/classes/EstimatesHelper.html +115 -0
  110. data/doc/classes/Group.html +165 -0
  111. data/doc/classes/Group.src/M000097.html +18 -0
  112. data/doc/classes/Group.src/M000098.html +18 -0
  113. data/doc/classes/GroupsController.html +375 -0
  114. data/doc/classes/GroupsController.src/M000320.html +19 -0
  115. data/doc/classes/GroupsController.src/M000321.html +18 -0
  116. data/doc/classes/GroupsController.src/M000322.html +18 -0
  117. data/doc/classes/GroupsController.src/M000323.html +24 -0
  118. data/doc/classes/GroupsController.src/M000324.html +21 -0
  119. data/doc/classes/GroupsController.src/M000325.html +24 -0
  120. data/doc/classes/GroupsController.src/M000326.html +19 -0
  121. data/doc/classes/GroupsController.src/M000327.html +26 -0
  122. data/doc/classes/GroupsController.src/M000328.html +19 -0
  123. data/doc/classes/GroupsController.src/M000329.html +18 -0
  124. data/doc/classes/GroupsController.src/M000330.html +18 -0
  125. data/doc/classes/GroupsController.src/M000331.html +24 -0
  126. data/doc/classes/GroupsController.src/M000332.html +21 -0
  127. data/doc/classes/GroupsController.src/M000333.html +24 -0
  128. data/doc/classes/GroupsController.src/M000334.html +19 -0
  129. data/doc/classes/GroupsController.src/M000335.html +26 -0
  130. data/doc/classes/GroupsHelper.html +115 -0
  131. data/doc/classes/Localization.html +243 -0
  132. data/doc/classes/Localization.src/M000410.html +46 -0
  133. data/doc/classes/Localization.src/M000411.html +18 -0
  134. data/doc/classes/Localization.src/M000412.html +38 -0
  135. data/doc/classes/Localization.src/M000413.html +46 -0
  136. data/doc/classes/Localization.src/M000414.html +18 -0
  137. data/doc/classes/Localization.src/M000415.html +38 -0
  138. data/doc/classes/Localization/LString.html +203 -0
  139. data/doc/classes/Localization/LString.src/M000416.html +18 -0
  140. data/doc/classes/Localization/LString.src/M000417.html +18 -0
  141. data/doc/classes/Localization/LString.src/M000418.html +18 -0
  142. data/doc/classes/Localization/LString.src/M000419.html +18 -0
  143. data/doc/classes/PartiesController.html +225 -0
  144. data/doc/classes/PartiesController.src/M000175.html +18 -0
  145. data/doc/classes/PartiesController.src/M000176.html +18 -0
  146. data/doc/classes/PartiesController.src/M000177.html +18 -0
  147. data/doc/classes/PartiesController.src/M000178.html +18 -0
  148. data/doc/classes/PartiesController.src/M000179.html +18 -0
  149. data/doc/classes/PartiesController.src/M000180.html +18 -0
  150. data/doc/classes/PartiesHelper.html +115 -0
  151. data/doc/classes/Party.html +225 -0
  152. data/doc/classes/Party.src/M000336.html +18 -0
  153. data/doc/classes/Party.src/M000337.html +18 -0
  154. data/doc/classes/Party.src/M000338.html +18 -0
  155. data/doc/classes/Party.src/M000339.html +18 -0
  156. data/doc/classes/Party.src/M000340.html +18 -0
  157. data/doc/classes/Party.src/M000341.html +18 -0
  158. data/doc/classes/Period.html +976 -0
  159. data/doc/classes/Period.src/M000183.html +18 -0
  160. data/doc/classes/Period.src/M000184.html +18 -0
  161. data/doc/classes/Period.src/M000185.html +18 -0
  162. data/doc/classes/Period.src/M000186.html +18 -0
  163. data/doc/classes/Period.src/M000187.html +25 -0
  164. data/doc/classes/Period.src/M000188.html +18 -0
  165. data/doc/classes/Period.src/M000189.html +18 -0
  166. data/doc/classes/Period.src/M000190.html +18 -0
  167. data/doc/classes/Period.src/M000191.html +18 -0
  168. data/doc/classes/Period.src/M000192.html +22 -0
  169. data/doc/classes/Period.src/M000193.html +22 -0
  170. data/doc/classes/Period.src/M000194.html +28 -0
  171. data/doc/classes/Period.src/M000195.html +18 -0
  172. data/doc/classes/Period.src/M000196.html +18 -0
  173. data/doc/classes/Period.src/M000197.html +20 -0
  174. data/doc/classes/Period.src/M000198.html +26 -0
  175. data/doc/classes/Period.src/M000199.html +39 -0
  176. data/doc/classes/Period.src/M000200.html +18 -0
  177. data/doc/classes/Period.src/M000201.html +18 -0
  178. data/doc/classes/Period.src/M000202.html +18 -0
  179. data/doc/classes/Period.src/M000203.html +18 -0
  180. data/doc/classes/Period.src/M000204.html +18 -0
  181. data/doc/classes/Period.src/M000205.html +18 -0
  182. data/doc/classes/Period.src/M000206.html +68 -0
  183. data/doc/classes/Period.src/M000207.html +18 -0
  184. data/doc/classes/Period.src/M000208.html +18 -0
  185. data/doc/classes/Period.src/M000209.html +34 -0
  186. data/doc/classes/Period.src/M000210.html +18 -0
  187. data/doc/classes/Period.src/M000211.html +18 -0
  188. data/doc/classes/Period.src/M000212.html +18 -0
  189. data/doc/classes/Period.src/M000213.html +18 -0
  190. data/doc/classes/Period.src/M000214.html +25 -0
  191. data/doc/classes/Period.src/M000215.html +18 -0
  192. data/doc/classes/Period.src/M000216.html +18 -0
  193. data/doc/classes/Period.src/M000217.html +18 -0
  194. data/doc/classes/Period.src/M000218.html +18 -0
  195. data/doc/classes/Period.src/M000219.html +22 -0
  196. data/doc/classes/Period.src/M000220.html +22 -0
  197. data/doc/classes/Period.src/M000221.html +28 -0
  198. data/doc/classes/Period.src/M000222.html +18 -0
  199. data/doc/classes/Period.src/M000223.html +18 -0
  200. data/doc/classes/Period.src/M000224.html +20 -0
  201. data/doc/classes/Period.src/M000225.html +26 -0
  202. data/doc/classes/Period.src/M000226.html +39 -0
  203. data/doc/classes/Period.src/M000227.html +18 -0
  204. data/doc/classes/Period.src/M000228.html +18 -0
  205. data/doc/classes/Period.src/M000229.html +18 -0
  206. data/doc/classes/Period.src/M000230.html +18 -0
  207. data/doc/classes/Period.src/M000231.html +18 -0
  208. data/doc/classes/Period.src/M000232.html +18 -0
  209. data/doc/classes/Period.src/M000233.html +68 -0
  210. data/doc/classes/Period.src/M000234.html +18 -0
  211. data/doc/classes/Period.src/M000235.html +18 -0
  212. data/doc/classes/Period.src/M000236.html +34 -0
  213. data/doc/classes/PeriodsController.html +525 -0
  214. data/doc/classes/PeriodsController.src/M000362.html +25 -0
  215. data/doc/classes/PeriodsController.src/M000363.html +33 -0
  216. data/doc/classes/PeriodsController.src/M000364.html +19 -0
  217. data/doc/classes/PeriodsController.src/M000365.html +29 -0
  218. data/doc/classes/PeriodsController.src/M000366.html +25 -0
  219. data/doc/classes/PeriodsController.src/M000367.html +18 -0
  220. data/doc/classes/PeriodsController.src/M000368.html +24 -0
  221. data/doc/classes/PeriodsController.src/M000369.html +20 -0
  222. data/doc/classes/PeriodsController.src/M000370.html +18 -0
  223. data/doc/classes/PeriodsController.src/M000371.html +18 -0
  224. data/doc/classes/PeriodsController.src/M000372.html +18 -0
  225. data/doc/classes/PeriodsController.src/M000373.html +20 -0
  226. data/doc/classes/PeriodsController.src/M000374.html +22 -0
  227. data/doc/classes/PeriodsController.src/M000375.html +25 -0
  228. data/doc/classes/PeriodsController.src/M000376.html +33 -0
  229. data/doc/classes/PeriodsController.src/M000377.html +19 -0
  230. data/doc/classes/PeriodsController.src/M000378.html +29 -0
  231. data/doc/classes/PeriodsController.src/M000379.html +25 -0
  232. data/doc/classes/PeriodsController.src/M000380.html +18 -0
  233. data/doc/classes/PeriodsController.src/M000381.html +24 -0
  234. data/doc/classes/PeriodsController.src/M000382.html +20 -0
  235. data/doc/classes/PeriodsController.src/M000383.html +18 -0
  236. data/doc/classes/PeriodsController.src/M000384.html +18 -0
  237. data/doc/classes/PeriodsController.src/M000385.html +18 -0
  238. data/doc/classes/PeriodsController.src/M000386.html +20 -0
  239. data/doc/classes/PeriodsController.src/M000387.html +22 -0
  240. data/doc/classes/PeriodsHelper.html +115 -0
  241. data/doc/classes/SearchController.html +165 -0
  242. data/doc/classes/SearchController.src/M000181.html +25 -0
  243. data/doc/classes/SearchController.src/M000182.html +25 -0
  244. data/doc/classes/SearchHelper.html +115 -0
  245. data/doc/classes/SearchResult.html +190 -0
  246. data/doc/classes/SearchResult.src/M000237.html +19 -0
  247. data/doc/classes/SearchResult.src/M000238.html +19 -0
  248. data/doc/classes/Task.html +1362 -0
  249. data/doc/classes/Task.src/M000239.html +23 -0
  250. data/doc/classes/Task.src/M000240.html +18 -0
  251. data/doc/classes/Task.src/M000241.html +30 -0
  252. data/doc/classes/Task.src/M000242.html +18 -0
  253. data/doc/classes/Task.src/M000243.html +18 -0
  254. data/doc/classes/Task.src/M000244.html +38 -0
  255. data/doc/classes/Task.src/M000245.html +18 -0
  256. data/doc/classes/Task.src/M000246.html +25 -0
  257. data/doc/classes/Task.src/M000247.html +20 -0
  258. data/doc/classes/Task.src/M000248.html +26 -0
  259. data/doc/classes/Task.src/M000249.html +24 -0
  260. data/doc/classes/Task.src/M000250.html +57 -0
  261. data/doc/classes/Task.src/M000251.html +26 -0
  262. data/doc/classes/Task.src/M000252.html +22 -0
  263. data/doc/classes/Task.src/M000253.html +18 -0
  264. data/doc/classes/Task.src/M000254.html +18 -0
  265. data/doc/classes/Task.src/M000255.html +18 -0
  266. data/doc/classes/Task.src/M000256.html +18 -0
  267. data/doc/classes/Task.src/M000257.html +18 -0
  268. data/doc/classes/Task.src/M000258.html +18 -0
  269. data/doc/classes/Task.src/M000259.html +18 -0
  270. data/doc/classes/Task.src/M000260.html +20 -0
  271. data/doc/classes/Task.src/M000261.html +18 -0
  272. data/doc/classes/Task.src/M000262.html +18 -0
  273. data/doc/classes/Task.src/M000263.html +18 -0
  274. data/doc/classes/Task.src/M000264.html +18 -0
  275. data/doc/classes/Task.src/M000265.html +18 -0
  276. data/doc/classes/Task.src/M000266.html +18 -0
  277. data/doc/classes/Task.src/M000267.html +18 -0
  278. data/doc/classes/Task.src/M000268.html +18 -0
  279. data/doc/classes/Task.src/M000269.html +24 -0
  280. data/doc/classes/Task.src/M000270.html +33 -0
  281. data/doc/classes/Task.src/M000271.html +24 -0
  282. data/doc/classes/Task.src/M000272.html +34 -0
  283. data/doc/classes/Task.src/M000273.html +18 -0
  284. data/doc/classes/Task.src/M000274.html +18 -0
  285. data/doc/classes/Task.src/M000275.html +18 -0
  286. data/doc/classes/Task.src/M000276.html +23 -0
  287. data/doc/classes/Task.src/M000277.html +23 -0
  288. data/doc/classes/Task.src/M000278.html +18 -0
  289. data/doc/classes/Task.src/M000279.html +30 -0
  290. data/doc/classes/Task.src/M000280.html +18 -0
  291. data/doc/classes/Task.src/M000281.html +18 -0
  292. data/doc/classes/Task.src/M000282.html +38 -0
  293. data/doc/classes/Task.src/M000283.html +18 -0
  294. data/doc/classes/Task.src/M000284.html +25 -0
  295. data/doc/classes/Task.src/M000285.html +20 -0
  296. data/doc/classes/Task.src/M000286.html +26 -0
  297. data/doc/classes/Task.src/M000287.html +24 -0
  298. data/doc/classes/Task.src/M000288.html +57 -0
  299. data/doc/classes/Task.src/M000289.html +26 -0
  300. data/doc/classes/Task.src/M000290.html +22 -0
  301. data/doc/classes/Task.src/M000291.html +18 -0
  302. data/doc/classes/Task.src/M000292.html +18 -0
  303. data/doc/classes/Task.src/M000293.html +18 -0
  304. data/doc/classes/Task.src/M000294.html +18 -0
  305. data/doc/classes/Task.src/M000295.html +18 -0
  306. data/doc/classes/Task.src/M000296.html +18 -0
  307. data/doc/classes/Task.src/M000297.html +18 -0
  308. data/doc/classes/Task.src/M000298.html +20 -0
  309. data/doc/classes/Task.src/M000299.html +18 -0
  310. data/doc/classes/Task.src/M000300.html +18 -0
  311. data/doc/classes/Task.src/M000301.html +18 -0
  312. data/doc/classes/Task.src/M000302.html +18 -0
  313. data/doc/classes/Task.src/M000303.html +18 -0
  314. data/doc/classes/Task.src/M000304.html +18 -0
  315. data/doc/classes/Task.src/M000305.html +18 -0
  316. data/doc/classes/Task.src/M000307.html +18 -0
  317. data/doc/classes/Task.src/M000308.html +24 -0
  318. data/doc/classes/Task.src/M000309.html +33 -0
  319. data/doc/classes/Task.src/M000310.html +24 -0
  320. data/doc/classes/Task.src/M000311.html +34 -0
  321. data/doc/classes/Task.src/M000312.html +18 -0
  322. data/doc/classes/Task.src/M000313.html +18 -0
  323. data/doc/classes/Task.src/M000314.html +18 -0
  324. data/doc/classes/Task.src/M000315.html +23 -0
  325. data/doc/classes/TasksController.html +735 -0
  326. data/doc/classes/TasksController.src/M000103.html +20 -0
  327. data/doc/classes/TasksController.src/M000104.html +22 -0
  328. data/doc/classes/TasksController.src/M000105.html +36 -0
  329. data/doc/classes/TasksController.src/M000106.html +21 -0
  330. data/doc/classes/TasksController.src/M000107.html +70 -0
  331. data/doc/classes/TasksController.src/M000108.html +22 -0
  332. data/doc/classes/TasksController.src/M000109.html +21 -0
  333. data/doc/classes/TasksController.src/M000110.html +20 -0
  334. data/doc/classes/TasksController.src/M000111.html +20 -0
  335. data/doc/classes/TasksController.src/M000112.html +20 -0
  336. data/doc/classes/TasksController.src/M000113.html +25 -0
  337. data/doc/classes/TasksController.src/M000114.html +35 -0
  338. data/doc/classes/TasksController.src/M000115.html +25 -0
  339. data/doc/classes/TasksController.src/M000116.html +20 -0
  340. data/doc/classes/TasksController.src/M000117.html +20 -0
  341. data/doc/classes/TasksController.src/M000118.html +20 -0
  342. data/doc/classes/TasksController.src/M000119.html +20 -0
  343. data/doc/classes/TasksController.src/M000120.html +42 -0
  344. data/doc/classes/TasksController.src/M000121.html +43 -0
  345. data/doc/classes/TasksController.src/M000122.html +21 -0
  346. data/doc/classes/TasksController.src/M000123.html +20 -0
  347. data/doc/classes/TasksController.src/M000124.html +22 -0
  348. data/doc/classes/TasksController.src/M000125.html +36 -0
  349. data/doc/classes/TasksController.src/M000126.html +21 -0
  350. data/doc/classes/TasksController.src/M000127.html +70 -0
  351. data/doc/classes/TasksController.src/M000128.html +22 -0
  352. data/doc/classes/TasksController.src/M000129.html +21 -0
  353. data/doc/classes/TasksController.src/M000130.html +20 -0
  354. data/doc/classes/TasksController.src/M000131.html +20 -0
  355. data/doc/classes/TasksController.src/M000132.html +20 -0
  356. data/doc/classes/TasksController.src/M000133.html +25 -0
  357. data/doc/classes/TasksController.src/M000134.html +35 -0
  358. data/doc/classes/TasksController.src/M000135.html +25 -0
  359. data/doc/classes/TasksController.src/M000136.html +20 -0
  360. data/doc/classes/TasksController.src/M000137.html +20 -0
  361. data/doc/classes/TasksController.src/M000138.html +20 -0
  362. data/doc/classes/TasksController.src/M000139.html +20 -0
  363. data/doc/classes/TasksController.src/M000140.html +42 -0
  364. data/doc/classes/TasksController.src/M000141.html +43 -0
  365. data/doc/classes/TasksController.src/M000142.html +21 -0
  366. data/doc/classes/TasksHelper.html +115 -0
  367. data/doc/classes/Time.html +193 -0
  368. data/doc/classes/Time.src/M000099.html +20 -0
  369. data/doc/classes/Time.src/M000100.html +20 -0
  370. data/doc/classes/Time.src/M000101.html +20 -0
  371. data/doc/classes/Time.src/M000102.html +20 -0
  372. data/doc/classes/User.html +639 -0
  373. data/doc/classes/User.src/M000145.html +19 -0
  374. data/doc/classes/User.src/M000146.html +18 -0
  375. data/doc/classes/User.src/M000147.html +20 -0
  376. data/doc/classes/User.src/M000148.html +29 -0
  377. data/doc/classes/User.src/M000149.html +18 -0
  378. data/doc/classes/User.src/M000150.html +23 -0
  379. data/doc/classes/User.src/M000151.html +20 -0
  380. data/doc/classes/User.src/M000152.html +18 -0
  381. data/doc/classes/User.src/M000153.html +18 -0
  382. data/doc/classes/User.src/M000154.html +18 -0
  383. data/doc/classes/User.src/M000155.html +18 -0
  384. data/doc/classes/User.src/M000156.html +19 -0
  385. data/doc/classes/User.src/M000157.html +21 -0
  386. data/doc/classes/User.src/M000158.html +23 -0
  387. data/doc/classes/User.src/M000159.html +19 -0
  388. data/doc/classes/User.src/M000160.html +19 -0
  389. data/doc/classes/User.src/M000161.html +18 -0
  390. data/doc/classes/User.src/M000162.html +20 -0
  391. data/doc/classes/User.src/M000163.html +29 -0
  392. data/doc/classes/User.src/M000164.html +18 -0
  393. data/doc/classes/User.src/M000165.html +23 -0
  394. data/doc/classes/User.src/M000166.html +20 -0
  395. data/doc/classes/User.src/M000167.html +18 -0
  396. data/doc/classes/User.src/M000168.html +18 -0
  397. data/doc/classes/User.src/M000169.html +18 -0
  398. data/doc/classes/User.src/M000170.html +18 -0
  399. data/doc/classes/User.src/M000171.html +19 -0
  400. data/doc/classes/User.src/M000172.html +21 -0
  401. data/doc/classes/User.src/M000173.html +23 -0
  402. data/doc/classes/User.src/M000174.html +19 -0
  403. data/doc/classes/UserController.html +509 -0
  404. data/doc/classes/UserController.src/M000017.html +34 -0
  405. data/doc/classes/UserController.src/M000018.html +36 -0
  406. data/doc/classes/UserController.src/M000019.html +21 -0
  407. data/doc/classes/UserController.src/M000020.html +33 -0
  408. data/doc/classes/UserController.src/M000021.html +48 -0
  409. data/doc/classes/UserController.src/M000022.html +39 -0
  410. data/doc/classes/UserController.src/M000023.html +25 -0
  411. data/doc/classes/UserController.src/M000024.html +17 -0
  412. data/doc/classes/UserController.src/M000025.html +22 -0
  413. data/doc/classes/UserController.src/M000026.html +24 -0
  414. data/doc/classes/UserController.src/M000027.html +26 -0
  415. data/doc/classes/UserController.src/M000028.html +19 -0
  416. data/doc/classes/UserController.src/M000029.html +34 -0
  417. data/doc/classes/UserController.src/M000030.html +36 -0
  418. data/doc/classes/UserController.src/M000031.html +21 -0
  419. data/doc/classes/UserController.src/M000032.html +33 -0
  420. data/doc/classes/UserController.src/M000033.html +48 -0
  421. data/doc/classes/UserController.src/M000034.html +39 -0
  422. data/doc/classes/UserController.src/M000035.html +25 -0
  423. data/doc/classes/UserController.src/M000036.html +17 -0
  424. data/doc/classes/UserController.src/M000037.html +22 -0
  425. data/doc/classes/UserController.src/M000038.html +24 -0
  426. data/doc/classes/UserController.src/M000039.html +26 -0
  427. data/doc/classes/UserController.src/M000040.html +19 -0
  428. data/doc/classes/UserHelper.html +324 -0
  429. data/doc/classes/UserHelper.src/M000398.html +18 -0
  430. data/doc/classes/UserHelper.src/M000399.html +37 -0
  431. data/doc/classes/UserHelper.src/M000400.html +19 -0
  432. data/doc/classes/UserHelper.src/M000401.html +18 -0
  433. data/doc/classes/UserHelper.src/M000402.html +18 -0
  434. data/doc/classes/UserHelper.src/M000403.html +18 -0
  435. data/doc/classes/UserHelper.src/M000404.html +18 -0
  436. data/doc/classes/UserHelper.src/M000405.html +37 -0
  437. data/doc/classes/UserHelper.src/M000406.html +19 -0
  438. data/doc/classes/UserHelper.src/M000407.html +18 -0
  439. data/doc/classes/UserHelper.src/M000408.html +18 -0
  440. data/doc/classes/UserHelper.src/M000409.html +18 -0
  441. data/doc/classes/UserNotify.html +253 -0
  442. data/doc/classes/UserNotify.src/M000089.html +28 -0
  443. data/doc/classes/UserNotify.src/M000090.html +27 -0
  444. data/doc/classes/UserNotify.src/M000091.html +28 -0
  445. data/doc/classes/UserNotify.src/M000092.html +22 -0
  446. data/doc/classes/UserNotify.src/M000093.html +28 -0
  447. data/doc/classes/UserNotify.src/M000094.html +27 -0
  448. data/doc/classes/UserNotify.src/M000095.html +28 -0
  449. data/doc/classes/UserNotify.src/M000096.html +22 -0
  450. data/doc/classes/UserSystem.html +330 -0
  451. data/doc/classes/UserSystem.src/M000448.html +26 -0
  452. data/doc/classes/UserSystem.src/M000449.html +18 -0
  453. data/doc/classes/UserSystem.src/M000450.html +23 -0
  454. data/doc/classes/UserSystem.src/M000451.html +46 -0
  455. data/doc/classes/UserSystem.src/M000452.html +18 -0
  456. data/doc/classes/UserSystem.src/M000453.html +19 -0
  457. data/doc/classes/UserSystem.src/M000454.html +26 -0
  458. data/doc/classes/UserSystem.src/M000455.html +18 -0
  459. data/doc/classes/UserSystem.src/M000456.html +23 -0
  460. data/doc/classes/UserSystem.src/M000457.html +46 -0
  461. data/doc/classes/UserSystem.src/M000458.html +18 -0
  462. data/doc/classes/UserSystem.src/M000459.html +19 -0
  463. data/doc/classes/Work.html +451 -0
  464. data/doc/classes/Work.src/M000342.html +18 -0
  465. data/doc/classes/Work.src/M000343.html +18 -0
  466. data/doc/classes/Work.src/M000344.html +28 -0
  467. data/doc/classes/Work.src/M000345.html +38 -0
  468. data/doc/classes/Work.src/M000346.html +18 -0
  469. data/doc/classes/Work.src/M000347.html +18 -0
  470. data/doc/classes/Work.src/M000348.html +21 -0
  471. data/doc/classes/Work.src/M000349.html +18 -0
  472. data/doc/classes/Work.src/M000350.html +21 -0
  473. data/doc/classes/Work.src/M000351.html +18 -0
  474. data/doc/classes/Work.src/M000352.html +18 -0
  475. data/doc/classes/Work.src/M000353.html +28 -0
  476. data/doc/classes/Work.src/M000354.html +38 -0
  477. data/doc/classes/Work.src/M000355.html +18 -0
  478. data/doc/classes/Work.src/M000356.html +18 -0
  479. data/doc/classes/Work.src/M000357.html +21 -0
  480. data/doc/classes/Work.src/M000358.html +18 -0
  481. data/doc/classes/Work.src/M000359.html +21 -0
  482. data/doc/classes/WorksController.html +525 -0
  483. data/doc/classes/WorksController.src/M000063.html +19 -0
  484. data/doc/classes/WorksController.src/M000064.html +19 -0
  485. data/doc/classes/WorksController.src/M000065.html +18 -0
  486. data/doc/classes/WorksController.src/M000066.html +22 -0
  487. data/doc/classes/WorksController.src/M000067.html +36 -0
  488. data/doc/classes/WorksController.src/M000068.html +21 -0
  489. data/doc/classes/WorksController.src/M000069.html +31 -0
  490. data/doc/classes/WorksController.src/M000070.html +21 -0
  491. data/doc/classes/WorksController.src/M000071.html +25 -0
  492. data/doc/classes/WorksController.src/M000072.html +20 -0
  493. data/doc/classes/WorksController.src/M000073.html +22 -0
  494. data/doc/classes/WorksController.src/M000074.html +23 -0
  495. data/doc/classes/WorksController.src/M000075.html +23 -0
  496. data/doc/classes/WorksController.src/M000076.html +19 -0
  497. data/doc/classes/WorksController.src/M000077.html +19 -0
  498. data/doc/classes/WorksController.src/M000078.html +18 -0
  499. data/doc/classes/WorksController.src/M000079.html +22 -0
  500. data/doc/classes/WorksController.src/M000080.html +36 -0
  501. data/doc/classes/WorksController.src/M000081.html +21 -0
  502. data/doc/classes/WorksController.src/M000082.html +31 -0
  503. data/doc/classes/WorksController.src/M000083.html +21 -0
  504. data/doc/classes/WorksController.src/M000084.html +25 -0
  505. data/doc/classes/WorksController.src/M000085.html +20 -0
  506. data/doc/classes/WorksController.src/M000086.html +22 -0
  507. data/doc/classes/WorksController.src/M000087.html +23 -0
  508. data/doc/classes/WorksController.src/M000088.html +23 -0
  509. data/doc/classes/WorksHelper.html +156 -0
  510. data/doc/classes/WorksHelper.src/M000420.html +18 -0
  511. data/doc/classes/WorksHelper.src/M000421.html +18 -0
  512. data/doc/created.rid +1 -0
  513. data/doc/dot/f_0.dot +14 -0
  514. data/doc/dot/f_0.png +0 -0
  515. data/doc/dot/f_1.dot +30 -0
  516. data/doc/dot/f_1.png +0 -0
  517. data/doc/dot/f_2.dot +39 -0
  518. data/doc/dot/f_2.png +0 -0
  519. data/doc/dot/f_24.dot +32 -0
  520. data/doc/dot/f_24.png +0 -0
  521. data/doc/dot/f_25.dot +32 -0
  522. data/doc/dot/f_25.png +0 -0
  523. data/doc/dot/f_26.dot +32 -0
  524. data/doc/dot/f_26.png +0 -0
  525. data/doc/dot/f_27.dot +32 -0
  526. data/doc/dot/f_27.png +0 -0
  527. data/doc/dot/f_28.dot +32 -0
  528. data/doc/dot/f_28.png +0 -0
  529. data/doc/dot/f_29.dot +32 -0
  530. data/doc/dot/f_29.png +0 -0
  531. data/doc/dot/f_3.dot +23 -0
  532. data/doc/dot/f_3.png +0 -0
  533. data/doc/dot/f_30.dot +130 -0
  534. data/doc/dot/f_30.png +0 -0
  535. data/doc/dot/f_31.dot +32 -0
  536. data/doc/dot/f_31.png +0 -0
  537. data/doc/dot/f_32.dot +32 -0
  538. data/doc/dot/f_32.png +0 -0
  539. data/doc/dot/f_33.dot +32 -0
  540. data/doc/dot/f_33.png +0 -0
  541. data/doc/dot/f_4.dot +23 -0
  542. data/doc/dot/f_4.png +0 -0
  543. data/doc/dot/f_44.dot +30 -0
  544. data/doc/dot/f_44.png +0 -0
  545. data/doc/dot/f_45.dot +30 -0
  546. data/doc/dot/f_45.png +0 -0
  547. data/doc/dot/f_46.dot +30 -0
  548. data/doc/dot/f_46.png +0 -0
  549. data/doc/dot/f_47.dot +44 -0
  550. data/doc/dot/f_47.png +0 -0
  551. data/doc/dot/f_48.dot +39 -0
  552. data/doc/dot/f_48.png +0 -0
  553. data/doc/dot/f_49.dot +30 -0
  554. data/doc/dot/f_49.png +0 -0
  555. data/doc/dot/f_5.dot +30 -0
  556. data/doc/dot/f_5.png +0 -0
  557. data/doc/dot/f_50.dot +30 -0
  558. data/doc/dot/f_50.png +0 -0
  559. data/doc/dot/f_51.dot +30 -0
  560. data/doc/dot/f_51.png +0 -0
  561. data/doc/dot/f_52.dot +30 -0
  562. data/doc/dot/f_52.png +0 -0
  563. data/doc/dot/f_53.dot +30 -0
  564. data/doc/dot/f_53.png +0 -0
  565. data/doc/dot/f_6.dot +23 -0
  566. data/doc/dot/f_6.png +0 -0
  567. data/doc/dot/f_64.dot +32 -0
  568. data/doc/dot/f_64.png +0 -0
  569. data/doc/dot/f_65.dot +30 -0
  570. data/doc/dot/f_65.png +0 -0
  571. data/doc/dot/f_66.dot +32 -0
  572. data/doc/dot/f_66.png +0 -0
  573. data/doc/dot/f_67.dot +32 -0
  574. data/doc/dot/f_67.png +0 -0
  575. data/doc/dot/f_68.dot +32 -0
  576. data/doc/dot/f_68.png +0 -0
  577. data/doc/dot/f_69.dot +46 -0
  578. data/doc/dot/f_69.png +0 -0
  579. data/doc/dot/f_7.dot +47 -0
  580. data/doc/dot/f_7.png +0 -0
  581. data/doc/dot/f_70.dot +23 -0
  582. data/doc/dot/f_70.png +0 -0
  583. data/doc/dot/f_71.dot +32 -0
  584. data/doc/dot/f_71.png +0 -0
  585. data/doc/dot/f_72.dot +32 -0
  586. data/doc/dot/f_72.png +0 -0
  587. data/doc/dot/f_73.dot +46 -0
  588. data/doc/dot/f_73.png +0 -0
  589. data/doc/dot/f_74.dot +32 -0
  590. data/doc/dot/f_74.png +0 -0
  591. data/doc/dot/m_48_0.dot +30 -0
  592. data/doc/dot/m_48_0.png +0 -0
  593. data/doc/files/History_txt.html +611 -0
  594. data/doc/files/README_txt.html +258 -0
  595. data/doc/files/app/controllers/application_rb.html +123 -0
  596. data/doc/files/app/controllers/backlogs_controller_rb.html +108 -0
  597. data/doc/files/app/controllers/estimates_controller_rb.html +108 -0
  598. data/doc/files/app/controllers/groups_controller_rb.html +108 -0
  599. data/doc/files/app/controllers/parties_controller_rb.html +108 -0
  600. data/doc/files/app/controllers/periods_controller_rb.html +108 -0
  601. data/doc/files/app/controllers/search_controller_rb.html +108 -0
  602. data/doc/files/app/controllers/tasks_controller_rb.html +108 -0
  603. data/doc/files/app/controllers/user_controller_rb.html +108 -0
  604. data/doc/files/app/controllers/works_controller_rb.html +108 -0
  605. data/doc/files/app/helpers/application_helper_rb.html +115 -0
  606. data/doc/files/app/helpers/backlogs_helper_rb.html +107 -0
  607. data/doc/files/app/helpers/estimates_helper_rb.html +107 -0
  608. data/doc/files/app/helpers/groups_helper_rb.html +107 -0
  609. data/doc/files/app/helpers/parties_helper_rb.html +107 -0
  610. data/doc/files/app/helpers/periods_helper_rb.html +107 -0
  611. data/doc/files/app/helpers/search_helper_rb.html +107 -0
  612. data/doc/files/app/helpers/tasks_helper_rb.html +108 -0
  613. data/doc/files/app/helpers/user_helper_rb.html +107 -0
  614. data/doc/files/app/helpers/works_helper_rb.html +107 -0
  615. data/doc/files/app/models/backlog_rb.html +108 -0
  616. data/doc/files/app/models/chart_rb.html +107 -0
  617. data/doc/files/app/models/estimate_rb.html +118 -0
  618. data/doc/files/app/models/group_rb.html +108 -0
  619. data/doc/files/app/models/party_rb.html +108 -0
  620. data/doc/files/app/models/period_rb.html +116 -0
  621. data/doc/files/app/models/search_result_rb.html +107 -0
  622. data/doc/files/app/models/task_rb.html +109 -0
  623. data/doc/files/app/models/user_notify_rb.html +108 -0
  624. data/doc/files/app/models/user_rb.html +115 -0
  625. data/doc/files/app/models/work_rb.html +108 -0
  626. data/doc/files/bin/backlog.html +201 -0
  627. data/doc/files/bin/backlog.src/M000003.html +20 -0
  628. data/doc/files/bin/backlog.src/M000004.html +18 -0
  629. data/doc/files/bin/copy_production2development_rb.html +153 -0
  630. data/doc/files/bin/copy_production2development_rb.src/M000001.html +19 -0
  631. data/doc/files/bin/copy_production2development_rb.src/M000002.html +19 -0
  632. data/doc/files/lib/array_helper_rb.html +107 -0
  633. data/doc/files/lib/backlog.html +112 -0
  634. data/doc/files/lib/big_decimal_yaml_fix_rb.html +117 -0
  635. data/doc/files/lib/class_table_inheritance_rb.html +106 -0
  636. data/doc/files/lib/clock_rb.html +107 -0
  637. data/doc/files/lib/localization_rb.html +115 -0
  638. data/doc/files/lib/tasks/backup_rake.html +204 -0
  639. data/doc/files/lib/tasks/capistrano_rake.html +214 -0
  640. data/doc/files/lib/user_system_rb.html +107 -0
  641. data/doc/files/lib/version_from_history_rb.html +107 -0
  642. data/doc/files/public/robots_txt.html +114 -0
  643. data/doc/files/vendor/rails/railties/html/robots_txt.html +114 -0
  644. data/doc/fr_class_index.html +67 -0
  645. data/doc/fr_file_index.html +112 -0
  646. data/doc/fr_method_index.html +485 -0
  647. data/doc/index.html +24 -0
  648. data/doc/rdoc-style.css +208 -0
  649. data/lang/en.yaml +3 -0
  650. data/lang/no.yaml +3 -0
  651. data/public/stylesheets/backlog.css +1 -1
  652. data/test/functional/search_controller_test.rb +18 -0
  653. metadata +692 -3
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>validate (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 10</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">validate</span>
15
+ <span class="ruby-identifier">errors</span>.<span class="ruby-identifier">add</span> <span class="ruby-value str">&quot;A period cannot end before it starts&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">end_on</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">start_on</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>find_active_or_future (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 14</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">find_active_or_future</span>
15
+ <span class="ruby-identifier">find</span>(<span class="ruby-identifier">:all</span>, <span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;end_on &gt;= '#{Date.today.strftime '%Y-%m-%d'}'&quot;</span>)
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>completed_tasks (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 18</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">completed_tasks</span>
15
+ <span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">select</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">completed?</span>}
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>open_tasks (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 22</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">open_tasks</span>
15
+ <span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">select</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">active?</span>}
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>most_frequent_backlog (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 26</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">most_frequent_backlog</span>
15
+ <span class="ruby-identifier">all_backlogs</span> = <span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">backlog</span>}.<span class="ruby-identifier">compact</span>
16
+ <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">all_backlogs</span>.<span class="ruby-identifier">empty?</span>
17
+ <span class="ruby-identifier">freq</span> = {}
18
+ <span class="ruby-identifier">all_backlogs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">b</span><span class="ruby-operator">|</span>
19
+ <span class="ruby-identifier">freq</span>[<span class="ruby-identifier">b</span>.<span class="ruby-identifier">id</span>] <span class="ruby-operator">||=</span> <span class="ruby-value">0</span>
20
+ <span class="ruby-identifier">freq</span>[<span class="ruby-identifier">b</span>.<span class="ruby-identifier">id</span>] <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
21
+ <span class="ruby-keyword kw">end</span>
22
+ <span class="ruby-identifier">freq</span>.<span class="ruby-identifier">to_a</span>.<span class="ruby-identifier">sort_by</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">backlog</span>, <span class="ruby-identifier">count</span><span class="ruby-operator">|</span> <span class="ruby-identifier">count</span>}.<span class="ruby-identifier">first</span>[<span class="ruby-value">0</span>]
23
+ <span class="ruby-keyword kw">end</span></pre>
24
+ </body>
25
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>active? (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 37</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">active?</span>(<span class="ruby-identifier">check_tasks</span> = <span class="ruby-keyword kw">false</span>)
15
+ <span class="ruby-identifier">start_on</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">end_on</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span> <span class="ruby-operator">||</span> (<span class="ruby-identifier">check_tasks</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">select</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">active?</span>}.<span class="ruby-identifier">size</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>))
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>future? (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 41</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">future?</span>
15
+ <span class="ruby-identifier">start_on</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>active_or_future? (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 45</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">active_or_future?</span>(<span class="ruby-identifier">check_tasks</span> = <span class="ruby-keyword kw">false</span>)
15
+ <span class="ruby-identifier">end_on</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span> <span class="ruby-operator">||</span> (<span class="ruby-identifier">check_tasks</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">select</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">active?</span>}.<span class="ruby-identifier">size</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>)
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>passed? (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 49</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">passed?</span>
15
+ <span class="ruby-identifier">end_on</span> <span class="ruby-operator">&lt;</span> <span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>estimate_data (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 53</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">estimate_data</span>(<span class="ruby-identifier">date</span>, <span class="ruby-identifier">actual</span>=<span class="ruby-keyword kw">false</span>)
15
+ <span class="ruby-identifier">total</span> = <span class="ruby-constant">BigDecimal</span>(<span class="ruby-value str">'0'</span>)
16
+ <span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
17
+ <span class="ruby-identifier">total</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">estimate_data</span>(<span class="ruby-identifier">date</span>, <span class="ruby-identifier">actual</span>)
18
+ <span class="ruby-keyword kw">end</span>
19
+ <span class="ruby-identifier">total</span>
20
+ <span class="ruby-keyword kw">end</span></pre>
21
+ </body>
22
+ </html>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>work_data (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 61</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">work_data</span>(<span class="ruby-identifier">date</span>)
15
+ <span class="ruby-identifier">total</span> = <span class="ruby-constant">BigDecimal</span>(<span class="ruby-value str">'0'</span>)
16
+ <span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
17
+ <span class="ruby-identifier">total</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">work_data</span>(<span class="ruby-identifier">date</span>)
18
+ <span class="ruby-keyword kw">end</span>
19
+ <span class="ruby-identifier">total</span>
20
+ <span class="ruby-keyword kw">end</span></pre>
21
+ </body>
22
+ </html>
@@ -0,0 +1,28 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>required_speed (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 69</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">required_speed</span>
15
+ <span class="ruby-identifier">todo</span> = <span class="ruby-identifier">estimate_data</span>(<span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span>)
16
+ <span class="ruby-identifier">remaining_days</span> = <span class="ruby-identifier">end_on</span> <span class="ruby-operator">-</span> <span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span>
17
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">todo</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
18
+ <span class="ruby-value">0</span>
19
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">remaining_days</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
20
+ <span class="ruby-identifier">todo</span> <span class="ruby-operator">/</span> <span class="ruby-identifier">remaining_days</span>
21
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">remaining_days</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
22
+ <span class="ruby-identifier">todo</span>
23
+ <span class="ruby-keyword kw">else</span>
24
+ <span class="ruby-identifier">todo</span> <span class="ruby-operator">*</span> (<span class="ruby-operator">-</span><span class="ruby-identifier">remaining_days</span>)
25
+ <span class="ruby-keyword kw">end</span>
26
+ <span class="ruby-keyword kw">end</span></pre>
27
+ </body>
28
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>to_s (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 83</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
15
+ <span class="ruby-identifier">name</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>name (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 87</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">name</span>
15
+ <span class="ruby-node">&quot;#{party.name}##{position}&quot;</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,20 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>dates (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 91</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dates</span>
15
+ <span class="ruby-identifier">all_dates</span> = []
16
+ (<span class="ruby-identifier">start_on</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>).<span class="ruby-identifier">upto</span>(<span class="ruby-identifier">end_on</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">date</span><span class="ruby-operator">|</span> <span class="ruby-identifier">all_dates</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">date</span>}
17
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">all_dates</span>
18
+ <span class="ruby-keyword kw">end</span></pre>
19
+ </body>
20
+ </html>
@@ -0,0 +1,26 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>recorded_dates (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 97</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">recorded_dates</span>
15
+ <span class="ruby-identifier">dates</span> = []
16
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">start_on</span> <span class="ruby-operator">&gt;</span> <span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span>
17
+ <span class="ruby-identifier">dates</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">start_on</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>)
18
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">end_on</span> <span class="ruby-operator">&lt;</span> <span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span>
19
+ (<span class="ruby-identifier">start_on</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>).<span class="ruby-identifier">upto</span>(<span class="ruby-identifier">end_on</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">date</span><span class="ruby-operator">|</span> <span class="ruby-identifier">dates</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">date</span>}
20
+ <span class="ruby-keyword kw">else</span>
21
+ (<span class="ruby-identifier">start_on</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>).<span class="ruby-identifier">upto</span>(<span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">date</span><span class="ruby-operator">|</span> <span class="ruby-identifier">dates</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">date</span>}
22
+ <span class="ruby-keyword kw">end</span>
23
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">dates</span>
24
+ <span class="ruby-keyword kw">end</span></pre>
25
+ </body>
26
+ </html>
@@ -0,0 +1,39 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>works_for_week (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 114</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">works_for_week</span>(<span class="ruby-identifier">week_no</span>, <span class="ruby-identifier">with_empty_works</span> = <span class="ruby-keyword kw">false</span>, <span class="ruby-identifier">user_id</span> = <span class="ruby-keyword kw">nil</span>)
15
+ <span class="ruby-identifier">first</span> = <span class="ruby-constant">Date</span>.<span class="ruby-identifier">commercial</span>(<span class="ruby-constant">Date</span>.<span class="ruby-identifier">today</span>.<span class="ruby-identifier">year</span>, <span class="ruby-identifier">week_no</span>, <span class="ruby-value">1</span>)
16
+ <span class="ruby-identifier">last</span> = <span class="ruby-identifier">first</span> <span class="ruby-operator">+</span> <span class="ruby-value">6</span>
17
+ <span class="ruby-identifier">works</span> = <span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">works_with_children</span>}.<span class="ruby-identifier">flatten</span>
18
+ <span class="ruby-identifier">works</span>.<span class="ruby-identifier">reject!</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">work</span><span class="ruby-operator">|</span> <span class="ruby-identifier">work</span>.<span class="ruby-identifier">hours</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>} <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">with_empty_works</span>
19
+ <span class="ruby-identifier">works</span>.<span class="ruby-identifier">reject!</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">work</span><span class="ruby-operator">|</span> <span class="ruby-identifier">work</span>.<span class="ruby-identifier">user_id</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">user_id</span>} <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">user_id</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">backlog</span>.<span class="ruby-identifier">enable_users</span>
20
+ <span class="ruby-identifier">by_day</span> = (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">6</span>).<span class="ruby-identifier">map</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
21
+ <span class="ruby-identifier">works</span>.<span class="ruby-identifier">select</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">w</span><span class="ruby-operator">|</span> <span class="ruby-identifier">w</span>.<span class="ruby-identifier">completed_at</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">w</span>.<span class="ruby-identifier">completed_at</span>.<span class="ruby-identifier">to_date</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">first</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">i</span>}.<span class="ruby-identifier">sort</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">w1</span>, <span class="ruby-identifier">w2</span><span class="ruby-operator">|</span>
22
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">w1</span>.<span class="ruby-identifier">completed_at</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">w2</span>.<span class="ruby-identifier">completed_at</span>
23
+ <span class="ruby-identifier">w1</span>.<span class="ruby-identifier">completed_at</span> <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">w2</span>.<span class="ruby-identifier">completed_at</span>
24
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">w1</span>.<span class="ruby-identifier">started_at</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">w2</span>.<span class="ruby-identifier">started_at</span>
25
+ <span class="ruby-identifier">w1</span>.<span class="ruby-identifier">started_at</span> <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">w2</span>.<span class="ruby-identifier">started_at</span>
26
+ <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">w1</span>.<span class="ruby-identifier">started_at</span>
27
+ <span class="ruby-value">1</span>
28
+ <span class="ruby-keyword kw">else</span>
29
+ <span class="ruby-value">-1</span>
30
+ <span class="ruby-keyword kw">end</span>
31
+ <span class="ruby-keyword kw">end</span>
32
+ <span class="ruby-keyword kw">end</span>
33
+ <span class="ruby-identifier">by_day</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">d</span><span class="ruby-operator">|</span> <span class="ruby-identifier">d</span>[<span class="ruby-identifier">works</span>.<span class="ruby-identifier">size</span>] = <span class="ruby-identifier">d</span>[<span class="ruby-identifier">works</span>.<span class="ruby-identifier">size</span>]}
34
+ <span class="ruby-identifier">by_line</span> = <span class="ruby-identifier">by_day</span>.<span class="ruby-identifier">transpose</span>
35
+ <span class="ruby-identifier">by_line</span> = <span class="ruby-identifier">by_line</span>.<span class="ruby-identifier">select</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">l</span><span class="ruby-operator">|</span> <span class="ruby-identifier">l</span>.<span class="ruby-identifier">compact</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>}
36
+ <span class="ruby-identifier">by_line</span>
37
+ <span class="ruby-keyword kw">end</span></pre>
38
+ </body>
39
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>estimates? (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 139</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">estimates?</span>
15
+ <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">backlogs</span>.<span class="ruby-identifier">find</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">backlog</span><span class="ruby-operator">|</span> <span class="ruby-identifier">backlog</span>.<span class="ruby-identifier">track_todo?</span>}.<span class="ruby-identifier">nil?</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>track_work? (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 143</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">track_work?</span>
15
+ <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">backlogs</span>.<span class="ruby-identifier">find</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">backlog</span><span class="ruby-operator">|</span> <span class="ruby-identifier">backlog</span>.<span class="ruby-identifier">track_done?</span>}.<span class="ruby-identifier">nil?</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>track_times? (Period)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File app/models/period.rb, line 147</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">track_times?</span>
15
+ <span class="ruby-keyword kw">not</span> <span class="ruby-identifier">backlogs</span>.<span class="ruby-identifier">find</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">backlog</span><span class="ruby-operator">|</span> <span class="ruby-identifier">backlog</span>.<span class="ruby-identifier">track_times?</span>}.<span class="ruby-identifier">nil?</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>