lib/poolpartycl.rb in poolparty-0.2.84 vs lib/poolpartycl.rb in poolparty-1.2.2
- old
+ new
@@ -1,7 +1,72 @@
Dir["#{File.dirname(__FILE__)}/poolparty/helpers/**.rb"].each do |lib|
require lib
end
def help_array
- ["-h", "--help", "-V", "--version"]
+ ["-h", "--help", "-V", "--version", "--debug", "-d"]
+end
+
+def ask_with_help(opts={}, &block)
+ help_str = opts[:help]
+ message = opts[:message]
+
+ o = ask("#{message} (h for help)") do |q|
+ q.validate = opts[:validate] if opts.has_key?(:validate)
+ end
+
+ if %w(h H).include?(o)
+ colored_say help_str, :help
+ ask_with_help(opts, &block)
+ else
+ block.call(o)
+ end
+ o
+end
+
+def rescued_ask(m, r)
+ begin
+ t = colored_ask m
+ rescue Exception => e
+ say r
+ end
+end
+
+def colored_ask(str, color = :notice)
+ setup_colors
+ ask("<%= color(\"#{str}\", :#{color}) %>")
+end
+
+def colored_say(str, color = :headline)
+ setup_colors
+ say("<%= color(\"#{str}\", :#{color}) %>")
+end
+
+def setup_colors
+ unless @setup_colors
+ ft = HighLine::ColorScheme.new do |cs|
+ cs[:headline] = [ :bold, :yellow, :on_black ]
+ cs[:horizontal_line] = [ :bold, :white, :on_blue]
+ cs[:critical] = [ :yellow, :on_red ]
+ cs[:error] = [ :bold, :red ]
+ cs[:help] = [ :bold, :white, :on_blue]
+ cs[:notice] = [ :blue, :on_white]
+ end
+
+ HighLine.color_scheme = ft
+ @setup_colors = true
+ end
+end
+
+def are_you_sure?(msg)
+ puts msg
+ resp = gets.strip!
+
+ case resp
+ when "Y"
+ when "yes"
+ when "y"
+ return true
+ else
+ return false
+ end
end
\ No newline at end of file