-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.rb
81 lines (68 loc) · 1.37 KB
/
main.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
require 'sinatra'
require 'json'
data = ""
DataBase = "./DB/Sleds.json"
File.open(path=DataBase, mode="r") do |file|
file.each do |text|
data += text
end
end
sleds_data = JSON.parse data
def save data
File.open(path=DataBase, mode="w") do |file|
file.write JSON.generate data
end
end
set :port => 80
get "/js" do
file_name = params[:q]
send_file "./Web/js/#{file_name}.js"
end
get "/css" do
file_name = params[:q]
send_file "./Web/css/#{file_name}.css"
end
get "/" do
puts "Access index"
send_file "./Web/index.html"
end
post "/api/create-Sled" do
Sled_name = params[:name]
sleds = sleds_data.keys
if sleds.include? Sled_name
return "False"
end
sleds_data[Sled_name] = {
"comments" => []
}
save sleds_data
sleds = sleds_data.keys
puts sleds
end
get "/api/sleds" do
JSON.generate sleds_data.keys
end
post "/api/get_comments" do
Sled_name = params[:name]
puts "Sled: #{Sled_name}"
sleds = sleds_data.keys
unless sleds.include? Sled_name
return "False"
end
comments = sleds_data[Sled_name]["comments"]
comments.to_s
end
post "/api/send_comments" do
Sled_name = params[:name]
Comment = params[:value]
sleds = sleds_data.keys
unless sleds.include? Sled_name
return "False"
end
sleds_data[Sled_name]["comments"] << Comment
save sleds_data
"True"
end
get "/Sleds" do
send_file "./Web/Sleds.html"
end