Sha256: bfdb2dabfa45a6e2bb8d02524b02d3b83f829fd4d582ed3b3ca6801f3136dc41

Contents?: true

Size: 1.08 KB

Versions: 1

Compression:

Stored size: 1.08 KB

Contents

#! /usr/bin/env ruby
# coding: utf-8

#require "sculd/event.rb"
#require "sculd/plan.rb"

#
#
#
class Sculd::Plan::Deadline < Sculd::Plan

    SYMBOL_CHAR = "!"
    DEFAULT_OPTION = 7

    def priority(today)
        #pp @option
        #@option = 1 if @option < 1
        option = (@option || DEFAULT_OPTION)
        beginning = @datetime - option
        #pp beginning
        if today < beginning
            return 0
        elsif today == @datetime
            return Sculd::Plan::DEADLINE_PRIORITY
        elsif today <= @datetime
            rp = Sculd::Plan::REMINDER_PRIORITY
            dp = Sculd::Plan::DEADLINE_PRIORITY
            return (rp + (dp - rp) * (today - beginning)/(option.to_f)).to_i
        else
            return Sculd::Plan::DEADLINE_PRIORITY
        end
    end

    def event_dates
        #@option ||= DEFAULT_OPTION

        results = []
        results << @datetime - (@option || DEFAULT_OPTION) unless @option == 0
        results << @datetime
        results.map do |datetime|
            Date.new(datetime.year, datetime.month, datetime.day)
        end
    end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
sculd-0.1.3 lib/sculd/plan/deadline.rb