User:Ryan52/todo

From FreekiWiki
Jump to navigation Jump to search

Tickets

  • #15753 install security update
  • #15784 Newfangled keyboard tester addition request/issues
  • get fgdb.rb able to be set up by new freegeeks and new coders
    • #15523 fgdb can't be set up from scratch atm (broken devel data)
    • #14227 Fix docs on how to install FGdb
  • #15885 fix up coveredness tracking
    • #15492 covered or noncovered choice added to printme
    • #15846 Make FG-PDX automatically uncovered
    • #15883 figure out if the sales screen should have a covered widget too
    • #15884 make them choose covered or uncovered
  • #15518 Redo how the destroy link works
    • #15345 deleting sale with a gizmo return silently fails
    • #15493 delete link just deletes without asking
    • #15661 Please help clumsy fingers!
  • Staff_hours_tracking_application
    • see below for individual TODOs

Timeline

Releases

  • 11-14-09 release:
    • carryover - destroy link, #15518 (plus unimportant changes in current master)
    • coveredness improvements, #15885
      • shouldn't wait until next release, this will break stuff
  • 11-21-09 release: staff hours rollout/testing?
    • has to be, FG is closed on the 28th, and it's needed before December...
    • pretty much ready now

TODOs

  • on Wednesday (whether home or at FG, need it for release):
    • #15518, destroy link
  • on Saturday the 14th:
    • #15885, coveredness improvements (if not done already)
    • minor improvements to staff hours
  • on Saturday the 21st:
    • #15784, keyboard tester
    • #15523/#14227, install instructions/testing

What's left for staff hours

  • make strings on interface make more sense
  • we need a way to mark "special" users like proposed and nobody. probably a db field.
    • how to do this? a "special" boolean in the workers table?
    • Then make a named_scope to find everybody who's normal
    • Then turn effective_in_range into a named scope
    • Then run this and fix places: ack 'Worker.(all|effective_in_range)' app/
    • while touching stuff, remove :include_blank from workers select, or make it an empty (illegal) option.
  • huh. so the whole point of this project is for workers comp, yes? so then why is there no workers comp report?
  • should make some metadata (the income_streams, wc_categories, and programs) effective/ineffective
    • this should be able to wait, since we aren't using this info in the frontend at all...
    • why do we need to make the jobs <-> (income_streams, wc_categories, and programs) many-to-many? for effective dates or for percentages?
  • should make workers to worker_types effective/ineffective
    • if a worker changes types halfway through a pay period, does the first half of their hours need to go into one category and the second half go into the other? (on the payroll report). or can we get away with just using what their type was at the beginning or end of the pay period?
    • edited through interface, hm. I guess this should be line item? eww. need an interface for editing effective/ineffective things when it's originally a one-to-many.
    • also need a validation. like this:
worker.workers_worker_types.sort_by(&:effective_on).each_with_siblings{|a,b,c| raise if (a && (a.ineffective_on.nil? or a.ineffective_on > b.effective_on)) || (c && (c.effective_on.nil? or c.effective_on < b.ineffective_on))}
def Enumerable.each_with_siblings
  self.each_with_index{|b, i|
    a = self[i - 1] if i > 0 # -1 does not mean what we want it to
    c = self[i + 1]
    yield(a, b, c)
  }
end
    • find a way to determine current worker type.
      • in Worker:
def worker_type_on_day(date)
  self.workers_worker_types.effective_on(date).first
end
def worker_type_today
  self.worker_type_on_day(Date.today)
end
      • in WorkerWorkerType:
steal named scope from VolunteerTaskType