class Faqmarkdown::FaqGenerator

Public Instance Methods

check_date() click to toggle source
# File lib/generators/faqmarkdown/faq_generator.rb, line 15
def check_date
  if options.date && options.date !~ /^#{Faq::DATE_FORMAT}$/
    puts 'Invalid date - please use the following format: YYYY-MM-DD, eg. 2011-01-01.'
    exit
  end
end
check_slug() click to toggle source
# File lib/generators/faqmarkdown/faq_generator.rb, line 8
def check_slug
  unless slug =~ /^#{Faq::SLUG_FORMAT}$/
    puts 'Invalid slug - valid characters include letters, digits and dashes.'
    exit
  end
end
generate_faq() click to toggle source
# File lib/generators/faqmarkdown/faq_generator.rb, line 22
def generate_faq
  template 'example-faq.markdown', "app/faqs/#{publish_date}-#{slug.downcase}.markdown"
end

Private Instance Methods

publish_date() click to toggle source
# File lib/generators/faqmarkdown/faq_generator.rb, line 28
def publish_date
  format = '%Y-%m-%d-%H%M%S'

  if options.date.present?
    date_string = options.date
    date_string += '-000000' unless options.date.match(/(#{Faq::TIME_FORMAT}$)/)
    date = Time.strptime(date_string, format)
  else
    date = Time.zone.now
  end

  date.strftime(format)
end