diamonds 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (180) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +36 -0
  3. data/lib/diamonds.rb +74 -0
  4. data/lib/diamonds/Gemfile +28 -0
  5. data/lib/diamonds/README.md +254 -0
  6. data/lib/diamonds/Rakefile +5 -0
  7. data/lib/diamonds/apps/application.rb +15 -0
  8. data/lib/diamonds/apps/library.rb +321 -0
  9. data/lib/diamonds/apps/user_app.rb +5 -0
  10. data/lib/diamonds/config.ru +98 -0
  11. data/lib/diamonds/db/mysiteDB Back.sqlite3 +0 -0
  12. data/lib/diamonds/db/mysiteDB.sqlite3 +0 -0
  13. data/lib/diamonds/gems/auto_launch_browser.rb +22 -0
  14. data/lib/diamonds/gems/io.rb +146 -0
  15. data/lib/diamonds/gems/ruby_to_js.rb +173 -0
  16. data/lib/diamonds/gems/server_utils.rb +96 -0
  17. data/lib/diamonds/lib/opal-browser.rb +1 -0
  18. data/lib/diamonds/lib/opal/browser.rb +4 -0
  19. data/lib/diamonds/opal-browser.gemspec +21 -0
  20. data/lib/diamonds/opal/browser.rb +11 -0
  21. data/lib/diamonds/opal/browser/animation_frame.rb +111 -0
  22. data/lib/diamonds/opal/browser/canvas.rb +321 -0
  23. data/lib/diamonds/opal/browser/canvas/data.rb +63 -0
  24. data/lib/diamonds/opal/browser/canvas/gradient.rb +27 -0
  25. data/lib/diamonds/opal/browser/canvas/style.rb +113 -0
  26. data/lib/diamonds/opal/browser/canvas/text.rb +45 -0
  27. data/lib/diamonds/opal/browser/console.rb +103 -0
  28. data/lib/diamonds/opal/browser/cookies.rb +133 -0
  29. data/lib/diamonds/opal/browser/css.rb +24 -0
  30. data/lib/diamonds/opal/browser/css/declaration.rb +83 -0
  31. data/lib/diamonds/opal/browser/css/rule.rb +48 -0
  32. data/lib/diamonds/opal/browser/css/rule/style.rb +16 -0
  33. data/lib/diamonds/opal/browser/css/style_sheet.rb +83 -0
  34. data/lib/diamonds/opal/browser/css/unit.rb +188 -0
  35. data/lib/diamonds/opal/browser/database/sql.rb +194 -0
  36. data/lib/diamonds/opal/browser/delay.rb +78 -0
  37. data/lib/diamonds/opal/browser/dom.rb +84 -0
  38. data/lib/diamonds/opal/browser/dom/attribute.rb +26 -0
  39. data/lib/diamonds/opal/browser/dom/builder.rb +88 -0
  40. data/lib/diamonds/opal/browser/dom/cdata.rb +9 -0
  41. data/lib/diamonds/opal/browser/dom/character_data.rb +73 -0
  42. data/lib/diamonds/opal/browser/dom/comment.rb +9 -0
  43. data/lib/diamonds/opal/browser/dom/document.rb +149 -0
  44. data/lib/diamonds/opal/browser/dom/document_fragment.rb +7 -0
  45. data/lib/diamonds/opal/browser/dom/element.rb +474 -0
  46. data/lib/diamonds/opal/browser/dom/element/attributes.rb +87 -0
  47. data/lib/diamonds/opal/browser/dom/element/data.rb +67 -0
  48. data/lib/diamonds/opal/browser/dom/element/image.rb +23 -0
  49. data/lib/diamonds/opal/browser/dom/element/input.rb +28 -0
  50. data/lib/diamonds/opal/browser/dom/element/offset.rb +89 -0
  51. data/lib/diamonds/opal/browser/dom/element/position.rb +46 -0
  52. data/lib/diamonds/opal/browser/dom/element/scroll.rb +136 -0
  53. data/lib/diamonds/opal/browser/dom/element/select.rb +36 -0
  54. data/lib/diamonds/opal/browser/dom/element/size.rb +34 -0
  55. data/lib/diamonds/opal/browser/dom/element/template.rb +9 -0
  56. data/lib/diamonds/opal/browser/dom/element/textarea.rb +24 -0
  57. data/lib/diamonds/opal/browser/dom/mutation_observer.rb +178 -0
  58. data/lib/diamonds/opal/browser/dom/node.rb +464 -0
  59. data/lib/diamonds/opal/browser/dom/node_set.rb +110 -0
  60. data/lib/diamonds/opal/browser/dom/text.rb +36 -0
  61. data/lib/diamonds/opal/browser/effects.rb +50 -0
  62. data/lib/diamonds/opal/browser/event.rb +253 -0
  63. data/lib/diamonds/opal/browser/event/animation.rb +38 -0
  64. data/lib/diamonds/opal/browser/event/audio_processing.rb +33 -0
  65. data/lib/diamonds/opal/browser/event/base.rb +430 -0
  66. data/lib/diamonds/opal/browser/event/before_unload.rb +15 -0
  67. data/lib/diamonds/opal/browser/event/clipboard.rb +28 -0
  68. data/lib/diamonds/opal/browser/event/close.rb +47 -0
  69. data/lib/diamonds/opal/browser/event/composition.rb +50 -0
  70. data/lib/diamonds/opal/browser/event/custom.rb +65 -0
  71. data/lib/diamonds/opal/browser/event/device_light.rb +23 -0
  72. data/lib/diamonds/opal/browser/event/device_motion.rb +51 -0
  73. data/lib/diamonds/opal/browser/event/device_orientation.rb +48 -0
  74. data/lib/diamonds/opal/browser/event/device_proximity.rb +33 -0
  75. data/lib/diamonds/opal/browser/event/drag.rb +119 -0
  76. data/lib/diamonds/opal/browser/event/focus.rb +39 -0
  77. data/lib/diamonds/opal/browser/event/gamepad.rb +60 -0
  78. data/lib/diamonds/opal/browser/event/hash_change.rb +28 -0
  79. data/lib/diamonds/opal/browser/event/keyboard.rb +115 -0
  80. data/lib/diamonds/opal/browser/event/message.rb +70 -0
  81. data/lib/diamonds/opal/browser/event/mouse.rb +254 -0
  82. data/lib/diamonds/opal/browser/event/page_transition.rb +23 -0
  83. data/lib/diamonds/opal/browser/event/pop_state.rb +33 -0
  84. data/lib/diamonds/opal/browser/event/progress.rb +43 -0
  85. data/lib/diamonds/opal/browser/event/sensor.rb +15 -0
  86. data/lib/diamonds/opal/browser/event/storage.rb +43 -0
  87. data/lib/diamonds/opal/browser/event/touch.rb +60 -0
  88. data/lib/diamonds/opal/browser/event/ui.rb +38 -0
  89. data/lib/diamonds/opal/browser/event/wheel.rb +49 -0
  90. data/lib/diamonds/opal/browser/event_source.rb +70 -0
  91. data/lib/diamonds/opal/browser/history.rb +90 -0
  92. data/lib/diamonds/opal/browser/http.rb +169 -0
  93. data/lib/diamonds/opal/browser/http/binary.rb +58 -0
  94. data/lib/diamonds/opal/browser/http/headers.rb +109 -0
  95. data/lib/diamonds/opal/browser/http/request.rb +344 -0
  96. data/lib/diamonds/opal/browser/http/response.rb +115 -0
  97. data/lib/diamonds/opal/browser/immediate.rb +163 -0
  98. data/lib/diamonds/opal/browser/interval.rb +111 -0
  99. data/lib/diamonds/opal/browser/location.rb +87 -0
  100. data/lib/diamonds/opal/browser/navigator.rb +173 -0
  101. data/lib/diamonds/opal/browser/screen.rb +66 -0
  102. data/lib/diamonds/opal/browser/socket.rb +123 -0
  103. data/lib/diamonds/opal/browser/storage.rb +252 -0
  104. data/lib/diamonds/opal/browser/support.rb +287 -0
  105. data/lib/diamonds/opal/browser/utils.rb +74 -0
  106. data/lib/diamonds/opal/browser/version.rb +3 -0
  107. data/lib/diamonds/opal/browser/window.rb +120 -0
  108. data/lib/diamonds/opal/browser/window/scroll.rb +59 -0
  109. data/lib/diamonds/opal/browser/window/size.rb +59 -0
  110. data/lib/diamonds/opal/browser/window/view.rb +36 -0
  111. data/lib/diamonds/opal/opal-browser.rb +1 -0
  112. data/lib/diamonds/public/__OPAL_SOURCE_MAPS__/application.map +0 -0
  113. data/lib/diamonds/public/javascripts/font-awesome/HELP-US-OUT.txt +7 -0
  114. data/lib/diamonds/public/javascripts/font-awesome/css/font-awesome.css +2026 -0
  115. data/lib/diamonds/public/javascripts/font-awesome/css/font-awesome.min.css +1 -0
  116. data/lib/diamonds/public/javascripts/font-awesome/fonts/FontAwesome.otf +0 -0
  117. data/lib/diamonds/public/javascripts/font-awesome/fonts/fontawesome-webfont.eot +0 -0
  118. data/lib/diamonds/public/javascripts/font-awesome/fonts/fontawesome-webfont.svg +640 -0
  119. data/lib/diamonds/public/javascripts/font-awesome/fonts/fontawesome-webfont.ttf +0 -0
  120. data/lib/diamonds/public/javascripts/font-awesome/fonts/fontawesome-webfont.woff +0 -0
  121. data/lib/diamonds/public/javascripts/font-awesome/fonts/fontawesome-webfont.woff2 +0 -0
  122. data/lib/diamonds/public/javascripts/font-awesome/less/animated.less +34 -0
  123. data/lib/diamonds/public/javascripts/font-awesome/less/bordered-pulled.less +25 -0
  124. data/lib/diamonds/public/javascripts/font-awesome/less/core.less +12 -0
  125. data/lib/diamonds/public/javascripts/font-awesome/less/fixed-width.less +6 -0
  126. data/lib/diamonds/public/javascripts/font-awesome/less/font-awesome.less +17 -0
  127. data/lib/diamonds/public/javascripts/font-awesome/less/icons.less +677 -0
  128. data/lib/diamonds/public/javascripts/font-awesome/less/larger.less +13 -0
  129. data/lib/diamonds/public/javascripts/font-awesome/less/list.less +19 -0
  130. data/lib/diamonds/public/javascripts/font-awesome/less/mixins.less +26 -0
  131. data/lib/diamonds/public/javascripts/font-awesome/less/path.less +15 -0
  132. data/lib/diamonds/public/javascripts/font-awesome/less/rotated-flipped.less +20 -0
  133. data/lib/diamonds/public/javascripts/font-awesome/less/stacked.less +20 -0
  134. data/lib/diamonds/public/javascripts/font-awesome/less/variables.less +688 -0
  135. data/lib/diamonds/public/javascripts/font-awesome/scss/_animated.scss +34 -0
  136. data/lib/diamonds/public/javascripts/font-awesome/scss/_bordered-pulled.scss +25 -0
  137. data/lib/diamonds/public/javascripts/font-awesome/scss/_core.scss +12 -0
  138. data/lib/diamonds/public/javascripts/font-awesome/scss/_fixed-width.scss +6 -0
  139. data/lib/diamonds/public/javascripts/font-awesome/scss/_icons.scss +677 -0
  140. data/lib/diamonds/public/javascripts/font-awesome/scss/_larger.scss +13 -0
  141. data/lib/diamonds/public/javascripts/font-awesome/scss/_list.scss +19 -0
  142. data/lib/diamonds/public/javascripts/font-awesome/scss/_mixins.scss +26 -0
  143. data/lib/diamonds/public/javascripts/font-awesome/scss/_path.scss +15 -0
  144. data/lib/diamonds/public/javascripts/font-awesome/scss/_rotated-flipped.scss +20 -0
  145. data/lib/diamonds/public/javascripts/font-awesome/scss/_stacked.scss +20 -0
  146. data/lib/diamonds/public/javascripts/font-awesome/scss/_variables.scss +688 -0
  147. data/lib/diamonds/public/javascripts/font-awesome/scss/font-awesome.scss +17 -0
  148. data/lib/diamonds/public/javascripts/jquery-2.1.4.min.js +4 -0
  149. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  150. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  151. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-bg_flat_10_000000_40x100.png +0 -0
  152. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  153. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  154. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  155. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  156. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  157. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  158. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-icons_222222_256x240.png +0 -0
  159. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-icons_228ef1_256x240.png +0 -0
  160. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-icons_ef8c08_256x240.png +0 -0
  161. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-icons_ffd27a_256x240.png +0 -0
  162. data/lib/diamonds/public/javascripts/jquery-ui/images/ui-icons_ffffff_256x240.png +0 -0
  163. data/lib/diamonds/public/javascripts/jquery-ui/jquery-ui.min.css +7 -0
  164. data/lib/diamonds/public/javascripts/jquery-ui/jquery-ui.min.js +13 -0
  165. data/lib/diamonds/public/javascripts/jquery-ui/jquery-ui.structure.min.css +5 -0
  166. data/lib/diamonds/public/javascripts/jquery-ui/jquery-ui.theme.min.css +5 -0
  167. data/lib/diamonds/public/javascripts/jquery.js +4 -0
  168. data/lib/diamonds/public/javascripts/jquery.ui.touch-punch.min.js +11 -0
  169. data/lib/diamonds/public/javascripts/ne pas utiliser version en retard jeezs_editor.js b/data/lib/diamonds/public/javascripts/ne pas utiliser version en retard → jeezs_editor.js +0 -0
  170. data/lib/diamonds/public/javascripts/standalone.js +2316 -0
  171. data/lib/diamonds/public/javascripts/standalone.min.js +1 -0
  172. data/lib/diamonds/public/javascripts/wysiwyg-editor.min.css +1 -0
  173. data/lib/diamonds/public/javascripts/wysiwyg-editor.min.js +1 -0
  174. data/lib/diamonds/public/javascripts/wysiwyg.min.js +1 -0
  175. data/lib/diamonds/user_app/main.rb +45 -0
  176. data/lib/diamonds/version.rb +3 -0
  177. data/lib/diamonds/views/index.erb +35 -0
  178. data/lib/diamonds/views/javascripts/jeezs_editor.js.erb +365 -0
  179. data/lib/diamonds/views/stylesheets/main.css.erb +244 -0
  180. metadata +490 -0
@@ -0,0 +1,5 @@
1
+ # ########## Test ##############
2
+ Timeout.new 2500 do
3
+ montest
4
+
5
+ end
@@ -0,0 +1,98 @@
1
+ # info ici: http://stackoverflow.com/questions/17386011/send-messages-on-different-channels-using-sinatra-websocket
2
+ # et ici : https://github.com/rack/rack/blob/master/lib/rack/request.rb
3
+ # et la : https://github.com/simulacre/sinatra-websocket/issues/4
4
+
5
+
6
+ #**********# require gems here #**********#
7
+ Bundler.require
8
+ require "open-uri"
9
+ require "find"
10
+ require "./gems/server_utils"
11
+ require "./gems/ruby_to_js"
12
+ require "./gems/io"
13
+ require "./gems/auto_launch_browser"
14
+ require "./user_app/main"
15
+
16
+
17
+ helpers do
18
+ def protected!
19
+ return if authorized?
20
+ headers['WWW-Authenticate'] = 'Basic realm="Restricted Area"'
21
+ halt 401, "Not authorized\n"
22
+ end
23
+
24
+ def authorized?
25
+ @auth ||= Rack::Auth::Basic::Request.new(request.env)
26
+ @auth.provided? and @auth.basic? and @auth.credentials and @auth.credentials == ['admin', 'admin']
27
+ end
28
+ end
29
+
30
+ #**********# config, settings and helpers here #**********#
31
+
32
+ Opal::Processor.source_map_enabled = true # default
33
+ opal = Opal::Server.new { |s|
34
+ s.append_path 'apps'
35
+ s.main = 'application'
36
+ }
37
+
38
+ sprockets = opal.sprockets
39
+
40
+
41
+ map '/assets' do
42
+ run sprockets
43
+ end
44
+ set :sockets, []
45
+ enable :sessions
46
+ set :session_secret, '*&(^B234'
47
+
48
+
49
+ #**********# Dynamic library here related to index.erb#**********#
50
+ #**********# css #**********#
51
+ get "/stylesheets/main.css" do
52
+ erb :"/stylesheets/main.css"
53
+ end
54
+ #**********# js here #**********#
55
+
56
+ get "/javascripts/jeezs_editor.js" do
57
+ erb :"/javascripts/jeezs_editor.js"
58
+ end
59
+
60
+
61
+ #**********# main page here #**********#
62
+ get '*' do
63
+ #**********# we get current page infos #**********#
64
+ current_page = request.fullpath
65
+ current_page=current_page.gsub("/", "")
66
+ currenturl = request.url
67
+ baseurl = request.base_url
68
+ # request.host_with_port
69
+ #**********# mainpage here #**********#
70
+ if !request.websocket?
71
+ @opal_boot_code = Opal::Processor.load_asset_code(sprockets, 'application')
72
+ erb :index
73
+ else
74
+ #**********# startup websocket #**********#
75
+ request.websocket do |fluxToSend|
76
+ fluxToSend.onopen do
77
+ read_ppage(fluxToSend, current_page)
78
+ end
79
+ fluxToSend.onmessage do |msg|
80
+ msg=JSON.parse(msg, {:symbolize_names => true})
81
+ machinize(fluxToSend, current_page, msg)
82
+ end
83
+ fluxToSend.onclose do
84
+ settings.sockets.delete(fluxToSend)
85
+ end
86
+ end
87
+
88
+ end
89
+
90
+ end
91
+
92
+ run Sinatra::Application
93
+
94
+ #todo: create list of available module in tools menu
95
+ #todo: create list of available pages in module tool drawer
96
+ #todo: add id, class and edition in modules drawer
97
+ #todo: finished authentification and log pass
98
+
@@ -0,0 +1,22 @@
1
+ require 'net/http'
2
+ def browse
3
+ Thread.new {
4
+ begin
5
+ def up?(site)
6
+
7
+ uri = URI(site)
8
+ Net::HTTP.get(uri)
9
+ end
10
+
11
+ up? 'http://localhost:9292' #=> true
12
+
13
+ rescue
14
+ # -
15
+ retry
16
+ ensure
17
+ `open http://localhost:9292`
18
+ # Always will be executed
19
+ end
20
+ }
21
+
22
+ end
@@ -0,0 +1,146 @@
1
+ def file_read file
2
+ filetoget=file.to_s
3
+ if File.exist?(filetoget)
4
+ filetosend= File.read(filetoget)
5
+ else
6
+ filetosend= File.read("./userpages/utilpages/pagenotfound")
7
+ end
8
+ return filetosend
9
+
10
+ end
11
+
12
+ def file_write file
13
+
14
+ end
15
+
16
+
17
+ site_DB = Sequel.connect("sqlite://db/mysiteDB.sqlite3")
18
+
19
+
20
+ # create an items table
21
+
22
+ if !site_DB.table_exists? :pages
23
+ site_DB.create_table :pages do
24
+ primary_key :id
25
+ String :title
26
+ String :content
27
+ string :modules_on_page
28
+ string :menus_on_page
29
+ end
30
+
31
+ site_DB.create_table :images do
32
+ primary_key :id
33
+ String :title
34
+ String :content
35
+ end
36
+
37
+ site_DB.create_table :modules do
38
+ primary_key :id
39
+ String :title
40
+ String :content
41
+ String :tagcontent
42
+ end
43
+
44
+ site_DB.create_table :menu do
45
+ primary_key :id
46
+ String :title
47
+ String :content
48
+ end
49
+
50
+
51
+ site_DB.create_table :maintable do
52
+ primary_key :id
53
+ String :title
54
+ String :content
55
+ end
56
+
57
+ end
58
+
59
+
60
+ def quick_save(datas)
61
+ key, value = datas.first
62
+ title=key
63
+ content= value
64
+ save(:maintable, :title => title, :content => content)
65
+ end
66
+
67
+ def quick_read (datas)
68
+ datas={:title => datas}
69
+ read(:maintable, datas)
70
+ end
71
+
72
+ def read_page(tablename, datas)
73
+ key, value = datas.first
74
+ site_DB = Sequel.connect("sqlite://db/mysiteDB.sqlite3")
75
+ return current_item = site_DB[tablename][datas]
76
+ end
77
+
78
+
79
+ def save(tablename, datas)
80
+ site_DB = Sequel.connect("sqlite://db/mysiteDB.sqlite3")
81
+ key, value = datas.first
82
+ if site_DB[tablename][key => value].nil?
83
+ site_DB[tablename].insert(datas)
84
+ else
85
+ current_item = site_DB[tablename].where(key => value)
86
+ current_item.update(datas)
87
+ end
88
+ end
89
+
90
+
91
+ def read_modules_list
92
+ site_DB = Sequel.connect("sqlite://db/mysiteDB.sqlite3")
93
+ modules_list=[]
94
+ site_DB.fetch "SELECT * from modules" do |data|
95
+ modules_list<< data[:title]
96
+ end
97
+ return modules_list
98
+
99
+ end
100
+
101
+
102
+ def read_modules_on_page (tablename, column=:title)
103
+ site_DB = Sequel.connect("sqlite://db/mysiteDB.sqlite3")
104
+ begin
105
+ module_found= site_DB[tablename][column][:modules_on_page]
106
+ rescue
107
+ module_found=""
108
+ end
109
+ return module_found
110
+
111
+ end
112
+
113
+ def get_modules_content (tablename, column=:title)
114
+ site_DB = Sequel.connect("sqlite://db/mysiteDB.sqlite3")
115
+
116
+ begin
117
+ content_found= site_DB[tablename][column][:content]
118
+ rescue
119
+ content_found=""
120
+ end
121
+
122
+ return content_found
123
+
124
+ end
125
+
126
+
127
+ # les tests
128
+
129
+ # def dbtest
130
+ # datatitle="myfile"
131
+ # quick_save({datatitle => "my saved content"})
132
+ # currentpage= quick_read (datatitle)
133
+ #
134
+ # puts "************"
135
+ # puts currentpage
136
+ # puts "************"
137
+ # puts currentpage[:content]
138
+ #
139
+ # save(:pages, :title => "filetofound", :content => "pagecontent", :modules_on_page => "module_on_page", :menus_on_page => "menus_on_page")
140
+ # save(:modules, :title => "module_on_page", :content => "pagecontent")
141
+ # puts "##############"
142
+ # puts read(:pages, :title => "filetofound")
143
+ # puts "##############"
144
+ # puts "ok, test ended"
145
+ #
146
+ # end
@@ -0,0 +1,173 @@
1
+ # def append_to target, content
2
+ # @fluxToSend.send "$('#{target}').appendTo('#{content}');"
3
+ # end
4
+ #
5
+ # def append target, content, id=time, css_class="standard_object"
6
+ # content="<div id=\\'#{id}\\' class=\\'#{css_class}\\'>#{content}</div>"
7
+ # @fluxToSend.send "$('#{target}').append('#{content}');"
8
+ # end
9
+ #
10
+ # def prepend_to target, content
11
+ # @fluxToSend.send "$('#{target}').prependTo('#{content}');"
12
+ # end
13
+ #
14
+ # def prepend target, content
15
+ # @fluxToSend.send "$('#{target}').prepend('#{content}');"
16
+ # end
17
+ #
18
+ # def set_time_out time, fct_content
19
+ # @fluxToSend.send "setTimeout(function(){#{fct_content}}, #{time})"
20
+ # end
21
+ #
22
+ # def every time, fct_name, fct_content
23
+ # @fluxToSend.send "var #{fct_name}=setInterval(function(){#{fct_content}},#{time})"
24
+ # end
25
+ #
26
+ # def kill_every fct_name
27
+ # @fluxToSend.send "clearInterval(#{fct_name});"
28
+ # end
29
+ #
30
+ # def ready datas
31
+ # @fluxToSend.send = "$(document).ready(function(){#{datas}}"
32
+ # end
33
+ #
34
+ # def alert message
35
+ # @fluxToSend.send "alert('#{message}')"
36
+ #
37
+ # end
38
+ #
39
+ # def send_alert message
40
+ # return "alert('#{message}')"
41
+ # end
42
+ #
43
+ # def click target, action
44
+ # @fluxToSend.send "$('#{target}').click(function(){#{action}});"
45
+ # end
46
+ #
47
+ # def native flow_to_send
48
+ # @fluxToSend.send flow_to_send
49
+ # end
50
+ #
51
+ # def this
52
+ # "this"
53
+ # end
54
+ #
55
+ # def html object, content
56
+ # if object=='this'
57
+ # "$(#{object}).html('#{content}')"
58
+ # else
59
+ # "$('#{object}').html('#{content}')"
60
+ # end
61
+ # end
62
+ #
63
+ # def text object, content
64
+ # if object=='this'
65
+ # "$(#{object}).text('#{content}')"
66
+ # else
67
+ # "$('#{object}').text('#{content}')"
68
+ # end
69
+ # end
70
+ #
71
+ # def each selection, action
72
+ # @fluxToSend.send "$('#{selection}').each(function(index){#{action}});"
73
+ # end
74
+
75
+
76
+ def last_ID_created
77
+ last_ID_saved= File.read("../diamonds/user_app/ID_Repository.txt")
78
+ last_ID_saved=last_ID_saved.to_i+1
79
+ File.write("../diamonds/user_app/ID_Repository.txt", last_ID_saved)
80
+ return "source_obj_#{last_ID_saved}"
81
+ end
82
+ def teleport_to_client_view message
83
+ # file=File.read("./apps/user_app.rb")
84
+ # puts file
85
+ open("./apps/user_app.rb", 'a') { |f|
86
+
87
+
88
+ f.puts message
89
+ }
90
+
91
+ end
92
+
93
+
94
+
95
+
96
+ def alert message
97
+ message=message.gsub("'","\"")
98
+
99
+ teleport_to_client_view "alert '" +message+"'"
100
+ end
101
+
102
+
103
+
104
+
105
+ def timeout params
106
+ fct=params[:function]
107
+ time=params[:delay]
108
+
109
+
110
+ send_this = <<HEREDOC
111
+ Timeout.new #{time} do
112
+
113
+ #{fct}
114
+ #montest
115
+
116
+ end
117
+ HEREDOC
118
+ teleport_to_client_view send_this
119
+
120
+ end
121
+
122
+ def ellipse params
123
+
124
+
125
+
126
+ type= params[:type]||'div'
127
+ objclass= params[:objclass]||'objclass'
128
+ id= params[:id]||last_ID_created
129
+ target= params[:target]||'#master_items'
130
+ position= params[:position]||'absolute'
131
+ width= params[:width]||'100px'
132
+ height= params[:height]||'100px'
133
+ top= params[:top]||'70px'
134
+ left= params[:left]||'70px'
135
+ background_color= params[:background_color]||'red'
136
+ color= params[:color]||'white'
137
+ style= params[:style]||''
138
+ text= params[:text]||'ok'
139
+ z_index=params[z_index]||'0'
140
+
141
+ border_style= params[:border_style]||'none'
142
+ border_width= params[:border_width]||'0px'
143
+ border_color= params[:border_color]||'transparent'
144
+ border_radius= params[:border_radius]||'0px'
145
+
146
+
147
+
148
+
149
+
150
+
151
+ send_this = <<HEREDOC
152
+ Element.find("#{target}").append("<style>.#{id}{position:#{position} ;z-index:#{z_index};width:#{width}; height:#{height};top:#{left};left:#{left};background-color:#{background_color};color:#{color};border-style:#{border_style};border-width:#{border_width};border-color:#{border_color};border-radius: #{border_radius};#{style};}</style>")
153
+ Element.find("#{target}").append("<#{type} id='#{id}' class='system_object #{objclass} #{id}'>#{text}</#{type}>")
154
+
155
+ HEREDOC
156
+ # alert "l'ID est : #{id} trouvé : #{last_ID_created}"
157
+
158
+
159
+ teleport_to_client_view send_this
160
+ end
161
+
162
+
163
+
164
+ def the_big_verif
165
+ puts "ok ok\n"*99
166
+ end
167
+
168
+
169
+
170
+
171
+
172
+
173
+