RegExp.escape = function(str) { var specials = /[.*+?|()\[\]{}\\$^]/g; // .*+?|()[]{}\$^ str = str.replace(specials, "\\$&"); str = str.replace("-", "[ ]?[\\-—]?[ ]?"); return str; } function getOffsetLinks(listOffset, offset) { if(listOffset.length == 0) return -1; minOff = Math.abs(listOffset[0]-offset); for(i=1;i < listOffset.length;++i) if(minOff > Math.abs(listOffset[i]-offset)) minOff = Math.abs(listOffset[i]-offset); return minOff; } var flClickGlobalLink = false; function onClickGlobalLink() { flClickGlobalLink = true; } function SetGlobalPageLinks() { if(dataReplaceLinkForPage == undefined || dataReplaceLinkForPage == null || dataReplaceLinkForPage.length == 0) return; var pages = $("div.page_out"); if(pages.length == 0) return; var headers = $("div.page_out > h2, h3"); var text_h = []; for(n = 0;n < headers.length;++n) { h = $(headers[n]); text_h[n] = h.html(); h.html(""); } var page_list = []; for(n = 0;n < pages.length;++n) { page_list[n] = $(pages[n]).html(); } for(gi = 0;gi < dataReplaceLinkForPage.length;++gi) { link = dataReplaceLinkForPage[gi].split("::"); if(link.length != 2) continue; topics = link[0].split("|"); if(topics.length == 0) continue; var regex = []; for(t = 0;t < topics.length;++t) regex[t] = new RegExp("([\\s>(\\[])(" + RegExp.escape(topics[t]) + ")([\\s.,?!):;\\]])", "ig"); for(n = 0;n < page_list.length;++n) { var listOffLink = []; var l = 0; for(t = 0;t < topics.length;++t) page_list[n] = page_list[n].replace(regex[t], function(regex, p0, p1, p2, offset, text) { maxOff = getOffsetLinks(listOffLink, offset); if(maxOff == -1 || maxOff > 500) { listOffLink[l] = offset; l++; //var newLink = link[1].replace(/http[:][\/][\/].+[.]ru/, "http://scask.ru"); return p0 + '' + p1.replace(" "," ") + '' + p2; } else return p0+p1+p2; }); } } for(n = 0;n < pages.length;++n) { $(pages[n]).html(page_list[n]); } headers = $("div.page_out > h2, h3"); for(n = 0;n < headers.length;++n) { $(headers[n]).html(text_h[n]); } } function ShowImageScan(nPage) { } function ShowImage(nMaket) { } function ShowImageNext() { } function ShowImagePrev() { } function SetListPages(nPage) { } function SetSelectedPage(nPage) { } function dataReplaceLinkForPage() { } var start = 0;