Example #1
0
 public static function getBooksFragment($bible)
 {
     $database_bibles = Database_Bibles::getInstance();
     $database_books = Database_Books::getInstance();
     $ipc_focus = Ipc_Focus::getInstance();
     $activeBook = $ipc_focus->getBook();
     // Take standard books in case of no Bible.
     if ($bible == "") {
         $books = $database_books->getIDs();
     } else {
         $books = Filter_Books::getOrdered($bible);
     }
     $html = "";
     foreach ($books as $book) {
         $bookName = $database_books->getEnglishFromId($book);
         $selected = "";
         if ($book == $activeBook) {
             $selected = " selected";
         }
         $html .= "<option{$selected}>" . $bookName . "</option>";
     }
     return $html;
 }
Example #2
0
$database_bibles = Database_Bibles::getInstance();
$bible = Access_Bible::clamp($_GET['bible']);
$view->view->bible = Filter_Html::sanitize($bible);
@($reset = $_GET["reset"]);
if (isset($reset)) {
    $database_config_bible->setBookOrder($bible, "");
}
@($order = $_POST['order']);
if (isset($order)) {
    $order = explode(",", $order);
    $ids = array();
    foreach ($order as $english) {
        $id = $database_books->getIdFromEnglish($english);
        $ids[] = $id;
    }
    $order = implode(" ", $ids);
    $database_config_bible->setBookOrder($bible, $order);
    die;
}
$script = <<<EOD
var orderBible = '{$bible}';
EOD;
$view->view->script = $script;
$names = array();
$books = Filter_Books::getOrdered($bible);
foreach ($books as $book) {
    $names[] = $database_books->getEnglishFromId($book);
}
$view->view->names = $names;
$view->render("order.php");
Assets_Page::footer();
Example #3
0
 public function testGetOrdered()
 {
     $database_bibles = Database_Bibles::getInstance();
     $database_config_bible = Database_Config_Bible::getInstance();
     $bible = "php unit";
     // No ordering.
     $database_bibles->createBible($bible);
     $database_bibles->storeChapter($bible, 1, 1, "data");
     $database_bibles->storeChapter($bible, 2, 1, "data");
     $database_bibles->storeChapter($bible, 3, 1, "data");
     $database_bibles->storeChapter($bible, 4, 1, "data");
     $database_bibles->storeChapter($bible, 5, 1, "data");
     $books = Filter_Books::getOrdered($bible);
     $standard = array(1, 2, 3, 4, 5);
     $this->assertEquals($standard, $books);
     // Existing books re-ordered.
     $database_config_bible->setBookOrder($bible, "1 3 2 5 4");
     $books = Filter_Books::getOrdered($bible);
     $standard = array(1, 3, 2, 5, 4);
     $this->assertEquals($standard, $books);
     // Some books ordered, and Bible has extra books: These are to be added to the end.
     $database_config_bible->setBookOrder($bible, "1 3 2");
     $books = Filter_Books::getOrdered($bible);
     $standard = array(1, 3, 2, 4, 5);
     $this->assertEquals($standard, $books);
     // More books ordered than in Bible: Remove the extra ones.
     $database_config_bible->setBookOrder($bible, "1 3 2 5 4 6");
     $books = Filter_Books::getOrdered($bible);
     $standard = array(1, 3, 2, 5, 4);
     $this->assertEquals($standard, $books);
 }