@@ -533,10 +533,12 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
533
533
$ skip = ($ page - 1 ) * $ max ;
534
534
535
535
if (isset ($ _REQUEST ['search ' ]) && is_object (json_decode ($ _REQUEST ['search ' ]))) {
536
+ $ search = json_decode ($ _REQUEST ['search ' ], true );
537
+
536
538
$ cursor = $ mongo
537
539
->selectDB ($ _REQUEST ['db ' ])
538
540
->selectCollection ($ _REQUEST ['collection ' ])
539
- ->find (json_decode ( $ _REQUEST [ ' search ' ], true ) )
541
+ ->find ($ search )
540
542
->limit ($ limit )
541
543
->skip ($ skip );
542
544
} else {
@@ -583,8 +585,34 @@ function findMongoDbDocument($id, $db, $collection, $forceCustomId = false)
583
585
<td><a href="<?php echo $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ _REQUEST ['db ' ] . '&collection= ' . $ _REQUEST ['collection ' ] ?> &id=<?php echo (string ) $ document ['_id ' ] ?> &custom_id=1"><?php echo (string ) $ document ['_id ' ] ?> </a></td>
584
586
<?php endif ; ?>
585
587
<td>
586
- <?php $ values = array_values ($ document ) ?>
587
- <?php echo isset ($ values [1 ]) ? $ values [1 ] : '- ' ?>
588
+ <?php
589
+ if (isset ($ search )) {
590
+ $ displayValues = array ();
591
+
592
+ $ searchKeys = isset ($ search ['$query ' ]) ? $ search ['$query ' ] : $ search ;
593
+
594
+ foreach ($ searchKeys as $ fieldName => $ searchQuery ) {
595
+ if ($ fieldName != '_id ' && $ fieldName [0 ] != '$ ' && isset ($ document [$ fieldName ])) {
596
+ $ fieldValue = $ document [$ fieldName ];
597
+
598
+ if (!is_array ($ fieldValue ) && !is_object ($ fieldValue )) {
599
+ $ displayValues [] = $ fieldName . ': ' . substr (str_replace ("\n" , '' , htmlspecialchars ($ fieldValue )), 0 , 100 );
600
+ }
601
+ }
602
+ }
603
+
604
+ echo implode (' - ' , $ displayValues );
605
+ }
606
+
607
+ if (!isset ($ displayValues ) || !count ($ displayValues )) {
608
+ foreach ($ document as $ fieldName => $ fieldValue ) {
609
+ if ($ fieldName != '_id ' && !is_array ($ fieldValue ) && !is_object ($ fieldValue )) {
610
+ echo $ fieldName . ': ' . substr (str_replace ("\n" , '' , htmlspecialchars ($ fieldValue )), 0 , 100 );
611
+ break ;
612
+ }
613
+ }
614
+ }
615
+ ?>
588
616
</td>
589
617
<?php if (is_object ($ document ['_id ' ]) && $ document ['_id ' ] instanceof MongoId): ?>
590
618
<td><a href="<?php echo $ _SERVER ['PHP_SELF ' ] . '?db= ' . $ _REQUEST ['db ' ] . '&collection= ' . $ _REQUEST ['collection ' ] ?> &delete_document=<?php echo (string ) $ document ['_id ' ] ?> " onClick="return confirm('Are you sure you want to delete this document?');">Delete</a></td>
0 commit comments