diamonds 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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
+