function CliGetFAQList(search_text) {
var faq_array = new Array();
var faq_indx;
var items_nr;
var nr_of_pages;
if(search_text == null) search_text = '';
if(P_id_domain > 0) faq_array = db.GetFAQItemsByDomain(P_sql_indx, A_faq_qa_page, P_id_domain, P_question, 'id_rank');
else faq_array = db.GetFAQItems(P_sql_indx, A_faq_qa_page, P_question, 'id_rank');
if(faq_array.length > 0) {
if(P_id_domain != 0) items_nr = new Number(db.GetDomainFAQCount(P_id_domain, P_question));
else items_nr = new Number(db.GetFAQCount(P_question));
nr_of_pages = Math.ceil(items_nr / A_faq_qa_page);
Response.Write('
\n\r');
if(P_question.length > 0) Response.Write('| FAQ(s) found with: ' + P_question + ' | \n\r');
else Response.Write('FAQ(s) in category: ' + db.GetDomainName(P_id_domain) + ' | \n\r');
Response.Write('page ' + P_sql_indx + ' of ' + nr_of_pages + ' | \n\r');
Response.Write('
\n\r');
for(var j=0; j\n\r');
Response.Write(' |
\n\r');
// if(db.GetFAQDescription(faq_array[j]).length > 0)
// Response.Write('| ' + db.GetFAQDescription(faq_array[j]) + ' |
\n\r');
if(db.GetFAQAnswer(faq_array[j]).length > 0)
Response.Write('| ' + db.GetFAQAnswer(faq_array[j]).substr(0, A_faq_toc_answer) + ' ... |
\n\r');
Response.Write('\n\r');
if(X_detailes_showrating || X_detailes_showhits || X_detailes_showmodify) Response.Write('\n\r');
if(X_detailes_showrating) Response.Write('| Rating: ' + GetRatingStars(faq_array[j]) + ' | \n\r');
if(X_detailes_showhits) Response.Write('Hits: ' + db.GetFAQHits(faq_array[j]) + ' | \n\r');
if(X_detailes_showmodify) Response.Write('Modified on: ' + db.GetFAQDate(faq_array[j]) + ' | \n\r');
if(X_detailes_showrating || X_detailes_showhits || X_detailes_showmodify) Response.Write('
');
Response.Write('\n\r');
}
} else {
Response.Write('
\r\n');
}
}
function CliFAQNavigator(link_prefix) {
var items_nr;
var nr_of_pages;
var result = '';
if(P_id_domain != 0) items_nr = new Number(db.GetDomainFAQCount(P_id_domain, P_question));
else items_nr = new Number(db.GetFAQCount(P_question));
nr_of_pages = Math.ceil(items_nr / A_faq_qa_page);
if(nr_of_pages > 1) {
result += '| \r\n';
if(P_sql_indx == 1) result += ' ';
else result += '<< prev\r\n';
result += ' | ';
for(var i=1; i<=nr_of_pages; i++) {
if(P_sql_indx == i) result += '[' + i + ']';
else result += '' + i + '\r\n';
result += ' ';
}
result += ' | ';
if(P_sql_indx == nr_of_pages) result += ' ';
else result += 'next >>\r\n';
result += ' |
\r\n';
}
return result;
}
function CliFAQList(search_text) {
Response.Write('\r\n');
Response.Write(' \n\r');
Response.Write(' \n\r');
CliGetFAQList(search_text);
Response.Write(' \n\r');
Response.Write(CliFAQNavigator(FRM_ACTION + '?act=cli.faq_list&id_domain=' + P_id_domain + '&question=' + P_question + '&sql_indx='));
Response.Write(' | \n\r');
Response.Write('
\n\r');
Response.Write('
\n\r');
}
function GetRatingStars(id_faq) {
var str_stars = '';
if(db.GetFAQRank(id_faq) > 0) {
var rated_val = db.GetFAQRank(id_faq);
for(var i=1; i<=rated_val; i++) str_stars += A_rank_star;
str_stars += '';
} else {
str_stars = 'Not rated\n\r';
}
return str_stars;
}
function GetRatingSelect() {
var str_select = '\n\r';
str_select += '';
return str_select;
}
function CliInFAQNavigator(link_prefix) {
var faq_array = new Array();
var items_nr;
var result = '';
var faq_indx = new Number(P_faq_indx);
if(P_id_domain > 0) faq_array = db.GetFAQItemsByDomain(0,0, P_id_domain, P_question, '');
else faq_array = db.GetFAQItems(0,0, P_question, '');
/*
if(P_id_domain != 0) items_nr = new Number(db.GetDomainFAQCount(P_id_domain, P_question));
else items_nr = new Number(db.GetFAQCount(P_question));
*/
items_nr = faq_array.length;
if(items_nr > 1) {
result += '| \n\r';
if(faq_indx == 1) result += ' ';
else result += 'prev';
result += ' | \n\r';
if(faq_indx > 1 && (faq_indx-items_nr) != 0) result += '| | \n\r';
result += '';
if((faq_indx-items_nr) == 0) result += ' ';
else result += 'next';
result += ' |
\n\r';
} else result += ' ';
return result;
}
function CliFAQView() {
var items_nr;
if(P_act != 'cli.faq_rate') {
var faq_hit = new Number(db.GetFAQHits(P_id_faq));
faq_hit++;
db.SetFAQHits(P_id_faq, faq_hit);
}
if(P_id_domain != 0) items_nr = new Number(db.GetDomainFAQCount(P_id_domain, P_question));
else items_nr = new Number(db.GetFAQCount(P_question));
Response.Write('\n\r');
Response.Write(' \n\r');
Response.Write(' | << back | \n\r');
Response.Write(' | \n\r');
Response.Write(' FAQ in category: ' + db.GetDomainName(db.GetFAQDomain(P_id_faq)) + ' | \n\r');
Response.Write(' ' + P_faq_indx + ' of ' + items_nr + ' | \n\r');
if(X_detailes_shownavigation) Response.Write('' + CliInFAQNavigator(FRM_ACTION + '?act=cli.faq_view&id_domain=' + P_id_domain + '&question=' + P_question + '&sql_indx=' + P_sql_indx) + ' | \n\r');
Response.Write('
|
\n\r');
Response.Write('
|
\n\r');
Response.Write('| ' + db.GetFAQQuestion(P_id_faq) + ' |
\n\r');
// Response.Write('| ' + db.GetFAQDescription(P_id_faq) + ' |
\n\r');
if(X_detailes_showmodify) Response.Write('| Modified on: ' + db.GetFAQDate(P_id_faq) + ' |
\n\r');
Response.Write('| |
\n\r');
Response.Write('| ' + db.GetFAQAnswer(P_id_faq) + ' |
\n\r');
Response.Write('
|
\n\r');
Response.Write('\n\r');
if(X_detailes_showratingeditor) Response.Write('| Is this FAQ helpful? | \n\r' + GetRatingSelect());
Response.Write(' | \n\r');
if(X_detailes_showrating) Response.Write('Average Ratings: ' + GetRatingStars(P_id_faq) + ' | \n\r');
Response.Write('
|
\n\r');
Response.Write('
\n\r');
}
function CliFAQRate(){
var cur_rank = new Number(P_id_rank);
if(parseInt(db.GetFAQRank(P_id_faq)) > 0) {
act_rnk = parseInt(db.GetFAQRank(P_id_faq));
cur_rank = Math.ceil((act_rnk + cur_rank)/2);
}
db.SetFAQRank(P_id_faq, cur_rank);
CliFAQView();
}