From dbcc9264b9b8d45e4824096eba5e912e1edc0704 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 29 Aug 2008 22:52:13 +0200 Subject: created class DatePoll --- index.cgi | 41 +++++++++++++++++++++++++++++++++-------- 1 file changed, 33 insertions(+), 8 deletions(-) (limited to 'index.cgi') diff --git a/index.cgi b/index.cgi index b59cfe3..9e39b1c 100755 --- a/index.cgi +++ b/index.cgi @@ -2,6 +2,7 @@ require "yaml" require "cgi" require "pp" +require "date" class Poll attr_reader :head @@ -11,7 +12,7 @@ class Poll @comment = [] end def head_to_html - ret = "\n" + ret = "\n" @head.each{|columntitle| ret += "#{columntitle}\n" } @@ -24,17 +25,18 @@ class Poll # ret += "" # ret += "\n" # ret += "\n" + ret += "\n" ret end def to_html ret = "
\n" ret += "
\n" - ret += "\n" + ret += "
\n" ret += head_to_html @data.sort{|x,y| x[1]["timestamp"] <=> y[1]["timestamp"]}.each{|participant,poll| - ret += "\n" + ret += "\n" ret += "\n" @head.each{|columntitle| klasse = poll[columntitle].nil? ? "undecided" : poll[columntitle] @@ -42,9 +44,9 @@ class Poll ret += "\n" } ret += "" + ret += "\n" } - ret += "\n" ret += "\n" ret += "\n" @head.each{|columntitle| @@ -141,9 +143,26 @@ class Poll @head.sort! end store + true end end class DatePoll < Poll + def head_to_html + ret = "\n" + @head.each{|columntitle| + ret += "\n" + } + ret += "\n" + ret + end + def add_remove_column name + begin + parsed_name = YAML::load(DateTime.parse(name).to_yaml) + rescue + return false + end + add_remove_parsed_column parsed_name + end end if __FILE__ == $0 @@ -179,14 +198,20 @@ if defined?(SITE)

#{SITE}

HEAD unless File.exist?(SITE + ".yaml" ) and table = YAML::load_file(SITE + ".yaml") - table = Poll.new + if cgi["__type"] == "date" + table = DatePoll.new + else + table = Poll.new + end end table.add_participant(cgi["__add_participant"],cgi.params["__add_participant_checked"]) if cgi.include?("__add_participant") table.delete(cgi["__delete"]) if cgi.include?("__delete") - table.add_remove_column(cgi["__add_remove_column"]) if cgi.include?("__add_remove_column") + if cgi.include?("__add_remove_column") + puts "Could not add/remove column #{cgi["__add_remove_column"]}" unless table.add_remove_column(cgi["__add_remove_column"]) + end table.add_comment(cgi["__commentname"],cgi.params["__comment"][0]) if cgi.include?("__comment") @@ -200,7 +225,7 @@ HEAD puts "
delete" puts "\n" puts "
" - puts "" + puts "" puts "" puts "" puts "
" @@ -212,7 +237,7 @@ HEAD puts "
add/remove column" puts "\n" puts "
" - puts "" + puts "" puts "" puts "" puts "
" -- cgit v1.2.3
#{participant}#{value}#{poll['timestamp'].strftime('%d.%m, %H:%M')}
#{columntitle}Last Edit