Skip to content

Commit e9fd394

Browse files
moves create_template method inline, since it's used only once
1 parent 2f44389 commit e9fd394

File tree

1 file changed

+18
-25
lines changed

1 file changed

+18
-25
lines changed

webapp/tabula_web.rb

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -77,30 +77,6 @@ def upload(file)
7777
return [job_batch, file_id]
7878
end
7979

80-
81-
def create_template(template_info)
82-
template_name = template_info["name"] || "Unnamed Template #{Time.now.to_s}"
83-
template_id = Digest::SHA1.hexdigest(Time.now.to_s + template_name) # just SHA1 of time isn't unique with multiple uploads
84-
template_filename = template_id + ".tabula-template.json"
85-
file_path = File.join(TabulaSettings::DOCUMENTS_BASEPATH, "..", "templates")
86-
# write to file
87-
FileUtils.mkdir_p(file_path)
88-
open(File.join(file_path, template_filename), 'w'){|f| f << JSON.dump(template_info["template"])}
89-
page_count = template_info.has_key?("page_count") ? template_info["page_count"] : template_info["template"].map{|f| f["page"]}.uniq.count
90-
selection_count = template_info.has_key?("selection_count") ? template_info["selection_count"] : template_info["template"].count
91-
Tabula::Workspace.instance.add_template({
92-
"id" => template_id,
93-
"name" => template_name,
94-
"page_count" => page_count,
95-
"time" => Time.now.to_i,
96-
"selection_count" => selection_count,
97-
"template" => template_info["template"]
98-
})
99-
return template_id
100-
end
101-
102-
103-
10480
class InvalidTemplateError < StandardError; end
10581
TEMPLATE_REQUIRED_KEYS = ["page", "extraction_method", "x1", "x2", "y1", "y2", "width", "height"]
10682
def upload_template(template_file)
@@ -163,7 +139,24 @@ def upload_template(template_file)
163139

164140
# create a template from the GUI
165141
on post do
166-
template_id = create_template(JSON.parse(req.params["model"]))
142+
template_info = JSON.parse(req.params["model"])
143+
template_name = template_info["name"] || "Unnamed Template #{Time.now.to_s}"
144+
template_id = Digest::SHA1.hexdigest(Time.now.to_s + template_name) # just SHA1 of time isn't unique with multiple uploads
145+
template_filename = template_id + ".tabula-template.json"
146+
file_path = File.join(TabulaSettings::DOCUMENTS_BASEPATH, "..", "templates")
147+
# write to file
148+
FileUtils.mkdir_p(file_path)
149+
open(File.join(file_path, template_filename), 'w'){|f| f << JSON.dump(template_info["template"])}
150+
page_count = template_info.has_key?("page_count") ? template_info["page_count"] : template_info["template"].map{|f| f["page"]}.uniq.count
151+
selection_count = template_info.has_key?("selection_count") ? template_info["selection_count"] : template_info["template"].count
152+
Tabula::Workspace.instance.add_template({
153+
"id" => template_id,
154+
"name" => template_name,
155+
"page_count" => page_count,
156+
"time" => Time.now.to_i,
157+
"selection_count" => selection_count,
158+
"template" => template_info["template"]
159+
})
167160
res.status = 200
168161
res['Content-Type'] = 'application/json'
169162
res.write(JSON.dump({template_id: template_id}))

0 commit comments

Comments
 (0)