diff --git a/lib/clot/date_tags.rb b/lib/clot/date_tags.rb index 293533e..cafccd6 100644 --- a/lib/clot/date_tags.rb +++ b/lib/clot/date_tags.rb @@ -49,10 +49,27 @@ def default_end 59 end + def id_string(field_name) + if field_name && ! field_name.blank? + %{id="date_#{field_name}"} + else + %{id="date"} + end + end + + def name_string(field_name) + if field_name && ! field_name.blank? + %{name="date[#{field_name}]"} + else + %{name="date"} + end + end + def render_string field_name = @field_name || default_field_name - %{" + %{" end + def time_method default_field_name end @@ -180,8 +197,9 @@ def set_primary_attributes(context) def personal_attributes(name,value) super(name,value) || case name when "order" then - puts "received order #{value}" @order = value + when "discard_type" then + @field_name = ",field_name:''" end end @@ -200,11 +218,10 @@ def render(context) class SelectDate < MultiDateTag def render_nested(context) - @year = SelectYear.new(".select_year",@time.year.to_s,[]) - @month = SelectMonth.new(".select_month",@time.month.to_s,[]) - @day = SelectDay.new(".select_day",@time.day.to_s,[]) + @year = SelectYear.new(".select_year","#{@time.year.to_s} #{@field_name}",[]) + @month = SelectMonth.new(".select_month","#{@time.month.to_s} #{@field_name}",[]) + @day = SelectDay.new(".select_day","#{@time.day.to_s} #{@field_name}",[]) - puts "order #{@order}" order = @order || ['year', 'month', 'day'] data = "" diff --git a/spec/date_tag_spec.rb b/spec/date_tag_spec.rb index 9334218..1a31497 100644 --- a/spec/date_tag_spec.rb +++ b/spec/date_tag_spec.rb @@ -231,7 +231,14 @@ def get_options(from_val,to_val, hash = {}) @day_string = '" @tag.should parse_with_vars_to(@day_string + @month_string + @year_string, 'time' => time) end - + it "should allow discarding of type" do + time = Time.now + @tag = "{% select_date time,discard_type:true %}" + @year_string = '" + @month_string = '" + @day_string = '" + @tag.should parse_with_vars_to(@year_string + @month_string + @day_string, 'time' => time) + end it "should set default time to current time" do time = Time.now @tag = "{% select_date %}" @@ -259,5 +266,7 @@ def get_options(from_val,to_val, hash = {}) @minute_string = '" @tag.should parse_to(@hour_string + @minute_string) end + + end end \ No newline at end of file