| 292 |
292 |
case options[:format]
|
| 293 |
293 |
when :html
|
| 294 |
294 |
output = ''
|
| 295 |
|
i_left = ((project.start_date - self.date_from)*options[:zoom]).floor
|
|
295 |
i_left = ((project.start_date.to_date - self.date_from)*options[:zoom]).floor
|
| 296 |
296 |
|
| 297 |
|
start_date = project.start_date
|
|
297 |
start_date = project.start_date.to_date
|
| 298 |
298 |
start_date ||= self.date_from
|
| 299 |
299 |
start_left = ((start_date - self.date_from)*options[:zoom]).floor
|
| 300 |
300 |
|
| 301 |
|
i_end_date = ((project.due_date <= self.date_to) ? project.due_date : self.date_to )
|
| 302 |
|
i_done_date = start_date + ((project.due_date - start_date+1)* project.completed_percent(:include_subprojects => true)/100).floor
|
|
301 |
i_end_date = ((project.due_date.to_date <= self.date_to) ? project.due_date.to_date : self.date_to )
|
|
302 |
i_done_date = start_date + ((project.due_date.to_date - start_date+1)* project.completed_percent(:include_subprojects => true)/100).floor
|
| 303 |
303 |
i_done_date = (i_done_date <= self.date_from ? self.date_from : i_done_date )
|
| 304 |
304 |
i_done_date = (i_done_date >= self.date_to ? self.date_to : i_done_date )
|
| 305 |
305 |
|
| ... | ... | |
| 353 |
353 |
output
|
| 354 |
354 |
when :image
|
| 355 |
355 |
options[:image].stroke('transparent')
|
| 356 |
|
i_left = options[:subject_width] + ((project.due_date - self.date_from)*options[:zoom]).floor
|
|
356 |
i_left = options[:subject_width] + ((project.due_date.to_date - self.date_from)*options[:zoom]).floor
|
| 357 |
357 |
|
| 358 |
358 |
# Make sure negative i_left doesn't overflow the subject
|
| 359 |
359 |
if i_left > options[:subject_width]
|
| ... | ... | |
| 364 |
364 |
end
|
| 365 |
365 |
when :pdf
|
| 366 |
366 |
options[:pdf].SetY(options[:top]+1.5)
|
| 367 |
|
i_left = ((project.due_date - @date_from)*options[:zoom])
|
|
367 |
i_left = ((project.due_date.to_date - @date_from)*options[:zoom])
|
| 368 |
368 |
|
| 369 |
369 |
# Make sure negative i_left doesn't overflow the subject
|
| 370 |
370 |
if i_left > 0
|
| ... | ... | |
| 426 |
426 |
case options[:format]
|
| 427 |
427 |
when :html
|
| 428 |
428 |
output = ''
|
| 429 |
|
i_left = ((version.start_date - self.date_from)*options[:zoom]).floor
|
|
429 |
i_left = ((version.start_date.to_date - self.date_from)*options[:zoom]).floor
|
| 430 |
430 |
# TODO: or version.fixed_issues.collect(&:start_date).min
|
| 431 |
431 |
start_date = version.fixed_issues.minimum('start_date') if version.fixed_issues.present?
|
| 432 |
432 |
start_date ||= self.date_from
|
|
433 |
start_date = start_date.to_date
|
| 433 |
434 |
start_left = ((start_date - self.date_from)*options[:zoom]).floor
|
| 434 |
435 |
|
| 435 |
|
i_end_date = ((version.due_date <= self.date_to) ? version.due_date : self.date_to )
|
| 436 |
|
i_done_date = start_date + ((version.due_date - start_date+1)* version.completed_pourcent/100).floor
|
|
436 |
i_end_date = ((version.due_date.to_date <= self.date_to) ? version.due_date.to_date : self.date_to )
|
|
437 |
i_done_date = start_date + ((version.due_date.to_date - start_date+1)* version.completed_pourcent/100).floor
|
| 437 |
438 |
i_done_date = (i_done_date <= self.date_from ? self.date_from : i_done_date )
|
| 438 |
439 |
i_done_date = (i_done_date >= self.date_to ? self.date_to : i_done_date )
|
| 439 |
440 |
|
| ... | ... | |
| 488 |
489 |
output
|
| 489 |
490 |
when :image
|
| 490 |
491 |
options[:image].stroke('transparent')
|
| 491 |
|
i_left = options[:subject_width] + ((version.start_date - @date_from)*options[:zoom]).floor
|
|
492 |
i_left = options[:subject_width] + ((version.start_date.to_date - @date_from)*options[:zoom]).floor
|
| 492 |
493 |
|
| 493 |
494 |
# Make sure negative i_left doesn't overflow the subject
|
| 494 |
495 |
if i_left > options[:subject_width]
|
| ... | ... | |
| 499 |
500 |
end
|
| 500 |
501 |
when :pdf
|
| 501 |
502 |
options[:pdf].SetY(options[:top]+1.5)
|
| 502 |
|
i_left = ((version.start_date - @date_from)*options[:zoom])
|
|
503 |
i_left = ((version.start_date.to_date - @date_from)*options[:zoom])
|
| 503 |
504 |
|
| 504 |
505 |
# Make sure negative i_left doesn't overflow the subject
|
| 505 |
506 |
if i_left > 0
|
| ... | ... | |
| 580 |
581 |
output = ''
|
| 581 |
582 |
# Handle nil start_dates, rare but can happen.
|
| 582 |
583 |
i_start_date = if issue.start_date && issue.start_date >= self.date_from
|
| 583 |
|
issue.start_date
|
|
584 |
issue.start_date.to_date
|
| 584 |
585 |
else
|
| 585 |
586 |
self.date_from
|
| 586 |
587 |
end
|
| 587 |
588 |
|
| 588 |
|
i_end_date = ((issue.due_before && issue.due_before <= self.date_to) ? issue.due_before : self.date_to )
|
| 589 |
|
i_done_date = i_start_date + ((issue.due_before - i_start_date+1)*issue.done_ratio/100).floor
|
|
589 |
i_end_date = ((issue.due_before.to_date && issue.due_before.to_date <= self.date_to) ? issue.due_before.to_date : self.date_to )
|
|
590 |
debugger
|
|
591 |
i_done_date = i_start_date + ((issue.due_before.to_date - i_start_date+1)*issue.done_ratio/100).floor
|
| 590 |
592 |
i_done_date = (i_done_date <= self.date_from ? self.date_from : i_done_date )
|
| 591 |
593 |
i_done_date = (i_done_date >= self.date_to ? self.date_to : i_done_date )
|
| 592 |
594 |
|
| ... | ... | |
| 635 |
637 |
@date_from
|
| 636 |
638 |
end
|
| 637 |
639 |
|
| 638 |
|
i_end_date = (issue.due_before <= date_to ? issue.due_before : date_to )
|
| 639 |
|
i_done_date = i_start_date + ((issue.due_before - i_start_date+1)*issue.done_ratio/100).floor
|
|
640 |
i_end_date = (issue.due_before.to_date <= date_to ? issue.due_before.to_date : date_to )
|
|
641 |
i_done_date = i_start_date + ((issue.due_before.to_date - i_start_date+1)*issue.done_ratio/100).floor
|
| 640 |
642 |
i_done_date = (i_done_date <= @date_from ? @date_from : i_done_date )
|
| 641 |
643 |
i_done_date = (i_done_date >= date_to ? date_to : i_done_date )
|
| 642 |
644 |
i_late_date = [i_end_date, Date.today].min if i_start_date < Date.today
|
| ... | ... | |
| 675 |
677 |
@date_from
|
| 676 |
678 |
end
|
| 677 |
679 |
|
| 678 |
|
i_end_date = (issue.due_before <= @date_to ? issue.due_before : @date_to )
|
|
680 |
i_end_date = (issue.due_before.to_date <= @date_to ? issue.due_before.to_date : @date_to )
|
| 679 |
681 |
|
| 680 |
|
i_done_date = i_start_date + ((issue.due_before - i_start_date+1)*issue.done_ratio/100).floor
|
|
682 |
i_done_date = i_start_date + ((issue.due_before.to_date - i_start_date+1)*issue.done_ratio/100).floor
|
| 681 |
683 |
i_done_date = (i_done_date <= @date_from ? @date_from : i_done_date )
|
| 682 |
684 |
i_done_date = (i_done_date >= @date_to ? @date_to : i_done_date )
|
| 683 |
685 |
|