publication_pending.rb

来自「用ruby on rails写的一个博客程序,还不错..ruby on rail」· RB 代码 · 共 42 行

RB
42
字号
module ContentState  class PublicationPending < Base    include Singleton    def enter_hook(content)      super      content[:published] = false if content.new_record?    end    def change_published_state(content, published)      content[:published] = published      if published && content.published_at <= Time.now        content.state = JustPublished.instance      end    end    def set_published_at(content, new_time)      content[:published_at] = new_time      Trigger.remove(content, :trigger_method => 'publish!')      if new_time.nil?        content.state = Draft.instance      elsif new_time <= Time.now        content.state = JustPublished.instance      end    end    def publication_pending?      true    end    def post_trigger(content)      Trigger.post_action(content.published_at, content, 'publish!')    end    def withdraw(content)      content[:published_at] = nil      content.state = Draft.instance    end  endend

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?