83 lines
2.8 KiB
TypeScript
Raw Normal View History

import {Injectable} from 'angular2/core';
import {Page} from 'ionic-angular';
import {Reference} from '../../Reference';
import {BibleService} from '../../bible-service';
/// <reference path="../../Types.ts"/>
@Page({
templateUrl: 'build/pages/search/search.html',
providers: [BibleService]
})
export class SearchPage {
searchQuery: string = '';
items: BiblePassageResult[];
constructor(private bibleService: BibleService) {
this.initializeItems();
}
initializeItems() {
this.items = [];
}
setQuery(searchbar) {
this.searchQuery = searchbar.value;
}
getItems(searchbar) {
try {
let qs = this.searchQuery.split(";");
for (let x in qs) {
let q = qs[x].trim();
if (q != "") {
// its a search term.
if (q.search(/[0-9]/i) == -1) {
// get new results.
//Words.FindReferences(q);
//$("#searchpanel").panel("open");
} else if (q.search(/(H|G)[0-9]/i) != -1) {
let original_q = q;
// its a strongs lookup
let dict = q.substring(0, 1);
let store = true;
if (dict.search(/h/i) != -1) {
dict = "heb";
if (parseInt(q.substring(1)) > 8674) store = false;
} else {
dict = "grk";
if (parseInt(q.substring(1)) > 5624) store = false;
}
q = q.substring(1, q.length);
let Ss = q.split(' ');
let results = [];
for (let s in Ss) {
//results.push(Strongs.GetStrongs(Ss[s], dict));
}
for (let result in results) {
//Strongs.DisplayStrongs(results[result]);
}
//if (store) CurrentReferences[original_q.toString().toLowerCase()] = true;
} else {
// its a verse reference.
if (q.trim() != "") {
let myref = new Reference(q.trim());
let r = this.bibleService.getPassage(myref.Section);
r.ref = myref.toString();
this.items.unshift(r);
//CurrentReferences[myref.toString().toLowerCase()] = true;
}
}
}
}
//Settings.SaveResults();
}
catch (err) {
//Util.HandleError(err);
}
}
}