Merge branch 'master' of gitlab.tp.rulingcom.com:saurabh/orbit4-5 into gravity

This commit is contained in:
Harry Bomrah 2015-06-24 16:56:23 +08:00
commit cb1a40d8b3
3 changed files with 32 additions and 9 deletions

View File

@ -1,6 +1,5 @@
module Admin::AttributeValuesViewHelper module Admin::AttributeValuesViewHelper
OPT = [ OPT = [
["YYYY / MM / DD hh : mm","format1"],
["YYYY / MM / DD","format2"], ["YYYY / MM / DD","format2"],
["YYYY / MM","format3"], ["YYYY / MM","format3"],
["YYYY","format4"] ["YYYY","format4"]

View File

@ -20,7 +20,7 @@ module AttributeFieldsHelper
@new_attribute = @attribute_value.nil? @new_attribute = @attribute_value.nil?
@attribute_value = @attribute_value || (attribute_type.eql?("role") ? @member.attribute_values.build(attribute_field_id: id) : @member.member_profile_field_values.build(member_profile_field: id)) @attribute_value = @attribute_value || (attribute_type.eql?("role") ? @member.attribute_values.build(attribute_field_id: id) : @member.member_profile_field_values.build(member_profile_field: id))
@prefiled_value = @attribute_value.value rescue nil @prefiled_value = @attribute_value.value rescue nil
return instance_eval("render_#{markup}") rescue "" return instance_eval("render_#{markup}")# rescue ""
end end
end end
@ -101,14 +101,17 @@ module AttributeFieldsHelper
# @prefiled_value = @attribute_value.get_date # @prefiled_value = @attribute_value.get_date
case self.typeC['format'] case self.typeC['format']
when 'format1' # when 'format1'
tmp = datetime_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y/%m/%d %H:%M")), 'yyyy/MM/dd hh:mm', true) # tmp = datetime_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y/%m/%d %H:%M")), 'yyyy/MM/dd hh:mm', true)
when 'format2' when 'format1','format2'
tmp = datetime_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y/%m/%d")), 'yyyy/MM/dd') # tmp = datetime_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y/%m/%d")), 'yyyy/MM/dd')
tmp = very_simple_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y/%m/%d")), self.typeC['format'])
when 'format3' when 'format3'
tmp = datetime_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y/%m")), 'yyyy/MM') # tmp = datetime_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y/%m")), 'yyyy/MM')
tmp = very_simple_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y/%m")), self.typeC['format'])
when 'format4' when 'format4'
tmp = datetime_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y")), 'yyyy') # tmp = datetime_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y")), 'yyyy')
tmp = very_simple_picker(get_field_name_base, (@prefiled_value ? @prefiled_value : d.strftime("%Y")), self.typeC['format'])
end end
control_group_wrapper{tmp} control_group_wrapper{tmp}
@ -117,6 +120,28 @@ module AttributeFieldsHelper
end end
end end
def very_simple_picker(object_name, value, format)
id = object_name.gsub("[","_").gsub("]","")
values = value.split("/") rescue []
html = "<div class='simple-date-picker'>"
if format == "format1" || format == "format2"
html = html + "<input type='text' class='span1' #{(!values.blank? ? "value='#{values[2]}'" : "")} placeholder='Date' onkeypress='return (event.charCode >= 48 && event.charCode <= 57) || event.keyCode == 8 || event.keyCode == 46 || (event.keyCode >= 37 && event.keyCode <= 40) || event.keyCode == 9' onkeyup='this.value=(this.value.length <= 2 ? (parseInt(this.value) > 0 && parseInt(this.value) < 32 ? this.value : this.value.substring(0,this.value.length-1)) : this.value.substring(0,this.value.length-1))' onblur='var el = document.getElementById(\"#{id}\");var k = el.value.split(\"/\");if(this.value){k[2]=this.value; el.value = k.join(\"/\")};'>"
end
if format == "format1" || format == "format2" || format == "format3"
html = html + "<select class='span2' onchange='var el = document.getElementById(\"#{id}\");var k = el.value.split(\"/\");if(this.value){k[1]=this.value; el.value = k.join(\"/\")};'>"
["January","February","March","April","May","June","July","August","September","October","November","December"].each_with_index do |mon,index|
mon_value = "#{(index < 9 ? "0" : "")}#{(index + 1).to_s}"
html = html + "<option value='#{(index < 9 ? "0" : "")}#{(index + 1).to_s}' #{values[1] == mon_value ? 'selected="selected"' : ""}>#{mon}</option>"
end
html = html + "</select>"
end
html = html + "<input type='text' class='span1' #{(!values.blank? ? "value='#{values[0]}'" : "")} placeholder='Year' onkeypress='return (event.charCode >= 48 && event.charCode <= 57) || event.keyCode == 8 || event.keyCode == 46 || (event.keyCode >= 37 && event.keyCode <= 40) event.keyCode == 9' onkeyup='this.value=(this.value.length == 4 ? (parseInt(this.value) > 1900 && parseInt(this.value) < 3000 ? this.value : this.value.substring(0,this.value.length-1)) : (this.value.length > 4 ? this.value.substring(0,this.value.length-1) : this.value))' onblur='var el = document.getElementById(\"#{id}\");var k = el.value.split(\"/\");if(this.value){k[0]=this.value; el.value = k.join(\"/\")};'>"
html = html + hidden_field_tag(object_name, (value || "1901/01/01"))
html = html + "</div>"
html.html_safe
end
def datetime_picker(object_name, value, format, time=false) def datetime_picker(object_name, value, format, time=false)
content_tag :div, :class => "input-append datetimepick", "data-date-format"=>format, "data-picktime"=>"#{time}" do content_tag :div, :class => "input-append datetimepick", "data-date-format"=>format, "data-picktime"=>"#{time}" do
concat text_field_tag(object_name, value, :placeholder=>format) concat text_field_tag(object_name, value, :placeholder=>format)

View File

@ -222,7 +222,6 @@
<label class="control-label muted" for=""><%= t("date.format")%></label> <label class="control-label muted" for=""><%= t("date.format")%></label>
<div class="controls"> <div class="controls">
<select data-type="date" id="${_format[0]}" name="${_format[1]}"> <select data-type="date" id="${_format[0]}" name="${_format[1]}">
<option value="format1">YYYY / MM / DD hh : mm</option>
<option value="format2">YYYY / MM / DD</option> <option value="format2">YYYY / MM / DD</option>
<option value="format3">YYYY / MM</option> <option value="format3">YYYY / MM</option>
<option value="format4">YYYY</option> <option value="format4">YYYY</option>