";
}
return html_item;
}
function show_results(jsonData) {
var response = jsonData.response;
var num_found = response.numFound;
var docs = response.docs;
var num_docs = docs.length;
$('.search-in-progress').css("cursor","auto");
var $search_results = $('#search-results');
if (num_docs>0) {
$search_results.html("
Results: " + num_found + " pages matched
");
var from = parseInt(store_search_args.start);
var to = from + num_rows;
$search_results.append("
Showing matches: "+from+"-" + to + "
");
}
else {
$search_results.html("
No pages matched your query
");
}
// Example form of URL
// https://babel.hathitrust.org/cgi/pt?id=hvd.hnnssu;view=1up;seq=11
var htids = [];
var prev_id = null;
var prev_pages = [];
var i=0;
var line_num = 0;
while (i pos and lang field
var query_terms = query.split(/\s+/);
var query_terms_len = query_terms.length;
var bool_query_term = [];
var i=0;
var prev_bool = "";
for (var i=0; i0) {
if (prev_bool == "") {
prev_bool = "AND";
}
}
var expanded_term = expand_field_lang_pos(term,langs_with_pos,langs_without_pos,search_all_checked)
term = "(" + expanded_term + ")";
if (prev_bool != "") {
bool_query_term.push(prev_bool);
prev_bool = "";
}
bool_query_term.push(term);
}
}
var bool_query = bool_query_term.join(" ");
return bool_query;
}
function submit_action(event)
{
event.preventDefault();
$('.search-in-progress').css("cursor","wait");
store_search_action = $('#search-form').attr("action");
var arg_indent = $('#indent').attr('value');
var arg_wt = $('#wt').attr('value');
var arg_start = $('#start').attr('value');
var arg_rows = $('#rows').attr('value');
var q_text = $('#q').val();
group_by_vol_checked = $('#group-results-by-id:checked').length;
var search_all_checked = $('#search-all-langs:checked').length;
if (q_text === "") {
$('.search-in-progress').css("cursor","auto");
alert("No query term entered");
return;
}
arg_q = expand_query_field_and_boolean(q_text,langs_with_pos,langs_without_pos,search_all_checked);
if (arg_q == "") {
$('.search-in-progress').css("cursor","auto");
alert("No languages selected");
return;
}
// Example search on one of the htrc-full-ef fields is:
// q=en_NOUN_htrctoken:farming
store_search_args = { q: arg_q, indent: arg_indent, wt: arg_wt, start: arg_start, rows: arg_rows };
if (group_by_vol_checked) {
store_search_args.sort="id asc";
}
$.ajax({
type: 'GET',
url: store_search_action,
data: store_search_args,
dataType: 'json',
success: show_results,
error: ajax_error
});
}
function generate_pos_langs()
{
var pos_checkbox = [
{ pos:"VERB", label:"Verbs", tooltip:"Verbs (all tenses and modes)" },
{ pos:"NOUN", label:"Nouns", tooltip:"Nouns (common and proper)" },
{ pos:"ADJ", label:"Adjectives", tooltip: null },
{ pos:"ADV", label:"Adverbs", tooltip: null },
{ pos:"ADP", label:"Adpositions", tooltip:"Adpositions (prepositions and postpositions)" },
{ pos:"CONJ", label:"Conjunctions",tooltip: null },
{ pos:"DET", label:"Determiners", tooltip: null },
{ pos:"NUM", label:"Numbers", tooltip:"Cardinal numbers" },
{ pos:"PRT", label:"Particles", tooltip:"Particles or other function words" },
{ pos:"X", label:"Other", tooltip:"Other words, such as foreign words, typos, abbreviations"}
];
var $pos_fieldsets = $('#pos-fieldsets');
for (var li=0; li\n';
legend += ' \n';
legend += ' '+lang_full+':\n';
legend += ' \n';
var check_box_list = [];
for (var pi=0; pi\n';
check_box += ' \n';
check_box_list.push(check_box);
}
var fieldset = "";
var opt_showhide_class = (li>0) ? 'class="show-hide-lang"' : "";
if (li==1) {
fieldset += '';
}
fieldset += '\n';
$pos_fieldsets.append(fieldset);
$('#'+l+'-enabled').click(lang_pos_toggle);
if (l == "en") {
$('#en-pos-choice *').prop('disabled',false);
}
else {
$('#'+l+'-pos-choice *').prop('disabled',true);
}
}
show_hide_lang()
}
function show_hide_lang()
{
$( "#show-hide-lang" ).click(function(event) {
event.preventDefault();
if($('.show-hide-lang:visible').length) {
$('.show-hide-lang').hide("slide", {direction: "up" } , 1000);
$('#show-hide-lang').html("Show other languages ...");
}
else {
$('.show-hide-lang').show("slide", {direction: "up" } , 1000);
$('#show-hide-lang').html("Hide other languages ...");
}
});
}
function generate_other_langs()
{
// setup other languages
// for each 'langs_without_pos' generate HTML of the form:
// French
var $other_langs = $('#other-langs');
for (var i=0; i';
/*
if (lang === "zh-cn") {
console.log("Mapping zh-cn => zh");
lang = "zh";
}
if (lang === "zh-tw") {
console.log("Mapping zh-tw => zh");
lang = "zh";
}
*/
var lang_full = isoLangs[lang].name;
var lang_native_full = isoLangs[lang].nativeName;
var opt_title = (lang_full !== lang_native_full) ? 'title="'+lang_native_full+'"' : "";
labeled_checkbox += '';
labeled_checkbox += ' ';
$other_langs.append(labeled_checkbox);
}
}
$(function() {
generate_pos_langs();
generate_other_langs();
if ($('#search-submit').length>0) {
$('#search-submit').click(submit_action);
}
});