cpee 1.3.102

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 (281) hide show
  1. data/AUTHORS +3 -0
  2. data/COPYING +165 -0
  3. data/FEATURES +28 -0
  4. data/INSTALL +23 -0
  5. data/README +7 -0
  6. data/Rakefile +28 -0
  7. data/cockpit/contrib/symbols.svg +224 -0
  8. data/cockpit/contrib/transformation1.xsl +264 -0
  9. data/cockpit/contrib/transformation2.xsl +10 -0
  10. data/cockpit/css/ui.css +155 -0
  11. data/cockpit/index.html +241 -0
  12. data/cockpit/js/details.js +146 -0
  13. data/cockpit/js/instance.js +927 -0
  14. data/cockpit/js/parameters.js +66 -0
  15. data/cockpit/js/ui.js +48 -0
  16. data/cockpit/js/wfadaptor.cpee.js +1082 -0
  17. data/cockpit/lib/contextmenu.css +72 -0
  18. data/cockpit/lib/contextmenu.js +63 -0
  19. data/cockpit/lib/jquery-ui.custom.min.js +259 -0
  20. data/cockpit/lib/jquery-ui.custom.min.txt +16 -0
  21. data/cockpit/lib/jquery.caret.min.js +10 -0
  22. data/cockpit/lib/jquery.min.js +4 -0
  23. data/cockpit/lib/jquery.svgdom.js +281 -0
  24. data/cockpit/lib/parsequery.js +19 -0
  25. data/cockpit/lib/printf.js +368 -0
  26. data/cockpit/lib/strftime.min.js +1 -0
  27. data/cockpit/lib/ui.css +270 -0
  28. data/cockpit/lib/ui.js +60 -0
  29. data/cockpit/lib/underscore.min.js +27 -0
  30. data/cockpit/lib/util.js +53 -0
  31. data/cockpit/lib/wfadaptor-doc/demo1.html +517 -0
  32. data/cockpit/lib/wfadaptor-doc/demo2.html +84 -0
  33. data/cockpit/lib/wfadaptor-doc/index.html +54 -0
  34. data/cockpit/lib/wfadaptor.css +217 -0
  35. data/cockpit/lib/wfadaptor.js +410 -0
  36. data/cockpit/testsets/ADVENTURE Dynamic Order.xml +353 -0
  37. data/cockpit/testsets/ADVENTURE Main Loop.xml +327 -0
  38. data/cockpit/testsets/ADVENTURE Order.xml +424 -0
  39. data/cockpit/testsets/ADVENTURE Performance Test 1.xml +311 -0
  40. data/cockpit/testsets/ADVENTURE Performance Test 2.xml +297 -0
  41. data/cockpit/testsets/Concurrent.xml +315 -0
  42. data/cockpit/testsets/Coopis Testset.xml +346 -0
  43. data/cockpit/testsets/Endpoints and Data Manipulation.xml +359 -0
  44. data/cockpit/testsets/ICSOC Testset.xml +354 -0
  45. data/cockpit/testsets/Linear.xml +328 -0
  46. data/cockpit/testsets/Mangler 1.xml +352 -0
  47. data/cockpit/testsets/Mangler 2.xml +372 -0
  48. data/cockpit/testsets/RESCUE - Book Movie - Local.xml +385 -0
  49. data/cockpit/testsets/RESCUE - Book Movie.xml +385 -0
  50. data/cockpit/testsets/RESCUE - Loop-Parallel Injection.xml +393 -0
  51. data/cockpit/testsets/SOPROMO Test Sonification.xml +356 -0
  52. data/cockpit/testsets/Syncing P34 1.xml +329 -0
  53. data/cockpit/testsets/Syncing P34 2.xml +329 -0
  54. data/cockpit/testsets/Syncing P34 3.xml +329 -0
  55. data/cockpit/testsets/Syncing P34.xml +329 -0
  56. data/cockpit/testsets/TEST - Bad Loop.xml +428 -0
  57. data/cockpit/testsets/TEST - Wrong Positions.xml +470 -0
  58. data/cockpit/testsets/index.xml +24 -0
  59. data/contrib/Screenshot at 2011-09-28 02:38:11.png +0 -0
  60. data/contrib/logo2-small.png +0 -0
  61. data/contrib/logo2.png +0 -0
  62. data/contrib/logo2.svg +7610 -0
  63. data/contrib/logo2a.png +0 -0
  64. data/contrib/logo2a.svg +367 -0
  65. data/cpee.gemspec +24 -0
  66. data/lib/cpee.xml +39 -0
  67. data/lib/cpee/callback.rb +40 -0
  68. data/lib/cpee/controller.rb +440 -0
  69. data/lib/cpee/empty_workflow.rb +24 -0
  70. data/lib/cpee/handler_notifications.rb +46 -0
  71. data/lib/cpee/handler_properties.rb +43 -0
  72. data/lib/cpee/implementation.rb +174 -0
  73. data/lib/engine.xml +85 -0
  74. data/lib/engine/callbacks.rng +41 -0
  75. data/lib/engine/instance-info.rng +41 -0
  76. data/lib/engine/instances.rng +38 -0
  77. data/server/handlerwrappers/default.rb +142 -0
  78. data/server/handlerwrappers/rescue.rb +216 -0
  79. data/server/handlerwrappers/soap.rb +152 -0
  80. data/server/instances/1/notifications/1d41ebf5e52bf039b3c3873fddb8e9bd/consumer-secret +1 -0
  81. data/server/instances/1/notifications/1d41ebf5e52bf039b3c3873fddb8e9bd/producer-secret +1 -0
  82. data/server/instances/1/notifications/1d41ebf5e52bf039b3c3873fddb8e9bd/subscription.xml +27 -0
  83. data/server/instances/1/notifications/66ad546f13c6c7c84f36215c24dd2e6e/consumer-secret +1 -0
  84. data/server/instances/1/notifications/66ad546f13c6c7c84f36215c24dd2e6e/producer-secret +1 -0
  85. data/server/instances/1/notifications/66ad546f13c6c7c84f36215c24dd2e6e/subscription.xml +27 -0
  86. data/server/instances/1/notifications/9f23b768395a19cc1dd6c2d2a243c78e/consumer-secret +1 -0
  87. data/server/instances/1/notifications/9f23b768395a19cc1dd6c2d2a243c78e/producer-secret +1 -0
  88. data/server/instances/1/notifications/9f23b768395a19cc1dd6c2d2a243c78e/subscription.xml +27 -0
  89. data/server/instances/1/notifications/fa690a88cc565dfa53b13ced355cd039/consumer-secret +1 -0
  90. data/server/instances/1/notifications/fa690a88cc565dfa53b13ced355cd039/producer-secret +1 -0
  91. data/server/instances/1/notifications/fa690a88cc565dfa53b13ced355cd039/subscription.xml +5 -0
  92. data/server/instances/1/properties.xml +522 -0
  93. data/server/instances/10/notifications/0867c4a937f882af259137e36d331261/consumer-secret +1 -0
  94. data/server/instances/10/notifications/0867c4a937f882af259137e36d331261/producer-secret +1 -0
  95. data/server/instances/10/notifications/0867c4a937f882af259137e36d331261/subscription.xml +27 -0
  96. data/server/instances/10/notifications/28acb605c56588ec8e47431c1fcf0b20/consumer-secret +1 -0
  97. data/server/instances/10/notifications/28acb605c56588ec8e47431c1fcf0b20/producer-secret +1 -0
  98. data/server/instances/10/notifications/28acb605c56588ec8e47431c1fcf0b20/subscription.xml +27 -0
  99. data/server/instances/10/notifications/31d3f699def1d1e86dc18ef421f718ad/consumer-secret +1 -0
  100. data/server/instances/10/notifications/31d3f699def1d1e86dc18ef421f718ad/producer-secret +1 -0
  101. data/server/instances/10/notifications/31d3f699def1d1e86dc18ef421f718ad/subscription.xml +27 -0
  102. data/server/instances/10/notifications/380b57220000c45342fc56a1ed8e9e3f/consumer-secret +1 -0
  103. data/server/instances/10/notifications/380b57220000c45342fc56a1ed8e9e3f/producer-secret +1 -0
  104. data/server/instances/10/notifications/380b57220000c45342fc56a1ed8e9e3f/subscription.xml +27 -0
  105. data/server/instances/10/notifications/41eeb5d90b513781fb4b440cb97ca7f1/consumer-secret +1 -0
  106. data/server/instances/10/notifications/41eeb5d90b513781fb4b440cb97ca7f1/producer-secret +1 -0
  107. data/server/instances/10/notifications/41eeb5d90b513781fb4b440cb97ca7f1/subscription.xml +27 -0
  108. data/server/instances/10/notifications/4d8c1b3a8dfdacac98144fad072c46d8/consumer-secret +1 -0
  109. data/server/instances/10/notifications/4d8c1b3a8dfdacac98144fad072c46d8/producer-secret +1 -0
  110. data/server/instances/10/notifications/4d8c1b3a8dfdacac98144fad072c46d8/subscription.xml +27 -0
  111. data/server/instances/10/notifications/4dde696cfb001e00a7efbd8e86ba227d/consumer-secret +1 -0
  112. data/server/instances/10/notifications/4dde696cfb001e00a7efbd8e86ba227d/producer-secret +1 -0
  113. data/server/instances/10/notifications/4dde696cfb001e00a7efbd8e86ba227d/subscription.xml +27 -0
  114. data/server/instances/10/notifications/4e1c0065dd95f7c175bbccb874f0baea/consumer-secret +1 -0
  115. data/server/instances/10/notifications/4e1c0065dd95f7c175bbccb874f0baea/producer-secret +1 -0
  116. data/server/instances/10/notifications/4e1c0065dd95f7c175bbccb874f0baea/subscription.xml +27 -0
  117. data/server/instances/10/notifications/6198fb7d6a8249f7820e3e57eeefa8af/consumer-secret +1 -0
  118. data/server/instances/10/notifications/6198fb7d6a8249f7820e3e57eeefa8af/producer-secret +1 -0
  119. data/server/instances/10/notifications/6198fb7d6a8249f7820e3e57eeefa8af/subscription.xml +27 -0
  120. data/server/instances/10/notifications/6aeb90da52abc150f0f0135d8ba2dbac/consumer-secret +1 -0
  121. data/server/instances/10/notifications/6aeb90da52abc150f0f0135d8ba2dbac/producer-secret +1 -0
  122. data/server/instances/10/notifications/6aeb90da52abc150f0f0135d8ba2dbac/subscription.xml +27 -0
  123. data/server/instances/10/notifications/6d77f5bac1eb9d6165394b6bfc9b492a/consumer-secret +1 -0
  124. data/server/instances/10/notifications/6d77f5bac1eb9d6165394b6bfc9b492a/producer-secret +1 -0
  125. data/server/instances/10/notifications/6d77f5bac1eb9d6165394b6bfc9b492a/subscription.xml +27 -0
  126. data/server/instances/10/notifications/7092411a6bb6822f651798fdcd3c4787/consumer-secret +1 -0
  127. data/server/instances/10/notifications/7092411a6bb6822f651798fdcd3c4787/producer-secret +1 -0
  128. data/server/instances/10/notifications/7092411a6bb6822f651798fdcd3c4787/subscription.xml +27 -0
  129. data/server/instances/10/notifications/7ab29bbad4122295c05f9e33fd1e0fc3/consumer-secret +1 -0
  130. data/server/instances/10/notifications/7ab29bbad4122295c05f9e33fd1e0fc3/producer-secret +1 -0
  131. data/server/instances/10/notifications/7ab29bbad4122295c05f9e33fd1e0fc3/subscription.xml +27 -0
  132. data/server/instances/10/notifications/7fabcecc57fe0bd27ce50bedaef47bd2/consumer-secret +1 -0
  133. data/server/instances/10/notifications/7fabcecc57fe0bd27ce50bedaef47bd2/producer-secret +1 -0
  134. data/server/instances/10/notifications/7fabcecc57fe0bd27ce50bedaef47bd2/subscription.xml +27 -0
  135. data/server/instances/10/notifications/85760dad8f7abbd73ae1dd44140dabf1/consumer-secret +1 -0
  136. data/server/instances/10/notifications/85760dad8f7abbd73ae1dd44140dabf1/producer-secret +1 -0
  137. data/server/instances/10/notifications/85760dad8f7abbd73ae1dd44140dabf1/subscription.xml +27 -0
  138. data/server/instances/10/notifications/8b9a96d109d44a1fc22858006c0f0e16/consumer-secret +1 -0
  139. data/server/instances/10/notifications/8b9a96d109d44a1fc22858006c0f0e16/producer-secret +1 -0
  140. data/server/instances/10/notifications/8b9a96d109d44a1fc22858006c0f0e16/subscription.xml +27 -0
  141. data/server/instances/10/notifications/9120a477e64d7debae2cda964a9948a0/consumer-secret +1 -0
  142. data/server/instances/10/notifications/9120a477e64d7debae2cda964a9948a0/producer-secret +1 -0
  143. data/server/instances/10/notifications/9120a477e64d7debae2cda964a9948a0/subscription.xml +27 -0
  144. data/server/instances/10/notifications/93c5a5ab72a745c0f9fffe2fe58db205/consumer-secret +1 -0
  145. data/server/instances/10/notifications/93c5a5ab72a745c0f9fffe2fe58db205/producer-secret +1 -0
  146. data/server/instances/10/notifications/93c5a5ab72a745c0f9fffe2fe58db205/subscription.xml +27 -0
  147. data/server/instances/10/notifications/a8db1498388588bddf518878263fd898/consumer-secret +1 -0
  148. data/server/instances/10/notifications/a8db1498388588bddf518878263fd898/producer-secret +1 -0
  149. data/server/instances/10/notifications/a8db1498388588bddf518878263fd898/subscription.xml +27 -0
  150. data/server/instances/10/notifications/b534f057c1c97f65e68f59427958e78d/consumer-secret +1 -0
  151. data/server/instances/10/notifications/b534f057c1c97f65e68f59427958e78d/producer-secret +1 -0
  152. data/server/instances/10/notifications/b534f057c1c97f65e68f59427958e78d/subscription.xml +27 -0
  153. data/server/instances/10/notifications/bb3d69ee3df32f3b5cb69a51d1af8ae4/consumer-secret +1 -0
  154. data/server/instances/10/notifications/bb3d69ee3df32f3b5cb69a51d1af8ae4/producer-secret +1 -0
  155. data/server/instances/10/notifications/bb3d69ee3df32f3b5cb69a51d1af8ae4/subscription.xml +27 -0
  156. data/server/instances/10/notifications/bc597391804363834987804436b8b63b/consumer-secret +1 -0
  157. data/server/instances/10/notifications/bc597391804363834987804436b8b63b/producer-secret +1 -0
  158. data/server/instances/10/notifications/bc597391804363834987804436b8b63b/subscription.xml +27 -0
  159. data/server/instances/10/notifications/bf2f6599eebcd9a08e47bdafd4a67660/consumer-secret +1 -0
  160. data/server/instances/10/notifications/bf2f6599eebcd9a08e47bdafd4a67660/producer-secret +1 -0
  161. data/server/instances/10/notifications/bf2f6599eebcd9a08e47bdafd4a67660/subscription.xml +27 -0
  162. data/server/instances/10/notifications/db9cf0ae80bd61e6124c382b992a1550/consumer-secret +1 -0
  163. data/server/instances/10/notifications/db9cf0ae80bd61e6124c382b992a1550/producer-secret +1 -0
  164. data/server/instances/10/notifications/db9cf0ae80bd61e6124c382b992a1550/subscription.xml +27 -0
  165. data/server/instances/10/notifications/e528089610c991500eb2e8b094f6f169/consumer-secret +1 -0
  166. data/server/instances/10/notifications/e528089610c991500eb2e8b094f6f169/producer-secret +1 -0
  167. data/server/instances/10/notifications/e528089610c991500eb2e8b094f6f169/subscription.xml +27 -0
  168. data/server/instances/10/notifications/e7d3ca382d26b5f5eba00c40c29827da/consumer-secret +1 -0
  169. data/server/instances/10/notifications/e7d3ca382d26b5f5eba00c40c29827da/producer-secret +1 -0
  170. data/server/instances/10/notifications/e7d3ca382d26b5f5eba00c40c29827da/subscription.xml +27 -0
  171. data/server/instances/10/notifications/ebdc914fde6fe299143ae4601c142738/consumer-secret +1 -0
  172. data/server/instances/10/notifications/ebdc914fde6fe299143ae4601c142738/producer-secret +1 -0
  173. data/server/instances/10/notifications/ebdc914fde6fe299143ae4601c142738/subscription.xml +27 -0
  174. data/server/instances/10/notifications/f26b2b9efc10b9259647cf1a2b934694/consumer-secret +1 -0
  175. data/server/instances/10/notifications/f26b2b9efc10b9259647cf1a2b934694/producer-secret +1 -0
  176. data/server/instances/10/notifications/f26b2b9efc10b9259647cf1a2b934694/subscription.xml +27 -0
  177. data/server/instances/10/notifications/f4e1d7808171fe7c5fab4a99145ea185/consumer-secret +1 -0
  178. data/server/instances/10/notifications/f4e1d7808171fe7c5fab4a99145ea185/producer-secret +1 -0
  179. data/server/instances/10/notifications/f4e1d7808171fe7c5fab4a99145ea185/subscription.xml +27 -0
  180. data/server/instances/10/notifications/f7e947a1b4b32f3dad5debd44fc3236b/consumer-secret +1 -0
  181. data/server/instances/10/notifications/f7e947a1b4b32f3dad5debd44fc3236b/producer-secret +1 -0
  182. data/server/instances/10/notifications/f7e947a1b4b32f3dad5debd44fc3236b/subscription.xml +27 -0
  183. data/server/instances/10/notifications/fbf5d0ae050a50e8a2fca6bc60f5b8d6/consumer-secret +1 -0
  184. data/server/instances/10/notifications/fbf5d0ae050a50e8a2fca6bc60f5b8d6/producer-secret +1 -0
  185. data/server/instances/10/notifications/fbf5d0ae050a50e8a2fca6bc60f5b8d6/subscription.xml +27 -0
  186. data/server/instances/10/properties.xml +388 -0
  187. data/server/instances/11/notifications/134c18da209261bc409ccd137b2e46d3/consumer-secret +1 -0
  188. data/server/instances/11/notifications/134c18da209261bc409ccd137b2e46d3/producer-secret +1 -0
  189. data/server/instances/11/notifications/134c18da209261bc409ccd137b2e46d3/subscription.xml +27 -0
  190. data/server/instances/11/notifications/48862f47f66e8229582bc91fbc38a512/consumer-secret +1 -0
  191. data/server/instances/11/notifications/48862f47f66e8229582bc91fbc38a512/producer-secret +1 -0
  192. data/server/instances/11/notifications/48862f47f66e8229582bc91fbc38a512/subscription.xml +5 -0
  193. data/server/instances/11/properties.xml +517 -0
  194. data/server/instances/2/notifications/0bbfabbebf46b850383b4e1d7bd926e3/consumer-secret +1 -0
  195. data/server/instances/2/notifications/0bbfabbebf46b850383b4e1d7bd926e3/producer-secret +1 -0
  196. data/server/instances/2/notifications/0bbfabbebf46b850383b4e1d7bd926e3/subscription.xml +27 -0
  197. data/server/instances/2/notifications/1d426895d19caa1471c713e80cc3c845/consumer-secret +1 -0
  198. data/server/instances/2/notifications/1d426895d19caa1471c713e80cc3c845/producer-secret +1 -0
  199. data/server/instances/2/notifications/1d426895d19caa1471c713e80cc3c845/subscription.xml +27 -0
  200. data/server/instances/2/notifications/292c8983aa798f0c5ced5ddc4b58abe4/consumer-secret +1 -0
  201. data/server/instances/2/notifications/292c8983aa798f0c5ced5ddc4b58abe4/producer-secret +1 -0
  202. data/server/instances/2/notifications/292c8983aa798f0c5ced5ddc4b58abe4/subscription.xml +27 -0
  203. data/server/instances/2/notifications/332c3026c8ad3075b092bd7e7a2b4f71/consumer-secret +1 -0
  204. data/server/instances/2/notifications/332c3026c8ad3075b092bd7e7a2b4f71/producer-secret +1 -0
  205. data/server/instances/2/notifications/332c3026c8ad3075b092bd7e7a2b4f71/subscription.xml +27 -0
  206. data/server/instances/2/notifications/d377446918808d23d03291fc1140883c/consumer-secret +1 -0
  207. data/server/instances/2/notifications/d377446918808d23d03291fc1140883c/producer-secret +1 -0
  208. data/server/instances/2/notifications/d377446918808d23d03291fc1140883c/subscription.xml +27 -0
  209. data/server/instances/2/notifications/d5b65c7cbff5d259e4ee8405190ec558/consumer-secret +1 -0
  210. data/server/instances/2/notifications/d5b65c7cbff5d259e4ee8405190ec558/producer-secret +1 -0
  211. data/server/instances/2/notifications/d5b65c7cbff5d259e4ee8405190ec558/subscription.xml +27 -0
  212. data/server/instances/2/notifications/d7ee4fedabb402dc43986dfa199e6768/consumer-secret +1 -0
  213. data/server/instances/2/notifications/d7ee4fedabb402dc43986dfa199e6768/producer-secret +1 -0
  214. data/server/instances/2/notifications/d7ee4fedabb402dc43986dfa199e6768/subscription.xml +5 -0
  215. data/server/instances/2/properties.xml +517 -0
  216. data/server/instances/3/notifications/27195e2503deaf25b3291394fe97985c/consumer-secret +1 -0
  217. data/server/instances/3/notifications/27195e2503deaf25b3291394fe97985c/producer-secret +1 -0
  218. data/server/instances/3/notifications/27195e2503deaf25b3291394fe97985c/subscription.xml +5 -0
  219. data/server/instances/3/notifications/6cec45935d78709a4aa6622491006f4b/consumer-secret +1 -0
  220. data/server/instances/3/notifications/6cec45935d78709a4aa6622491006f4b/producer-secret +1 -0
  221. data/server/instances/3/notifications/6cec45935d78709a4aa6622491006f4b/subscription.xml +27 -0
  222. data/server/instances/3/notifications/755542b2fb8d0c8fb9add29e012ec707/consumer-secret +1 -0
  223. data/server/instances/3/notifications/755542b2fb8d0c8fb9add29e012ec707/producer-secret +1 -0
  224. data/server/instances/3/notifications/755542b2fb8d0c8fb9add29e012ec707/subscription.xml +27 -0
  225. data/server/instances/3/properties.xml +517 -0
  226. data/server/instances/4/notifications/151e90db818eb5812905257a8eb7cea4/consumer-secret +1 -0
  227. data/server/instances/4/notifications/151e90db818eb5812905257a8eb7cea4/producer-secret +1 -0
  228. data/server/instances/4/notifications/151e90db818eb5812905257a8eb7cea4/subscription.xml +5 -0
  229. data/server/instances/4/notifications/a89df398fcc088c067c39ae3974ec57f/consumer-secret +1 -0
  230. data/server/instances/4/notifications/a89df398fcc088c067c39ae3974ec57f/producer-secret +1 -0
  231. data/server/instances/4/notifications/a89df398fcc088c067c39ae3974ec57f/subscription.xml +27 -0
  232. data/server/instances/4/properties.xml +517 -0
  233. data/server/instances/5/notifications/02ebbf888bd3efd11924f4c416d784e4/consumer-secret +1 -0
  234. data/server/instances/5/notifications/02ebbf888bd3efd11924f4c416d784e4/producer-secret +1 -0
  235. data/server/instances/5/notifications/02ebbf888bd3efd11924f4c416d784e4/subscription.xml +27 -0
  236. data/server/instances/5/notifications/0b9589d847cccf768013b6082893bce6/consumer-secret +1 -0
  237. data/server/instances/5/notifications/0b9589d847cccf768013b6082893bce6/producer-secret +1 -0
  238. data/server/instances/5/notifications/0b9589d847cccf768013b6082893bce6/subscription.xml +5 -0
  239. data/server/instances/5/properties.xml +517 -0
  240. data/server/instances/6/notifications/23da9f5c4548f384d625e6d12b3ebe2d/consumer-secret +1 -0
  241. data/server/instances/6/notifications/23da9f5c4548f384d625e6d12b3ebe2d/producer-secret +1 -0
  242. data/server/instances/6/notifications/23da9f5c4548f384d625e6d12b3ebe2d/subscription.xml +5 -0
  243. data/server/instances/6/notifications/282e7077e9c5b9972413cc92a6dcffc3/consumer-secret +1 -0
  244. data/server/instances/6/notifications/282e7077e9c5b9972413cc92a6dcffc3/producer-secret +1 -0
  245. data/server/instances/6/notifications/282e7077e9c5b9972413cc92a6dcffc3/subscription.xml +27 -0
  246. data/server/instances/6/notifications/7e57d7438db8210766eab6873124dc02/consumer-secret +1 -0
  247. data/server/instances/6/notifications/7e57d7438db8210766eab6873124dc02/producer-secret +1 -0
  248. data/server/instances/6/notifications/7e57d7438db8210766eab6873124dc02/subscription.xml +27 -0
  249. data/server/instances/6/properties.xml +517 -0
  250. data/server/instances/7/notifications/7276b795b5ed2f6638473526d9b1b1e1/consumer-secret +1 -0
  251. data/server/instances/7/notifications/7276b795b5ed2f6638473526d9b1b1e1/producer-secret +1 -0
  252. data/server/instances/7/notifications/7276b795b5ed2f6638473526d9b1b1e1/subscription.xml +27 -0
  253. data/server/instances/7/notifications/f3fbbf27fcbcc02a9f8a614326461a5c/consumer-secret +1 -0
  254. data/server/instances/7/notifications/f3fbbf27fcbcc02a9f8a614326461a5c/producer-secret +1 -0
  255. data/server/instances/7/notifications/f3fbbf27fcbcc02a9f8a614326461a5c/subscription.xml +5 -0
  256. data/server/instances/7/properties.xml +517 -0
  257. data/server/instances/8/notifications/2854ed5a8f97a33d31f908f67544ec62/consumer-secret +1 -0
  258. data/server/instances/8/notifications/2854ed5a8f97a33d31f908f67544ec62/producer-secret +1 -0
  259. data/server/instances/8/notifications/2854ed5a8f97a33d31f908f67544ec62/subscription.xml +27 -0
  260. data/server/instances/8/notifications/595259518a5cb2ce286bb39840f7a64c/consumer-secret +1 -0
  261. data/server/instances/8/notifications/595259518a5cb2ce286bb39840f7a64c/producer-secret +1 -0
  262. data/server/instances/8/notifications/595259518a5cb2ce286bb39840f7a64c/subscription.xml +5 -0
  263. data/server/instances/8/properties.xml +517 -0
  264. data/server/instances/9/notifications/54e96913d66f1dd69ec82d2b52268232/consumer-secret +1 -0
  265. data/server/instances/9/notifications/54e96913d66f1dd69ec82d2b52268232/producer-secret +1 -0
  266. data/server/instances/9/notifications/54e96913d66f1dd69ec82d2b52268232/subscription.xml +5 -0
  267. data/server/instances/9/notifications/5debc1fd138fdc80940cd5647003ed45/consumer-secret +1 -0
  268. data/server/instances/9/notifications/5debc1fd138fdc80940cd5647003ed45/producer-secret +1 -0
  269. data/server/instances/9/notifications/5debc1fd138fdc80940cd5647003ed45/subscription.xml +27 -0
  270. data/server/instances/9/properties.xml +517 -0
  271. data/server/resources/properties.init +351 -0
  272. data/server/resources/properties.schema.active +79 -0
  273. data/server/resources/properties.schema.finished +79 -0
  274. data/server/resources/properties.schema.inactive +79 -0
  275. data/server/resources/topics.xml +55 -0
  276. data/server/server.rb +25 -0
  277. data/server/todo.txt +20 -0
  278. data/test/delete.rb +27 -0
  279. data/test/load.rb +55 -0
  280. data/test/testset.xml +297 -0
  281. metadata +382 -0
@@ -0,0 +1,19 @@
1
+ /**
2
+ * A simple querystring parser.
3
+ * Example usage: var q = $.parseQuery(); q.fooreturns "bar" if query contains "?foo=bar"; multiple values are added to an array.
4
+ * Values are unescaped by default and plus signs replaced with spaces, or an alternate processing function can be passed in the params object .
5
+ * http://actingthemaggot.com/jquery
6
+ *
7
+ * Copyright (c) 2008 Michael Manning (http://actingthemaggot.com)
8
+ * Dual licensed under the MIT (MIT-LICENSE.txt)
9
+ * and GPL (GPL-LICENSE.txt) licenses.
10
+ **/
11
+ jQuery.parseQuery = function(qs,options) {
12
+ var q = (typeof qs === 'string'?qs:window.location.search), o = {'f':function(v){return unescape(v).replace(/\+/g,' ');}}, options = (typeof qs === 'object' && typeof options === 'undefined')?qs:options, o = jQuery.extend({}, o, options), params = {};
13
+ jQuery.each(q.match(/^\??(.*)$/)[1].split('&'),function(i,p){
14
+ p = p.split('=');
15
+ p[1] = o.f(p[1]);
16
+ params[p[0]] = params[p[0]]?((params[p[0]] instanceof Array)?(params[p[0]].push(p[1]),params[p[0]]):[params[p[0]],p[1]]):p[1];
17
+ });
18
+ return params;
19
+ }
@@ -0,0 +1,368 @@
1
+ /*##############################################################################
2
+ # ____________________________________________________________________
3
+ # / \
4
+ # | ____ __ ___ _____ / ___ ___ |
5
+ # | ____ / \/ \ ' / \ / / /__ / \ / \ |
6
+ # | / _ \ / / / / / / ___/ \__ / /____/ / / |
7
+ # | / |_ / / / / / / / / / \ / / /____/ |
8
+ # | \____/ / / \/_/ / \__/ _____/ \__/ \___/ / |
9
+ # | / |
10
+ # | |
11
+ # | Copyright (c) 2007 MindStep SCOP SARL |
12
+ # | Herve Masson |
13
+ # | |
14
+ # | www.mindstep.com www.mjslib.com |
15
+ # | info-oss@mindstep.com mjslib@mjslib.com |
16
+ # \____________________________________________________________________/
17
+ #
18
+ # Version: 1.0.0
19
+ #
20
+ # (Svn version: $Id: jquery.printf.js 3434 2007-08-27 09:31:20Z herve $)
21
+ #
22
+ #----------[This product is distributed under a BSD license]-----------------
23
+ #
24
+ # Redistribution and use in source and binary forms, with or without
25
+ # modification, are permitted provided that the following conditions
26
+ # are met:
27
+ #
28
+ # 1. Redistributions of source code must retain the above copyright
29
+ # notice, this list of conditions and the following disclaimer.
30
+ #
31
+ # 2. Redistributions in binary form must reproduce the above copyright
32
+ # notice, this list of conditions and the following disclaimer in
33
+ # the documentation and/or other materials provided with the
34
+ # distribution.
35
+ #
36
+ # THIS SOFTWARE IS PROVIDED BY THE MINDSTEP CORP PROJECT ``AS IS'' AND
37
+ # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
38
+ # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
39
+ # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MINDSTEP CORP OR CONTRIBUTORS
40
+ # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
41
+ # OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
42
+ # OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
43
+ # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
44
+ # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
45
+ # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
46
+ # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
47
+ #
48
+ # The views and conclusions contained in the software and documentation
49
+ # are those of the authors and should not be interpreted as representing
50
+ # official policies, either expressed or implied, of MindStep Corp.
51
+ #
52
+ ################################################################################
53
+ #
54
+ # This is a jQuery [jquery.com] plugin that implements printf' like functions
55
+ # (Examples and documentation at: http://mjslib.com)
56
+ #
57
+ # @author: Herve Masson
58
+ # @version: 1.0.0 (8/27/2007)
59
+ # @requires jQuery v1.1.2 or later
60
+ #
61
+ # (Based on the legacy mjslib.org framework)
62
+ #
63
+ ##############################################################################*/
64
+
65
+ (function($) {
66
+
67
+ /*
68
+ ** Just an equivalent of the corresponding libc function
69
+ **
70
+ ** var str=jQuery.sprintf("%010d %-10s",intvalue,strvalue);
71
+ **
72
+ */
73
+
74
+ $.sprintf=function(fmt)
75
+ {
76
+ return _sprintf_(fmt,arguments,1);
77
+ }
78
+
79
+
80
+ /*
81
+ ** vsprintf takes an argument list instead of a list of arguments (duh!)
82
+ ** (useful when forwarding parameters from one of your functions to a printf call)
83
+ **
84
+ ** str=jQuery.vsprintf(parameters[,offset]);
85
+ **
86
+ ** The 'offset' value, when present, instructs vprintf to start at the
87
+ ** corresponding index in the parameter list instead, of 0
88
+ **
89
+ ** Example 1:
90
+ **
91
+ ** function myprintf(<printf like arguments>)
92
+ ** {
93
+ ** var str=jQuery.vsprintf(arguments);
94
+ ** ..
95
+ ** }
96
+ ** myprintf("illegal value : %s",somevalue);
97
+ **
98
+ **
99
+ ** Example 2:
100
+ **
101
+ ** function logit(level,<the rest is printf like arguments>)
102
+ ** {
103
+ ** var str=jQuery.vsprintf(arguments,1); // Skip prm #1
104
+ ** ..
105
+ ** }
106
+ ** logit("error","illegal value : %s",somevalue);
107
+ **
108
+ */
109
+
110
+ $.vsprintf=function(args,offset)
111
+ {
112
+ if(offset === undefined)
113
+ {
114
+ offset=0;
115
+ }
116
+ return _sprintf_(args[offset],args,offset+1);
117
+ }
118
+
119
+
120
+ /*
121
+ ** logging using formatted messages
122
+ ** ================================
123
+ **
124
+ ** If you _hate_ debugging with alert() as much as I do, you might find the
125
+ ** following routines valuable.
126
+ **
127
+ ** jQuery.alertf("The variable 'str' contains: '%s'",str);
128
+ ** Show an alert message with a printf-like argument.
129
+ **
130
+ ** jQuery.logf("This is a log message, time is: %d",(new Date()).getTime());
131
+ ** Log the message on the console with the info level
132
+ **
133
+ ** jQuery.errorf("The given value (%d) is erroneous",avalue);
134
+ ** Log the message on the console with the error level
135
+ **
136
+ */
137
+
138
+ $.alertf=function()
139
+ {
140
+ return alert($.vsprintf(arguments));
141
+ }
142
+
143
+ $.vlogf=function(args)
144
+ {
145
+ if("console" in window)
146
+ {
147
+ console.info($.vsprintf(args));
148
+ }
149
+ }
150
+
151
+ $.verrorf=function(args)
152
+ {
153
+ if("console" in window)
154
+ {
155
+ console.error($.vsprintf(args));
156
+ }
157
+ }
158
+
159
+ $.errorf=function()
160
+ {
161
+ $.verrorf(arguments);
162
+ }
163
+
164
+ $.logf=function()
165
+ {
166
+ $.vlogf(arguments);
167
+ }
168
+
169
+
170
+ /*-------------------------------------------------------------------------------------------
171
+ **
172
+ ** Following code is private; don't use it directly !
173
+ **
174
+ **-----------------------------------------------------------------------------------------*/
175
+
176
+ FREGEXP = /^([^%]*)%([-+])?(0)?(\d+)?(\.(\d+))?([doxXcsf])(.*)$/;
177
+ HDIGITS = ["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];
178
+
179
+ function _empty(str)
180
+ {
181
+ if(str===undefined || str===null)
182
+ {
183
+ return true;
184
+ }
185
+ return (str == "") ? true : false;
186
+ }
187
+
188
+ function _int_(val)
189
+ {
190
+ return Math.floor(val);
191
+ }
192
+
193
+ function _printf_num_(val,base,pad,sign,width)
194
+ {
195
+ val=parseInt(val,10);
196
+ if(isNaN(val))
197
+ {
198
+ return "NaN";
199
+ }
200
+ aval=(val<0)?-val:val;
201
+ var ret="";
202
+
203
+ if(aval==0)
204
+ {
205
+ ret="0";
206
+ }
207
+ else
208
+ {
209
+ while(aval>0)
210
+ {
211
+ ret=HDIGITS[aval%base]+ret;
212
+ aval=_int_(aval/base);
213
+ }
214
+ }
215
+ if(val<0)
216
+ {
217
+ ret="-"+ret;
218
+ }
219
+ if(sign=="-")
220
+ {
221
+ pad=" ";
222
+ }
223
+ return _printf_str_(ret,pad,sign,width,-1);
224
+ }
225
+
226
+ function _printf_float_(val,base,pad,sign,prec)
227
+ {
228
+ if(prec==undefined)
229
+ {
230
+ if(parseInt(val) != val)
231
+ {
232
+ // No decimal part and no precision -> use int formatting
233
+ return ""+val;
234
+ }
235
+ prec=5;
236
+ }
237
+
238
+ var p10=Math.pow(10,prec);
239
+ var ival=""+Math.round(val*p10);
240
+ var ilen=ival.length-prec;
241
+ if(ilen==0)
242
+ {
243
+ return "0."+ival.substr(ilen,prec);
244
+ }
245
+ return ival.substr(0,ilen)+"."+ival.substr(ilen,prec);
246
+ }
247
+
248
+ function _printf_str_(val,pad,sign,width,prec)
249
+ {
250
+ var npad;
251
+
252
+ if(val === undefined)
253
+ {
254
+ return "(undefined)";
255
+ }
256
+ if(val === null)
257
+ {
258
+ return "(null)";
259
+ }
260
+ if((npad=width-val.length)>0)
261
+ {
262
+ if(sign=="-")
263
+ {
264
+ while(npad>0)
265
+ {
266
+ val+=pad;
267
+ npad--;
268
+ }
269
+ }
270
+ else
271
+ {
272
+ while(npad>0)
273
+ {
274
+ val=pad+val;
275
+ npad--;
276
+ }
277
+ }
278
+ }
279
+ if(prec>0)
280
+ {
281
+ return val.substr(0,prec);
282
+ }
283
+ return val;
284
+ }
285
+
286
+ function _sprintf_(fmt,av,index)
287
+ {
288
+ var output="";
289
+ var i,m,line,match;
290
+
291
+ line=fmt.split("\n");
292
+ for(i=0;i<line.length;i++)
293
+ {
294
+ if(i>0)
295
+ {
296
+ output+="\n";
297
+ }
298
+ fmt=line[i];
299
+ while(match=FREGEXP.exec(fmt))
300
+ {
301
+ var sign="";
302
+ var pad=" ";
303
+
304
+ if(!_empty(match[1])) // the left part
305
+ {
306
+ // You can't add this blindly because mozilla set the value to <undefined> when
307
+ // there is no match, and we don't want the "undefined" string be returned !
308
+ output+=match[1];
309
+ }
310
+ if(!_empty(match[2])) // the sign (like in %-15s)
311
+ {
312
+ sign=match[2];
313
+ }
314
+ if(!_empty(match[3])) // the "0" char for padding (like in %03d)
315
+ {
316
+ pad="0";
317
+ }
318
+
319
+ var width=match[4]; // the with (32 in %032d)
320
+ var prec=match[6]; // the precision (10 in %.10s)
321
+ var type=match[7]; // the parameter type
322
+
323
+ fmt=match[8];
324
+
325
+ if(index>=av.length)
326
+ {
327
+ output += "[missing parameter for type '"+type+"']";
328
+ continue;
329
+ }
330
+
331
+ var val=av[index++];
332
+
333
+ switch(type)
334
+ {
335
+ case "d":
336
+ output += _printf_num_(val,10,pad,sign,width);
337
+ break;
338
+ case "o":
339
+ output += _printf_num_(val,8,pad,sign,width);
340
+ break;
341
+ case "x":
342
+ output += _printf_num_(val,16,pad,sign,width);
343
+ break;
344
+ case "X":
345
+ output += _printf_num_(val,16,pad,sign,width).toUpperCase();
346
+ break;
347
+ case "c":
348
+ output += String.fromCharCode(parseInt(val,10));
349
+ break;
350
+ case "s":
351
+ output += _printf_str_(val,pad,sign,width,prec);
352
+ break;
353
+ case "f":
354
+ output += _printf_float_(val,pad,sign,width,prec);
355
+ break;
356
+ default:
357
+ output += "[unknown format '"+type+"']";
358
+ break;
359
+ }
360
+ }
361
+ output+=fmt;
362
+ }
363
+ return output;
364
+ }
365
+
366
+ })(jQuery);
367
+
368
+
@@ -0,0 +1 @@
1
+ Date.ext={};Date.ext.util={};Date.ext.util.xPad=function(x,pad,r){if(typeof (r)=="undefined"){r=10}for(;parseInt(x,10)<r&&r>1;r/=10){x=pad.toString()+x}return x.toString()};Date.prototype.locale="en-GB";if(document.getElementsByTagName("html")&&document.getElementsByTagName("html")[0].lang){Date.prototype.locale=document.getElementsByTagName("html")[0].lang}Date.ext.locales={};Date.ext.locales.en={a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a %d %b %Y %T %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%T"};Date.ext.locales["en-US"]=Date.ext.locales.en;Date.ext.locales["en-US"].c="%a %d %b %Y %r %Z";Date.ext.locales["en-US"].x="%D";Date.ext.locales["en-US"].X="%r";Date.ext.locales["en-GB"]=Date.ext.locales.en;Date.ext.locales["en-AU"]=Date.ext.locales["en-GB"];Date.ext.formats={a:function(d){return Date.ext.locales[d.locale].a[d.getDay()]},A:function(d){return Date.ext.locales[d.locale].A[d.getDay()]},b:function(d){return Date.ext.locales[d.locale].b[d.getMonth()]},B:function(d){return Date.ext.locales[d.locale].B[d.getMonth()]},c:"toLocaleString",C:function(d){return Date.ext.util.xPad(parseInt(d.getFullYear()/100,10),0)},d:["getDate","0"],e:["getDate"," "],g:function(d){return Date.ext.util.xPad(parseInt(Date.ext.util.G(d)/100,10),0)},G:function(d){var y=d.getFullYear();var V=parseInt(Date.ext.formats.V(d),10);var W=parseInt(Date.ext.formats.W(d),10);if(W>V){y++}else{if(W===0&&V>=52){y--}}return y},H:["getHours","0"],I:function(d){var I=d.getHours()%12;return Date.ext.util.xPad(I===0?12:I,0)},j:function(d){var ms=d-new Date(""+d.getFullYear()+"/1/1 GMT");ms+=d.getTimezoneOffset()*60000;var doy=parseInt(ms/60000/60/24,10)+1;return Date.ext.util.xPad(doy,0,100)},m:function(d){return Date.ext.util.xPad(d.getMonth()+1,0)},M:["getMinutes","0"],p:function(d){return Date.ext.locales[d.locale].p[d.getHours()>=12?1:0]},P:function(d){return Date.ext.locales[d.locale].P[d.getHours()>=12?1:0]},S:["getSeconds","0"],u:function(d){var dow=d.getDay();return dow===0?7:dow},U:function(d){var doy=parseInt(Date.ext.formats.j(d),10);var rdow=6-d.getDay();var woy=parseInt((doy+rdow)/7,10);return Date.ext.util.xPad(woy,0)},V:function(d){var woy=parseInt(Date.ext.formats.W(d),10);var dow1_1=(new Date(""+d.getFullYear()+"/1/1")).getDay();var idow=woy+(dow1_1>4||dow1_1<=1?0:1);if(idow==53&&(new Date(""+d.getFullYear()+"/12/31")).getDay()<4){idow=1}else{if(idow===0){idow=Date.ext.formats.V(new Date(""+(d.getFullYear()-1)+"/12/31"))}}return Date.ext.util.xPad(idow,0)},w:"getDay",W:function(d){var doy=parseInt(Date.ext.formats.j(d),10);var rdow=7-Date.ext.formats.u(d);var woy=parseInt((doy+rdow)/7,10);return Date.ext.util.xPad(woy,0,10)},y:function(d){return Date.ext.util.xPad(d.getFullYear()%100,0)},Y:"getFullYear",z:function(d){var o=d.getTimezoneOffset();var H=Date.ext.util.xPad(parseInt(Math.abs(o/60),10),0);var M=Date.ext.util.xPad(o%60,0);return(o>0?"-":"+")+H+M},Z:function(d){return d.toString().replace(/^.*\(([^)]+)\)$/,"$1")},"%":function(d){return"%"}};Date.ext.aggregates={c:"locale",D:"%m/%d/%y",h:"%b",n:"\n",r:"%I:%M:%S %p",R:"%H:%M",t:"\t",T:"%H:%M:%S",x:"locale",X:"locale"};Date.ext.aggregates.z=Date.ext.formats.z(new Date());Date.ext.aggregates.Z=Date.ext.formats.Z(new Date());Date.ext.unsupported={};Date.prototype.strftime=function(fmt){if(!(this.locale in Date.ext.locales)){if(this.locale.replace(/-[a-zA-Z]+$/,"") in Date.ext.locales){this.locale=this.locale.replace(/-[a-zA-Z]+$/,"")}else{this.locale="en-GB"}}var d=this;while(fmt.match(/%[cDhnrRtTxXzZ]/)){fmt=fmt.replace(/%([cDhnrRtTxXzZ])/g,function(m0,m1){var f=Date.ext.aggregates[m1];return(f=="locale"?Date.ext.locales[d.locale][m1]:f)})}var str=fmt.replace(/%([aAbBCdegGHIjmMpPSuUVwWyY%])/g,function(m0,m1){var f=Date.ext.formats[m1];if(typeof (f)=="string"){return d[f]()}else{if(typeof (f)=="function"){return f.call(d,d)}else{if(typeof (f)=="object"&&typeof (f[0])=="string"){return Date.ext.util.xPad(d[f[0]](),f[1])}else{return m1}}}});d=null;return str};
@@ -0,0 +1,270 @@
1
+ /*
2
+ This file is part of CPEE.
3
+
4
+ CPEE is free software: you can redistribute it and/or modify it under the terms
5
+ of the GNU General Public License as published by the Free Software Foundation,
6
+ either version 3 of the License, or (at your option) any later version.
7
+
8
+ CPEE is distributed in the hope that it will be useful, but WITHOUT ANY
9
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10
+ PARTICULAR PURPOSE. See the GNU General Public License for more details.
11
+
12
+ You should have received a copy of the GNU General Public License along with
13
+ CPEE (file COPYING in the main directory). If not, see
14
+ <http://www.gnu.org/licenses/>.
15
+ */
16
+
17
+ html, body {
18
+ font-family: sans-serif,Arial,Verdana,Helvetica;
19
+ font-size: 0.85em;
20
+ }
21
+
22
+ body {
23
+ background-color:#FFFFFF;
24
+ padding:0;
25
+ margin:0;
26
+ color: #000000;
27
+ overflow: hidden;
28
+ }
29
+
30
+ /* Browser Bug, set textarea explicitly */
31
+ textarea, input, select, button {
32
+ font-family: Verdana, Helvetica, sans-serif;
33
+ font-size: 1em;
34
+ resize: none;
35
+ }
36
+
37
+ input::-webkit-input-placeholder { color: red; }
38
+ input:-moz-placeholder { color: red; }
39
+
40
+ a:link { color:#425d73; text-decoration:none; }
41
+ a:visited { color:#425d73; text-decoration:none; }
42
+ a:hover { color:#000000; text-decoration:underline; }
43
+ a:active { color:#000000; text-decoration:underline; }
44
+
45
+ div.tabbed table.tabbar {
46
+ padding: 0;
47
+ margin: 0;
48
+ margin-left: 1em;
49
+ margin-right: 1em;
50
+ margin-top: 1em;
51
+ border-spacing:0;
52
+ border-collapse: separate;
53
+ }
54
+
55
+ div.tabbed.rest table.tabbar {
56
+ padding: 0;
57
+ margin: 0;
58
+ margin-left: 0em;
59
+ margin-right: 0em;
60
+ margin-top: 1.3em;
61
+ border-spacing:0;
62
+ border-collapse: separate;
63
+ }
64
+
65
+ div.tabbed table.tabbar h1 {
66
+ font-size: 1.4em;
67
+ margin-top: 0em;
68
+ padding-top: 0em;
69
+ padding-bottom: 0em;
70
+ }
71
+
72
+ div.tabbed table.tabbar .switch h1:before {
73
+ content: "▽";
74
+ vertical-align:top;
75
+ color: ButtonText;
76
+ }
77
+ div.tabbed table.tabbar .switch h1.margin:before {
78
+ content: "▶";
79
+ color: ButtonText;
80
+ vertical-align:top;
81
+ }
82
+
83
+ div.tabbed table.tabbar tr:first-child { height: 2.6em; }
84
+ div.tabbed table.tabbar .tab {
85
+ cursor: pointer;
86
+ padding: 0em;
87
+ padding-left: 1em;
88
+ padding-right: 1em;
89
+ border: 1pt solid ButtonShadow;
90
+ border-bottom: 1pt solid white;
91
+ border-radius: 1em;
92
+ border-bottom-left-radius: 0em;
93
+ border-bottom-right-radius: 0em;
94
+ width:0%;
95
+ -moz-border-radius: 1em;
96
+ -moz-border-radius-bottomleft: 0em;
97
+ -moz-border-radius-bottomright: 0em;
98
+ -webkit-border-radius: 1em;
99
+ -webkit-border-bottom-left-radius: 0em;
100
+ -webkit-border-bottom-right-radius: 0em;
101
+ }
102
+ div.tabbed table.tabbar .tab h1 { margin-top: 0em; margin-bottom: 0em; padding-top: 0em; padding-bottom: 0em; }
103
+ div.tabbed table.tabbar .tab h1 { white-space: nowrap; }
104
+ div.tabbed table.tabbar .tab.inactive {
105
+ border: 1pt solid ButtonShadow;
106
+ border-radius: 1em;
107
+ border-bottom-left-radius: 0em;
108
+ border-bottom-right-radius: 0em;
109
+ -moz-border-radius: 1em;
110
+ -moz-border-radius-bottomleft: 0em;
111
+ -moz-border-radius-bottomright: 0em;
112
+ -webkit-border-radius: 1em;
113
+ -webkit-border-bottom-left-radius: 0em;
114
+ -webkit-border-bottom-right-radius: 0em;
115
+ }
116
+
117
+ div.tabbed table.tabbar td.tabbehind {
118
+ vertical-align:bottom;
119
+ padding:0.2em 0em;
120
+ border-bottom: 1pt solid buttonshadow;
121
+ border-radius: 1em;
122
+ border-bottom-left-radius: 0em;
123
+ border-bottom-right-radius: 0em;
124
+ width:100%;
125
+ -moz-border-radius: 1em;
126
+ -moz-border-radius-bottomleft: 0em;
127
+ -moz-border-radius-bottomright: 0em;
128
+ -webkit-border-radius: 1em;
129
+ -webkit-border-bottom-left-radius: 0em;
130
+ -webkit-border-bottom-right-radius: 0em;
131
+ text-align:right;
132
+ white-space: nowrap;
133
+ overflow: hidden;
134
+ }
135
+ div.tabbed.rest table.tabbar td.tabbehind {
136
+ padding-right: 1em;
137
+ }
138
+
139
+ div.tabbed table.tabbar td.tabbefore {
140
+ border-bottom: 1pt solid buttonshadow;
141
+ padding-left:1em;
142
+ }
143
+
144
+ div.tabbed table.tabbar tr.border td {
145
+ height:0.1em;
146
+ background-color: ButtonShadow;
147
+ border-left: 1pt solid ButtonShadow;
148
+ border-right: 1pt solid ButtonShadow;
149
+ border-bottom: 1pt solid ButtonShadow;
150
+ }
151
+
152
+ div.tabbed table.tabbar td.switch {
153
+ background-color: ButtonFace;
154
+ border-bottom: 1pt solid ButtonShadow;
155
+ }
156
+
157
+ div.tabbed .tabbelow {
158
+ margin-left: 1em;
159
+ margin-right: 1em;
160
+ padding: 1em;
161
+ border-bottom: 1pt solid ButtonShadow;
162
+ border-left: 1pt solid ButtonShadow;
163
+ border-right: 1pt solid ButtonShadow;
164
+ border-radius: 1em;
165
+ border-top-left-radius: 0em;
166
+ border-top-right-radius: 0em;
167
+ -moz-border-radius: 1em;
168
+ -moz-border-radius-topleft: 0em;
169
+ -moz-border-radius-topright: 0em;
170
+ -webkit-border-radius: 1em;
171
+ -webkit-border-top-left-radius: 0em;
172
+ -webkit-border-top-right-radius: 0em;
173
+ }
174
+
175
+ div.tabbed.rest .tabbelow {
176
+ /* to correctly set the height when resizing with changing height with $.height() -> include padding */
177
+ -moz-box-sizing: border-box;
178
+ -webkit-box-sizing: border-box;
179
+ box-sizing: border-box;
180
+
181
+ padding: 1em;
182
+ margin: 0;
183
+ border-radius: 0;
184
+ border: 0 none;
185
+ -moz-border-radius: 0;
186
+ -webkit-border-radius: 0;
187
+
188
+ overflow: auto;
189
+ }
190
+
191
+ div.tabbed.rest .tabbelow.columns {
192
+ padding:0;
193
+ overflow: hidden;
194
+ border-collapse:collapse;
195
+ border-spacing:0;
196
+ width:100%
197
+ }
198
+ div.tabbed.rest .tabbelow.columns > tbody > tr > td {
199
+ margin: 0;
200
+ padding: 0;
201
+ border: 0 none;
202
+ vertical-align: top;
203
+ }
204
+ div.tabbed.rest .tabbelow.columns .column {
205
+ -moz-box-sizing: border-box;
206
+ -webkit-box-sizing: border-box;
207
+ box-sizing: border-box;
208
+
209
+ margin:0;
210
+ padding: 1em;
211
+
212
+ overflow: auto;
213
+ top: 0;
214
+ }
215
+
216
+ div.tabbed .tabbelow.inactive, div.tabbed .tabbelow .inactive { display: none; }
217
+ div.tabbed .tabbelow .layout {
218
+ width: 100%;
219
+ border-collapse:collapse;
220
+ border-spacing:0;
221
+ border:0 none;
222
+ padding:0;
223
+ margin:0;
224
+ }
225
+ div.tabbed .tabbelow .layout td {
226
+ border:0 none;
227
+ padding:0;
228
+ margin:0;
229
+ }
230
+ div.tabbed .tabbelow .layout tr {
231
+ border:0 none;
232
+ padding:0;
233
+ margin:0;
234
+ }
235
+ div.tabbed .tabbelow .compact {
236
+ border-collapse:collapse;
237
+ border-spacing:0;
238
+ border:0 none;
239
+ padding:0;
240
+ margin:0;
241
+ }
242
+
243
+ div.tabbed .tabbelow .compact td {
244
+ border:0 none;
245
+ padding:0;
246
+ margin:0;
247
+ }
248
+ div.tabbed .tabbelow .compact tr {
249
+ border:0 none;
250
+ padding:0;
251
+ margin:0;
252
+ }
253
+ div.tabbed .tabbelow .layout .fixed { white-space:nowrap; }
254
+ div.tabbed .tabbelow .layout .top { vertical-align: top; }
255
+
256
+ .hidden {
257
+ display: none;
258
+ }
259
+
260
+ .fixedstate {
261
+ background-color: white;
262
+ margin:0;
263
+ padding:1em;
264
+ position:fixed;
265
+ padding-top:0em;
266
+ bottom:0;
267
+ left:0;
268
+ right:0;
269
+ }
270
+ .fixedstate div.tabbed { margin-bottom:0; }