public function fetchBook($rqbook, $rqchapter, $startverse = null, $endverse = null) { $texts = array(); $book = Bible::getBook($this->app, $rqbook); $verses = array(array('start' => $startverse, 'end' => $endverse, 'context' => 0)); foreach ($this->versions as $version) { $bible = new Bible($this->app, $version); $bible->load(); $bible->Active = true; $bible->get($rqbook, $rqchapter ? $rqchapter : 1, $verses); $texts[] = $bible; } $encoders = array(new JsonEncoder()); $normalizers = array(new ObjectNormalizer()); $serializer = new Serializer($normalizers, $encoders); $json = $serializer->serialize($texts, 'json'); return $json; }
/** * TODO: Function Description * @param Var Description */ public function byBookChapter($rqbook, $rqchapter, $startverse = null, $endverse = null) { $texts = array(); $this->search = $rqbook . " " . $rqchapter; $verses = array(array('start' => $startverse, 'end' => $endverse, 'context' => 0)); $book = Bible::getBook($this->app, $rqbook); foreach ($this->versions as $version) { $bible = new Bible($this->app, $version); $bible->load(); $bible->Active = true; $bible->get($rqbook, $rqchapter ? $rqchapter : 1, $verses); $texts[] = $bible; } if (count($texts)) { $this->search = $book->Names['dutch'] . " " . $rqchapter; } if ($startverse) { $this->search .= ":" . $startverse; } if ($startverse && $endverse) { $this->search .= "-" . $endverse; } $this->setCurUrl(); //Add vars that can be json_encoded $this->response->addVars(array('title' => $book->Names['dutch'] . " " . $rqchapter, 'current_url' => "/" . $book->Names['dutch'] . "/" . $rqchapter)); //Render Html $this->response->render('index.twig', array('rqbook' => $book, 'rqchapter' => $rqchapter, 'search' => $this->search, 'texts' => $texts, 'books' => Bible::getAllBooks($this->app, $bible), 'versions' => Bible::getVersions($this->app, $this->versions))); }