wakame-vdc-webui 10.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (281) hide show
  1. data/INSTALL.txt +21 -0
  2. data/LICENSE +202 -0
  3. data/NOTICE +1 -0
  4. data/README +256 -0
  5. data/Rakefile +42 -0
  6. data/app/controllers/accounts_controller.rb +15 -0
  7. data/app/controllers/application_controller.rb +5 -0
  8. data/app/controllers/dialog_controller.rb +80 -0
  9. data/app/controllers/home_controller.rb +5 -0
  10. data/app/controllers/host_pools_controller.rb +26 -0
  11. data/app/controllers/images_controller.rb +28 -0
  12. data/app/controllers/information_controller.rb +10 -0
  13. data/app/controllers/instances_controller.rb +59 -0
  14. data/app/controllers/keypairs_controller.rb +64 -0
  15. data/app/controllers/security_groups_controller.rb +59 -0
  16. data/app/controllers/sessions_controller.rb +25 -0
  17. data/app/controllers/snapshots_controller.rb +48 -0
  18. data/app/controllers/storage_pools_controller.rb +27 -0
  19. data/app/controllers/users_controller.rb +3 -0
  20. data/app/controllers/volumes_controller.rb +86 -0
  21. data/app/helpers/accounts_helper.rb +2 -0
  22. data/app/helpers/application_helper.rb +23 -0
  23. data/app/helpers/dialog_helper.rb +2 -0
  24. data/app/helpers/home_helper.rb +2 -0
  25. data/app/helpers/host_pools_helper.rb +2 -0
  26. data/app/helpers/images_helper.rb +2 -0
  27. data/app/helpers/information_helper.rb +2 -0
  28. data/app/helpers/instances_helper.rb +2 -0
  29. data/app/helpers/keypairs_helper.rb +2 -0
  30. data/app/helpers/security_groups_helper.rb +2 -0
  31. data/app/helpers/sessions_helper.rb +2 -0
  32. data/app/helpers/snapshots_helper.rb +2 -0
  33. data/app/helpers/storage_pools_helper.rb +2 -0
  34. data/app/helpers/users_helper.rb +2 -0
  35. data/app/helpers/volumes_helper.rb +2 -0
  36. data/app/models/account.rb +104 -0
  37. data/app/models/authz.rb +102 -0
  38. data/app/models/base_new.rb +311 -0
  39. data/app/models/dcmgr_resource/account.rb +5 -0
  40. data/app/models/dcmgr_resource/base.rb +51 -0
  41. data/app/models/dcmgr_resource/host_pool.rb +11 -0
  42. data/app/models/dcmgr_resource/image.rb +11 -0
  43. data/app/models/dcmgr_resource/instance.rb +37 -0
  44. data/app/models/dcmgr_resource/mock.rb +15 -0
  45. data/app/models/dcmgr_resource/netfilter_group.rb +29 -0
  46. data/app/models/dcmgr_resource/ssh_key_pair.rb +25 -0
  47. data/app/models/dcmgr_resource/storage_pool.rb +11 -0
  48. data/app/models/dcmgr_resource/volume.rb +48 -0
  49. data/app/models/dcmgr_resource/volume_snapshot.rb +35 -0
  50. data/app/models/information.rb +9 -0
  51. data/app/models/schema.rb +51 -0
  52. data/app/models/tag.rb +121 -0
  53. data/app/models/tag_mapping.rb +25 -0
  54. data/app/models/user.rb +46 -0
  55. data/app/views/accounts/index.html.erb +68 -0
  56. data/app/views/dialog/attach_volume.html.erb +13 -0
  57. data/app/views/dialog/create_and_edit_security_group.html.erb +32 -0
  58. data/app/views/dialog/create_snapshot.html.erb +7 -0
  59. data/app/views/dialog/create_ssh_keypair.html.erb +15 -0
  60. data/app/views/dialog/create_volume.html.erb +18 -0
  61. data/app/views/dialog/create_volume_from_snapshot.html.erb +7 -0
  62. data/app/views/dialog/delete_security_group.html.erb +4 -0
  63. data/app/views/dialog/delete_snapshot.html.erb +7 -0
  64. data/app/views/dialog/delete_ssh_keypair.html.erb +4 -0
  65. data/app/views/dialog/delete_volume.html.erb +7 -0
  66. data/app/views/dialog/detach_volume.html.erb +7 -0
  67. data/app/views/dialog/launch_instance.html.erb +70 -0
  68. data/app/views/dialog/reboot_instances.html.erb +7 -0
  69. data/app/views/dialog/start_instances.html.erb +8 -0
  70. data/app/views/dialog/stop_instances.html.erb +7 -0
  71. data/app/views/dialog/terminate_instances.html.erb +7 -0
  72. data/app/views/home/index.html.erb +55 -0
  73. data/app/views/host_pools/index.html.erb +103 -0
  74. data/app/views/images/index.html.erb +126 -0
  75. data/app/views/information/index.html.erb +25 -0
  76. data/app/views/instances/index.html.erb +134 -0
  77. data/app/views/keypairs/index.html.erb +104 -0
  78. data/app/views/layouts/_footer.html.erb +4 -0
  79. data/app/views/layouts/_header.html.erb +14 -0
  80. data/app/views/layouts/_informationarea.html.erb +18 -0
  81. data/app/views/layouts/_login_header.erb +4 -0
  82. data/app/views/layouts/_service_health.erb +27 -0
  83. data/app/views/layouts/_sidemenu.html.erb +58 -0
  84. data/app/views/layouts/application.html.erb +34 -0
  85. data/app/views/layouts/login.html.erb +25 -0
  86. data/app/views/security_groups/index.html.erb +114 -0
  87. data/app/views/sessions/new.html.erb +27 -0
  88. data/app/views/snapshots/index.html.erb +110 -0
  89. data/app/views/storage_pools/index.html.erb +98 -0
  90. data/app/views/volumes/index.html.erb +117 -0
  91. data/config.ru +4 -0
  92. data/config/application.rb +48 -0
  93. data/config/boot.rb +13 -0
  94. data/config/database.yml +20 -0
  95. data/config/environment.rb +5 -0
  96. data/config/environments/development.rb +28 -0
  97. data/config/environments/production.rb +49 -0
  98. data/config/environments/test.rb +35 -0
  99. data/config/initializers/backtrace_silencers.rb +7 -0
  100. data/config/initializers/dcmgr_gui.rb +14 -0
  101. data/config/initializers/inflections.rb +10 -0
  102. data/config/initializers/mime_types.rb +5 -0
  103. data/config/initializers/secret_token.rb +7 -0
  104. data/config/initializers/session_store.rb +8 -0
  105. data/config/locales/en.yml +5 -0
  106. data/config/routes.rb +109 -0
  107. data/db/seeds.rb +7 -0
  108. data/extras/authentication.rb +94 -0
  109. data/extras/util.rb +5 -0
  110. data/lib/tasks/dcmgr_gui.rake +51 -0
  111. data/public/404.html +26 -0
  112. data/public/422.html +26 -0
  113. data/public/500.html +26 -0
  114. data/public/favicon.ico +0 -0
  115. data/public/images/app_active.gif +0 -0
  116. data/public/images/app_passive.gif +0 -0
  117. data/public/images/body_bg.gif +0 -0
  118. data/public/images/btn_change.gif +0 -0
  119. data/public/images/btn_create_security_group.gif +0 -0
  120. data/public/images/btn_create_snapshot.gif +0 -0
  121. data/public/images/btn_create_volume.gif +0 -0
  122. data/public/images/btn_createkey.gif +0 -0
  123. data/public/images/btn_de_register.gif +0 -0
  124. data/public/images/btn_delete_security_group.gif +0 -0
  125. data/public/images/btn_delete_snapshot.gif +0 -0
  126. data/public/images/btn_delete_volume.gif +0 -0
  127. data/public/images/btn_deletekey.gif +0 -0
  128. data/public/images/btn_healthdetail.gif +0 -0
  129. data/public/images/btn_hide.gif +0 -0
  130. data/public/images/btn_launch.gif +0 -0
  131. data/public/images/btn_next.gif +0 -0
  132. data/public/images/btn_prev.gif +0 -0
  133. data/public/images/btn_refresh.gif +0 -0
  134. data/public/images/btn_register_new_ami.gif +0 -0
  135. data/public/images/btn_savechange.gif +0 -0
  136. data/public/images/btn_show.gif +0 -0
  137. data/public/images/btn_show_accesskey.png +0 -0
  138. data/public/images/bup_btn_healthdetail.gif +0 -0
  139. data/public/images/bup_btn_refresh.gif +0 -0
  140. data/public/images/clear.gif +0 -0
  141. data/public/images/content_bg.png +0 -0
  142. data/public/images/content_foot_bg.gif +0 -0
  143. data/public/images/content_head_bg.gif +0 -0
  144. data/public/images/footer_bg.gif +0 -0
  145. data/public/images/head_gradation_bg.gif +0 -0
  146. data/public/images/header_logo.gif +0 -0
  147. data/public/images/icon_blockstore.gif +0 -0
  148. data/public/images/icon_caution.gif +0 -0
  149. data/public/images/icon_health.gif +0 -0
  150. data/public/images/icon_images.gif +0 -0
  151. data/public/images/icon_information.gif +0 -0
  152. data/public/images/icon_instances.gif +0 -0
  153. data/public/images/icon_resource.gif +0 -0
  154. data/public/images/icon_resource01.gif +0 -0
  155. data/public/images/icon_resource02.gif +0 -0
  156. data/public/images/icon_resource03.gif +0 -0
  157. data/public/images/icon_resource04.gif +0 -0
  158. data/public/images/icon_rss.gif +0 -0
  159. data/public/images/icon_security.gif +0 -0
  160. data/public/images/icon_service.gif +0 -0
  161. data/public/images/icon_service_stat.gif +0 -0
  162. data/public/images/icon_stop.gif +0 -0
  163. data/public/images/icon_summary.gif +0 -0
  164. data/public/images/icon_ttl_accskey.gif +0 -0
  165. data/public/images/icon_ttl_detail.gif +0 -0
  166. data/public/images/icon_ttl_instance.gif +0 -0
  167. data/public/images/icon_ttl_personal_inf.gif +0 -0
  168. data/public/images/infra_active.gif +0 -0
  169. data/public/images/infra_passive.gif +0 -0
  170. data/public/images/lastelement_bg.gif +0 -0
  171. data/public/images/lastelement_bg.png +0 -0
  172. data/public/images/listicon_useast.gif +0 -0
  173. data/public/images/loader_ball.gif +0 -0
  174. data/public/images/loader_boxes.gif +0 -0
  175. data/public/images/loading.gif +0 -0
  176. data/public/images/mainarea_bottom_bg.gif +0 -0
  177. data/public/images/mainarea_content_bg.gif +0 -0
  178. data/public/images/mainarea_h3_bg.gif +0 -0
  179. data/public/images/mainarea_wide_bottom_bg.gif +0 -0
  180. data/public/images/mainarea_wide_content_bg.gif +0 -0
  181. data/public/images/mainarea_wide_h3_bg.gif +0 -0
  182. data/public/images/menu_list_header.gif +0 -0
  183. data/public/images/menu_list_header_current.gif +0 -0
  184. data/public/images/plat_active.gif +0 -0
  185. data/public/images/plat_passive.gif +0 -0
  186. data/public/images/regionselect_bg.gif +0 -0
  187. data/public/images/select_bg_126.gif +0 -0
  188. data/public/images/select_bg_139.gif +0 -0
  189. data/public/images/sidemenu_bg.gif +0 -0
  190. data/public/images/sidemenu_bottom.gif +0 -0
  191. data/public/images/sidemenu_top.gif +0 -0
  192. data/public/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  193. data/public/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  194. data/public/images/ui-bg_flat_10_000000_40x100.png +0 -0
  195. data/public/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  196. data/public/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  197. data/public/images/ui-bg_glass_55_fcf0ba_1x400.png +0 -0
  198. data/public/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  199. data/public/images/ui-bg_gloss-wave_100_ece8da_500x100.png +0 -0
  200. data/public/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  201. data/public/images/ui-bg_highlight-hard_100_f5f3e5_1x100.png +0 -0
  202. data/public/images/ui-bg_highlight-hard_100_fafaf4_1x100.png +0 -0
  203. data/public/images/ui-bg_highlight-hard_15_459e00_1x100.png +0 -0
  204. data/public/images/ui-bg_highlight-hard_95_cccccc_1x100.png +0 -0
  205. data/public/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  206. data/public/images/ui-bg_highlight-soft_25_67b021_1x100.png +0 -0
  207. data/public/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  208. data/public/images/ui-bg_highlight-soft_95_ffedad_1x100.png +0 -0
  209. data/public/images/ui-bg_inset-soft_15_2b2922_1x100.png +0 -0
  210. data/public/images/ui-icons_222222_256x240.png +0 -0
  211. data/public/images/ui-icons_228ef1_256x240.png +0 -0
  212. data/public/images/ui-icons_808080_256x240.png +0 -0
  213. data/public/images/ui-icons_847e71_256x240.png +0 -0
  214. data/public/images/ui-icons_8dc262_256x240.png +0 -0
  215. data/public/images/ui-icons_cd0a0a_256x240.png +0 -0
  216. data/public/images/ui-icons_eeeeee_256x240.png +0 -0
  217. data/public/images/ui-icons_ef8c08_256x240.png +0 -0
  218. data/public/images/ui-icons_ffd27a_256x240.png +0 -0
  219. data/public/images/ui-icons_ffffff_256x240.png +0 -0
  220. data/public/images/vtip_arrow.png +0 -0
  221. data/public/javascripts/controls.js +965 -0
  222. data/public/javascripts/dcmgr_gui/application.js +91 -0
  223. data/public/javascripts/dcmgr_gui/core.js +539 -0
  224. data/public/javascripts/dcmgr_gui/dashboard_panel.js +34 -0
  225. data/public/javascripts/dcmgr_gui/host_pool_panel.js +83 -0
  226. data/public/javascripts/dcmgr_gui/image_panel.js +242 -0
  227. data/public/javascripts/dcmgr_gui/instance_panel.js +197 -0
  228. data/public/javascripts/dcmgr_gui/security_group_panel.js +196 -0
  229. data/public/javascripts/dcmgr_gui/snapshot_panel.js +168 -0
  230. data/public/javascripts/dcmgr_gui/sshkeypair_panel.js +161 -0
  231. data/public/javascripts/dcmgr_gui/storage_pool_panel.js +99 -0
  232. data/public/javascripts/dcmgr_gui/volume_panel.js +311 -0
  233. data/public/javascripts/dragdrop.js +974 -0
  234. data/public/javascripts/effects.js +1123 -0
  235. data/public/javascripts/jquery-1.4.2.min.js +154 -0
  236. data/public/javascripts/jquery-ui-1.8.4.custom.min.js +763 -0
  237. data/public/javascripts/jquery.loadmask.min.js +10 -0
  238. data/public/javascripts/jquery.tmpl.js +486 -0
  239. data/public/javascripts/jsdeferred.jquery.js +385 -0
  240. data/public/javascripts/prototype.js +6001 -0
  241. data/public/javascripts/rails.js +175 -0
  242. data/public/robots.txt +5 -0
  243. data/public/stylesheets/common.css +1236 -0
  244. data/public/stylesheets/dialog.css +67 -0
  245. data/public/stylesheets/jquery-ui-1.8.4.custom.css +572 -0
  246. data/public/stylesheets/jquery.loadmask.css +40 -0
  247. data/public/stylesheets/reset.css +71 -0
  248. data/public/stylesheets/style.css +7 -0
  249. data/public/stylesheets/vtip.css +28 -0
  250. data/script/rails +6 -0
  251. data/test/functional/accounts_controller_test.rb +8 -0
  252. data/test/functional/dialog_controller_test.rb +8 -0
  253. data/test/functional/home_controller_test.rb +8 -0
  254. data/test/functional/host_pools_controller_test.rb +8 -0
  255. data/test/functional/images_controller_test.rb +8 -0
  256. data/test/functional/information_controller_test.rb +8 -0
  257. data/test/functional/instances_controller_test.rb +8 -0
  258. data/test/functional/keypairs_controller_test.rb +8 -0
  259. data/test/functional/security_groups_controller_test.rb +8 -0
  260. data/test/functional/sessions_controller_test.rb +8 -0
  261. data/test/functional/snapshots_controller_test.rb +8 -0
  262. data/test/functional/storage_pools_controller_test.rb +8 -0
  263. data/test/functional/users_controller_test.rb +8 -0
  264. data/test/functional/volumes_controller_test.rb +8 -0
  265. data/test/performance/browsing_test.rb +9 -0
  266. data/test/test_helper.rb +13 -0
  267. data/test/unit/helpers/accounts_helper_test.rb +4 -0
  268. data/test/unit/helpers/dialog_helper_test.rb +4 -0
  269. data/test/unit/helpers/home_helper_test.rb +4 -0
  270. data/test/unit/helpers/host_pools_helper_test.rb +4 -0
  271. data/test/unit/helpers/images_helper_test.rb +4 -0
  272. data/test/unit/helpers/information_helper_test.rb +4 -0
  273. data/test/unit/helpers/instances_helper_test.rb +4 -0
  274. data/test/unit/helpers/keypairs_helper_test.rb +4 -0
  275. data/test/unit/helpers/security_groups_helper_test.rb +4 -0
  276. data/test/unit/helpers/sessions_helper_test.rb +4 -0
  277. data/test/unit/helpers/snapshots_helper_test.rb +4 -0
  278. data/test/unit/helpers/storage_pools_helper_test.rb +4 -0
  279. data/test/unit/helpers/users_helper_test.rb +4 -0
  280. data/test/unit/helpers/volumes_helper_test.rb +4 -0
  281. metadata +399 -0
@@ -0,0 +1,25 @@
1
+ # -*- coding: utf-8 -*-
2
+ class TagMapping < BaseNew
3
+ TYPE_ACCOUNT = 0
4
+ TYPE_TAG = 1
5
+ TYPE_USER = 2
6
+ TYPE_INSTANCE = 3
7
+ TYPE_INSTANCE_IMAGE = 4
8
+ TYPE_HV_CONTROLLER = 5
9
+ TYPE_HV_AGENT = 6
10
+ TYPE_PHYSICAL_HOST = 7
11
+ TYPE_PHYSICAL_HOST_LOCATION = 8
12
+ TYPE_IMAGE_STORAGE_HOST = 9
13
+ TYPE_IMAGE_STORAGE = 10
14
+
15
+ inheritable_schema do
16
+ primary_key :id, :type=>Integer
17
+ Fixnum :tag_id, :null=>false
18
+ Fixnum :target_type, :size=>2 # see Dcmgr::Models::TagMapping::TYPE_XXXX
19
+ Fixnum :target_id, :null=>false
20
+ index [:tag_id, :target_type, :target_id]
21
+ end
22
+
23
+ many_to_one :tag
24
+
25
+ end
@@ -0,0 +1,46 @@
1
+ # -*- coding: utf-8 -*-
2
+ class User < BaseNew
3
+ taggable 'u'
4
+ with_timestamps
5
+ plugin :single_table_inheritance, :uuid, :model_map=>{}
6
+ plugin :subclasses
7
+
8
+ inheritable_schema do
9
+ String :name, :fixed=>true, :size=>200, :null=>false
10
+ primary_key :id, :type=>Integer
11
+ String :login_id
12
+ String :password, :null=>false
13
+ String :primary_account_id
14
+ end
15
+
16
+ many_to_many :accounts,:join_table => :users_accounts
17
+
18
+ class << self
19
+ def authenticate(login_id,password)
20
+ return nil if login_id.nil? || password.nil?
21
+ u = User.find(:login_id=>login_id, :password => encrypt_password(password))
22
+ u.nil? ? false : u
23
+ end
24
+
25
+ def get_user(uuid)
26
+ return nil if uuid.nil?
27
+ u = User.find(:uuid=>uuid)
28
+ u.nil? ? false : u
29
+ end
30
+
31
+ def account_name_with_uuid(uuid)
32
+ h = Hash.new
33
+ User.find(:uuid => uuid).accounts.each{|row| h.store(row.name,row.uuid) }
34
+ h
35
+ end
36
+
37
+ def primary_account_id(uuid)
38
+ User.find(:uuid => uuid).primary_account_id
39
+ end
40
+
41
+ def encrypt_password(password)
42
+ salt = Digest::SHA1.hexdigest(DcmgrGui::Application.config.secret_token)
43
+ Digest::SHA1.hexdigest("--#{salt}--#{password}--")
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,68 @@
1
+ <div id="mainarea_wide">
2
+ <h3><img src="images/icon_resource.gif" />Personal Information<a href="#" class="showhide"></a></h3>
3
+ <div class="maincontent">
4
+ <div class="display_area">
5
+ <table class="ptn05" frame="void" cellpadding="0" cellspacing="0" border="0">
6
+ <tr>
7
+ <td class="color1">Full name:</td>
8
+ <td><span class="textblock">thedesignium</span><a href="#" class="change"></a></td>
9
+ </tr>
10
+ <tr>
11
+ <td class="color1">E-mail Address/ID:</td>
12
+ <td>contact_with@thedesignium.com</td>
13
+ </tr>
14
+ <tr>
15
+ <td class="color1">Password:</td>
16
+ <td class="special">************</td>
17
+ </tr>
18
+ <tr>
19
+ <td class="color2">Address Line 1:</td>
20
+ <td><input type="text" class="type01" /><br />
21
+ <span class="small">Street address, P.O. box, company name, c/o</span>
22
+ </td>
23
+ </tr>
24
+ <tr>
25
+ <td class="color2">Address Line 2:</td>
26
+ <td><input type="text" class="type01" /><br />
27
+ <span class="small">Apartment, suite, unite, building, floor, etc.</span>
28
+ </td>
29
+ </tr>
30
+ <tr>
31
+ <td class="color2">City:</td>
32
+ <td><input type="text" class="type02" /></td>
33
+ </tr>
34
+ <tr>
35
+ <td class="color2">State, Province or Region:</td>
36
+ <td><input type="text" class="type02" /></td>
37
+ </tr>
38
+ <tr>
39
+ <td class="color2">ZIP or Postal Code:</td>
40
+ <td><input type="text" class="type02" /></td>
41
+ </tr>
42
+ <tr>
43
+ <td class="color2">Country:</td>
44
+ <td>
45
+ <select>
46
+ <option>Japan</option>
47
+ </select>
48
+ </td>
49
+ </tr>
50
+ <tr>
51
+ <td class="color2">Phone number:</td>
52
+ <td><input type="text" class="type02" /></td>
53
+ </tr>
54
+ <tr>
55
+ <td class="color2">Company Name:</td>
56
+ <td><input type="text" class="type02" /></td>
57
+ </tr>
58
+ <tr>
59
+ <td class="color2">Web Site URL:</td>
60
+ <td><input type="text" class="type02" /></td>
61
+ </tr>
62
+ </table>
63
+ </div>
64
+ <a href="#" class="savechange"></a>
65
+ <div class="spacer10"></div>
66
+ </div>
67
+ <div id="btm_maincontent_wide_last"></div>
68
+ </div>
@@ -0,0 +1,13 @@
1
+ <div id="attach_volume_dialog">
2
+ <table>
3
+ <tr>
4
+ <td>Volume ID:</td>
5
+ <td id="view_volume_id"><%= @volume_id %></td>
6
+ <input id="volume_id" type="hidden" value="<%= @volume_id %>">
7
+ </tr>
8
+ <tr>
9
+ <td>Instance ID:</td>
10
+ <td><input id="instance_id" type="text" value=""></td>
11
+ </tr>
12
+ </table>
13
+ </div>
@@ -0,0 +1,32 @@
1
+ <style type="text/css">
2
+ table td {
3
+ padding-top :10px;
4
+ padding-left :5px;
5
+ }
6
+ </style>
7
+ <div id="create_security_group_dialog">
8
+ <table>
9
+ <tr>
10
+ <td>Name:</td>
11
+ <td>
12
+ <% if @name %>
13
+ <%= @name %>
14
+ <input type="hidden" id="security_group_name" value="<%= @name %>">
15
+ <% else %>
16
+ <input type="text" id="security_group_name" size="20"></td>
17
+ <% end %>
18
+ <input type="hidden" id="security_group_id" value="<%= @uuid %>">
19
+ </tr>
20
+ <tr>
21
+ <td>Description:</td>
22
+ <td><input type="text" id="security_group_description" size="43" value="<%= @description %>"></td>
23
+ </tr>
24
+ <tr>
25
+ <td>Rule:</td>
26
+ </tr>
27
+ <tr>
28
+ <td colspan="2">
29
+ <textarea id="security_group_rule" rows="10" cols="10" style="width:442px;height:320px"><%= @rule %></textarea></td>
30
+ </tr>
31
+ </table>
32
+ </div>
@@ -0,0 +1,7 @@
1
+ <p>Are you sure you want to create the following snapshot?</p>
2
+ <br />
3
+ <ul id="create_snapshots">
4
+ <% @volume_ids.each do |volume_id| %>
5
+ <li><%= volume_id %></li>
6
+ <% end %>
7
+ </ul>
@@ -0,0 +1,15 @@
1
+ <div id="create_ssh_keypair_dialog">
2
+ <table>
3
+ <tr>
4
+ <td>Key Pair Name:</td>
5
+ <td>
6
+ <input id="ssh_keypair_name" type="text" name="name" >
7
+ </td>
8
+ <tr>
9
+ <td>Download Once: </td>
10
+ <td>
11
+ <input id="ssh_keypair_download_once" type="checkbox" name="download_once" checked>
12
+ </td>
13
+ </tr>
14
+ </table>
15
+ </div>
@@ -0,0 +1,18 @@
1
+ <div id="create_volume_dialog">
2
+ <table>
3
+ <tr>
4
+ <td>Size:</td>
5
+ <td>
6
+ <input id="volume_size" type="text" name="size" size="2" maxlength="3">
7
+ <select id="unit">
8
+ <option value="gb">GB</option>
9
+ <option value="tb">TB</option>
10
+ </select>
11
+ </td>
12
+ <tr>
13
+ <td>Storage:</td>
14
+ <td id="select_storage_pool"></td>
15
+ </tr>
16
+ </tr>
17
+ </table>
18
+ </div>
@@ -0,0 +1,7 @@
1
+ <p>Are you sure you want to create the following volume?</p>
2
+ <br />
3
+ <ul id="create_volumes">
4
+ <% @snapshot_ids.each do |snapshot_id| %>
5
+ <li><%= snapshot_id %></li>
6
+ <% end %>
7
+ </ul>
@@ -0,0 +1,4 @@
1
+ <p>Are you sure you want to delete the following security_group?</p>
2
+ <br />
3
+ <span id="delete_group_name"><%= @name %></span>
4
+ <input type="hidden" id="security_group_id" value="<%= @uuid %>">
@@ -0,0 +1,7 @@
1
+ <p>Are you sure you want to delete the following snapshot?</p>
2
+ <br />
3
+ <ul id="delete_snapshots">
4
+ <% @snapshot_ids.each do |snapshot_id| %>
5
+ <li><%= snapshot_id %></li>
6
+ <% end %>
7
+ </ul>
@@ -0,0 +1,4 @@
1
+ <p>Are you sure you want to detach the following key pair?</p>
2
+ <br />
3
+ <span ><%= @ssh_keypair_id %></span>
4
+ <input type="hidden" id="ssh_keypair_id" value="<%= @ssh_keypair_id %>">
@@ -0,0 +1,7 @@
1
+ <p>Are you sure you want to detach the following volume?</p>
2
+ <br />
3
+ <ul id="delete_volumes">
4
+ <% @volume_ids.each do |volume_id| %>
5
+ <li><%= volume_id %></li>
6
+ <% end %>
7
+ </ul>
@@ -0,0 +1,7 @@
1
+ <p>Are you sure you want to detach the following volume?</p>
2
+ <br />
3
+ <ul id="detach_volumes">
4
+ <% @volume_ids.each do |volume_id| %>
5
+ <li><%= volume_id %></li>
6
+ <% end %>
7
+ </ul>
@@ -0,0 +1,70 @@
1
+ <div id="launch_instance_dialog">
2
+ <table>
3
+ <tr>
4
+ <td>WMI ID:</td>
5
+ <td id="view_image_id"><%= @image_id %></td>
6
+ <input id="image_id" type="hidden" value="<%= @image_id %>">
7
+ </tr>
8
+ <tr>
9
+ <td>Host:</td>
10
+ <td id="select_host_pool">
11
+ </td>
12
+ </tr>
13
+ <tr>
14
+ <td>Host Name:</td>
15
+ <td><input id="host_name" type="text" value=""></td>
16
+ </tr>
17
+ <tr>
18
+ <td>Instance Spec:</td>
19
+ <td>
20
+ <select name="instance_spec">
21
+ <option value="m1.small">m1.small
22
+ </select>
23
+ <input id="instance_spec" type="hidden" value="is-kpf0pasc">
24
+ </td>
25
+ </tr>
26
+ <tr>
27
+ <td>SSH Key Pair:</td>
28
+ <td id="select_ssh_key_pair"></td>
29
+ </tr>
30
+ </table>
31
+
32
+ <fieldset id="security_group_field">
33
+ <legend>Security Group</legend><legend>
34
+ </legend><table cellspacing="5" cellpadding="5">
35
+ <tbody>
36
+ <tr><th><span id="available_groups">Available Groups</span></th>
37
+ <th></th>
38
+ <th><span id="launch_in">Launch in</span></th>
39
+ </tr><tr>
40
+ <td>
41
+ <select id="left_select_list" size="5" multiple="multiple" name="left_select_list"></select>
42
+ </td>
43
+ <td id="manipulation">
44
+ <button id="right_button">&gt;</button>
45
+ <br> <br>
46
+ <button id="left_button">&lt;</button>
47
+ </td>
48
+ <td>
49
+ <select id="right_select_list" size="5" multiple="multiple" name="right_select_list">
50
+ </select>
51
+ </td>
52
+ </tr>
53
+ </tbody>
54
+ </table>
55
+ </fieldset>
56
+ <br />
57
+
58
+ <fieldset id="user_data_field">
59
+ <legend>User Data</legend>
60
+ <table cellspacing="5" cellpadding="5">
61
+ <tbody>
62
+ <tr>
63
+ <td colspan="2">
64
+ <textarea cols="56" rows="5" name="user_data" id="user_data"></textarea>
65
+ </td>
66
+ </tr>
67
+ </tbody>
68
+ </table>
69
+ </fieldset>
70
+ </div>
@@ -0,0 +1,7 @@
1
+ <p>Are you sure you want to reboot this instance?</p>
2
+ <br />
3
+ <ul id="instances">
4
+ <% @instance_ids.each do |instance_id| %>
5
+ <li><%= instance_id %></li>
6
+ <% end %>
7
+ </ul>
@@ -0,0 +1,8 @@
1
+ <p>Are you sure you want to start this instance?</p>
2
+ <br />
3
+ <ul id="instances">
4
+ <% @instance_ids.each do |instance_id| %>
5
+ <li><%= instance_id %></li>
6
+ <% end %>
7
+ </ul>
8
+ </script>
@@ -0,0 +1,7 @@
1
+ <p>Are you sure you want to stop this instance?</p>
2
+ <br />
3
+ <ul id="instances">
4
+ <% @instance_ids.each do |instance_id| %>
5
+ <li><%= instance_id %></li>
6
+ <% end %>
7
+ </ul>
@@ -0,0 +1,7 @@
1
+ <p>Are you sure you want to terminate this instance?</p>
2
+ <br />
3
+ <ul id="instances">
4
+ <% @instance_ids.each do |instance_id| %>
5
+ <li><%= instance_id %></li>
6
+ <% end %>
7
+ </ul>
@@ -0,0 +1,55 @@
1
+ <% content_for :javascript do %>
2
+ <%= javascript_include_tag 'dcmgr_gui/dashboard_panel.js' %>
3
+ <script type="text/javascript">
4
+ jQuery(function($){
5
+ dcmgrGUI.dashboardPanel();
6
+ });
7
+ </script>
8
+ <% end %>
9
+ <div id="mainarea" class="grid2">
10
+ <h3><img src="images/icon_resource.gif" />My Resource</h3>
11
+ <div class="maincontent">
12
+ <p class="lead">You are using the following Wakame-vdc resources.</p>
13
+ <a href="javascript:void(0);" class="refresh">refresh</a>
14
+ <ul class="resource clearfix">
15
+ <li>
16
+ <img src="images/icon_resource01.gif" width="20" height="20" /><a href="/instances">
17
+ <span id="total_instance">0</span> Instances</a>
18
+ </li>
19
+ <li>
20
+ <img src="images/icon_resource02.gif" width="20" height="20" /><a href="/images">
21
+ <span id="total_image">0</span> Machine Images</a>
22
+ </li>
23
+ </ul>
24
+ <ul class="resource clearfix">
25
+ <li>
26
+ <img src="images/icon_resource03.gif" width="20" height="20" /><a href="/volumes">
27
+ <span id="total_volume">0</span> Volumes</a>
28
+ </li>
29
+ <li>
30
+ <img src="images/icon_resource03.gif" width="20" height="20" /><a href="/snapshots">
31
+ <span id="total_snapshot">0</span> Snapshots</a>
32
+ </li>
33
+ </ul>
34
+ <ul class="resource clearfix">
35
+ <li>
36
+ <img src="images/icon_resource04.gif" width="20" height="20" /><a href="/security_groups">
37
+ <span id="total_security_group">0</span> Security Groups</a>
38
+ </li>
39
+ <li>
40
+ <img src="images/icon_resource04.gif" width="20" height="20" /><a href="/keypairs">
41
+ <span id="total_keypair">0</span> Key Pairs</a>
42
+ </li>
43
+ </ul>
44
+ <div class="spacer20"></div>
45
+ <div class="spacer20"></div>
46
+ <div class="spacer20"></div>
47
+ <div class="spacer20"></div>
48
+ <div class="spacer20"></div>
49
+ <div class="spacer20"></div>
50
+ <div class="spacer20"></div>
51
+ <div class="spacer20"></div>
52
+ </div>
53
+ <div class="btm_maincontent mbt10"></div>
54
+ </div>
55
+ <%= render :partial => 'layouts/informationarea'%>