Sourcecode in Story/backlinks.skin:
1: <a name="backlinks" /><br />
2: <table border="0" cellspacing="0" cellpadding="1">
3:
4: <script type="text/javascript"><!--
5: var referrers = [];
6: <% param.referrers %>
7:
8: var query = new Antville.Query();
9: var spamFilter = new Antville.Filter([<% site.spamfilter %>]);
10: var searchFilter = new Antville.Filter(query.filter);
11: var searchEngineFilters = [
12: new Antville.Filter("http:\/\/.*google.*\?", "q"),
13: new Antville.Filter("http:\/\/.*search\.msn.*\?", "q"),
14: new Antville.Filter("http:\/\/.*altavista.*\?", "q"),
15: new Antville.Filter("http:\/\/.*search\.yahoo.*\?", "p"),
16: ]
17: var cnt = 0;
18: var prefix = "<em>Search request:</em> ";
19: for (var i in referrers) {
20: var ref = referrers[i];
21: var text = ref.text;
22: if (spamFilter.test(ref.url))
23: continue;
24: if (query.filter && !searchFilter.test(ref.url))
25: continue;
26: for (var e in searchEngineFilters) {
27: var filter = searchEngineFilters[e];
28: if (filter.test(ref.url)) {
29: text = ref.compose(filter.key, prefix);
30: break;
31: }
32: }
33: if (++cnt == 1) {
34: document.writeln('<tr>');
35: document.writeln('<td align="right" class="small"> </td>');
36: document.writeln('<td rowspan="999" class="small"> </td>');
37: document.writeln('<td class="small"><strong>Backlinks</strong></td>');
38: document.writeln('</tr>');
39: }
40: document.writeln('<tr>');
41: document.writeln('<td align="right" valign="top" class="small">', ref.count, '</td>');
42: document.writeln('<td class="small"><a href="', ref.url, '">', text, '</a></td>');
43: document.writeln('</tr>');
44: }
45: // --></script>
46:
47: <noscript>
48: <tr>
49: <td colspan="3">To prevent spam abuse referrers and backlinks are displayed using client-side JavaScript code. Thus, you should enable the option to execute JavaScript code in your browser. Otherwise you will only see this information.</td>
50: </tr>
51: </noscript>
52:
53: </table>
54:
|