about summary refs log tree commit diff
path: root/sort.php
diff options
context:
space:
mode:
authorZach DeCook <zachdecook@gmail.com>2018-03-20 12:13:27 -0400
committerZach DeCook <zachdecook@gmail.com>2018-03-20 12:13:27 -0400
commit316c95cad96e89afc68d315e9f4fa5b9cf322006 (patch)
tree7964f2e07c12711c8ae9ce5fab4a1eb5953b460b /sort.php
parentb01ad1d9123ab8f497ce78fcab0c5caebc0cc993 (diff)
downloadprosongsa-316c95cad96e89afc68d315e9f4fa5b9cf322006.tar.gz
* Allow sorting by book chapter
Diffstat (limited to 'sort.php')
-rw-r--r--sort.php14
1 files changed, 10 insertions, 4 deletions
diff --git a/sort.php b/sort.php
index 887178d..ab72d49 100644
--- a/sort.php
+++ b/sort.php
@@ -51,15 +51,21 @@ $bookOrder = array(
 	$aVerse = $a['verse'] ?: '';
 	$bVerse = $b['verse'] ?: '';
 	$matches = array();
-	$aBookKey = 3000;
-	$bBookKey = 3000;
+	$aBookKey = 100000;
+	$bBookKey = 100000;
 	if ( preg_match( '/^[0-9i]*\ ?[A-Z.]+/i', $aVerse, $matches ) ){
 		$aBook = $matches[0];
-		$aBookKey = array_search( $aBook, $bookOrder );
+		$aBookKey = array_search( $aBook, $bookOrder ) * 1000;
+		if ( preg_match( '/^.+?(\d+)/', $aVerse, $matches ) ){
+			$aBookKey += $matches[1];
+		}
 	}
 	if ( preg_match( '/^[0-9i]*\ ?[A-Z.]+/i', $bVerse, $matches ) ){
 		$bBook = $matches[0];
-		$bBookKey = array_search( $bBook, $bookOrder );
+		$bBookKey = array_search( $bBook, $bookOrder ) * 1000;
+		if ( preg_match( '/^.+?(\d+)/', $bVerse, $matches ) ){
+			$bBookKey += $matches[1];
+		}
 	}
 
 	return $aBookKey - $bBookKey;