mongo3 0.0.5 → 0.0.6

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 (57) hide show
  1. data/README.rdoc +6 -2
  2. data/Rakefile +1 -0
  3. data/data/populate +13 -11
  4. data/lib/controllers/databases.rb +3 -3
  5. data/lib/controllers/explore.rb +7 -5
  6. data/lib/helpers/main_helper.rb +24 -0
  7. data/lib/mongo3/connection.rb +105 -59
  8. data/lib/mongo3/node.rb +35 -6
  9. data/lib/mongo3.rb +1 -1
  10. data/lib/public/javascripts/{Jit/jit.js → jit.js} +0 -0
  11. data/lib/views/databases/_results.erb +29 -12
  12. data/lib/views/explore/explore.erb +52 -31
  13. data/lib/views/layout.erb +2 -6
  14. data/spec/mongo3/connection_spec.rb +40 -6
  15. metadata +13 -45
  16. data/lib/public/javascripts/Jit/Examples/Hypertree/example1.html +0 -57
  17. data/lib/public/javascripts/Jit/Examples/Hypertree/example1.js +0 -427
  18. data/lib/public/javascripts/Jit/Examples/Hypertree/example2.html +0 -58
  19. data/lib/public/javascripts/Jit/Examples/Hypertree/example2.js +0 -310
  20. data/lib/public/javascripts/Jit/Examples/Hypertree/example3.html +0 -199
  21. data/lib/public/javascripts/Jit/Examples/Hypertree/example3.js +0 -615
  22. data/lib/public/javascripts/Jit/Examples/Other/example1.html +0 -58
  23. data/lib/public/javascripts/Jit/Examples/Other/example1.js +0 -566
  24. data/lib/public/javascripts/Jit/Examples/Other/example2.html +0 -58
  25. data/lib/public/javascripts/Jit/Examples/Other/example2.js +0 -304
  26. data/lib/public/javascripts/Jit/Examples/Other/example3.html +0 -58
  27. data/lib/public/javascripts/Jit/Examples/Other/example3.js +0 -304
  28. data/lib/public/javascripts/Jit/Examples/RGraph/example1.html +0 -57
  29. data/lib/public/javascripts/Jit/Examples/RGraph/example1.js +0 -475
  30. data/lib/public/javascripts/Jit/Examples/RGraph/example2.html +0 -58
  31. data/lib/public/javascripts/Jit/Examples/RGraph/example2.js +0 -356
  32. data/lib/public/javascripts/Jit/Examples/RGraph/example3.html +0 -199
  33. data/lib/public/javascripts/Jit/Examples/RGraph/example3.js +0 -622
  34. data/lib/public/javascripts/Jit/Examples/Spacetree/example1.html +0 -91
  35. data/lib/public/javascripts/Jit/Examples/Spacetree/example1.js +0 -890
  36. data/lib/public/javascripts/Jit/Examples/Spacetree/example2.html +0 -90
  37. data/lib/public/javascripts/Jit/Examples/Spacetree/example2.js +0 -213
  38. data/lib/public/javascripts/Jit/Examples/Spacetree/example3.html +0 -75
  39. data/lib/public/javascripts/Jit/Examples/Spacetree/example3.js +0 -863
  40. data/lib/public/javascripts/Jit/Examples/Treemap/example1.html +0 -56
  41. data/lib/public/javascripts/Jit/Examples/Treemap/example1.js +0 -95
  42. data/lib/public/javascripts/Jit/Examples/Treemap/example2.html +0 -61
  43. data/lib/public/javascripts/Jit/Examples/Treemap/example2.js +0 -750
  44. data/lib/public/javascripts/Jit/Examples/Treemap/example3.html +0 -62
  45. data/lib/public/javascripts/Jit/Examples/Treemap/example3.js +0 -775
  46. data/lib/public/javascripts/Jit/Examples/css/Hypertree.css +0 -0
  47. data/lib/public/javascripts/Jit/Examples/css/Other.css +0 -8
  48. data/lib/public/javascripts/Jit/Examples/css/RGraph.css +0 -0
  49. data/lib/public/javascripts/Jit/Examples/css/Spacetree.css +0 -0
  50. data/lib/public/javascripts/Jit/Examples/css/Treemap.css +0 -78
  51. data/lib/public/javascripts/Jit/Examples/css/base.css +0 -106
  52. data/lib/public/javascripts/Jit/Examples/css/col1.png +0 -0
  53. data/lib/public/javascripts/Jit/Examples/css/col2.png +0 -0
  54. data/lib/public/javascripts/Jit/Examples/css/gradient.png +0 -0
  55. data/lib/public/javascripts/Jit/Extras/excanvas.js +0 -35
  56. data/lib/public/javascripts/Jit/jit-yc.js +0 -1
  57. data/lib/public/javascripts/Jit-1.1.3.zip +0 -0
@@ -1,863 +0,0 @@
1
- var Log = {
2
- elem: false,
3
- write: function(text){
4
- if (!this.elem)
5
- this.elem = document.getElementById('log');
6
- this.elem.innerHTML = text;
7
- this.elem.style.left = (500 - this.elem.offsetWidth / 2) + 'px';
8
- }
9
- };
10
-
11
- function addEvent(obj, type, fn) {
12
- if (obj.addEventListener) obj.addEventListener(type, fn, false);
13
- else obj.attachEvent('on' + type, fn);
14
- };
15
-
16
-
17
- function init(){
18
- var infovis = document.getElementById('infovis');
19
- var w = infovis.offsetWidth, h = infovis.offsetHeight;
20
- //init data
21
- var json = {
22
- id: "node02",
23
- name: "0.2",
24
- data: {},
25
- children: [{
26
- id: "node13",
27
- name: "1.3",
28
- data: {},
29
- children: [{
30
- id: "node24",
31
- name: "2.4",
32
- data: {},
33
- children: [{
34
- id: "node35",
35
- name: "3.5",
36
- data: {},
37
- children: [{
38
- id: "node46",
39
- name: "4.6",
40
- data: {},
41
- children: []
42
- }]
43
- }, {
44
- id: "node37",
45
- name: "3.7",
46
- data: {},
47
- children: [{
48
- id: "node48",
49
- name: "4.8",
50
- data: {},
51
- children: []
52
- }, {
53
- id: "node49",
54
- name: "4.9",
55
- data: {},
56
- children: []
57
- }, {
58
- id: "node410",
59
- name: "4.10",
60
- data: {},
61
- children: []
62
- }, {
63
- id: "node411",
64
- name: "4.11",
65
- data: {},
66
- children: []
67
- }]
68
- }, {
69
- id: "node312",
70
- name: "3.12",
71
- data: {},
72
- children: [{
73
- id: "node413",
74
- name: "4.13",
75
- data: {},
76
- children: []
77
- }]
78
- }, {
79
- id: "node314",
80
- name: "3.14",
81
- data: {},
82
- children: [{
83
- id: "node415",
84
- name: "4.15",
85
- data: {},
86
- children: []
87
- }, {
88
- id: "node416",
89
- name: "4.16",
90
- data: {},
91
- children: []
92
- }, {
93
- id: "node417",
94
- name: "4.17",
95
- data: {},
96
- children: []
97
- }, {
98
- id: "node418",
99
- name: "4.18",
100
- data: {},
101
- children: []
102
- }]
103
- }, {
104
- id: "node319",
105
- name: "3.19",
106
- data: {},
107
- children: [{
108
- id: "node420",
109
- name: "4.20",
110
- data: {},
111
- children: []
112
- }, {
113
- id: "node421",
114
- name: "4.21",
115
- data: {},
116
- children: []
117
- }]
118
- }]
119
- }, {
120
- id: "node222",
121
- name: "2.22",
122
- data: {},
123
- children: [{
124
- id: "node323",
125
- name: "3.23",
126
- data: {},
127
- children: [{
128
- id: "node424",
129
- name: "4.24",
130
- data: {},
131
- children: []
132
- }]
133
- }]
134
- }]
135
- }, {
136
- id: "node125",
137
- name: "1.25",
138
- data: {},
139
- children: [{
140
- id: "node226",
141
- name: "2.26",
142
- data: {},
143
- children: [{
144
- id: "node327",
145
- name: "3.27",
146
- data: {},
147
- children: [{
148
- id: "node428",
149
- name: "4.28",
150
- data: {},
151
- children: []
152
- }, {
153
- id: "node429",
154
- name: "4.29",
155
- data: {},
156
- children: []
157
- }]
158
- }, {
159
- id: "node330",
160
- name: "3.30",
161
- data: {},
162
- children: [{
163
- id: "node431",
164
- name: "4.31",
165
- data: {},
166
- children: []
167
- }]
168
- }, {
169
- id: "node332",
170
- name: "3.32",
171
- data: {},
172
- children: [{
173
- id: "node433",
174
- name: "4.33",
175
- data: {},
176
- children: []
177
- }, {
178
- id: "node434",
179
- name: "4.34",
180
- data: {},
181
- children: []
182
- }, {
183
- id: "node435",
184
- name: "4.35",
185
- data: {},
186
- children: []
187
- }, {
188
- id: "node436",
189
- name: "4.36",
190
- data: {},
191
- children: []
192
- }]
193
- }]
194
- }, {
195
- id: "node237",
196
- name: "2.37",
197
- data: {},
198
- children: [{
199
- id: "node338",
200
- name: "3.38",
201
- data: {},
202
- children: [{
203
- id: "node439",
204
- name: "4.39",
205
- data: {},
206
- children: []
207
- }, {
208
- id: "node440",
209
- name: "4.40",
210
- data: {},
211
- children: []
212
- }, {
213
- id: "node441",
214
- name: "4.41",
215
- data: {},
216
- children: []
217
- }]
218
- }, {
219
- id: "node342",
220
- name: "3.42",
221
- data: {},
222
- children: [{
223
- id: "node443",
224
- name: "4.43",
225
- data: {},
226
- children: []
227
- }]
228
- }, {
229
- id: "node344",
230
- name: "3.44",
231
- data: {},
232
- children: [{
233
- id: "node445",
234
- name: "4.45",
235
- data: {},
236
- children: []
237
- }, {
238
- id: "node446",
239
- name: "4.46",
240
- data: {},
241
- children: []
242
- }, {
243
- id: "node447",
244
- name: "4.47",
245
- data: {},
246
- children: []
247
- }]
248
- }, {
249
- id: "node348",
250
- name: "3.48",
251
- data: {},
252
- children: [{
253
- id: "node449",
254
- name: "4.49",
255
- data: {},
256
- children: []
257
- }, {
258
- id: "node450",
259
- name: "4.50",
260
- data: {},
261
- children: []
262
- }, {
263
- id: "node451",
264
- name: "4.51",
265
- data: {},
266
- children: []
267
- }, {
268
- id: "node452",
269
- name: "4.52",
270
- data: {},
271
- children: []
272
- }, {
273
- id: "node453",
274
- name: "4.53",
275
- data: {},
276
- children: []
277
- }]
278
- }, {
279
- id: "node354",
280
- name: "3.54",
281
- data: {},
282
- children: [{
283
- id: "node455",
284
- name: "4.55",
285
- data: {},
286
- children: []
287
- }, {
288
- id: "node456",
289
- name: "4.56",
290
- data: {},
291
- children: []
292
- }, {
293
- id: "node457",
294
- name: "4.57",
295
- data: {},
296
- children: []
297
- }]
298
- }]
299
- }, {
300
- id: "node258",
301
- name: "2.58",
302
- data: {},
303
- children: [{
304
- id: "node359",
305
- name: "3.59",
306
- data: {},
307
- children: [{
308
- id: "node460",
309
- name: "4.60",
310
- data: {},
311
- children: []
312
- }, {
313
- id: "node461",
314
- name: "4.61",
315
- data: {},
316
- children: []
317
- }, {
318
- id: "node462",
319
- name: "4.62",
320
- data: {},
321
- children: []
322
- }, {
323
- id: "node463",
324
- name: "4.63",
325
- data: {},
326
- children: []
327
- }, {
328
- id: "node464",
329
- name: "4.64",
330
- data: {},
331
- children: []
332
- }]
333
- }]
334
- }]
335
- }, {
336
- id: "node165",
337
- name: "1.65",
338
- data: {},
339
- children: [{
340
- id: "node266",
341
- name: "2.66",
342
- data: {},
343
- children: [{
344
- id: "node367",
345
- name: "3.67",
346
- data: {},
347
- children: [{
348
- id: "node468",
349
- name: "4.68",
350
- data: {},
351
- children: []
352
- }, {
353
- id: "node469",
354
- name: "4.69",
355
- data: {},
356
- children: []
357
- }, {
358
- id: "node470",
359
- name: "4.70",
360
- data: {},
361
- children: []
362
- }, {
363
- id: "node471",
364
- name: "4.71",
365
- data: {},
366
- children: []
367
- }]
368
- }, {
369
- id: "node372",
370
- name: "3.72",
371
- data: {},
372
- children: [{
373
- id: "node473",
374
- name: "4.73",
375
- data: {},
376
- children: []
377
- }, {
378
- id: "node474",
379
- name: "4.74",
380
- data: {},
381
- children: []
382
- }, {
383
- id: "node475",
384
- name: "4.75",
385
- data: {},
386
- children: []
387
- }, {
388
- id: "node476",
389
- name: "4.76",
390
- data: {},
391
- children: []
392
- }]
393
- }, {
394
- id: "node377",
395
- name: "3.77",
396
- data: {},
397
- children: [{
398
- id: "node478",
399
- name: "4.78",
400
- data: {},
401
- children: []
402
- }, {
403
- id: "node479",
404
- name: "4.79",
405
- data: {},
406
- children: []
407
- }]
408
- }, {
409
- id: "node380",
410
- name: "3.80",
411
- data: {},
412
- children: [{
413
- id: "node481",
414
- name: "4.81",
415
- data: {},
416
- children: []
417
- }, {
418
- id: "node482",
419
- name: "4.82",
420
- data: {},
421
- children: []
422
- }]
423
- }]
424
- }, {
425
- id: "node283",
426
- name: "2.83",
427
- data: {},
428
- children: [{
429
- id: "node384",
430
- name: "3.84",
431
- data: {},
432
- children: [{
433
- id: "node485",
434
- name: "4.85",
435
- data: {},
436
- children: []
437
- }]
438
- }, {
439
- id: "node386",
440
- name: "3.86",
441
- data: {},
442
- children: [{
443
- id: "node487",
444
- name: "4.87",
445
- data: {},
446
- children: []
447
- }, {
448
- id: "node488",
449
- name: "4.88",
450
- data: {},
451
- children: []
452
- }, {
453
- id: "node489",
454
- name: "4.89",
455
- data: {},
456
- children: []
457
- }, {
458
- id: "node490",
459
- name: "4.90",
460
- data: {},
461
- children: []
462
- }, {
463
- id: "node491",
464
- name: "4.91",
465
- data: {},
466
- children: []
467
- }]
468
- }, {
469
- id: "node392",
470
- name: "3.92",
471
- data: {},
472
- children: [{
473
- id: "node493",
474
- name: "4.93",
475
- data: {},
476
- children: []
477
- }, {
478
- id: "node494",
479
- name: "4.94",
480
- data: {},
481
- children: []
482
- }, {
483
- id: "node495",
484
- name: "4.95",
485
- data: {},
486
- children: []
487
- }, {
488
- id: "node496",
489
- name: "4.96",
490
- data: {},
491
- children: []
492
- }]
493
- }, {
494
- id: "node397",
495
- name: "3.97",
496
- data: {},
497
- children: [{
498
- id: "node498",
499
- name: "4.98",
500
- data: {},
501
- children: []
502
- }]
503
- }, {
504
- id: "node399",
505
- name: "3.99",
506
- data: {},
507
- children: [{
508
- id: "node4100",
509
- name: "4.100",
510
- data: {},
511
- children: []
512
- }, {
513
- id: "node4101",
514
- name: "4.101",
515
- data: {},
516
- children: []
517
- }, {
518
- id: "node4102",
519
- name: "4.102",
520
- data: {},
521
- children: []
522
- }, {
523
- id: "node4103",
524
- name: "4.103",
525
- data: {},
526
- children: []
527
- }]
528
- }]
529
- }, {
530
- id: "node2104",
531
- name: "2.104",
532
- data: {},
533
- children: [{
534
- id: "node3105",
535
- name: "3.105",
536
- data: {},
537
- children: [{
538
- id: "node4106",
539
- name: "4.106",
540
- data: {},
541
- children: []
542
- }, {
543
- id: "node4107",
544
- name: "4.107",
545
- data: {},
546
- children: []
547
- }, {
548
- id: "node4108",
549
- name: "4.108",
550
- data: {},
551
- children: []
552
- }]
553
- }]
554
- }, {
555
- id: "node2109",
556
- name: "2.109",
557
- data: {},
558
- children: [{
559
- id: "node3110",
560
- name: "3.110",
561
- data: {},
562
- children: [{
563
- id: "node4111",
564
- name: "4.111",
565
- data: {},
566
- children: []
567
- }, {
568
- id: "node4112",
569
- name: "4.112",
570
- data: {},
571
- children: []
572
- }]
573
- }, {
574
- id: "node3113",
575
- name: "3.113",
576
- data: {},
577
- children: [{
578
- id: "node4114",
579
- name: "4.114",
580
- data: {},
581
- children: []
582
- }, {
583
- id: "node4115",
584
- name: "4.115",
585
- data: {},
586
- children: []
587
- }, {
588
- id: "node4116",
589
- name: "4.116",
590
- data: {},
591
- children: []
592
- }]
593
- }, {
594
- id: "node3117",
595
- name: "3.117",
596
- data: {},
597
- children: [{
598
- id: "node4118",
599
- name: "4.118",
600
- data: {},
601
- children: []
602
- }, {
603
- id: "node4119",
604
- name: "4.119",
605
- data: {},
606
- children: []
607
- }, {
608
- id: "node4120",
609
- name: "4.120",
610
- data: {},
611
- children: []
612
- }, {
613
- id: "node4121",
614
- name: "4.121",
615
- data: {},
616
- children: []
617
- }]
618
- }, {
619
- id: "node3122",
620
- name: "3.122",
621
- data: {},
622
- children: [{
623
- id: "node4123",
624
- name: "4.123",
625
- data: {},
626
- children: []
627
- }, {
628
- id: "node4124",
629
- name: "4.124",
630
- data: {},
631
- children: []
632
- }]
633
- }]
634
- }, {
635
- id: "node2125",
636
- name: "2.125",
637
- data: {},
638
- children: [{
639
- id: "node3126",
640
- name: "3.126",
641
- data: {},
642
- children: [{
643
- id: "node4127",
644
- name: "4.127",
645
- data: {},
646
- children: []
647
- }, {
648
- id: "node4128",
649
- name: "4.128",
650
- data: {},
651
- children: []
652
- }, {
653
- id: "node4129",
654
- name: "4.129",
655
- data: {},
656
- children: []
657
- }]
658
- }]
659
- }]
660
- }, {
661
- id: "node1130",
662
- name: "1.130",
663
- data: {},
664
- children: [{
665
- id: "node2131",
666
- name: "2.131",
667
- data: {},
668
- children: [{
669
- id: "node3132",
670
- name: "3.132",
671
- data: {},
672
- children: [{
673
- id: "node4133",
674
- name: "4.133",
675
- data: {},
676
- children: []
677
- }, {
678
- id: "node4134",
679
- name: "4.134",
680
- data: {},
681
- children: []
682
- }, {
683
- id: "node4135",
684
- name: "4.135",
685
- data: {},
686
- children: []
687
- }, {
688
- id: "node4136",
689
- name: "4.136",
690
- data: {},
691
- children: []
692
- }, {
693
- id: "node4137",
694
- name: "4.137",
695
- data: {},
696
- children: []
697
- }]
698
- }]
699
- }, {
700
- id: "node2138",
701
- name: "2.138",
702
- data: {},
703
- children: [{
704
- id: "node3139",
705
- name: "3.139",
706
- data: {},
707
- children: [{
708
- id: "node4140",
709
- name: "4.140",
710
- data: {},
711
- children: []
712
- }, {
713
- id: "node4141",
714
- name: "4.141",
715
- data: {},
716
- children: []
717
- }]
718
- }, {
719
- id: "node3142",
720
- name: "3.142",
721
- data: {},
722
- children: [{
723
- id: "node4143",
724
- name: "4.143",
725
- data: {},
726
- children: []
727
- }, {
728
- id: "node4144",
729
- name: "4.144",
730
- data: {},
731
- children: []
732
- }, {
733
- id: "node4145",
734
- name: "4.145",
735
- data: {},
736
- children: []
737
- }, {
738
- id: "node4146",
739
- name: "4.146",
740
- data: {},
741
- children: []
742
- }, {
743
- id: "node4147",
744
- name: "4.147",
745
- data: {},
746
- children: []
747
- }]
748
- }]
749
- }]
750
- }]
751
- };
752
- var subtree = json.children.pop();
753
- //end
754
- var removing = false;
755
- //init canvas
756
- //Create a new canvas instance.
757
- var canvas = new Canvas('mycanvas', {
758
- 'injectInto': 'infovis',
759
- 'width': w,
760
- 'height': h
761
- });
762
- //end
763
-
764
- //init st
765
- //Create a new ST instance
766
- var st = new ST(canvas, {
767
- //add styles/shapes/colors
768
- //to nodes and edges
769
-
770
- //set overridable=true if you want
771
- //to set styles for nodes individually
772
- Node: {
773
- overridable: true,
774
- width: 60,
775
- height: 20,
776
- color: '#ccc'
777
- },
778
- //change the animation/transition effect
779
- transition: Trans.Quart.easeOut,
780
-
781
- onBeforeCompute: function(node){
782
- Log.write("loading " + node.name);
783
- },
784
-
785
- onAfterCompute: function(node){
786
- Log.write("done");
787
- },
788
-
789
- //This method is triggered on label
790
- //creation. This means that for each node
791
- //this method is triggered only once.
792
- //This method is useful for adding event
793
- //handlers to each node label.
794
- onCreateLabel: function(label, node){
795
- //add some styles to the node label
796
- var style = label.style;
797
- label.id = node.id;
798
- style.color = '#333';
799
- style.fontSize = '0.8em';
800
- style.textAlign = 'center';
801
- style.width = "60px";
802
- style.height = "20px";
803
- label.innerHTML = node.name;
804
- //Delete the specified subtree
805
- //when clicking on a label.
806
- //Only apply this method for nodes
807
- //in the first level of the tree.
808
- if(node._depth == 1) {
809
- style.cursor = 'pointer';
810
- label.onclick = function() {
811
- if(!removing) {
812
- removing = true;
813
- Log.write("removing subtree...");
814
- //remove the subtree
815
- st.removeSubtree(label.id, true, 'animate', {
816
- hideLabels: false,
817
- onAfterCompute: function() {
818
- removing = false;
819
- Log.write("subtree removed");
820
- }
821
- });
822
- }
823
- }
824
- };
825
- },
826
- //This method is triggered right before plotting a node.
827
- //This method is useful for adding style
828
- //to a node before it's being rendered.
829
- onBeforePlotNode: function(node) {
830
- if (node._depth == 1) {
831
- node.data.$color = '#f77';
832
- }
833
- }
834
- });
835
- //load json data
836
- st.loadJSON(json);
837
- //compute node positions and layout
838
- st.compute();
839
- //optional: make a translation of the tree
840
- st.geom.translate(new Complex(-200, 0), "startPos");
841
- //Emulate a click on the root node.
842
- st.onClick(st.root);
843
- //end
844
-
845
- //init handler
846
- //Add an event handler to the add button for
847
- //adding a subtree.
848
- var animate = document.getElementById('animate');
849
- var addButton = document.getElementById('addSubtree');
850
- addButton.onclick = function() {
851
- var type = animate.checked? "animate" : "replot";
852
- subtree.id = "node02";
853
- Log.write("adding subtree...");
854
- //add the subtree
855
- st.addSubtree(subtree, type, {
856
- hideLabels: false,
857
- onAfterCompute: function() {
858
- Log.write("subtree added");
859
- }
860
- });
861
- };
862
- //end
863
- }