42
42
* Render a document preview for the black code box with referenced
43
43
* linked to the collection and id for that database reference.
44
44
*
45
- * @param string $document
45
+ * @param string $document
46
46
* @return string $preview
47
47
*/
48
48
function renderDocumentPreview ($ mongo , $ document )
@@ -92,7 +92,7 @@ function linkDocumentReferences($mongo, $document)
92
92
93
93
/**
94
94
* Prepare user submitted array of PHP code as a MongoDB
95
- * document that can be saved.
95
+ * document that can be saved.
96
96
*
97
97
* @param mixed $value
98
98
* @return array $document
@@ -212,7 +212,7 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
212
212
$ mongo
213
213
->selectDB ($ _REQUEST ['delete_db ' ])
214
214
->drop ();
215
-
215
+
216
216
header ('location: ' . $ _SERVER ['PHP_SELF ' ]);
217
217
exit ;
218
218
}
@@ -221,18 +221,18 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
221
221
if (isset ($ _REQUEST ['create_db ' ])) {
222
222
$ mongo ->selectDB ($ _REQUEST ['create_db ' ])->createCollection ('__tmp_collection_ ' );
223
223
$ mongo ->selectDB ($ _REQUEST ['create_db ' ])->dropCollection ('__tmp_collection_ ' );
224
-
224
+
225
225
header ('location: ' . $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ _REQUEST ['create_db ' ]);
226
226
exit ;
227
-
227
+
228
228
}
229
229
230
230
// CREATE DB COLLECTION
231
231
if (isset ($ _REQUEST ['create_collection ' ])) {
232
232
$ mongo
233
233
->selectDB ($ _REQUEST ['db ' ])
234
234
->createCollection ($ _REQUEST ['create_collection ' ]);
235
-
235
+
236
236
header ('location: ' . $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ _REQUEST ['db ' ] . '&collection= ' . $ _REQUEST ['create_collection ' ]);
237
237
exit ;
238
238
}
@@ -243,7 +243,7 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
243
243
->selectDB ($ _REQUEST ['db ' ])
244
244
->selectCollection ($ _REQUEST ['delete_collection ' ])
245
245
->drop ();
246
-
246
+
247
247
header ('location: ' . $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ _REQUEST ['db ' ]);
248
248
exit ;
249
249
}
@@ -351,16 +351,15 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
351
351
}
352
352
353
353
#create_form {
354
- position: absolute;
355
- top: 20px;
356
- right: 20px;
357
354
-moz-border-radius: 10px;
358
355
-webkit-border-radius: 10px;
359
356
border-radius: 10px;
360
357
padding: 15px;
361
358
background: #f5f5f5;
362
359
border: 1px solid #ccc;
363
360
width: 400px;
361
+ float: right;
362
+ margin-bottom: 10px;
364
363
}
365
364
#create_form label {
366
365
float: left;
@@ -447,11 +446,11 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
447
446
}
448
447
</style>
449
448
</head>
450
-
449
+
451
450
<body>
452
451
453
452
<div id="content">
454
- <h1>PHP MongoDB Admin</h1>
453
+ <h1>PHP MongoDB Admin - <?php echo $ server ?> </h1>
455
454
<?php if (isset ($ _REQUEST ['error ' ])): ?>
456
455
<div class="error">
457
456
<?php echo $ _REQUEST ['error ' ] ?>
@@ -477,6 +476,7 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
477
476
<thead>
478
477
<tr>
479
478
<th>Name</th>
479
+ <th>Collections</th>
480
480
<th></th>
481
481
</tr>
482
482
</thead>
@@ -485,6 +485,7 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
485
485
<?php foreach ($ dbs ['databases ' ] as $ db ): if ($ db ['name ' ] === 'local ' || $ db ['name ' ] === 'admin ' ) continue ; ?>
486
486
<tr>
487
487
<td><a href="<?php echo $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ db ['name ' ] ?> "><?php echo $ db ['name ' ] ?> </a></td>
488
+ <td><?php echo count ($ mongo ->selectDb ($ db ['name ' ])->listCollections ()) ?> </td>
488
489
<td><a href="<?php echo $ _SERVER ['PHP_SELF ' ] ?> ?delete_db=<?php echo $ db ['name ' ] ?> " onClick="return confirm('Are you sure you want to delete this database?');">Delete</a></td>
489
490
</tr>
490
491
<?php endforeach ; ?>
@@ -510,6 +511,7 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
510
511
<thead>
511
512
<tr>
512
513
<th>Name</th>
514
+ <th>Documents</th>
513
515
<th></th>
514
516
</tr>
515
517
</thead>
@@ -518,6 +520,7 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
518
520
<?php foreach ($ collections as $ collection ): ?>
519
521
<tr>
520
522
<td><a href="<?php echo $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ _REQUEST ['db ' ] . '&collection= ' . $ collection ->getName () ?> "><?php echo $ collection ->getName () ?> </a></td>
523
+ <td><?php echo $ collection ->count (); ?> </td>
521
524
<td><a href="<?php echo $ _SERVER ['PHP_SELF ' ] ?> ?db=<?php echo $ _REQUEST ['db ' ] ?> &delete_collection=<?php echo $ collection ->getName () ?> " onClick="return confirm('Are you sure you want to delete this collection?');">Delete</a></td>
522
525
</tr>
523
526
<?php endforeach ; ?>
@@ -527,12 +530,6 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
527
530
<?php // CREATE AND LIST DB COLLECTION DOCUMENTS ?>
528
531
<?php elseif ( ! isset ($ _REQUEST ['id ' ]) || isset ($ _REQUEST ['search ' ])): ?>
529
532
530
- <h2>
531
- <a href="<?php echo $ _SERVER ['PHP_SELF ' ] ?> ">Databases</a> >>
532
- <a href="<?php echo $ _SERVER ['PHP_SELF ' ] ?> ?db=<?php echo $ _REQUEST ['db ' ] ?> "><?php echo $ _REQUEST ['db ' ] ?> </a> >>
533
- <?php echo $ _REQUEST ['collection ' ] ?>
534
- </h2>
535
-
536
533
<?php
537
534
$ max = 20 ;
538
535
$ page = isset ($ _REQUEST ['page ' ]) ? $ _REQUEST ['page ' ] : 1 ;
@@ -555,24 +552,35 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
555
552
->find ()
556
553
->limit ($ limit )
557
554
->skip ($ skip );
558
- }
555
+ }
559
556
560
557
$ total = $ cursor ->count ();
561
558
$ pages = ceil ($ total / $ max );
559
+
562
560
if ($ pages && $ page > $ pages ) {
563
561
header ('location: ' . $ _SERVER ['HTTP_REFERER ' ]);
564
562
exit ;
565
563
}
566
- if ($ pages > 1 ): ?>
564
+ ?>
565
+
566
+ <h2>
567
+ <a href="<?php echo $ _SERVER ['PHP_SELF ' ] ?> ">Databases</a> >>
568
+ <a href="<?php echo $ _SERVER ['PHP_SELF ' ] ?> ?db=<?php echo $ _REQUEST ['db ' ] ?> "><?php echo $ _REQUEST ['db ' ] ?> </a> >>
569
+ <?php echo $ _REQUEST ['collection ' ] ?> (<?php echo $ cursor ->count () ?> Documents)
570
+ </h2>
571
+
572
+ <?php if ($ pages > 1 ): ?>
567
573
<div id="pager">
568
- <?php echo $ pages ?> pages. Go to page
569
- <input type="text" name="page" size="4" value="<?php echo $ page ?> " onChange="javascript: location.href = '<?php echo $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ _REQUEST ['db ' ] . '&collection= ' . $ _REQUEST ['collection ' ] ?> &page=' + this.value;" />
574
+ <?php echo $ pages ?> pages. Go to page
575
+ <input type="text" name="page" size="4" value="<?php echo $ page ?> " onChange="javascript: location.href = '<?php echo $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ _REQUEST ['db ' ] . '&collection= ' . $ _REQUEST ['collection ' ] ?> &search= <?php echo urlencode ( $ _REQUEST [ ' search ' ]) ?> & page=' + this.value;" />
570
576
<input type="button" name="go" value="Go" />
571
577
</div>
572
578
<?php endif ; ?>
573
579
574
580
<div id="search">
575
- <form action="<?php echo $ _SERVER ['PHP_SELF ' ] ?> ?db=<?php echo $ _REQUEST ['db ' ] ?> &collection=<?php echo $ _REQUEST ['collection ' ] ?> " method="POST">
581
+ <form action="<?php echo $ _SERVER ['PHP_SELF ' ] ?> " method="GET">
582
+ <input type="hidden" name="db" value="<?php echo $ _REQUEST ['db ' ] ?> " />
583
+ <input type="hidden" name="collection" value="<?php echo $ _REQUEST ['collection ' ] ?> " />
576
584
<label for="search_input">Search</label>
577
585
<input type="text" id="search_input" name="search" size="36"<?php echo isset ($ _REQUEST ['search ' ]) ? ' value=" ' . htmlspecialchars ($ _REQUEST ['search ' ]) . '" ' : '' ?> />
578
586
<input type="submit" name="submit_search" value="Search" />
@@ -630,7 +638,7 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
630
638
<?php endforeach ; ?>
631
639
</tbody>
632
640
</table>
633
-
641
+
634
642
<form action="<?php echo $ _SERVER ['PHP_SELF ' ] ?> " method="POST">
635
643
<input type="hidden" name="values[_id]" value="<?php echo $ document ['_id ' ] ?> " />
636
644
@@ -652,8 +660,8 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
652
660
653
661
<h2>
654
662
<a href="<?php echo $ _SERVER ['PHP_SELF ' ] ?> ">Databases</a> >>
655
- <a href="<?php echo $ _SERVER ['PHP_SELF ' ] ?> ?db=<?php echo $ _REQUEST ['db ' ] ?> "><?php echo $ _REQUEST ['db ' ] ?> </a> >>
656
- <a href="<?php echo $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ _REQUEST ['db ' ] . '&collection= ' . $ _REQUEST ['collection ' ] ?> "><?php echo $ _REQUEST ['collection ' ] ?> </a> >>
663
+ <a href="<?php echo $ _SERVER ['PHP_SELF ' ] ?> ?db=<?php echo $ _REQUEST ['db ' ] ?> "><?php echo $ _REQUEST ['db ' ] ?> </a> >>
664
+ <a href="<?php echo $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ _REQUEST ['db ' ] . '&collection= ' . $ _REQUEST ['collection ' ] ?> "><?php echo $ _REQUEST ['collection ' ] ?> </a> >>
657
665
<?php echo $ _REQUEST ['id ' ] ?>
658
666
</h2>
659
667
<?php $ document = findMongoDbDocument ($ _REQUEST ['id ' ], $ _REQUEST ['db ' ], $ _REQUEST ['collection ' ]); ?>
@@ -681,4 +689,3 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
681
689
</div>
682
690
</body>
683
691
</html>
684
-
0 commit comments