mongo3 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (132) hide show
  1. data/.bnignore +3 -0
  2. data/.bnsignore +16 -0
  3. data/.gitignore +1 -0
  4. data/HISTORY +2 -0
  5. data/README.rdoc +78 -0
  6. data/Rakefile +31 -0
  7. data/bin/mongo3 +29 -0
  8. data/config/mongo3.yml +33 -0
  9. data/lib/controllers/collections.rb +7 -0
  10. data/lib/controllers/databases.rb +7 -0
  11. data/lib/controllers/explore.rb +46 -0
  12. data/lib/helpers/crumb_helper.rb +46 -0
  13. data/lib/helpers/main_helper.rb +43 -0
  14. data/lib/main.rb +41 -0
  15. data/lib/mongo3/connection.rb +191 -0
  16. data/lib/mongo3/node.rb +80 -0
  17. data/lib/mongo3.rb +57 -0
  18. data/lib/public/images/c292199_a.jpg +0 -0
  19. data/lib/public/images/close.png +0 -0
  20. data/lib/public/images/close.psd +0 -0
  21. data/lib/public/images/cluster.png +0 -0
  22. data/lib/public/images/cluster.psd +0 -0
  23. data/lib/public/images/db.jpg +0 -0
  24. data/lib/public/images/db.png +0 -0
  25. data/lib/public/images/db.psd +0 -0
  26. data/lib/public/images/delete.png +0 -0
  27. data/lib/public/images/header.png +0 -0
  28. data/lib/public/images/header.psd +0 -0
  29. data/lib/public/images/li_select.png +0 -0
  30. data/lib/public/images/li_select.psd +0 -0
  31. data/lib/public/images/lock.png +0 -0
  32. data/lib/public/images/lock.psd +0 -0
  33. data/lib/public/images/mongo.png +0 -0
  34. data/lib/public/images/mongo.psd +0 -0
  35. data/lib/public/images/mongo3.png +0 -0
  36. data/lib/public/images/mongo3.psd +0 -0
  37. data/lib/public/images/mongo3_db.png +0 -0
  38. data/lib/public/images/mongo3_db.psd +0 -0
  39. data/lib/public/images/mongo_10.psd +0 -0
  40. data/lib/public/images/mongo_db.jpg +0 -0
  41. data/lib/public/images/mongo_db.png +0 -0
  42. data/lib/public/images/mongo_db.psd +0 -0
  43. data/lib/public/images/mongo_db_1.jpg +0 -0
  44. data/lib/public/images/mongo_db_2 +0 -0
  45. data/lib/public/images/mongo_db_4 +0 -0
  46. data/lib/public/images/monkey.jpg +0 -0
  47. data/lib/public/images/monkey.png +0 -0
  48. data/lib/public/images/monkey.psd +0 -0
  49. data/lib/public/images/monkey_1.jpg +8 -0
  50. data/lib/public/images/monkey_10.jpg +8 -0
  51. data/lib/public/javascripts/Jit/Examples/Hypertree/example1.html +57 -0
  52. data/lib/public/javascripts/Jit/Examples/Hypertree/example1.js +427 -0
  53. data/lib/public/javascripts/Jit/Examples/Hypertree/example2.html +58 -0
  54. data/lib/public/javascripts/Jit/Examples/Hypertree/example2.js +310 -0
  55. data/lib/public/javascripts/Jit/Examples/Hypertree/example3.html +199 -0
  56. data/lib/public/javascripts/Jit/Examples/Hypertree/example3.js +615 -0
  57. data/lib/public/javascripts/Jit/Examples/Other/example1.html +58 -0
  58. data/lib/public/javascripts/Jit/Examples/Other/example1.js +566 -0
  59. data/lib/public/javascripts/Jit/Examples/Other/example2.html +58 -0
  60. data/lib/public/javascripts/Jit/Examples/Other/example2.js +304 -0
  61. data/lib/public/javascripts/Jit/Examples/Other/example3.html +58 -0
  62. data/lib/public/javascripts/Jit/Examples/Other/example3.js +304 -0
  63. data/lib/public/javascripts/Jit/Examples/RGraph/example1.html +57 -0
  64. data/lib/public/javascripts/Jit/Examples/RGraph/example1.js +475 -0
  65. data/lib/public/javascripts/Jit/Examples/RGraph/example2.html +58 -0
  66. data/lib/public/javascripts/Jit/Examples/RGraph/example2.js +356 -0
  67. data/lib/public/javascripts/Jit/Examples/RGraph/example3.html +199 -0
  68. data/lib/public/javascripts/Jit/Examples/RGraph/example3.js +622 -0
  69. data/lib/public/javascripts/Jit/Examples/Spacetree/example1.html +91 -0
  70. data/lib/public/javascripts/Jit/Examples/Spacetree/example1.js +890 -0
  71. data/lib/public/javascripts/Jit/Examples/Spacetree/example2.html +90 -0
  72. data/lib/public/javascripts/Jit/Examples/Spacetree/example2.js +213 -0
  73. data/lib/public/javascripts/Jit/Examples/Spacetree/example3.html +75 -0
  74. data/lib/public/javascripts/Jit/Examples/Spacetree/example3.js +863 -0
  75. data/lib/public/javascripts/Jit/Examples/Treemap/example1.html +56 -0
  76. data/lib/public/javascripts/Jit/Examples/Treemap/example1.js +95 -0
  77. data/lib/public/javascripts/Jit/Examples/Treemap/example2.html +61 -0
  78. data/lib/public/javascripts/Jit/Examples/Treemap/example2.js +750 -0
  79. data/lib/public/javascripts/Jit/Examples/Treemap/example3.html +62 -0
  80. data/lib/public/javascripts/Jit/Examples/Treemap/example3.js +775 -0
  81. data/lib/public/javascripts/Jit/Examples/css/Hypertree.css +0 -0
  82. data/lib/public/javascripts/Jit/Examples/css/Other.css +8 -0
  83. data/lib/public/javascripts/Jit/Examples/css/RGraph.css +0 -0
  84. data/lib/public/javascripts/Jit/Examples/css/Spacetree.css +0 -0
  85. data/lib/public/javascripts/Jit/Examples/css/Treemap.css +78 -0
  86. data/lib/public/javascripts/Jit/Examples/css/base.css +106 -0
  87. data/lib/public/javascripts/Jit/Examples/css/col1.png +0 -0
  88. data/lib/public/javascripts/Jit/Examples/css/col2.png +0 -0
  89. data/lib/public/javascripts/Jit/Examples/css/gradient.png +0 -0
  90. data/lib/public/javascripts/Jit/Extras/excanvas.js +35 -0
  91. data/lib/public/javascripts/Jit/jit-yc.js +1 -0
  92. data/lib/public/javascripts/Jit/jit.js +9052 -0
  93. data/lib/public/javascripts/Jit-1.1.3.zip +0 -0
  94. data/lib/public/javascripts/application.js +28 -0
  95. data/lib/public/javascripts/jit.min.js +1 -0
  96. data/lib/public/javascripts/jquery.tools.min.js +38 -0
  97. data/lib/public/javascripts/jquery_min.js +19 -0
  98. data/lib/public/javascripts/jquery_ui_min.js +298 -0
  99. data/lib/public/stylesheets/mongo3.css +275 -0
  100. data/lib/utils.rb +3 -0
  101. data/lib/views/_cltn_info.erb +95 -0
  102. data/lib/views/_collection.erb +5 -0
  103. data/lib/views/_crumbs.erb +13 -0
  104. data/lib/views/_dump_array.erb +5 -0
  105. data/lib/views/_dump_hash.erb +14 -0
  106. data/lib/views/_info.erb +15 -0
  107. data/lib/views/center_js.erb +3 -0
  108. data/lib/views/cltn_show.erb +1 -0
  109. data/lib/views/collection.erb +44 -0
  110. data/lib/views/database.erb +37 -0
  111. data/lib/views/db_show.erb +1 -0
  112. data/lib/views/explore.erb +250 -0
  113. data/lib/views/landscape.erb +45 -0
  114. data/lib/views/layout.erb +28 -0
  115. data/lib/views/more_data_js.erb +3 -0
  116. data/lib/views/show_cltn.erb +1 -0
  117. data/lib/views/update_crumb_js.erb +1 -0
  118. data/spec/mongo3/node_spec.rb +84 -0
  119. data/spec/spec_helper.rb +8 -0
  120. data/tasks/bones.rake +20 -0
  121. data/tasks/gem.rake +201 -0
  122. data/tasks/git.rake +40 -0
  123. data/tasks/notes.rake +27 -0
  124. data/tasks/post_load.rake +32 -0
  125. data/tasks/rdoc.rake +56 -0
  126. data/tasks/rubyforge.rake +55 -0
  127. data/tasks/setup.rb +292 -0
  128. data/tasks/spec.rake +54 -0
  129. data/tasks/svn.rake +47 -0
  130. data/tasks/test.rake +40 -0
  131. data/tasks/zentest.rake +36 -0
  132. metadata +213 -0
@@ -0,0 +1,275 @@
1
+ * {
2
+ outline-color: invert;
3
+ outline-style: none;
4
+ outline-width: medium;
5
+ margin: 0px;
6
+ padding: 0px;
7
+ }
8
+
9
+ body {
10
+ font-family: "Trebuchet","Lucida Grande","Lucida Sans Unicode","bitstream vera sans","trebuchet ms","verdana";
11
+ background: #212021 url(../images/header.png) repeat-x top left;
12
+ color: #fff;
13
+ font-size: 2em;
14
+ font-size-adjust: none;
15
+ font-stretch: normal;
16
+ font-style: normal;
17
+ font-variant: normal;
18
+ font-weight: normal;
19
+ margin: 0;
20
+ }
21
+
22
+ #overall {
23
+ margin: 5px auto;
24
+ width: 950px;
25
+ overflow: none;
26
+ }
27
+
28
+ span#log {
29
+ color: #ff9d2a;
30
+ }
31
+
32
+ div#logo {
33
+ float: left;
34
+ width: 45%;
35
+ margin: 10px 0px 25px 20px;
36
+ }
37
+
38
+ #main {
39
+ clear: left;
40
+ margin: 20px 10px 10px 20px;
41
+ overflow: none;
42
+ }
43
+
44
+ ul {
45
+ list-style-image: none;
46
+ list-style-position: outside;
47
+ list-style-type: none;
48
+ }
49
+
50
+ a {
51
+ text-decoration: none;
52
+ color: #434343;
53
+ }
54
+ a:hover {
55
+ color: #92b948;
56
+ }
57
+
58
+ div#crumbs {
59
+ margin: 0px 0px 10px 0px;
60
+ color: #c1c1c1;
61
+ font-size: 0.5em;
62
+ }
63
+
64
+ a.info {
65
+ cursor: pointer;
66
+ font-size: .9em;
67
+ color: #f4f4f4;
68
+ }
69
+ a.info:hover {
70
+ border-bottom: 3px #92b948 solid;
71
+ color: #92b948;
72
+ }
73
+
74
+ span.crumb {
75
+ font-size: 1em;
76
+ cursor: pointer;
77
+ }
78
+ span.crumb:hover {
79
+ border-bottom: 3px #92b948 solid;
80
+ color: #92b948;
81
+ }
82
+ span.selected {
83
+ color: #92b948;
84
+ }
85
+
86
+
87
+ p.title {
88
+ font-size: 1.2em;
89
+ color: #c1c1c1;
90
+ }
91
+ p.title span{
92
+ font-size: 1em;
93
+ margin-bottom: 10px;
94
+ color: #c1c1c1;
95
+ }
96
+
97
+ /* ---------------------------------------------------------------------------- */
98
+ /* Common */
99
+
100
+ div.item {
101
+ border-top: 1px #1c1c1c solid;
102
+ padding: 10px 0px 0px 0px;
103
+ height: 100px;
104
+ clear: both;
105
+ width: 100%;
106
+ }
107
+
108
+ div.item .tag {
109
+ float:left;
110
+ }
111
+
112
+ div.item .lock {
113
+ float: right;
114
+ width: 5%;
115
+ color: #434343;
116
+ }
117
+
118
+ div.selected {
119
+ background: transparent url(/images/li_select.png) repeat-x;
120
+ cursor: pointer;
121
+ }
122
+ ul.host_info {
123
+ font-size: 0.5em;
124
+ color: #c1c1c1;
125
+ float: left;
126
+ }
127
+ span {
128
+ color: #c1c1c1;
129
+ font-size: 0.5em;
130
+ }
131
+ p.heading {
132
+ width: 80%;
133
+ float: left;
134
+ }
135
+
136
+ div.content {
137
+ font-size: 1em;
138
+ color: #434343;
139
+ }
140
+
141
+ /* ---------------------------------------------------------------------------- */
142
+ /* Overlay */
143
+
144
+ div#details {
145
+ padding: 0px 10px;
146
+ margin-top: 7px;
147
+ display: none;
148
+ font-size: 0.5em;
149
+ color: #fff;
150
+ background: #1c1c1c;
151
+ border: 1px #92b948 solid;
152
+ -moz-border-radius-bottomleft: 7px;
153
+ -moz-border-radius-topleft: 7px;
154
+ -moz-border-radius-bottomright: 7px;
155
+ -moz-border-radius-topright: 7px;
156
+ }
157
+
158
+ .overlay {
159
+ display: none;
160
+ z-index: 10000;
161
+ background: #767c6b;
162
+ border: 1px #afdb5a solid;
163
+ color: #fff;
164
+ width: 650px;
165
+ min-height: 400px;
166
+ -moz-border-radius-bottomleft: 7px;
167
+ -moz-border-radius-topleft: 7px;
168
+ -moz-border-radius-bottomright: 7px;
169
+ -moz-border-radius-topright: 7px;
170
+ -moz-box-shadow: 0 0 90px 5px #000;
171
+ -webkit-box-shadow: 0 0 90px #000;
172
+ }
173
+ .overlay .close {
174
+ background-image: url(../images/close.png);
175
+ position: absolute;
176
+ right: -15px;
177
+ top: -15px;
178
+ cursor: pointer;
179
+ height: 35px;
180
+ width: 35px;
181
+ }
182
+
183
+ /* ---------------------------------------------------------------------------- */
184
+ /* Scrollers */
185
+
186
+ div.scrollable {
187
+ position: relative;
188
+ overflow: hidden;
189
+ height: 440px;
190
+ }
191
+
192
+ div.scrollable div.items {
193
+ width:800px;
194
+ position:absolute;
195
+ height:20000em;
196
+ }
197
+
198
+ #actions {
199
+ width:800px;
200
+ margin:30px 0 10px 0;
201
+ }
202
+
203
+ #actions a {
204
+ font-size: 0.6em;
205
+ text-decoration: none;
206
+ cursor: pointer;
207
+ color: #c1c1c1;
208
+ }
209
+
210
+ #actions a:hover {
211
+ text-decoration: underline;
212
+ color: #92b948;
213
+ }
214
+
215
+ .disabled {
216
+ visibility:hidden;
217
+ }
218
+
219
+ .nextPage {
220
+ float:right;
221
+ }
222
+
223
+
224
+ /* Explorer css */
225
+ div#landscape {
226
+ width: 615px;
227
+ height: 550px;
228
+ -moz-border-radius-bottomleft: 7px;
229
+ -moz-border-radius-topleft: 7px;
230
+ -moz-border-radius-bottomright: 7px;
231
+ -moz-border-radius-topright: 7px;
232
+ border: 1px #92b948 solid;
233
+ float: left;
234
+ }
235
+
236
+ div#right {
237
+ margin-left: 625px;
238
+ padding: 10px;
239
+ width: 254px;
240
+ height: 530px;
241
+ -moz-border-radius-bottomleft: 7px;
242
+ -moz-border-radius-topleft: 7px;
243
+ -moz-border-radius-bottomright: 7px;
244
+ -moz-border-radius-topright: 7px;
245
+ border: 1px #92b948 solid;
246
+ }
247
+
248
+
249
+ /* Tree nodes */
250
+ span.what {
251
+ font-size: .4em;
252
+ color: #92b946;
253
+ text-align:center;
254
+ }
255
+ .edge {
256
+ color: #434343;
257
+ z-index: 0;
258
+ }
259
+ .node {
260
+ color: #fff;
261
+ font-size: 0.3em;
262
+ cursor: pointer;
263
+ z-index: 100;
264
+ }
265
+ .level_0 {
266
+ font-weight: bold;
267
+ }
268
+ .level_1 {
269
+ }
270
+ .level_2 {
271
+ color: #c1c1c1;
272
+ }
273
+ .level_3 {
274
+ color: #5273ff;
275
+ }
data/lib/utils.rb ADDED
@@ -0,0 +1,3 @@
1
+ module Utils
2
+ end
3
+ require_all_libs_relative_to(__FILE__, 'utils' )
@@ -0,0 +1,95 @@
1
+ <style>
2
+
3
+ table.info {
4
+ border-spacing: 0;
5
+ color: #fff;
6
+ font-size: 1em;
7
+ text-align: left;
8
+ }
9
+ table.info tr td.label {
10
+ color: #3664a7;
11
+ font-size: 1.2em;
12
+ }
13
+ table.info tr td {
14
+ -moz-background-clip: border;
15
+ -moz-background-inline-policy: continuous;
16
+ -moz-background-origin: padding;
17
+ /* padding: 2px 10px;*/
18
+ }
19
+
20
+ table.index {
21
+ /* width: 98%;*/
22
+ border-color: #afdb5a #afdb5a -moz-use-text-color -moz-use-text-color;
23
+ border-spacing: 5;
24
+ border-style: solid solid none none;
25
+ border-width: 1px 1px 0 0;
26
+ color: #666666;
27
+ font-size: 0.8em;
28
+ border: 0;
29
+ }
30
+ table.index thead {
31
+ text-align: left;
32
+ background: #6c7a52 none repeat scroll 0 0;
33
+ }
34
+ table.index tr td.label {
35
+ color: #962920;
36
+ font-size: 1.2em;
37
+ }
38
+ table.index th {
39
+ color: #fff;
40
+ font-weight: bold;
41
+ padding: 2px 10px;
42
+ }
43
+ table.index tr td {
44
+ -moz-background-clip: border;
45
+ -moz-background-inline-policy: continuous;
46
+ -moz-background-origin: padding;
47
+ border-bottom: 1px solid #afdb5a;
48
+ border-left: 1px solid #afdb5a;
49
+ padding: 2px 10px;
50
+ }
51
+
52
+ div#indexes {
53
+ margin: 10px 10px;
54
+ font-size: 0.6em;
55
+ }
56
+
57
+ p.dialog {
58
+ color: #afdb5a;
59
+ text-align: center;
60
+ }
61
+ </style>
62
+
63
+
64
+ <p class="dialog"><%= @cltn.name %>(<%=@cltn.count%> items)</p>
65
+
66
+ <div id="indexes">
67
+ <h2>Indexes</h2>
68
+ <table class="info">
69
+ <thead>
70
+ <th>Name</th>
71
+ <th>Details</th>
72
+ <th>&nbsp;</td>
73
+ </thead>
74
+ <tbody>
75
+ <% @cltn.index_information.each_pair do |index_name, details| %>
76
+ <tr>
77
+ <td valign="top"><%=index_name%></td>
78
+ <td>
79
+ <table class="index">
80
+ <% details.each do |pair| %>
81
+ <tr>
82
+ <td><%=pair.first%></td>
83
+ <td><%=pair.last%></td>
84
+ </tr>
85
+ <% end %>
86
+ </table>
87
+ </td>
88
+ <td valign="top">
89
+ <img src="/images/delete.png"/>
90
+ </td>
91
+ </tr>
92
+ <% end %>
93
+ </tbody>
94
+ </table>
95
+ </div>
@@ -0,0 +1,5 @@
1
+ <ul>
2
+ <% @db.collection_names.sort{ |a,b| a <=> b }.each do |cltn|%>
3
+ <li><%=cltn%> [<%=@db[cltn].count%> rows]</li>
4
+ <% end %>
5
+ </ul>
@@ -0,0 +1,13 @@
1
+ <% count = 1; @crumbs.each do |pair| %>
2
+ <% clazz = (pair == @crumbs.last ? "selected" : "" )%>
3
+ <span rel="<%=pair.last%>" class="crumb <%=clazz%>"><%=pair.first%></span>
4
+ <% if count < @crumbs.size %>&raquo;<%end%>
5
+ <% count +=1; end %>
6
+
7
+ <script>
8
+ $( function() {
9
+ $('span.crumb').click( function() {
10
+ $.ajax( {url: $(this).attr('rel'), dataType: 'script', method: 'GET'} );
11
+ });
12
+ } );
13
+ </script>
@@ -0,0 +1,5 @@
1
+ <ul>
2
+ <% @info.sort.each do |i| %>
3
+ <li><%=i%></li>
4
+ <% end %>
5
+ </ul>
@@ -0,0 +1,14 @@
1
+ <table border="0" cellpadding="10" cellspacing="20" style="width:98%;border-collapse:collapse;text-align:left">
2
+ <thead style="font-weight:bold;border-bottom:1px #c1c1c1 solid;color:#c1c1c1">
3
+ <th width="20%">Name</th>
4
+ <th width="100%">Value</th>
5
+ </thead>
6
+ <tbody>
7
+ <% @info.each_pair do |name, info| %>
8
+ <tr valign="top">
9
+ <td><%= name %></td>
10
+ <td><%= display_info(info) %></td>
11
+ </tr>
12
+ <% end %>
13
+ </tbody>
14
+ </table>
@@ -0,0 +1,15 @@
1
+ <h1 style="text-align:center">Details</h1>
2
+ <table border="0" cellpadding="10" cellspacing="20" style="width:100%;border-collapse:collapse;;font-size:0.7em;text-align:left">
3
+ <thead style="font-weight:bold;font-size:1em;border-bottom:1px #c1c1c1 solid;color:#c1c1c1">
4
+ <th width="20%">Name</th>
5
+ <th width="80%">Value</th>
6
+ </thead>
7
+ <tbody>
8
+ <% @info.each_pair do |name, info| %>
9
+ <tr valign="top">
10
+ <td><%= name %></td>
11
+ <td><%= display_info(info) %></td>
12
+ </tr>
13
+ <% end %>
14
+ </tbody>
15
+ </table>
@@ -0,0 +1,3 @@
1
+ $('div#crumbs').html( "<%=escape_javascript(partial(:crumbs))%>" );
2
+
3
+ center( '<%=@node_id%>' );
@@ -0,0 +1 @@
1
+ $('div#details').html( "<h1> Hello CLTN</h1" );
@@ -0,0 +1,44 @@
1
+ <%= partial :crumbs %>
2
+
3
+ <div id="actions">
4
+ <a class="prevPage">&laquo; back</a>
5
+ <a class="nextPage">more &raquo;</a>
6
+ </div>
7
+
8
+ <div class="scrollable vertical">
9
+ <div class="items">
10
+ <% @db.collection_names.sort{ |a,b| a <=> b }.each do |cltn|%>
11
+ <div class="item" rel="#details" href="/show_cltn/<%=cltn%>">
12
+ <img class="tag" src="/images/mongo.png"/>
13
+ <p><%= cltn %></p>
14
+ <span><%= @db[cltn].count%> rows</span>
15
+ </div>
16
+ <% end %>
17
+ </div>
18
+ </div>
19
+
20
+ <div class="overlay" id="details">
21
+ <div class="content"></div>
22
+ </div>
23
+
24
+ <script>
25
+ $( function() {
26
+
27
+ $("div.item[rel]").overlay( {
28
+ expose: '#434343',
29
+ onBeforeLoad: function() {
30
+ $.ajax( { url: this.getTrigger().attr( 'href' ), dataType:'script', type:'GET' } );
31
+ }
32
+ })
33
+
34
+ $("div.scrollable").scrollable({
35
+ vertical:true,
36
+ size: 5
37
+ }).mousewheel();
38
+
39
+ $("div.item").hover(
40
+ function() { $(this).addClass( "selected" ) },
41
+ function() { $(this).removeClass( "selected" ) }
42
+ );
43
+ })
44
+ </script>
@@ -0,0 +1,37 @@
1
+ <%= partial :crumbs %>
2
+
3
+ <div id="actions">
4
+ <a class="prevPage">&laquo; back</a>
5
+ <a class="nextPage">more &raquo;</a>
6
+ </div>
7
+
8
+ <div class="scrollable vertical">
9
+ <div class="items">
10
+ <% db_info = @connection.database_info; db_info.keys.sort.each do |db_name| %>
11
+ <% next if skip_db?( db_name )%>
12
+ <div id="<%=db_name%>" class="item">
13
+ <img class="tag" src="/images/mongo3_db.png"/>
14
+ <p><%= db_name %></p>
15
+ <span><%= to_mb(db_info[db_name]) %></span>
16
+ </div>
17
+ <% end %>
18
+ </div>
19
+ </div>
20
+
21
+ <script>
22
+ $( function() {
23
+ $("div.item").click( function() {
24
+ window.location.href = "/cltn/" + this.id;
25
+ });
26
+
27
+ $("div.scrollable").scrollable({
28
+ vertical:true,
29
+ size: 5
30
+ }).mousewheel();
31
+
32
+ $("div.item").hover(
33
+ function() { $(this).addClass( "selected" ) },
34
+ function() { $(this).removeClass( "selected" ) }
35
+ );
36
+ })
37
+ </script>
@@ -0,0 +1 @@
1
+ $('div#details').html( "<h1> Hello DB</h1" );