2019-11-15 09:02:17 +00:00
|
|
|
# encoding: utf-8
|
|
|
|
require 'rubyXL'
|
|
|
|
class CancerpredictsController < ApplicationController
|
|
|
|
def initialize
|
|
|
|
super
|
|
|
|
@app_title = "cancerpredict"
|
|
|
|
end
|
|
|
|
|
|
|
|
def index
|
|
|
|
uid = OrbitHelper.params[:uid] rescue ""
|
|
|
|
tags = OrbitHelper.widget_tags
|
|
|
|
categories = OrbitHelper.widget_categories || []
|
|
|
|
locale = OrbitHelper.get_site_locale.to_s
|
2019-11-23 09:49:18 +00:00
|
|
|
@table_str = '<div id="cancer_table"><div id="show_help_modal" class="modal fade"></div>'
|
2019-11-28 14:58:03 +00:00
|
|
|
@table_str_left = '<div id="cancer_table_left">'
|
|
|
|
@table_str_right = '<div id="cancer_table_right">'
|
2019-11-23 08:14:56 +00:00
|
|
|
create_first_field
|
2019-11-27 13:24:09 +00:00
|
|
|
@form_to_show.form_show.each do |num,property|
|
2019-11-23 08:14:56 +00:00
|
|
|
@field_property = {}
|
|
|
|
property.each do |key,value|
|
|
|
|
@value= value
|
|
|
|
if @value.class == BSON::Document || @value.class == Hash
|
|
|
|
@disp_value = @value[I18n.locale.to_s] rescue ""
|
|
|
|
else
|
|
|
|
@disp_value = @value
|
|
|
|
end
|
|
|
|
@field_property[key] = @disp_value
|
|
|
|
end
|
2019-11-27 13:24:09 +00:00
|
|
|
if @field_property['right'] == 0
|
|
|
|
@table_str_left += '<div data-key='+num.to_s+'>'
|
|
|
|
break if @field_property["name"] == ""
|
|
|
|
@table_str_left += '<label for="'+@field_property["variable"]+'" style="float:left;'+(@field_property["comment_text"] == "" ? "margin-right: 2.125em;" : "")+'" class="cencer_table_name">'
|
|
|
|
@table_str_left += @field_property["name"]
|
|
|
|
@table_str_left += '</label>'
|
|
|
|
if @field_property["comment_text"] != ""
|
|
|
|
@table_str_left += '<button tabindex="0" class="cancer_help_btn" data-target="#show_help_modal" style="float:left;cursor: pointer;padding: 0em 0.475em;font-size: 1.25em;border-radius: 15px;background-color: rgb(210, 106, 2);border-color: rgb(210, 106, 2);color: white;"></button>'
|
|
|
|
@table_str_left += '<input class="help_texts" type="hidden" value="'+@field_property["comment_text"]+'" name='+@field_property["variable"]+'>'
|
|
|
|
else
|
|
|
|
@table_str_left += '<div style="margin-right: 2.125em;"></div>'
|
|
|
|
end
|
|
|
|
if @field_property["is_num"] == 1
|
2019-11-28 14:58:03 +00:00
|
|
|
@table_str_left += '<input class="num_only" id="'+@field_property["variable"]+'" style="float:left;clear:right;" data-range="'+@field_property["range"].to_s+'"></input>'
|
2019-11-27 13:24:09 +00:00
|
|
|
else
|
|
|
|
@table_str_left += '<div id="'+@field_property["variable"]+'" style="float:left;clear:right;">'
|
|
|
|
@field_property["choice_fields"].each do |create_choice|
|
|
|
|
@table_str_left += '<button class="cancer_table_btn btn btn-default btn-sm">'+create_choice+'</button>'
|
|
|
|
@table_str_left += '<input type="hidden" value="0" name="'+create_choice+'"></input>'
|
|
|
|
end
|
2019-11-28 14:58:03 +00:00
|
|
|
@table_str_left += '</div>'
|
2019-11-27 13:24:09 +00:00
|
|
|
end
|
|
|
|
if @field_property["hint"].to_s != ""
|
|
|
|
@table_str_left +='<div style="color: rgb(104, 104, 104);font-size:0.75em;clear:both;">'+@field_property["hint"]+'</div>'
|
|
|
|
end
|
|
|
|
@table_str_left += '</div><div style="clear:both;"></div>'
|
2019-11-23 08:14:56 +00:00
|
|
|
else
|
2019-11-27 13:24:09 +00:00
|
|
|
@table_str_right += '<div data-key='+num.to_s+'>'
|
|
|
|
break if @field_property["name"] == ""
|
|
|
|
@table_str_right += '<label for="'+@field_property["variable"]+'" style="float:left;'+(@field_property["comment_text"] == "" ? "margin-right: 2.125em;" : "")+'" class="cencer_table_name">'
|
|
|
|
@table_str_right += @field_property["name"]
|
|
|
|
@table_str_right += '</label>'
|
|
|
|
if @field_property["comment_text"] != ""
|
|
|
|
@table_str_right += '<button tabindex="0" class="cancer_help_btn" data-target="#show_help_modal" style="float:left;cursor: pointer;padding: 0em 0.475em;font-size: 1.25em;border-radius: 15px;background-color: rgb(210, 106, 2);border-color: rgb(210, 106, 2);color: white;"></button>'
|
|
|
|
@table_str_right += '<input class="help_texts" type="hidden" value="'+@field_property["comment_text"]+'" name='+@field_property["variable"]+'>'
|
|
|
|
else
|
|
|
|
@table_str_right += '<div style="margin-right: 2.125em;"></div>'
|
2019-11-23 08:14:56 +00:00
|
|
|
end
|
2019-11-27 13:24:09 +00:00
|
|
|
if @field_property["is_num"] == 1
|
2019-11-28 14:58:03 +00:00
|
|
|
@table_str_right += '<input class="num_only" id="'+@field_property["variable"]+'" style="float:left;clear:right;" data-range="'+@field_property["range"].to_s+'"></input>'
|
2019-11-27 13:24:09 +00:00
|
|
|
else
|
|
|
|
@table_str_right += '<div id="'+@field_property["variable"]+'" style="float:left;clear:right;">'
|
|
|
|
@field_property["choice_fields"].each do |create_choice|
|
|
|
|
@table_str_right += '<button class="cancer_table_btn btn btn-default btn-sm">'+create_choice+'</button>'
|
|
|
|
@table_str_right += '<input type="hidden" value="0" name="'+create_choice+'"></input>'
|
|
|
|
end
|
2019-11-28 14:58:03 +00:00
|
|
|
@table_str_right += '</div>'
|
2019-11-27 13:24:09 +00:00
|
|
|
end
|
|
|
|
if @field_property["hint"].to_s != ""
|
|
|
|
@table_str_right +='<div style="color: rgb(104, 104, 104);font-size:0.75em;clear:both;">'+@field_property["hint"]+'</div>'
|
|
|
|
end
|
|
|
|
@table_str_right += '</div><div style="clear:both;"></div>'
|
2019-11-23 08:14:56 +00:00
|
|
|
end
|
|
|
|
end
|
2019-11-28 14:58:03 +00:00
|
|
|
@table_str_left += '</div>'
|
|
|
|
@table_str_right += '</div>'
|
|
|
|
@table_str += (@table_str_left+@table_str_right)
|
|
|
|
@table_str +='<div style="clear:both;"></div>'
|
|
|
|
@submit_btn_str='<button id="cancer_table_submit">'+t('cancerpredict.table.Submit').to_s+'</button>'
|
|
|
|
@reset_btn_str='<button id="cancer_table_reset">'+t('cancerpredict.table.Reset').to_s+'</button>'
|
|
|
|
@table_str += (@submit_btn_str+@reset_btn_str+'</div>')
|
2019-11-23 08:14:56 +00:00
|
|
|
{
|
|
|
|
"cancerpredict" => [],
|
|
|
|
"extras"=>{"table"=> @table_str}
|
|
|
|
}
|
2019-11-15 09:02:17 +00:00
|
|
|
end
|
|
|
|
def widget
|
|
|
|
uid = OrbitHelper.params[:uid] rescue ""
|
|
|
|
tags = OrbitHelper.widget_tags
|
|
|
|
categories = OrbitHelper.widget_categories || []
|
|
|
|
locale = OrbitHelper.get_site_locale.to_s
|
|
|
|
end
|
2019-11-23 08:14:56 +00:00
|
|
|
def create_first_field
|
|
|
|
if Cancerpredictfields.where("title"=>(@app_title + "_back")).take_while{true}.count == 0
|
|
|
|
@form_to_show = Cancerpredictfields.new()
|
|
|
|
@form_to_show.title = @app_title +"_back"
|
|
|
|
@form_to_show.save
|
|
|
|
end
|
|
|
|
@form_to_show
|
|
|
|
if Cancerpredictfields.where("title"=>@app_title).take_while{true}.count == 0
|
|
|
|
@form_to_show = Cancerpredictfields.new()
|
|
|
|
@form_to_show.title=@app_title
|
|
|
|
@form_to_show.save
|
|
|
|
@form_to_show = Cancerpredictfields.where("title"=>@app_title).first
|
|
|
|
else
|
|
|
|
@form_to_show = Cancerpredictfields.where("title"=>@app_title).first
|
|
|
|
end
|
2019-11-15 09:02:17 +00:00
|
|
|
end
|
|
|
|
end
|